LS1088ARDB custom board stoped at "Welcome to LS1088 BL31 Phase"

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LS1088ARDB custom board stoped at "Welcome to LS1088 BL31 Phase"

898 Views
suezure
Contributor II

Our LS1088ARDB board is designed with 5 DDRs(model MT40A51216),1 of these is used as ECC and board is boot from QSPI NOR flash(QSPI_A_CS0).

1. I modified  rcw_1600_qspi.rcw as follow:

SYS_PLL_RAT=7
MEM_PLL_RAT=16           //set ddr rate 1600 MT/s
CGA_PLL1_RAT=16
CGA_PLL2_RAT=16
HWA_CGA_M1_CLK_SEL=2
HWA_CGA_M2_CLK_SEL=1
DDR_REFCLK_SEL=0     //use sigle-ended DDRCLK

2. I modified ddr_init.c in atf file in MOCK DIMM way, and now console port prints:

NOTICE: Fixed DDR on board
NOTICE: 4 GB DDR4, 64-bit, CL=12, ECC on
NOTICE: BL2: v1.5(release):LSDK-20.04-update-290520-dirty
NOTICE: BL2: Built : 10:52:43, Dec 29 2020
NOTICE: BL31: v1.5(release):LSDK-20.04-update-290520-dirty
NOTICE: BL31: Built : 10:53:10, Dec 29 2020
NOTICE: Welcome to LS1088 BL31 Phase

Questions as follow:

1. Is now means DDR initiate successfully in MOCK DIMM way when BL31 shows? Refer to LSDKUG chapter 5.2.2 " In the TF-A boot flow, DDR initialization is not required in U-Boot. DDR initialization is a part of TF-A." what else I missed before I get into u-boot?

2.I used command "flex-builder -c atf/rcw/u-boot -m ls1088ardb_pb -b qspi" to build atf/rcw/u-boot files, and command "flex-builder -i mkfw -m ls1088ardb_pb -b qspi" to merge flash image. Is there some operation wrong result in the failure to boot? 

3.Besides NXP community, is there quicker communication way for Business-to-business?
 

Tags (2)
0 Kudos
2 Replies

893 Views
yipingwang
NXP TechSupport
NXP TechSupport

TF-A DDR driver is part of BL2 binary and high level boot sequence is as follows:
Boot ROM -> BL2 (DDR Init) -> BL31 -> U-boot/UEFI -> Linux Kernel
It does both DDR controller and PHY initialization.

The DDR driver supports the following board level applications for DDR:
• DIMM: Driver reads SPD for configuring DDR timing parameters
• Mock DIMM: Hardcoded timing in place of reading SPD
• Discrete DDR: Driver requires a static DDR configuration to be added

You need to modify atf/plat/nxp/soc-ls1088/ls1088ardb/ddr_init.c according to your target board.

0 Kudos

889 Views
suezure
Contributor II

Tanks for answering!

. I modified ddr_init.c in atf files with MOCK DIMM way, and now console port prints:

NOTICE: Fixed DDR on board
NOTICE: 4 GB DDR4, 64-bit, CL=12, ECC on
NOTICE: BL2: v1.5(release):LSDK-20.04-update-290520-dirty
NOTICE: BL2: Built : 10:52:43, Dec 29 2020
NOTICE: BL31: v1.5(release):LSDK-20.04-update-290520-dirty
NOTICE: BL31: Built : 10:53:10, Dec 29 2020
NOTICE: Welcome to LS1088 BL31 Phase

1. Is now means DDR initiate successfully in MOCK DIMM way when BL31 shows? Refer to LSDKUG chapter 5.2.2 " In the TF-A boot flow, DDR initialization is not required in U-Boot. DDR initialization is a part of TF-A." what else I missed before I get into u-boot?

2.I used command "flex-builder -c atf/rcw/u-boot -m ls1088ardb_pb -b qspi" to build atf/rcw/u-boot files, and command "flex-builder -i mkfw -m ls1088ardb_pb -b qspi" to merge flash image. Is there some operation wrong result in the failure to boot? 

3.Besides NXP community, is there quicker communication way for Business-to-business?

 

0 Kudos