Hi,
We are using LX2160A in our custom board. Processor is not booting (DDR reset is low)
Our configuration is:
DDR4 x32bit @2600MTPS on both controllers.
Flex SPI is the RCW SRC.
HRESET is going high and ASLEEP is low.
When we try to read the registers as per LX2160ARM we are getting below value
0x01E001FC (DCFG_SCRATCHRW3): looks like no error code
+0 +4 +8 +C
[0x01E001E4] 00000000 00000000 00000000 00000000
[0x01E001F4] 00000000 00000000 00000000 00000000
[0x01E00204] 00000000 00000000 00000000 00000000
[0x01E00214] 00000000 00000000 00000000 00000000
[0x01E00224] 00000000 00000000 00000000 00000000
0x01E6_0104 (RCW_COMPLETIONR): Service Processor has completed the RCW loading
0x01E6_0114 (PBI_COMPLETION): Service Processor has complete the PBI phase, also Service Processor Core is in Boot Holdoff and not released for Booting
+0 +4 +8 +C
[0x01E600F0] 00000000 00000000 00000000 00000000
[0x01E60100] 00000000 00000001 00000000 00000000
[0x01E60110] 00000000 00000001 00000000 00000000
[0x01E60120] 00000000 00000000 00000000 00000000
We are unable to boot DDR or validate DDR using DDRv tool in QCVS or get any UART prints
What may be the possible cause of this issue?
Do we need to modify any other registers other than RCW for processor to boot?
Solved! Go to Solution.
Please rebuild RCW with command
$ flex-builder -c rcw -m lx2160ardb_rev2
2. $ flex-builder -c rcw -m lx2160ardb_rev2
Please modify RCW file components/firmware/rcw/lx2160ardb_rev2/XGGFF_PP_HHHH_RR_19_5_2/rcw_2200_750_3200_19_5_2.rcw according to your target board.
$ flex-builder -c rcw -m lx2160ardb_rev2
I am analyzing the RCW and PBL.
Meanwhile, I would like to confirm the following:
1. UART logs says transmission is successful. You are able to see the print on console? or any toggling on oscilloscope?
You are able to do this when booting from nor?
2. Can you try booting the board with disabling serdes and removing PBI commands?
While building rcw it is asking for username and password for github.com I have provided something, and authentication failed but the image is getting generated. Can I use this file in my board? or do I have to provide proper details when it asks for username and password, and if I have to provide then what should I provide exactly?
Below is the log for the same:
repo: xserver
tag: xorg-server-1.20.9
Cloning into '/home/sbc/Downloads/flexbuild_lsdk2108_github/components/apps/graphics/xserver'...
Username for 'https://github.com': sbc
Password for 'https://sbc@github.com':
remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/get-started/getting-started-with-git/about-remote-repositories#cloning-with-... for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/freedesktop/xorg-xserver.git/'
repo: gpulib
tag: LSDK-21.08
repo: wayland
tag: 1.18.0
Cloning into '/home/sbc/Downloads/flexbuild_lsdk2108_github/components/apps/graphics/wayland'...
Username for 'https://github.com': sbc
Password for 'https://sbc@github.com':
remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/get-started/getting-started-with-git/about-remote-repositories#cloning-with-... for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/wayland-project/wayland.git/'
make: *** [/home/sbc/Downloads/flexbuild_lsdk2108_github/include/app_repo_update.inc:28: graphics_repo_fetch] Error 128
make: Leaving directory '/home/sbc/Downloads/flexbuild_lsdk2108_github/packages/apps'
make: Entering directory '/home/sbc/Downloads/flexbuild_lsdk2108_github/packages/apps/graphics'
make: *** No rule to make target 'graphics_repo_fetch'. Stop.
make: Leaving directory '/home/sbc/Downloads/flexbuild_lsdk2108_github/packages/apps/graphics'
The default rcw file (rcw_2200_750_3200_19_5_2.rcw) has only little few parameters defined. All 1024 bits are not defined. I'm just modifying the fields that are required specifically for our board. Is this okay? or I have to define all the rcw fields as per the reference manual document (lx2160arm): 4.9.8.9 Reset Control Word (RCW) Register Descriptions.
Is it possible to run LSDK in windows PC using WSL or VM, if yes please provide procedure to install it in windows PC.
You could install VM on your Windows PC, then install Ubuntu 20.04 on it, then install LSDK 21.08.
1. Please install the attached LSDK 21.08 to an Ubuntu 20.04 PC.
Set up the build environment.
$ cd flexbuild_lsdk2108_github
$ source setup.env
2. $ flex-builder -c rcw -m lx2160ardb_rev2
Please modify RCW file components/firmware/rcw/lx2160ardb_rev2/XGGFF_PP_HHHH_RR_19_5_2/rcw_2200_750_3200_19_5_2.rcw according to your target board.
$ flex-builder rcw -m lx2160ardb_rev2
3. $ flex-builder -c atf -m lx2160ardb_rev2 -b xspi
Go to ATF source code folder flexbuild_lsdk2108_github/components/firmware/atf, please modify plat/nxp/soc-lx2160a/lx2160ardb/plat_def.h as the following, if you are using UART1 rather than UART0.
#define NXP_CONSOLE_ADDR NXP_UART_ADDR
Modify to:
#define NXP_CONSOLE_ADDR NXP_UART1_ADDR
Rebuild atf image:
$ flex-builder -c atf -m lx2160ardb_rev2 -b xspi
4. You will get image bl2_flexspi_nor.pbl and fip_uboot.bin in folder flexbuild_lsdk2108_github/build/firmware/atf/lx2160ardb_rev2/.
Please deploy bl2_flexspi_nor.pbl at 0x00000000 and fip_uboot.bin at 0x00100000 on the flexspi NOR flash.
I tried the lsdk commands and flashed the image, still there is not prints on UART. we have some issues with the Ubuntu PC. Is there any other method we can try this on windows? running windows subsystem for Linux or through virtual machine?
Investigating with your information.
Discussing with the AE team.