没有合适的资源?快使用搜索试试~ 我知道了~
Visio-uboot-sunxi uboot部分流程1
需积分: 0 0 下载量 194 浏览量
2022-08-03
18:19:22
上传
评论
收藏 124KB PDF 举报
温馨提示
试读
1页
Reset, cpu_init_cp15(设置cache)设置c语言环境relocate相关设置全局数据的uboot才执行)重定位sp重定位GD重设lr到重定位
资源详情
资源评论
资源推荐
arch/arm/cpu/armv7/start.S
Reset, cpu_init_cp15(设置cache)
bl _main
arch/arm/lib/crt0.S
设置c语言环境
bl board_init_f
_main
relocate相关
Ldr pc, =board_init_r
Common/board_f.c
board_
init_f
设置全局数据
initcall_run_list(
init_sequence_f)
! Defined
(CONFIG
_SPL_BU
ILD)
(SPL之后
的uboot
才执行)
重定位sp
重定位GD
重设lr到重定位的
here
relocate_code(
gd->relocaddr)
Here
Arch/arm/lib/relocate.s
relocate
_code(a
ddr_mon
i)
Arch/arm/cpu/u-
boot.lds段存储位置
__image_copy_start
__image_copy_end
copy_loop
把__image_copy_start
到__image_copy_End
拷到重定位的地址
Fixloop
修正相对寻址
返回到之前修正的
“Here”的lr
relocate_vectors
c_runtime_cpu_setup
!defined(
CONFIG_
SPL_BUI
LD) ||
defined(
CONFIG_
SPL_FRA
MEWOR
K)
CONFIG_SPL_BUILD
spl_relocate_stack_gd
board_init_r(
gd_t,dest_addr)
U-Boot 2016.09-rc1 (Aug 03 2016 - 20:50:49
+0800) Allwinner Technology
CPU: Allwinner A13 (SUN5I)
Model: Lichee A13
I2C: ready
DRAM: 512 MiB
print_cpuinfo
show_board_info
init_func_i2c
dram_init
display_options
Common/board_r.c
board_
init_r
设置全局数据
initcall_run_list(
init_sequence_r)
MMC: part_init
*** Warning - bad CRC, using default environment
Setting up a 800x480 lcd console (overscan 0x0)
In: serial
Out: vga
Err: vga
Net: No ethernet found.
video_hw_init@drivers/video/sunxi_display.c
貌似是重定位错误造成环境变量丢失,使用默认变量
run_main_loop
Common/main.c
Run_main_loop
main_loop
bootdelay_process
autoboot_command
读取boot.scr
执行启动命令
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot.scr
reading /boot.scr
339 bytes read in 22 ms (14.6 KiB/s)
## Executing script at 43100000
reading script.bin
27312 bytes read in 33 ms (807.6 KiB/s)
reading uImage
4338280 bytes read in 307 ms (13.5 MiB/s)
## Booting kernel from Legacy Image at 42000000 ...
Image Name: Linux-3.4.104
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 4338216 Bytes = 4.1 MiB
Load Address: 40008000
Entry Point: 40008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
Starting kernel ...
bootm 0x42000000 @common/bootm.c
load mmc 0:1 0x43000000 script.bin
load mmc 0:1 0x42000000 uImage
boot_get_kernel
bootm_find_os
image_get_type
image_get_comp
image_get_os
image_get_image_end
image_get_load
image_get_arch
do_bootm_linux
boot_jump_linux
announce_and_cleanup
kernel_entry(0, machid, r2);
Starting kernel ...
AshleyK
- 粉丝: 15
- 资源: 315
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0