微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 自动识别启动模式Nand Or Nor

自动识别启动模式Nand Or Nor

时间:11-22 来源:互联网 点击:

4.1.5)在Nor Flash中启动的话,那么Nor Flash搬移代码如下:

relocate:

ldr r1, =(0xdeadbeef)
cmp r0, r1
bne loop3

adr r0, _start
ldr r1, _TEXT_BASE
ldr r2, _armboot_start
ldr r3, _bss_start
sub r2, r3, r2
add r2, r0, r2

copy_loop:
ldmia r0!, {r3-r10}
stmia r1!, {r3-r10}
cmp r0, r2
ble copy_loop

SetBootFlag:
ldr r0, =bBootFrmNORFlash
mov r1, #1
str r1, [r0]

4.1.6)删除下面这段代码

//#ifndef CONFIG_SKIP_RELOCATE_UBOOT
//relocate:
// adr r0, _start
// ldr r1, _TEXT_BASE
// cmp r0, r1
// beq stack_setup

// ldr r2, _armboot_start
// ldr r3, _bss_start
// sub r2, r3, r2
// add r2, r0, r2

//copy_loop:
// ldmia r0!, {r3-r10}
// stmia r1!, {r3-r10}
// cmp r0, r2
// ble copy_loop
//#endif

4.2.1)在_start_armboot: .word start_armboot 后面添加:

#define STACK_BASE 0x33f00000
#define STACK_SIZE 0x10000
.align 2
DW_STACK_START: .word STACK_BASE+STACK_SIZE-4

Notes1):如果你不是第一次移植UBOOT那么建议好好的理解一下上面这些代码<当然加入你还是第一次的话那么好了直接COPY吧很管用的>

Notes2):上面用到了一个nand_read_ll函数,该函数用来读NANDFLASH的<下一篇就是实现这个UBOOT对NAND的支持了先休息一下吧>

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top