SEC Firmware enabled in LSDK 18.03 for LS1043ARDB

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

SEC Firmware enabled in LSDK 18.03 for LS1043ARDB

1,426 Views
danlenz
Contributor II

For version 18.03 of the LSDK I am seeing SEC Firmware being loaded in the uboot log. For versions 17.09 and 18.09 I do not see the entry in the log. Can you tell me how SEC firmware is enabled / disabled and why it is only showing up in 18.03? The SEC load works fine with 18.03 on the LS1043ARDB but when I run the same version on our custom board which uses the LS1023A it crashed uboot. Is the SEC firmware not compatible with the LS1023?

   SEC Firmware: 'loadables' present in config
   loadables: 'trustedOS@1'

U boot log from LSDK 18.03:

U-Boot SPL 2017.11-g00cde47 (Mar 22 2018 - 18:28:00)
Initialzing DDR using fixed setting
Configuring DDR for 1600 MT/s data rate
Trying to boot from MMC1
mmc_init: -110, time 746
spl: mmc init failed with error: -110
SPL: failed to boot from all boot devices
### ERROR ### Please RESET the board ###

U-Boot SPL 2017.11-g00cde47 (Mar 22 2018 - 18:28:00)
Initialzing DDR using fixed setting
Configuring DDR for 1600 MT/s data rate
Trying to boot from MMC1


U-Boot 2017.11-g00cde47 (Mar 22 2018 - 18:28:00 +0800)

SoC: unknown (0x87920411)
Clock Configuration:
CPU0(A53):1600 MHz CPU1(A53):1600 MHz CPU2(A53):1600 MHz
CPU3(A53):1600 MHz
Bus: 400 MHz DDR: 1600 MT/s FMAN: 500 MHz
Reset Configuration Word (RCW):
00000000: 08100010 0a000000 00000000 00000000
00000010: 14550002 80004012 60040000 c1002000
00000020: 00000000 00000000 00000000 00038800
00000030: 00000000 00001100 00000096 00000001
Model: LS1043A RDB Board
Board: LS1043ARDB, boot from SD
CPLD: V1.5
PCBA: V3.0
SERDES Reference Clocks:
SD1_CLK1 = 156.25MHZ, SD1_CLK2 = 100.00MHZ
I2C: ready
DRAM: 1.9 GiB (DDR4, 32-bit, CL=11, ECC off)
Using SERDES1 Protocol: 5205 (0x1455)
SEC0: RNG instantiated
FSL_SDHC: 0
PPA Firmware: Version LSDK-18.03
SEC Firmware: 'loadables' present in config
loadables: 'trustedOS@1'

MMC read: dev # 0, block # 18952, count 128 ...
Not a microcode
Flash: 128 MiB
NAND: 512 MiB
MMC: *** Warning - bad CRC, using default environment

U boot log from 17.09:

U-Boot SPL 2017.07-g503eff0 (Sep 26 2017 - 15:01:33)
Initializing DDR....
WARNING: Calling __hwconfig without a buffer and before environment is ready
WARNING: Calling __hwconfig without a buffer and before environment is ready
WARNING: Calling __hwconfig without a buffer and before environment is ready
Trying to boot from MMC1


U-Boot 2017.07-g503eff0 (Sep 26 2017 - 15:01:33 +0800)

SoC: unknown (0x87920411)
Clock Configuration:
CPU0(A53):1600 MHz CPU1(A53):1600 MHz CPU2(A53):1600 MHz
CPU3(A53):1600 MHz
Bus: 400 MHz DDR: 1600 MT/s FMAN: 500 MHz
Reset Configuration Word (RCW):
00000000: 08100010 0a000000 00000000 00000000
00000010: 14550002 80004012 60040000 c1002000
00000020: 00000000 00000000 00000000 00038800
00000030: 00000000 00001100 00000096 00000001
Model: LS1043A RDB Board
Board: LS1043ARDB, boot from SD
CPLD: V1.5
PCBA: V3.0
SERDES Reference Clocks:
SD1_CLK1 = 156.25MHZ, SD1_CLK2 = 100.00MHZ
I2C: ready
DRAM: Detected UDIMM Fixed DDR on board
1.9 GiB (DDR4, 32-bit, CL=11, ECC off)
Using SERDES1 Protocol: 5205 (0x1455)
SEC0: RNG instantiated
FSL_SDHC: 0
PPA Firmware: Version LSDK-17.09

MMC read: dev # 0, block # 18952, count 128 ...
Not a microcode
Flash: 128 MiB
NAND: 512 MiB

0 Kudos
3 Replies

824 Views
Pavel
NXP Employee
NXP Employee

This possibility is available for LS1012a and LS1088a. See LSDK 18.09 documentation:

https://www.nxp.com/docs/en/supporting-information/LSDK_REV18.09.pdf

 

Look at also attached files from u-boot source.

Find the "SEC firmware" in these files.


Have a great day,
Pavel Chubakov

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

824 Views
danlenz
Contributor II

Pavel - I do not see how this reply relates in any way to my original question. Can you tell me how SEC firmware is enabled / disabled and why it is only showing up in 18.03?

Have a great day,

Dan

0 Kudos

824 Views
Pavel
NXP Employee
NXP Employee

Use the following commands for building and loading microcodes:

$ sudo apt-get install git

$ tar xvzf flexbuild_lsdk1809.tgz

$ cd flexbuild

$ source setup.env

 

wget http://www.nxp.com/lgfiles/sdk/lsdk1809/app_components_arm64.tgz

wget http://www.nxp.com/lgfiles/sdk/lsdk1809/bootpartition_arm64_lts_4.14.tgz

wget http://www.nxp.com/lgfiles/sdk/lsdk1809/arm64-modules-4.14.67.tgz

flex-builder -i mkrfs -a arm64

tar xvzf app_components_arm64.tgz -C build/apps

sudo tar xvzf arm64-modules-4.14.67.tgz -C build/rfs/rootfs_ubuntu_bionic_arm64/lib/modules

flex-builder -i merge-component -a arm64

flex-builder -c firmware -a arm64

 

Find the fman microcode and qe microcode in the following folder:

/LSDK_1809/flexbuild_lsdk1809/build/firmware/

 

See the qoriq_memory_layout.txt file for loading of these microcodes.

For example the following commands can be used on host PC Linux for SD card preparation:

 

sudo dd if= uboot_ls1043ardb_sdcard.bin of=/dev/sdb seek=8 bs=512

 

sudo dd if= fsl_fman_ucode_ls1043_r1.1_106_4_18.bin of=/dev/sdb seek=18432 bs=512 // 0x4800

 

sudo dd if=ppa.itb of=/dev/sdb seek=8192 bs=512              // 0x2000

 

sudo dd if= fsl_qe_ucode_1021_10_A.bin of=/dev/sdb seek=18952 bs=512 // 0x4A08


Have a great day,
Pavel Chubakov

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos