全志A33-BootLoader的两个阶段:boot0和second boot
开发板:A33,运行linux-3.4.39
主机:Ubuntu 14.04
----------------------------------------------
BootLoader阶段输出的信息:
HELLO! BOOT0 is starting!
boot0 version : 3.1.0
reg_addr 0x01f00100 =0x00000000
reg_addr 0x01f00104 =0x00000000
reg_addr 0x01f00108 =0x00000000
reg_addr 0x01f0010c =0x00000000
reg_addr 0x01f00110 =0x00000000
reg_addr 0x01f00114 =0x00000000
DRAM DRIVE INFO: V1.5
DRAM CLK =552 MHZ
DRAM simple test OK.
dram size =512
card boot number = 2
card no is 2
sdcard 2 line count 0
[mmc]: mmc driver ver 2014-07-07 16:54
[mmc]: ***Try SD card 2***
[mmc]: mmc 2 cmd 8 timeout, err 0x00000100
[mmc]: mmc 2 cmd 8 err 0x00000100
[mmc]: mmc 2 send if cond failed
[mmc]: mmc 2 cmd 55 timeout, err 0x00000100
[mmc]: mmc 2 cmd 55 err 0x00000100
[mmc]: mmc 2 send app cmd failed
[mmc]: ***Try MMC card 2***
[mmc]: MMC ver 4.5
[mmc]: SD/MMC Card: 4bit, capacity: 3776MB
[mmc]: vendor: Man 0x00450100 Snr 0x3a004a97
[mmc]: product: SEM04
[mmc]: revision: 4.7
[mmc]: ***SD/MMC 2 init OK!!!***
sdcard 2 init ok
The size of uboot is 0x000bc000.
sum=0x77d84f79
src_sum=0x77d84f79
set_mmc_para,sdly 50M 0
set_mmc_para,sdly 25M 0
Succeed in loading uboot from sdmmc flash.
Ready to disable icache.
Jump to secend Boot.
[ 0.337]
U-Boot 2011.09-rc1-00004-ga1ab41d (Jul 28 2014 - 16:21:09) Allwinner Technology
[ 0.346]version: 1.1.0
[ 0.431]pmbus: ready
[ 0.433]PMU: AXP221
[ 0.435]PMU: AXP22x found
[ 0.439]PMU: dcdc3 1200
[ 0.442]PMU: pll1 1008 Mhz,PLL6=600 Mhz
AXI=336 Mhz,AHB=200 Mhz, APB1=100 Mhz
set power on vol to default
dcdc1_vol = 3000
dcdc2_vol = 1100
dcdc3_vol = 1200
dcdc4_vol = 0
dcdc5_vol = 1500
aldo2_vol = 2500
aldo3_vol = 3000
find power_sply to end
no battery, limit to dc
fel key old mode
run key detect
no key found
0x6a
dram_para_set start
dram_para_set end
[ 0.489]DRAM: 512 MiB
relocation Offset is: 15b11000
smcl's set manager is NULL
workmode = 0
MMC: 2
[ 0.687][mmc]: mmc driver ver 2014-07-15 17:16:00
[ 0.692][mmc]: get sdc_2xmode ok, val = 1
[ 0.696][mmc]: get sdc_f_max fail,use default sdc_f_max 50000000
[ 0.702][mmc]: get card_line ok, card_line = 4
[ 0.707][mmc]: get sdc_ex_dly_used fail,use default dly
[ 0.71]: SUNXI SD/MMC: 2
[ 0.717][mmc]: mmc 2 2xmode config clk
[ 0.729][mmc]: ************Try SD card 2************
[ 0.734][mmc]: mmc 2 cmd 8 timeout, err 100
[ 0.739][mmc]: smc 2 err, cmd 8, RTO
[ 0.744][mmc]: mmc 2 mmc cmd 8 err 0x00000100
[ 0.748][mmc]: mmc send if cond failed
[ 0.752][mmc]: mmc 2 cmd 55 timeout, err 100
[ 0.756][mmc]: smc 2 err, cmd 55, RTO
[ 0.762][mmc]: mmc 2 mmc cmd 55 err 0x00000100
[ 0.766][mmc]: send app cmd failed
[ 0.769][mmc]: ************Try MMC card 2************
[ 0.795][mmc]: mmc 2 2xmode config clk
[ 0.805][mmc]: mmc 2 2xmode config clk
[ 0.815][mmc]: mmc 2 2xmode config clk
[ 0.824][mmc]: MID 000045 PSN 004a979d
[ 0.827][mmc]: PNM SEM04G -- 0x53-45-4d-30-34-47
[ 0.832][mmc]: PRV 3.10
[ 0.835][mmc]: MDT m-10 y-2015
[ 0.838][mmc]: MMC ver 4.5
[ 0.841][mmc]: ---------------mmc->clock 50000000-----------
[ 0.846][mmc]: ---------------mmc->bus_width 4--------------
[ 0.852][mmc]: SD/MMC Card: 4bit, capacity: 3776MB
[ 0.857][mmc]: boot0 capacity: 2000KB,boot1 capacity: 2000KB
[ 0.863][mmc]: ************SD/MMC 2 init OK!!!************
[ 0.869]sunxi flash init ok
In: serial
Out: serial
Err: serial
--------fastboot partitions--------
-total partitions:6-
-name- -start- -size-
boot-res : 1000000 1000000
env : 2000000 1000000
boot : 3000000 1000000
rootfs : 4000000 40000000
data : 44000000 40000000
UDISK : 84000000 0
-----------------------------------
base bootcmd=run setargs_nand boot_normal
bootcmd set setargs_mmc
key 0
recovery key high 5, low 3
cant find fstbt value
no misc partition is found
misc_message->command = 0
to be run cmd=run setargs_mmc boot_normal
mount part name boot-res
cant open script.bin, maybe it is not exist
WORK_MODE_BOOT
board_status_probe
[ 0.952]pre sys mode
sunxi_bmp_logo_display
[ 0.977][mmc]: blkcnt should not be 0
screen_id =0, screen_width =800, screen_height =480
[ 0.987]Hit any key to stop autoboot: 4
read boot or recovery all
[ 1.604]sunxi flash read :offset 3000000, 13955823 bytes OK
no signature
[ 1.615]ready to boot
para err in disp_ioctl, cmd = 0xa,screen id = 1
[ 1.621][mmc]: mmc exit start
[ 1.625][mmc]: mmc 2 2xmode config clk
[ 1.633][mmc]: mmc 2 2xmode config clk
[ 1.645][mmc]: mmc 2 cmd 8 timeout, err 100
[ 1.650][mmc]: smc 2 err, cmd 8, RTO
[ 1.655][mmc]: mmc 2 mmc cmd 8 err 0x00000100
[ 1.659][mmc]: mmc send if cond failed
[ 1.663][mmc]: mmc 2 cmd 55 timeout, err 100
[ 1.667][mmc]: smc 2 err, cmd 55, RTO
[ 1.673][mmc]: mmc 2 mmc cmd 55 err 0x00000100
[ 1.677][mmc]: send app cmd failed
[ 1.688][mmc]: mmc 2 exit ok
[ 1.691]
Starting kernel ...
分析:根据开机打印的信息,A33在内核引导阶段实际上经历了三个过程:
1. boot0阶段,上电或复位后最先执行
(1)boot0代码存放位置:~/A33-Vstar/dragonboard/brandy/basic_loader/
主要涉及Boot0_C_part.c、Boot0.s两个文件。
(2)作用:主要是CPU相关的硬件初始化,初始化并自检RAM和FLASH,并从FLASH中加载uboot
boot0源码下bsp涉及的外设只有gpio、uart、nand、ram,不涉及别的外设。
bsp代码:basic_loader/bsp/bsp_for_a67/
(3)编译:在windows平台下使用armcc结合cygwin来编译,未测试。无法在linux下进行编译。
(4)串口:boot0阶段使用uart0输出信息。
2. second boot阶段,即u-boot阶段
(1)u-boot代码存放位置:~/A33-Vstar/dragonboard/brandy/u-boot-2011.09
3. starting kernel阶段
也就表明,A33 BootLoader阶段包含了boot0和uboot两个过程。
更多推荐
所有评论(0)