解决6818核心板SD卡烧写内核后上电反复重启的艰苦经历

问题出现:

1,采用miniSD,按照核心板厂家提供的教程在Ubuntu下制作启动卡(sdfuse和ubootp均采用核心板厂家定制的UART2信息输出的版本)。
2,插入我司自己的PCB,从SD启动,等待内核烧写完毕。
3,拔出SD卡,选择MMC启动,PCB不停的重启,串口终端显示如下关键信息。
从红色方框中的提示信息可以看出,mmc中的分区有问题,加载内核出错了。
4,上电进入uboot串口终端,使用fdisk命令查看mmc分区信息如下
在这里插入图片描述
可以看到,mmc里面只有一个分区。
5,拿另外一块之前调试正常的核心板替换新的核心板,进入uboot终端查看分区信息如下:
在这里插入图片描述
可以看到正常的板子有三个分区,能够和partmap.txt中的信息对应上(以下是partmap.txt的文件内容)。

flash=mmc,2:uboot:2nd:0x200,0x78000:ubootp.bin;

flash=mmc,2:boot:ext4:0x00100000,0x04000000:boot.img;
flash=mmc,2:system:ext4:0x04100000,0x2F200000:root.img;

flash=mmc,2:data:ext4:0x33300000,0:data.img; 

调试过程

1,重新拿一片新的核心板,重复之前的SD卡烧写过程,串口输出如下:
在这里插入图片描述
这里出现了两个写入失败的信息。
2,利用uboot的fdisk命令人工分区,但不管怎么输入,总是会在2048前多一个分区。(忘记截图了)用SD卡下载也是失败,无果,放弃。
3,算了,不折腾SD卡了。计划利用fastboot试试,但是Win10下肯爹的ADB驱动又折腾了半天,终于可以通讯上了。
装驱动的时候总是提示无签名,后来参考https://www.cnblogs.com/howesdomo/p/5650072.html这个搞定。
3,利用fastboot下载,过程如下:
在这里插入图片描述4,重启正常
5,再次插入SD并从SD启动,可以顺利的烧写内核。
在这里插入图片描述


问题:

  • 在SD卡烧写的过程中,partmap.txt的分区信息,是谁用什么方法写入到mmc中去的?是不是核心板厂家提供的sdfuse???
  • sdfuse是怎样操作分区的??每次都根据partmap.txt重新建立分区???每次都检查分区信息,一样的话就不重新创建分区???

结果:

  • 我现在的核心板在生产的时候不能用SD卡烧写内核!!!!只能用fastboot,很不方便。

后续:

2020-5-25补充:后来无意之间,发现USB读卡器复制的数据文件MD5码不对,特别是大文件,写入后字节大小等信息均正确,但MD5结构有错误。
更换另一个品牌的读卡器,重新复制内核文件,再次使用SD卡升级,问题解决。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

tanghuihuayyc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值