AnsweredAssumed Answered

LX2160ARDB - Composite Image with PCIe Gen4

Question asked by Tuan Nguyen on Mar 7, 2019
Latest reply on Mar 25, 2019 by Tuan Nguyen

Hello everyone,

 

Thank you again for your help on my other issue the other day. Today I have another issue with the composite image / RCW firmware flashing.

 

My board originally does not have PCIe Gen4 enabled when it was shipped. There is a workaround to flash a customized RCW firmware (with SRDS_DIV_PEX_S3 set to 0) to Dev#1 that a co-worker from the other site gave me that worked for me meaning I got PCIe Gen4 when booting with Dev#1.

 

I then used flexbuild from BSPv0.5 to build a composite image with SRDS_DIV_PEX_S3 set to 0 and flash it on Dev#1 (I am still not able to get SD or USB to work.) The image boots great but the PCIe link is limited as Gen3. I checked the RCW file (rcw_2000_700_2900_19_5_2.rcw) carefully to make sure the workaround is there and the file is built when flex-builder combines the firmware to generate the image but I don't know why the content of the RCW when it boots is not what I expected. Here is the RCW with my built composite image:

U-Boot 2018.09 (Feb 23 2019 - 22:52:29 +0000)

SoC: LX2160ACE Rev1.0 (0x87360010)
Clock Configuration:
CPU0(A72):2000 MHz CPU1(A72):2000 MHz CPU2(A72):2000 MHz
CPU3(A72):2000 MHz CPU4(A72):2000 MHz CPU5(A72):2000 MHz
CPU6(A72):2000 MHz CPU7(A72):2000 MHz CPU8(A72):2000 MHz
CPU9(A72):2000 MHz CPU10(A72):2000 MHz CPU11(A72):2000 MHz
CPU12(A72):2000 MHz CPU13(A72):2000 MHz CPU14(A72):2000 MHz
CPU15(A72):2000 MHz
Bus: 700 MHz DDR: 2900 MT/s
Reset Configuration Word (RCW):
00000000: 50777738 1c500050 00000000 00000000
00000010: 00000000 0c010000 00000000 00000000
00000020: 016001a0 00002580 00000000 00000096
00000030: 00000000 00000000 00000000 00000000
00000040: 00000000 00000000 00000000 00000000
00000050: 00000000 00000000 00000000 00000000
00000060: 00000000 00000000 00027000 00000000
00000070: 08b30010 001d0020
Model: NXP Layerscape LX2160ARDB Board

Here is what I expected (before I flashed my built composite image)

 

U-Boot 2017.07+fsl+g88d4384 (Nov 16 2018 - 00:29:41 +0000)

SoC:  LX2160ACE Rev1.0 (0x87360010)
Clock Configuration:
       CPU0(A72):2000 MHz  CPU1(A72):2000 MHz  CPU2(A72):2000 MHz
       CPU3(A72):2000 MHz  CPU4(A72):2000 MHz  CPU5(A72):2000 MHz
       CPU6(A72):2000 MHz  CPU7(A72):2000 MHz  CPU8(A72):2000 MHz
       CPU9(A72):2000 MHz  CPU10(A72):2000 MHz  CPU11(A72):2000 MHz
       CPU12(A72):2000 MHz  CPU13(A72):2000 MHz  CPU14(A72):2000 MHz
       CPU15(A72):2000 MHz
       Bus:      700  MHz  DDR:      2900 MT/s
Reset Configuration Word (RCW):
       00000000: 50777738 1c500050 00000000 00000000
       00000010: 00000000 0c010000 00000000 00000000
       00000020: 020001a0 00002580 00000000 00000096
       00000030: 00000000 00000000 00000000 00000000
       00000040: 00000000 00000000 00000000 00000000
       00000050: 00000000 00000000 00000000 00000000
       00000060: 00000000 00000000 00027000 00000000
       00000070: 08b30010 000d0022
Model: NXP Layerscape LX2160ARDB Board

 

Since I don't have PCIe Gen4 with my built composite image, I tried to flash the customized RCW file I have from the co-worker to Dev#1 (already has my built composite image on it) but the result is that the board hangs immediately when the boot switches to Dev#1 (nothing printed out on the console.)

 

I am trying to follow the process using yocto-sdk in the BSPv0.4 but it failed with my Ubuntu 18-04, Ubuntu 16-04 and Fedora 24 servers. All failed with the following error and it seems like the source in the SDK is not valid anymore:

ERROR: linux-qoriq-4.9-r0 do_fetch: Fetcher failure: Unable to find revision 4548b3d5cf3a0d9d7177e44005bfbb05f9530d2a in branch master even from upstream
ERROR: linux-qoriq-4.9-r0 do_fetch: Fetcher failure for URL: 'git://source.codeaurora.org/external/qoriq/qoriq-components/linux;nobranch=1'. Unable to fetch URL from any source.
ERROR: linux-qoriq-4.9-r0 do_fetch: Function failed: base_do_fetch
ERROR: Logfile of failure stored in: /home/tnguyen/yocto-sdk/build_lx2160ardb/tmp/work/lx2160ardb-fsl-linux/linux-qoriq/4.9-r0/temp/log.do_fetch.9624
ERROR: Task (/home/tnguyen/yocto-sdk/sources/meta-freescale/recipes-kernel/linux/linux-qoriq_4.9.bb:do_fetch) failed with exit code '1'

 

I really need PCIe Gen4 back to my board as soon as possible so please help on one of the items below (or all of them would be so wonderful)

1. Show me how to get a composite image for the board with PCIe Gen4 enabled.

2. Show me how to get the composite image what originally loaded and shipped with the board. The U-Boot version is:

U-Boot 2017.07+fsl+g88d4384 (Nov 16 2018 - 00:29:41 +0000)

I think I will be able to flash the customized RCW firmware to the board after restoring the factory composite firmware image.

3. Show me how to get a composite image built with BSPv0.4 so that I can give it a try.

4. Show me how to extract the whole image firmware on Dev#0 and save to a file so that I will flash it to Dev#1.

5. How to enable PCIe Gen4 in RCW and build a composite image that includes the changes.

 

I really appreciate your help.

 

Thanks
Tuan

 

Outcomes