(1)start.S的修改
//重定位移植
.globl _TEXT_BASE
_TEXT_BASE:
.word CONFIG_SYS_TEXT_BASE

//重定位移植
.globl _bss_start
_bss_start:
.word __bss_start
.globl _bss_end
_bss_end:
.word _end

//重定位移植
ldr r1, =0x41414141
ldr r2, =0XE2900820
str r1, [r2] @'A'

//重定位移植
ldr sp, _TEXT_BASE /* setup temp stack pointer */
sub sp, sp, #12
mov fp, #0 /* no previous frame, so fp=0 */
ldr r0, =0xff000fff
bic r1, pc, r0 /* r0 <- current base addr of code */
ldr r2, _TEXT_BASE /* r1 <- original base addr in ram */
bic r2,

本文详细介绍了如何移植UBoot,包括start.S和lowlevel_init.S的修改,movi.c和movi.h的复制与修改,crt0.S的调整,Makefile和u-boot.lds的更新,以及移植后的结果展示。
最低0.47元/天 解锁文章
271

被折叠的 条评论
为什么被折叠?



