2416平台,u-boot-1.3.4支持U盘功能问题总结

1 篇文章 0 订阅
1 篇文章 0 订阅

①在include/configs/smdk2416.h中添加定义:

#defineCONFIG_USB_OHCI

#defineCONFIG_USB_STORAGE

#defineCONFIG_DOS_PARTITION

#defineCONFIG_SUPPORT_VFAT

#defineLITTLEENDIAN

以及

#defineCONFIG_CMD_USB 

#defineCONFIG_CMD_FAT

再打开common/makefile,在119行添加

COBJS-$(CONFIG_CMD_USB)+= cmd_usb.o

②根据2416用户手册,配置好相关的时钟以及系统的寄存器,具体如何配置此处不再赘述;

③将链接地址改为物理地址,本人使用核心板的三星给的代码是使用MMU功能的,链接地址为0xc3e00000,改后为0x33e00000;

④关闭D-Cache,禁掉MMU功能;(或者将MMU的映射设置为平台映射模式,即1:1的映射)

⑤注意你的编译器版本,编译器可能会给你带来很郁闷的问题,让你无从找到问题的答案。此处本人编译通过并能够正常使用的分别为3.3和带软浮点的3.4.5的编译器。另外,目前还存在一个问题就是:无法正常识别2G以下的U盘,金士顿2G的U盘需要识别两次才能识别到,第一次通常是超时失败的,而4G和8G的U盘则无任何问题。

⑥关注你的基准延时函数是否为1us,如果偏差太大将会造成读取U盘数据时累积偏差过大而与USB总线同步不上,那么接下来你读取数据会不成功。

以上为2416平台实现u-boot-1.3.4中支持U盘需要重点关注的几个问题。希望能给有需要的朋友有所帮助!

有谁解决了⑤中本人遗留的问题,烦请告知一声,呵呵,先谢过了!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 13
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值