我们基于Atlas 200I A2加速模块的自研底板,在升级模式时上电后启动失败,eMMC初始化完好,但是SerDes 0被自动修改为了SATA
升级模式启动日志如下:
里面有报错打印:
Update ds[0] to sata mode
macro[0] protocols:
ds[0] : SATA
ds[1] : PCIE
ds[2] : PCIE
ds[3] : PCIE
macro[1] protocols:
ds[0] : PCIE
ds[1] : USB
ds[2] : USB
ds[3] : USB
Macro[0] power up (time 438ms)
ERROR: Macro[0] Calibration failed
ERROR: Macro[0] macro init failed
正常启动模式,由于eMMC还没有烧录系统,启动如下:
启动时SerDes 0也同样被自动修改为了SATA
我们基于Atlas 200I A2加速模块的自研底板,在升级模式时上电后启动失败,eMMC初始化完好,但是SerDes 0被自动修改为了SATA
升级模式启动日志如下:
ep/rc mode: 0 Enable wdg. #1 Pll Init ..pll[0] inited pll[2] inited pll[3] inited pll[4] inited pll[5] inited OK. reset src:0x00000001 lsadc dreset ok lsadc0 init ok adc0in0:10 adc0in1:589 adc0in2:92 adc1in2:93 adc1in3:587 adc boardId:51150 Load main hboot1_a Load main hilink25 hboot1a hash a082466e. Boot Entry. Load main hboot1_b [0.090] [BOOT_TRACE]1b start current[3], last[0] Dfx init l2 xloader done Hboot1_a point:[06] 01 02 05 06 11 15 21 65 28 95 198 11 00 128 209 137 96 117 49 220 sfc set Qline. SfcDevId: 1a67c8 Boot entry(119) Iso state: 0x0 pll[6] inited pll[7] inited pll[8] inited pll[9] inited pll[10] inited Board info: sctrl pad info:0xd0900 boardid:51150 bootmode:4 rc/ep mode:0 pg info:0 reset reason:0x1 sfc mode:4byte secure boot:1 current[4], last[0] [0.140] [BOOT_TRACE]Load main userbasecfg non-secure vef success! current[5], last[0] [0.148] [BOOT_TRACE]Load main sysbasecfg SyscfgProc [345|1|1] Update bitmap: 0xf 0x1 0x1 0x0 0x3 0x3 0x0 0x0 0x0 0x0 0x0 0x0 0x1 0x7 0xf 0x3f bitmap info update load success SyscfgProc [347|1|1] write share info ok write nosec share info ok current[6], last[0] [0.177] [BOOT_TRACE]Load main lpddr [0.211] [BOOT_TRACE]Dreset Ts OK current[7], last[0] [0.226] [BOOT_TRACE]Load main hsmtag current[8], last[0] [0.248] [BOOT_TRACE]Load main atf report atf info to ddr OK current[9], last[0] [0.289] [BOOT_TRACE]Load main hboot2 non-secure vef success! report uefi info to ddr OK PCIE0/1/2/3 RC Config Preset OK. use macro setting from syscfg Update ds[0] to sata mode macro[0] protocols: ds[0] : SATA ds[1] : PCIE ds[2] : PCIE ds[3] : PCIE macro[1] protocols: ds[0] : PCIE ds[1] : USB ds[2] : USB ds[3] : USB Macro[0] power up (time 438ms) ERROR: Macro[0] Calibration failed ERROR: Macro[0] macro init failed current[12], last[0] [0.211] [BOOT_TRACE] ddr init start Dis all msd swapType: 0x1 Zq cal start Zq cal ok C0 R2 S800 M1,R36666 C1 R2 S800 M1,R36666 C2 R2 S800 M1,R36666 C3 R2 S800 M1,R36666 C4 R2 S800 M1,R36666 C5 R2 S800 M1,R36666 ChMap: 0x3f ddr freq: 2131 iecc disable Rpt 0x3000, fb 0x800, msdw 0x3000 [0.709] [BOOT_TRACE] ddr init end Dfx init ddr done Init bbox data region Copy cfg OK. Copy cfg OK. Copy ddr Cache done. current[13], last[0] [0.788] [BOOT_TRACE]finish image load. current[28], last[0] current[70], last[0] [796.796]Dreset main core... Jump to HSM... NOTICE: Mp conf...NOTICE: ok NOTICE: Booting Trusted Firmware NOTICE: BL1: NOTICE: BL1: Built : NOTICE: BL1: Booting BL2 NOTICE: BL2: NOTICE: BL2: Built : NOTICE: BL1: Booting BL31 NOTICE: BL31: NOTICE: BL31: Built : NOTICE: HSM boot keypoint 0x7807f! NOTICE: A55 wfi ...NOTICE: OK NOTICE: A55 close NOTICE: jumper to uefi [898] [ 258][SetBootKeypoint] [0.970]------------------------------STAGE_UEFI_START [ 260][SetBootKeypoint] current keypoint[71], last keypoint[0]. [ 1028][PcieRcInitEntry] PcieMode=0 [ 143][GetSerdesInfoFromSysCfgOrUserCfg] Pirnt UserSerdesInfo: [ 114][SerdesInfoPrint] Serdes info: [ 121][SerdesInfoPrint] serdes: 0 0 0 0 0 0 4 0 3 0 [ 121][SerdesInfoPrint] serdes: 1 0 0 0 0 0 255 0 3 0 [ 121][SerdesInfoPrint] serdes: 2 0 0 0 0 0 255 0 3 0 [ 121][SerdesInfoPrint] serdes: 3 0 0 0 0 0 255 0 3 0 [ 121][SerdesInfoPrint] serdes: 4 0 0 0 0 0 1 0 3 0 [ 121][SerdesInfoPrint] serdes: 5 2 0 0 0 0 255 0 5 0 [ 121][SerdesInfoPrint] serdes: 6 2 0 0 0 0 255 0 5 0 [ 121][SerdesInfoPrint] serdes: 7 2 0 0 0 0 255 0 5 0里面有报错打印:
Update ds[0] to sata mode
macro[0] protocols:
ds[0] : SATA
ds[1] : PCIE
ds[2] : PCIE
ds[3] : PCIE
macro[1] protocols:
ds[0] : PCIE
ds[1] : USB
ds[2] : USB
ds[3] : USB
Macro[0] power up (time 438ms)
ERROR: Macro[0] Calibration failed
ERROR: Macro[0] macro init failed
正常启动模式,由于eMMC还没有烧录系统,启动如下:
ep/rc mode: 0 Enable wdg. #1 Pll Init ..pll[0] inited pll[2] inited pll[3] inited pll[4] inited pll[5] inited OK. reset src:0x00000001 lsadc dreset ok lsadc0 init ok adc0in0:11 adc0in1:589 adc0in2:92 adc1in2:92 adc1in3:589 adc boardId:51150 Load main hboot1_a Load main hilink25 hboot1a hash a082466e. Boot Entry. Load main hboot1_b [0.090] [BOOT_TRACE]1b start current[3], last[0] Dfx init l2 xloader done Hboot1_a point:[06] 01 02 05 06 11 15 21 65 28 95 198 11 00 128 209 137 96 117 49 220 sfc set Qline. SfcDevId: 1a67c8 Boot entry(119) Iso state: 0x0 pll[6] inited pll[7] inited pll[8] inited pll[9] inited pll[10] inited Board info: sctrl pad info:0xd0900 boardid:51150 bootmode:4 rc/ep mode:0 pg info:0 reset reason:0x1 sfc mode:4byte secure boot:1 current[4], last[0] [0.140] [BOOT_TRACE]Load main userbasecfg non-secure vef success! current[5], last[0] [0.148] [BOOT_TRACE]Load main sysbasecfg SyscfgProc [345|1|1] Update bitmap: 0xf 0x1 0x1 0x0 0x3 0x3 0x0 0x0 0x0 0x0 0x0 0x0 0x1 0x7 0xf 0x3f bitmap info update load success SyscfgProc [347|1|1] write share info ok write nosec share info ok current[6], last[0] [0.176] [BOOT_TRACE]Load main lpddr [0.211] [BOOT_TRACE]Dreset Ts OK current[7], last[0] [0.226] [BOOT_TRACE]Load main hsmtag current[8], last[0] [0.248] [BOOT_TRACE]Load main atf report atf info to ddr OK current[9], last[0] [0.289] [BOOT_TRACE]Load main hboot2 non-secure vef success! report uefi info to ddr OK PCIE0/1/2/3 RC Config Preset OK. use macro setting from syscfg Update ds[0] to sata mode macro[0] protocols: ds[0] : SATA ds[1] : PCIE ds[2] : PCIE ds[3] : PCIE macro[1] protocols: ds[0] : PCIE ds[1] : USB ds[2] : USB ds[3] : USB Macro[0] power up (time 438ms) ERROR: Macro[0] Calibration failed ERROR: Macro[0] macro init failed current[12], last[0] [0.211] [BOOT_TRACE] ddr init start Dis all msd swapType: 0x1 Zq cal start Zq cal ok C0 R2 S800 M1,R36666 C1 R2 S800 M1,R36666 C2 R2 S800 M1,R36666 C3 R2 S800 M1,R36666 C4 R2 S800 M1,R36666 C5 R2 S800 M1,R36666 ChMap: 0x3f ddr freq: 2131 iecc disable Rpt 0x3000, fb 0x800, msdw 0x3000 [0.704] [BOOT_TRACE] ddr init end Dfx init ddr done Init bbox data region Copy cfg OK. Copy cfg OK. Copy ddr Cache done. current[13], last[0] [0.783] [BOOT_TRACE]finish image load. current[28], last[0] current[70], last[0] [791.791]Dreset main core... Jump to HSM... NOTICE: Mp conf...NOTICE: ok NOTICE: Booting Trusted Firmware NOTICE: BL1: NOTICE: BL1: Built : NOTICE: BL1: Booting BL2 NOTICE: BL2: NOTICE: BL2: Built : NOTICE: BL1: Booting BL31 NOTICE: BL31: NOTICE: BL31: Built : NOTICE: HSM boot keypoint 0x7807f! NOTICE: A55 wfi ...NOTICE: OK NOTICE: A55 close NOTICE: jumper to uefi [893] [ 258][SetBootKeypoint] [0.965]------------------------------STAGE_UEFI_START [ 260][SetBootKeypoint] current keypoint[71], last keypoint[0]. [ 1028][PcieRcInitEntry] PcieMode=0 [ 143][GetSerdesInfoFromSysCfgOrUserCfg] Pirnt UserSerdesInfo: [ 114][SerdesInfoPrint] Serdes info: [ 121][SerdesInfoPrint] serdes: 0 0 0 0 0 0 4 0 3 0 [ 121][SerdesInfoPrint] serdes: 1 0 0 0 0 0 255 0 3 0 [ 121][SerdesInfoPrint] serdes: 2 0 0 0 0 0 255 0 3 0 [ 121][SerdesInfoPrint] serdes: 3 0 0 0 0 0 255 0 3 0 [ 121][SerdesInfoPrint] serdes: 4 0 0 0 0 0 1 0 3 0 [ 121][SerdesInfoPrint] serdes: 5 2 0 0 0 0 255 0 5 0 [ 121][SerdesInfoPrint] serdes: 6 2 0 0 0 0 255 0 5 0 [ 121][SerdesInfoPrint] serdes: 7 2 0 0 0 0 255 0 5 0 [ 1963][AutoBootLinux] auto boot. [ 1968][AutoBootLinux] defined SLT N [ 1974][AutoBootLinux] defined MDC N [ 1980][AutoBootLinux] defined TEST N [ 1986][AutoBootLinux] defined BIOS_GTEST N [ 1992][AutoBootLinux] defined AS610 N [ 2013][AutoBootLinux] This is eMMC boot entry [ 1832][EmmcSdStartOs] emmcsd init [ 2275][EmmcInitAct] SD/eMMC host init OK! [ 2281][EmmcInitAct] EMMC_MODE [ 1834][EmmcSdStartOs] emmcsd end [ 748][GetPartInfoHead] partition info head Magic = 0 invalid [ 748][GetPartInfoHead] partition info head Magic = 0 invalid [ 771][GetPartHeadEntry] get main and back partition info fail [ 791][GetPartitionInfo] get partition info or ctrl head fail, Status = Invalid Parameter [ 2043][AutoBootLinux] Normal boot fail, Status = Invalid Parameter. start to b .启动时SerDes 0也同样被自动修改为了SATA