uboot下init_sequence_f函数之reserve_fdt

本文介绍U-Boot环境下为设备树(FDT)预留内存的过程。针对不同配置,代码会检查设备树是否需要重新定位,并据此调整内存布局。特别地,如果设备树位于镜像上方,则需要为其预留足够的空间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

reserve_fdt:

static int reserve_fdt(void) { #ifndef CONFIG_OF_EMBED  /*   * If the device tree is sitting immediately above our image then we   * must relocate it. If it is embedded in the data section, then it   * will be relocated with other data.   */  if (gd->fdt_blob) {   gd->fdt_size = ALIGN(fdt_totalsize(gd->fdt_blob) + 0x1000, 32);

  gd->start_addr_sp -= gd->fdt_size;   gd->new_fdt = map_sysmem(gd->start_addr_sp, gd->fdt_size);   debug("Reserving %lu Bytes for FDT at: %08lx\n",         gd->fdt_size, gd->start_addr_sp);  } #endif

 return 0; }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值