由于开启了SPL和TPL的,因此,在编译uboot时会额外单独编译SPL、TPL,编译产生的镜像文件就存放在./spl、./tpl目录下。这下面的镜像生成方式与uboot基本是一模一样的。 root@ubuntu:/work/sambashare/rk3399/u-boot# ls tpl arch cmd drivers env include u-boot.cfg u-boot-tpl u-boot-tpl.dtb u-boot-tpl...
void board_init_r(gd_t *dummy1, ulong dummy2) { u32 spl_boot_list[] = { BOOT_DEVICE_NONE, BOOT_DEVICE_NONE, BOOT_DEVICE_NONE, BOOT_DEVICE_NONE, BOOT_DEVICE_NONE, }; struct spl_image_info spl_image; int ret; debug(">>" SPL_TPL_PROMPT "board_init_r()\n"); //gd->bd= ...
CONFIG_IS_ENABLED(LIBCOMMON_SUPPORT)) printf(SPL_TPL_PROMPT "load file u-boot.bin failed (err=%d)\n", rc); else puts(SPL_TPL_PROMPT "load file u-boot.bin failed\n"); return -1; } spl_image->load_addr = uboot_load_addr; spl_image->entry_point = uboot_load_addr; spl_image...
what is the use of SPL (secondary program loader) u-boot SPL的理解 TPL: SPL loading SPL(and, SPL as just another U-Boot config)
ALL-$(CONFIG_SPL) += $(obj)spl/u-boot-spl.bin ALL-$(CONFIG_SPL_FRAMEWORK) += $(obj)u-boot.img ALL-$(CONFIG_TPL) += $(obj)tpl/u-boot-tpl.bin ALL-$(CONFIG_OF_SEPARATE) += $(obj)u-boot.dtb $(obj)u-boot-dtb.bin
所以我只是使用bootloader作为U-Boot的同义词,而程序加载器作为加载其他程序的任何程序的通用术语。 参考: what is the use of SPL (secondary program loader) u-boot SPL的理解 TPL: SPL loading SPL(and, SPL as just another U-Boot config)
structspl_image_infospl_image; intret; debug(">>"SPL_TPL_PROMPT"board_init_r()\n"); //gd->bd= &bdata; //board data来源于链接脚本中的.data段 spl_set_bd(); #if defined(CONFIG_SYS_SPL_MALLOC_START) mem_malloc_init(CONFIG_SYS_SPL_MALLOC_START, ...
bootrom --> spl(init ddr) --> bootrom --> tpl(load and run uboot)--> uboot 其示意图如下: 在此流程中,spl主要完成ddr初始化,由于其不带有镜像加载相关的驱动,因此执行完成后需要跳转回bootrom,由bootrom完成tpl的加载(类似atf中bl2加载完成后跳转回bl1),并由tpl完成最终uboot的加载。由于tpl的主...
⽀持 Rockchip miniloader 和 SPL/TPL 两种 Pre-loader 引导; ⽀持 LVDS、EDP、MIPI、HDMI、CVBS、RGB 等显⽰设备; ⽀持 eMMC、Nand Flash、SPI Nand flash、SPI NOR flash、SD 卡、 U 盘等存储设备启动; ⽀持 FAT、EXT2、EXT4 ⽂件系统; ...
cat spl/u-boot-spl.bin >> idbloader.img 1. 2. 建议使用流程2的方式加载U-Boot.img,因为,可以基于U-Boot源码编译出TPL/SPL,然后自主修改各种配置。 2. U-Boot包 从RK3399启动流程图中我们能看到,U-Boot包里面除了u-boot.dtb和u-boot-nodtb.bin这两个U-Boot源码编译出来的文件之外,还包含了bl31.el...