intarch_fixup_fdt(void*blob){...#if defined(CONFIG_ARMV7_NONSEC) || defined(CONFIG_OF_LIBFDT)bd_t*bd=gd->bd;intbank;u64start[CONFIG_NR_DRAM_BANKS];u64size[CONFIG_NR_DRAM_BANKS];#ifdef CONFIG_BIDRAMbidram_fixup();#endiffor(bank=0;bank<CONFIG_NR_DRAM_BANKS;bank++){start[bank]...
1. u-boot对fdt(flattened device tree)的支持。 实现:只要加入 #define CONFIG_OF_LIBFDT /* Device Tree support */ 重新编译u-boot,就可以实现对device tree的支持。 2. u-boot下的fdt命令使用 2.1 首先查看fdt的帮助信息。 U-Boot> fdt fdt - flattened device tree utility commands Usage: fdt addr ...
在xxx_defconfig中加入 #define CONFIG_OF_LIBFDT 1 /* Device Tree support */ 重新编译u-boot,就可以实现对device tree的支持。 1、在uboot命令行输入: fdt 有类似显示证明支持device tree: dt - flattened device tree utility commands Usage: fdt addr [-c]<addr>[<length>] - Set the [control] fd...
七、新版的Uboot与内核之间的传参引导 使能设备树,需要在编译U-boot的时候在config文件中加入:#define CONFIG_OF_LIBFDT 一般分为三种情况: 用fdt addr ${fdtaddr}命令将dtb载入内存, 用bootz ${loadaddr} ${initrdaddr} ${fdtaddr}来引导内核,(其中initrd是临时文件系统,嵌入式中用得极少)实际使用时用“-”...
在obj-$(CONFIG_CMD_FDT) += fdt.o的下面添加 obj-$(CONFIG_OF_LIBFDT) += dtfile.o UID配置 复制源码和添加源码 cp -rf ebf_linux_uboot/include/init.h u-boot-2021.10-rc4/include/ cp -rf ebf_linux_uboot/common/board_r.c u-boot-2021.10-rc4/common/board_r.c ...
long fb_base; /* 如果定义了CONFIG_LCD或CONFIG_VIDEO,则此变量保存frameBuffer内存的基地址 */ #endif #if defined(CONFIG_POST) unsigned long post_log_word; /* Record POST activities */ unsigned long post_log_res; /* success of POST test */ unsigned long post_init_f...
#ifdef CONFIG_OF_LIBFDT 支持FDT会执行这里。 if (images->ft_len) return bootm_linux_fdt(machid, images); #endif kernel_entry= (void (*)(int, int, uint))images->ep; //linux的入口点,为某个物理地址。 这里让函数指针指向内核映像的入口物理地址 ...
CONFIG_OF_SEPARATE=y // 是否将dtb和uboot分离表一 所以在uboot的编译中,和spl的最大区别是还要编译dtb。 (前面我们将的spl是没有使用dtb的,当然好像也可以使用dtb,只是我没有试过)。 U-Boot编译命令 对于mini2440开发板,编译U-Boot需要执行如下的命令: ...
int image_setup_libfdt(bootm_headers_t *images, void *blob, int of_size, struct lmb *lmb){ ulong *initrd_start = &images->initrd_start; ulong *initrd_end = &images->initrd_end; int ret = -EPERM; int fdt_ret; // 进行架构特定的设备树修正 if (arch_fixup_fdt(blob) < 0) { prin...
uboot也要先配置,配置方法是:首先cd进入uboot源码的根目录,然后在根目录下执行:make x210_sd_config(就看Makefile中的那个目标来确定,其实也就是include/configs/目录下的配置文件后面加上_config,比如我这里include/configs/x210_sd.h,所以这里就是make x210_sd_config)。执行配置命令后,如果出现:Configuring for...