• 如何破坏开发板iNand中的uboot?


    以下内容源于网络资源的学习与整理,如有侵权请告知删除。

    一、X210开发板的SD/iNand启动步骤

    我们已知,X210开发板第一层启动是从SD0(即板载的iNand)启动,当iNand启动做校验和失败时才会转为启动SD2(接近复位键的那个卡槽)。

    我们做裸机实验时是通过SD2来提供裸机程序镜像的,因此需要先破坏内部iNand的uboot才可以强迫开发板从SD2启动去执行我们的裸机程序。

    二、两种情形下破坏uboot的方法

    1、uboot环境下擦除开发板inand中的uboot

    连接串口2(远离网口的那个串口),打开SecureCRT,进入uboot控制台,输入help movi命令确认一下movi的用法,如下。

    1. x210 # movi
    2. Usage:
    3. movi - sd/mmc r/w sub system for SMDK board
    4. x210 # help movi
    5. movi init - Initialize moviNAND and show card info
    6. movi read {u-boot | kernel} {addr} - Read data from sd/mmc
    7. movi write {fwbl1 | u-boot | kernel} {addr} - Write data to sd/mmc
    8. movi read rootfs {addr} [bytes(hex)] - Read rootfs data from sd/mmc by size
    9. movi write rootfs {addr} [bytes(hex)] - Write rootfs data to sd/mmc by size
    10. movi read {sector#} {bytes(hex)} {addr} - instead of this, you can use "mmc read"
    11. movi write {sector#} {bytes(hex)} {addr} - instead of this, you can use "mmc write"
    12. x210 #

    然后输入“movi write u-boot 0x30000000”,表示将内存地址0x30000000的内容(应该全是0)写入到inand中的u-boot分区。

    1. x210 # movi write u-boot 0x30000000
    2. Writing BL1 to sector 1 (16 sectors).. checksum : 0x13610b
    3. writing bootloader.. 49, 1024
    4. MMC write: dev # 0, block # 49, count 1024 ... 1024 blocks written: OK
    5. completed
    6. x210 #

    重启X210开发板,如果串口中输出如下则说明头部校验和失败,接下来会转入SD卡通道启动。

    SD checksum Error

    2、linux或android系统下擦除inand中的uboot

    待X210完全启动进入系统后,先后在SecureCRT中输入以下命令:

    busybox dd if=/dev/zero of=/dev/block/mmcblk0 bs=512 seek=1 count=1 conv=sync
    sync

    此命令把板载inand的第1个扇区用全0来填充,即擦除它,则板载inand的uboot的第1个扇区就被破坏了。将来启动时iROM还是先从inand中读取前16KB,然后计算校验和,但因为有1个扇区被擦掉了,校验和不能通过,因此启动失败,从而转到SD2去启动。

    破坏板载inand的uboot后,如果不插入外部SD卡,启动时串口得到:SD checksum Error。

  • 相关阅读:
    Dubbo命令行详解
    SpringCloud Alibaba学习笔记,记重点!!
    其实MyBatis的插件机制可以帮我们解决工作很多问题,建议收藏
    论文翻译:2021_Joint Online Multichannel Acoustic Echo Cancellation, Speech Dereverberation and Source Separation
    CPU架构
    电脑翻译软件哪个好-免费的电脑翻译软件
    AOI在SMT生产线的关键作用
    etcd MVCC 存储结构及流程
    深入标签模板字面量
    Vue3使用递归组件封装El-Menu多级菜单
  • 原文地址:https://blog.csdn.net/oqqHuTu12345678/article/details/126605215