天嵌 ARM开发社区

 找回密码
 注册
查看: 4640|回复: 2

求助!U-boot 添加SD卡读写

[复制链接]
Junior513 发表于 2012-12-7 08:23:40 | 显示全部楼层 |阅读模式
本帖最后由 Junior513 于 2012-12-7 08:36 编辑

我用TQ2440,在U-boot上面添加了SD卡的驱动,但是发现在读卡的时候sdifsta 响应有问题,必须在读取sdifsta 和 sdidat 之间加入延时,否者读取sdiftsa时会一直出错,显示没有数据,这样就会导致原本SD卡读取数据速度很慢,请问个位大神,怎么解决呢?我添加的SD卡驱动部分没有使用DMA

                if(data->flags & MMC_DATA_READ){
                        while(data_size)
                        {        
                                for (k = 0; k < count;) {
                                        if(readl(&host->reg->sdidsta)&0x60)
                                        {
                                                writel(0x3<<0x5,&host->reg->sdidsta);//清除超时标志和 CRC 错误标志
                                                return 0;
                                        }
                                        status = readl(&host->reg->sdifsta);
                                        udelay(1000);
                                        if((status&0x1000)==0x1000)
                                        {        
                                                *buf= __be32_to_cpu(readl(&host->reg->sdidat));
                                                buf++;
                                                k++;
                                                data_size -= 4;
                                        }
                                }
                        }
                        writel(readl(&host->reg->sdidcon)&(~(7<<12)),&host->reg->sdidcon);
                        writel(readl(&host->reg->sdifsta)&(0x200),&host->reg->sdifsta);
                        writel(0x10,&host->reg->sdidsta);

                        return 0;







本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
亚瑟王 发表于 2012-12-7 19:50:27 | 显示全部楼层
2440本来读写SD卡都不快。加上你没有使用DMA,那速度就完全靠CPU的处理了,CPU有时间读就快,CPU没时间读就慢。
 楼主| Junior513 发表于 2012-12-12 16:33:14 | 显示全部楼层
Ok,谢谢,请问有没有加入DMA的参考代码?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

GMT+8, 2024-11-1 06:46 , Processed in 1.062500 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表