start.S, init.c来修改uboot代码新的uboot链接地址位于0,且在arm-linux-ld时加了”-pie”选项, 使得u-boot.bin里多了"*(.rel*)", "*(.dynsym...LDFLAGS_u-boot += -pie”这行即可
2.修改之前的init.c
将以前写uboot里的init.c放入board/samsung/smdk2440目录, 并检查是否有同名函数名,若函数只在同文件使用...-0x33f80000=512k uboot 512k足以
ldr r2,_bss_start_ofs // _bss_start_ofs: __bss_start - _start (有效代码大小...,=0x00000000
bl board_init_f
上面的_TEXT_BASE,在start.S靠前处定义:
由于它位于靠前处,保证了_TEXT_BASE存在前4k空间里,若直接使用...:
#ifndef CONFIG_SPL_BUILD
ldr r0, _bss_start_ofs
ldr r1, _bss_end_ofs
mov r4, r6 /* reloc addr