瑞芯微Rockchip开发者社区
直播中

凌章致

7年用户 958经验值
私信 关注
[问答]

LS1012A开发板在uboot中SD卡读取的数据非常不稳定是什么原因

LS1012A开发板
发现在uboot中SD的读非常不稳定,尤其在比较大的文件时,比如
=> load $devtype $devnum:1 $kernel_addr_r /boot/Image
Error reading cluster
==>
经常出错, 如果只是读小批量数据,比如列表文件,基本不出错
==>ls mmc 0:1
尝试用直接读直接读数据块,随着数据块增加,就会出错
MMC read: dev # 0, block # 0, count 8192 ... 8192 blocks read: OK
=> mmc read $kernel_addr_r 0 3000
MMC read: dev # 0, block # 0, count 12288 ... 12288 blocks read: OK
=> mmc read $kernel_addr_r 0 4000
MMC read: dev # 0, block # 0, count 16384 ... 0 blocks read: ERROR

==>

如果利用EMMC引导进入openwrt系统,在linux系统中读大数据块却不会
有问题,比如读整个boot分区(96M)
root@OpenWrt:/# dd if=/dev/mmcblk0p1 of=/dev/null
143360+0 records in
143360+0 records out
目前看uboot对SD支持是有点问题,不知道只是我这块板子的问题,还是普遍现象?如何处理呢?


回帖(2)

汪岑

2022-1-5 11:38:40

  • 建议您在换一个TF卡试试,下面是我的测试情况:


举报

郑聪

2022-1-5 11:39:10
谢谢你的回复,实际上我已经换过4~5张卡了(其中还包括一张新卡), 这些卡我都是在其他系统中验证过的,
而且这些卡只要进入到板载的linux系统中都是可以顺利读取大文件的,卡本是应该是没有问题的,只是在
u-boot中会有问题,u-boot的构建信息如下
  U-Boot 2018.03 (Jun 02 2020 - 10:43:14 +0800)
SoC:  LS1012A Rev2.0 (0x87040120)
Clock Configuration:
       CPU0(A53):1000 MHz
       Bus:      250  MHz  DDR:      1000 MT/s
Reset Configuration Word (RCW):
       00000000: 0800000a 00000000 00000000 00000000
       00000010: 35080000 c000000c 40000000 00001800
       00000020: 00000000 00000000 00000000 00014572
       00000030: 00000000 1082a120 00000096 00000000
I2C:   ready
DRAM:  446 MiB
Using SERDES1 Protocol: 13576 (0x3508)
PPA Firmware: Version LSDK-18.06-Forlinx
SEC Firmware: 'loadables' present in config
loadables: 'trustedOS@1'
DS2460 OK

u-boot的版本是否有升级?另外是否可能这块开发板/核心板的硬件是否有点问题?你们是否有售后维修部,是否
可以把板子返回帮我测试一下?这样我们对这块核心板的验证也有一个明确的结论,其他功能目前都很顺利,没有
发现问题, 谢谢。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分