Firefly开源社区
标题:
关于启动地址的疑问
[打印本页]
作者:
secondid
时间:
2017-1-22 10:44
标题:
关于启动地址的疑问
本帖最后由 secondid 于 2017-1-22 11:37 编辑
上电后RK3288把2k的代码复制到内部sram中运行,请问sram的地址映射在0吗,uboot中start.s的代码如下,
.globl reset
reset:
/*
* check loader tag
*/
#ifdef CONFIG_ROCKCHIP
ldr r0, =__loader_tag
ldr r1, [r0] /*疑问:这里访问链接地址,链接地址是从0开始,而sarm地址是在FF70_0000附近,启动后代码应当在sram中,访问链接地应该出错啊,如果是在ddr中运行或者sarm地址映射到0附近才可以解释*/
ldr r0, =LoaderTagCheck /*在__image_copy_start到end之间*/
ldr r0, [r0]
cmp r1, r0
movne pc, r14/*两个链接地址存的都是0x4B415351*/
#endif
复制代码
在lowlevel_init.s中把临时栈地址设在了128M的位置,ldr sp, =CONFIG_SYS_INIT_SP_ADDR/*设置sp指向128M*/ 也是ddr的地址,难道这时候DDR已经初始化完了?或者是BOOTROM已经把DDR初始化了?
作者:
secondid
时间:
2017-1-22 18:32
自己回复下,发现uboot未初始化串口时,串口收到如下内容,bootrom已经完成DDR的初始化。
DDR Version 1.00 20160530
In
Channel a: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Channel b: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Memory OK
Memory OK
OUT
欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/)
Powered by Discuz! X3.1