cannot boot from QSPI on the LS1046A.

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

cannot boot from QSPI on the LS1046A.

ソリューションへジャンプ
1,212件の閲覧回数
Johnson_s
Contributor III

I am validating a custom board equipped with the LS1046A. I used the CodeWarrior Flash Programmer to write "PBL+u-boot" to QSPI. To enable QSPI and UART, I have configured the RCW to modify settings 12, 13, and 14.

After changing to QSPI mode with the DIP switch and powering up, nothing happens. When I observe the QSPI waveform with an oscilloscope, I can see that CS goes low 10 times after the board powers up, and then the same sequence repeats every 5 seconds. Looking at the RESET_REQ_B waveform, I can see that it responds after the 10 CS transitions, followed by another 10 CS transitions starting again. This occurs with a period of about 5 seconds. What could be the cause?

Additional notes:

  • There is no output from UART.
  • I have the CodeWarrior JTAG.
  • using a QSPI device with 16-bit word access.

Thanks.

0 件の賞賛
返信
1 解決策
1,074件の閲覧回数
yipingwang
NXP TechSupport
NXP TechSupport

It seems that there is DDR initialization problem, you need to use QCVS DDR tool to connect to your custom board to do verification to get the optimized parameters and use them to modify ATF source code.

元の投稿で解決策を見る

0 件の賞賛
返信
6 返答(返信)
1,159件の閲覧回数
yipingwang
NXP TechSupport
NXP TechSupport

Please check whether RCW is valid for your custom board.

1. You need to modify all RCW fields according to your custom board.

2. RCW image needs to be swapped before flashing to QSPI flash.

 

Please refer to the following procedure to generate ATF bl2 image, then deploy it to the target board to do verification.

1. Please use the following method to build RCW binary image in your Linux host PC.

$ git clone https://github.com/nxp-qoriq/rcw.git

$ cd rcw

$ git checkout -b LSDK-21.08 LSDK-21.08

Then modify ls1046ardb/RR_FFSSPPPH_1133_5559/rcw_1800_qspiboot.rcw according to your target board, please check all RCW fields and delete no used PBI commands.

$ make

You will get ls1046ardb/RR_FFSSPPPH_1133_5559/rcw_1800_qspiboot.bin

 

2.

$ git clone https://github.com/nxp-qoriq/atf.git
$ cd atf
$ git checkout -b LSDK-21.08 LSDK-21.08

$ sudo apt-get install gcc-aarch64-linux-gnu

$ export CROSS_COMPILE=aarch64-linux-gnu-

$ make PLAT=ls1046ardb bl2 BOOT_MODE=qspi pbl RCW=~/rcw/ ls1046ardb/RR_FFSSPPPH_1133_5559/rcw_1800_qspiboot.bin

Note: please specify RCW binary path generated by you.

You will get build/ls1046ardb/release/bl2_qspi.pbl, please program bl2_qspi.pbl at offset 0 of QSPI flash.

 

0 件の賞賛
返信
1,078件の閲覧回数
Johnson_s
Contributor III

Thank you for your response. By creating a PBL from the GitHub page you provided, I was able to start the QSPI boot. However, a new issue has arisen.

The console message stops at "NOTICE: BL2: Built: [date and time]." Do you know the cause of this?

0 件の賞賛
返信
1,075件の閲覧回数
yipingwang
NXP TechSupport
NXP TechSupport

It seems that there is DDR initialization problem, you need to use QCVS DDR tool to connect to your custom board to do verification to get the optimized parameters and use them to modify ATF source code.

0 件の賞賛
返信
1,050件の閲覧回数
Johnson_s
Contributor III

I failed both Read and Write using the QCVS DDR tool. Also, when I run Diagnose Connection in the "Target Connections" tab, an error is output at the Test DDR memory access section: "Cannot write data at address 0x80000000."

What areas do I need to modify on https://github.com/nxp-qoriq/atf.git to initialize the DDR for my custom board? Currently, I am creating a PBL based on the LS1046ARDB.

0 件の賞賛
返信
1,047件の閲覧回数
yipingwang
NXP TechSupport
NXP TechSupport

Would you please create a new thread to discuss your new problem?

0 件の賞賛
返信
1,011件の閲覧回数
Johnson_s
Contributor III

I have posted a new thread on the forum.

Cannot write data at address 0x80000000 - NXP Community

0 件の賞賛
返信