NXP MCU 技术论坛
直播中

王飞

8年用户 1191经验值
私信 关注
[问答]

MRT_SYS_EVB V3开发板如何选择开机模式?

1. U-boot 端需要做哪些配置?
2.MRT_SYS_EVB V3开发板如何选择开机模式?

回帖(1)

回头太晚

2025-3-27 18:17:12

针对MRT_SYS_EVB V3开发板的开机模式选择及U-boot配置,以下是详细的步骤说明:




1. 硬件启动模式配置



  • 拨码开关/跳线设置

    开发板通常通过物理拨码开关或跳线选择启动源(如eMMC、SD卡、USB等)。请参考开发板手册确认开关位置及对应模式。例如:

    • 拨码开关为 0101 时从eMMC启动。

    • 拨码开关为 1010 时从SD卡启动。





2. U-boot 配置步骤


(1) 进入U-boot命令行


开发板启动时,在串口终端按下任意键(如空格或回车)中断自动引导,进入U-boot命令行。


(2) 查看与修改启动参数




  • 查看当前环境变量  


    printenv

    重点关注 bootcmd(引导命令)、bootargs(内核参数)及 boot_targets(启动设备优先级)。




  • 设置启动设备(以eMMC为例)  


    # 选择eMMC设备(假设eMMC为mmc0)
    mmc dev 0
    # 设置从eMMC加载内核镜像和设备树
    setenv load_kernel 'load mmc 0:1 ${kernel_addr_r} /boot/zImage'
    setenv load_dtb 'load mmc 0:1 ${fdt_addr_r} /boot/board.dtb'



  • 配置启动命令(bootcmd)

    根据启动模式修改 bootcmd


    # 从eMMC启动
    setenv bootcmd 'run load_kernel; run load_dtb; bootz ${kernel_addr_r} - ${fdt_addr_r}'

    # 从SD卡启动(假设SD卡为mmc1)
    setenv bootcmd 'mmc dev 1; load mmc 1:1 ${kernel_addr_r} /boot/zImage; bootz ${kernel_addr_r}'

    # 网络启动(TFTP)
    setenv bootcmd 'dhcp ${kernel_addr_r} 192.168.1.100:/tftpboot/zImage; bootz ${kernel_addr_r}'



  • 设置启动顺序(boot_targets)

    若支持多设备自动探测,可定义优先级:


    setenv boot_targets 'mmc0 mmc1 usb0 pxe'
    setenv bootcmd 'run distro_bootcmd'  # 启用自动探测



  • 配置内核参数(bootargs)

    确保根文件系统路径与设备匹配:


    # 从eMMC的第二个分区挂载根文件系统
    setenv bootargs 'console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootwait'



(3) 保存配置


saveenv

将环境变量保存到持久存储(如eMMC或Flash),否则重启后配置丢失。




3. 不同启动模式示例




  • eMMC启动

    确保镜像已烧录至eMMC,配置bootcmd指向mmc0。




  • SD卡启动

    将镜像拷贝到SD卡,调整mmc dev设备号并更新bootcmd




  • 网络启动(TFTP)

    配置U-boot网络参数:


    setenv serverip 192.168.1.100  # TFTP服务器IP
    setenv ipaddr 192.168.1.200    # 开发板IP





4. 注意事项



  • 设备编号验证

    使用mmc listusb start确认存储设备编号(如mmc0/mmc1)。

  • 镜像兼容性

    确保内核(zImage/uImage)、设备树与根文件系统匹配当前硬件。

  • 恢复默认配置

    若配置错误,执行env default -a恢复默认,再saveenv




通过以上步骤,可灵活配置MRT_SYS_EVB V3开发板的启动模式。具体参数请以硬件手册和实际镜像路径为准。

举报

更多回帖

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