博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
FL2440 2.6.28 SD卡驱动BUG解决
阅读量:5886 次
发布时间:2019-06-19

本文共 1155 字,大约阅读时间需要 3 分钟。

FL2440的2.6.28的内核,SD卡驱动默认是有问题的,

在linux-2.6.28.7/drivers/mmc/host目录的s3cmci.c文件的do_pio_write函数中做如下修改:

[cpp] view plaincopystatic void do_pio_write(struct s3cmci_host *host) 

void __iomem *to_ptr;

 int res; u32 fifo; u32 *ptr;

 to_ptr = host->base + host->sdidata; 

//while ((fifo = fifo_free(host))) 

while ((fifo = fifo_free(host))>3) 

//lqm changed from feiling FAE.11-01-19

 { 

if (!host->pio_bytes)

 { 

res = get_data_buffer(host, &host->pio_bytes,&host->pio_ptr); 

if (res)

 { 

dbg(host, dbg_pio,"pio_write(): complete (no more data)./n");

 host->pio_active =XFER_NONE; return; 

dbg(host, dbg_pio,"pio_write(): new source: [%i]@[%p]/n",host->pio_bytes, host->pio_ptr); 

/* If we have reached the end of the block, we have to * write exactly the remaining number of bytes. If we * in the middle of the block, we have to write full * words, so round down to an even multiple of 4. */ 

if (fifo >=host->pio_bytes)

 fifo = host->pio_bytes;

 else fifo -= fifo & 3; 

host->pio_bytes -= fifo; 

host->pio_count += fifo; 

fifo = (fifo + 3) >> 2; 

ptr = host->pio_ptr; 

while (fifo--) 

writel(*ptr++, to_ptr); 

host->pio_ptr = ptr;

 } 

enable_imask(host, S3C2410_SDIIMSK_TXFIFOHALF); 

}

转载地址:http://uhmix.baihongyu.com/

你可能感兴趣的文章
Mycat读写分离以及拆库拆表综合实验2:部署配置mycat读写分离与拆库拆表
查看>>
程序至上
查看>>
Linux系统详细启动流程
查看>>
高性能golang后端处理网络模块包
查看>>
android面试题
查看>>
test
查看>>
郭宇:Airpub - 纯前端博客引擎实践
查看>>
Progress Image View
查看>>
开源 免费 java CMS - FreeCMS1.5-数据对象-job
查看>>
开源 java CMS - FreeCMS2.3字典管理
查看>>
开源 java CMS - FreeCMS2.4 模板管理
查看>>
理解HTTP session原理及应用
查看>>
JNI学习积累之三 ---- 操作JNI函数以及复杂对象传递
查看>>
maven环境快速搭建
查看>>
什么是单链表插入排序?
查看>>
mycncart 商品筛选 filter 模组设定教程
查看>>
【转】杰奇 jieqi 多线程自动采集同步源站 python源码
查看>>
Lucene6.0学习笔记——查看分词结果
查看>>
ubuntu 下crontab
查看>>
一步步安装nginx搭建流媒体服务器
查看>>