当uboot去启动系统的时候,最先执行的环境变量为bootcmd。 通过上面可以看出,bootcmd是要去执行distro_bootcmd。distro_bootcmd又去执行boot_ft。 boot_ft调用了load_fdt_ft、load_kernel_ft。 load_fdt_ft用ext4load命令从sata盘(scsi就是sata接口)将dtb设备树加载到了0x90000000内存地址。 load_kernel_ft用ext4...
bootcmd=run distro_bootcmd 启动目标Boot Targets distro_bootcmd 变量的定义和使用方式因供应商而异,但它通常包含一系列命令,用于扫描预定义的潜在启动目标列表以搜索启动附加信息,如下所示。 boot_targets=mmc0 jtag mmc0 mmc1 qspi0 nand0 usb0 usb1 scsi0 pxe dhcp distro_bootcmd=scsi_need_init=; for...
"bootcmd=" CONFIG_BOOTCOMMAND "\0" #endif 如上bootcmd的命令是 CONFIG_BOOTCOMMAND 最终定位到如下 #define RKIMG_BOOTCOMMAND \ "boot_android ${devtype} ${devnum};" \ "boot_fit;" \ "bootrkp;" \ "run distro_bootcmd;" #endif devtype 和 devnum都是环境变量,uboot会调用已经实现的boot_...
scan_dev_for_extlinux定义在uboot源码:ebf_linux_uboot/include/config_distro_bootcmd.h结合前面变量可知:devtype是mmc,devnum是1,distro_bootpart是2,而scriptaddr在uboot查看为0xc4100000。那么以上内容则是扫描特定设备上是否存在Extlinux的配置文件,检查 ${devtype}:${devnum}:${distro_bootpart},也...
当uboot去启动系统的时候,最先执行的环境变量为bootcmd。 通过上面可以看出,bootcmd是要去执行distro_bootcmd。distro_bootcmd又去执行boot_ft。 boot_ft调用了load_fdt_ft、load_kernel_ft。 load_fdt_ft用ext4load命令从sata盘(scsi就是sata接口)将dtb设备树加载到了0x90000000内存地址。
=>printenv bootcmd bootcmd=run distro_bootcmd 3. Uboot的编译 1. git 查看所有分支命令: 1 git branch -a 选择/切换分支命令 git checkout ebf_v2020_10_imx(上一个命令打印出的一个分支名) 2. uboot 编译的命令如下: 1sudo make distclean #清除上次生成的编译环境2sudo make ARCH=arm CROSS_COMP...
bootcmd_pxe=dhcp; if pxe get; then pxe boot; fi bootdelay=2 bootflash=run flashargs; cp ${ramdisk_addr} ${ramdisk_addr_r} ${maxramdisk}; bootm ${kernel_addr} ${ramdisk_addr_r} console=ttyAMA0,38400n8 cpu=armv7 distro_bootcmd=for target in ${boot_targets}; do run bootcmd_$...
第159行的“boot_android ${devtype} ${devnum};”是rk官方的安卓分区格式的启动模式,目前是ROCKCHIP官方主流启动模式,第160行的“bootrk”是rk官方的早期启动模式,第162行的“run distro_bootcmd”是一种通用的启动方式,没有仔细研究,重点说一下第161行的"boot_tftp"命令,这个命令是我自己增加的,目的是自动...
不过uboot分区不能直接挂在替换相应脚本 需要在uboot下用setenv写入,然后saveenv保存。 我为了方便,直接舍弃搜索程序,直截了当地启动kernel 这里记录一下 setenv distro_bootcmd "sysboot mmc 0:4 any 0x00500000 //extlinux/extlinux.conf" saveenv
do_run:runcmd_arg is distro_bootcmd do_run:runcmd_arg is bootcmd_mmc1 do_run:runcmd_arg is mmc_boot MMC Device 1 not found no mmc device at slot 1 do_run:runcmd_arg is bootcmd_mmc0 do_run:runcmd_arg is mmc_boot Card did not respond to voltage select! : -110 ...