HomeDefectsLIN1025-2648
Acknowledged

LIN1025-2648 : [s32g] Secboot failed on QSPI flash

Created: Jul 13, 2025    Updated: Nov 2, 2025
Found In Version: 10.25.33.1
Severity: Standard
Applicable for: Wind River Linux LTS 25
Component/s: BSP

Description

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 6.12.36-yocto-standard (oe-user@oe-host) (aarch64-wrs-linux-gcc (GCC) 14.2.0, GNU ld (GNU Binutils) 2.44.0.20250513) #1 SMP PREEMPT Mon Jul  7 19:43:52 UTC 2025
[    0.000000] Machine model: NXP S32G3 Reference Design Board (S32G-VNP-RDB3)



root@nxp-s32g:~# hse-secboot -s -b qspi -d /dev/mtd0 --ddrfw_key /etc/keys/secboot/ddrfw_rsa2048_public.pem:0x010700 --bl31_key -:0x010700 --bl33_key -:0x010700 --bl2_key -:0x010700 --bl2_bin /boot/secboot/bl2_w_dtb-s32g399ardb3_qspi.bin --bl2_sign /boot/secboot/bl2_w_dtb-s32g399ardb3_qspi.bin.sign
[INFO] Chosen boot medi[  142.950362] hse-uio 40210000.mu0b: device hse-uio v2.1 open, instances: 1
um: qspi
[INFO] Setting up secure boot
[INFO] Successfully parsed DDR FW Public key input
[INFO] Successfully parsed BL2 Public key input
[INFO] Successfully parsed BL31 Public key input
[INFO] Successfully parsed BL33 Public key input
libhse: initialized, firmware status 0x0920
[INFO] Retrieving IVT from device /dev/mtd0
[INFO] Enabling MUs
[INFO] HSE key catalogs not found, formatting NVM and RAM key catalogs
[INFO] Importing DDR FW Public key
[INFO] Slot already occupied, BL2 Public key already imported for a previous image.
[INFO] Slot already occupied, BL31 Public key already imported for a previous image.
[INFO] Slot already occupied, BL33 Public key already imported for a previous image.
[INFO] Generating Secure Memory Region entry
[INFO] Generating Core Reset Entry
[INFO] Retrieving SYSIMG size
[INFO] Publishing SYSIMG
[INFO] Writing SYSIMG to /dev/mtd0
[  143.946915] hse-uio 40210000.mu0b: device hse-uio v2.1 released, instances: 0
libhse: closed
root@nxp-s32g:~#  
root@nxp-s32g:~# reboot -f 
Rebooting.
[  154.379048] pfeng 46000000.pfe: Suspending driver
[  154.397763] pfeng 46000000.pfe end1: Link is Down
[  154.409355] pfeng 46000000.pfe end1: Unregistered PTP HW clock successfully on EMAC0
[  154.434870] pfeng 46000000.pfe end2: Unregistered PTP HW clock successfully on EMAC0
[  154.445634] pfeng 46000000.pfe end3: Unregistered PTP HW clock successfully on EMAC0
[  154.456894] pfeng 46000000.pfe: HIF3 not enabled, skipped
[  154.462053] pfeng 46000000.pfe: HIF2 stopped
[  154.550586] pfeng 46000000.pfe: HIF1 stopped
[  154.704939] pfeng 46000000.pfe: HIF0 stopped
[  154.801930] pfeng 46000000.pfe: IHC client unregistered
[  154.806885] pfeng 46000000.pfe: address not found
[  154.811591] pfeng 46000000.pfe: address not found
[  154.816241] pfeng 46000000.pfe: address not found
[  154.820914] pfeng 46000000.pfe: IDEX RPC released. HIF IHC support disabled
[  155.006578] pfeng 46000000.pfe: HIF2 disabled
[  155.189361] pfeng 46000000.pfe: HIF1 disabled
[  155.540897] pfeng 46000000.pfe: HIF0 disabled
[  155.545032] pfeng 46000000.pfe: Global poller finished
[  155.550865] pfeng 46000000.pfe: Removing default logical interface (emac0, parent: emac0)
[  155.559324] pfeng 46000000.pfe: emac0 (p0x00000000200023b8) removed from emac0 (p0x0000000020000ae0)
[  155.568953] pfeng 46000000.pfe: Removing default logical interface (emac1, parent: emac1)
[  155.576901] pfeng 46000000.pfe: emac1 (p0x0000000020002428) removed from emac1 (p0x0000000020000b18)
[  155.586154] pfeng 46000000.pfe: Removing default logical interface (emac2, parent: emac2)
[  155.594181] pfeng 46000000.pfe: emac2 (p0x0000000020002498) removed from emac2 (p0x0000000020000b50)
[  155.603467] pfeng 46000000.pfe: Removing default logical interface (hif0, parent: hif0)
[  155.611257] pfeng 46000000.pfe: hif0 (p0x0000000020002508) removed from hif0 (p0x0000000020000c30)
[  155.620361] pfeng 46000000.pfe: Removing default logical interface (hif1, parent: hif1)
[  155.628180] pfeng 46000000.pfe: hif1 (p0x0000000020002578) removed from hif1 (p0x0000000020000c68)
[  155.637277] pfeng 46000000.pfe: Removing default logical interface (hif2, parent: hif2)
[  155.645105] pfeng 46000000.pfe: hif2 (p0x00000000200025e8) removed from hif2 (p0x0000000020000ca0)
[  155.654217] pfeng 46000000.pfe: Removing default logical interface (hif3, parent: hif3)
[  155.662029] pfeng 46000000.pfe: hif3 (p0x0000000020002658) removed from hif3 (p0x0000000020000cd8)
[  155.689296] pfeng 46000000.pfe: Stopping rtable worker...
[  155.694665] pfeng 46000000.pfe: rtable worker stopped
[  155.704062] pfeng 46000000.pfe: PFE Platform stopped
[  155.709123] pfeng 46000000.pfe: PFE controller off
[  155.741912] ci_hdrc ci_hdrc.0: remove, state 4
[  155.746434] usb usb1: USB disconnect, device number 1
[  155.774375] ci_hdrc ci_hdrc.0: USB bus 1 deregistered
[  155.931283] kvm: exiting hardware virtualization
[  155.935915] reboot: Restarting system


------------- hang at here and reboot failed.

Steps to Reproduce

INFO: HTTP shared image: http://pek-lpgtest7408.wrs.com/buildarea1/SharedImage/LTS25/BSP/nxp-s32g_standard_glibc-std_secure_GIT/20250711_010439

/lpg-build/cdc/fast_prod/WRL10_25/WRL10_25_GIT/wrlinux-10/setup.sh --machines nxp-s32g --templates feature/docker --distros wrlinux --dl-layers=1 --accept-eula=yes
source environment-setup-x86_64-wrlinuxsdk-linux
source oe-init-build-env build


echo 'BB_NUMBER_THREADS ?= "12"' >> conf/local.conf
echo 'PARALLEL_MAKE ?= "-j 12"' >> conf/local.conf
bitbake-layers add-layer ../layers/nxp-s32g/s32g-secure-boot
bitbake-layers add-layer /net/pek-lpgtest16.wrs.com/buildarea1/wgao/wassp-linux/testcases/wrlinux/wr-testing/bts-dev

#####To Clone a whole new testcases layer#####
git clone --depth 1 -b master git://lxgit.wrs.com/wrlinux-testing/testcases.git ../layers/testcases/wrlinux/
bitbake-layers add-layer ../layers/testcases/wrlinux/wr-testing/bts-dev
#####End#####

echo '
require templates/feature/bts/template.conf
IMAGE_FSTYPES += " tar.bz2"
echo 'IMAGE_FSTYPES:remove = " live hddimg iso"' >> conf/local.conf
bitbake-layers add-layer /net/pek-lpgtest7408/buildarea1/SharedImage/wrlinux-testing-dl
echo 'SHARED_IMAGE_BASE = "/net/pek-lpgtest7408/buildarea1/SharedImage"
FIRMWARE_DIR_BASE = "${SHARED_IMAGE_BASE}/wr-bsp-images/nxp-s32g/firmwares"
DDR_FW_PATH = "${FIRMWARE_DIR_BASE}/ddr/g3/ddr_fw_ecc_off.bin"
HSE_LOCAL_FIRMWARE_DIR = "${FIRMWARE_DIR_BASE}/hse"
HSE_FW_VERSION_S32G2 = "0.1.0.14"
HSE_FW_VERSION_S32G3 = "0.2.64.0"
HSE_FW_NAME_S32G2 = "rev2.0_s32g2xx_hse_fw_0.1.0_1.0.14_pb240319.bin.pink"
HSE_FW_NAME_S32G3 = "s32g3xx_hse_fw_0.20.0_2.64.0_pb250127.bin.pink"
LLCE_LOCAL_FIRMWARE_DIR = "${FIRMWARE_DIR_BASE}/llce/1.0.9/s32g2"
LLCE_LOCAL_FIRMWARE_DIR_S32G3 = "${FIRMWARE_DIR_BASE}/llce/1.0.9/s32g3"
IPCF_M7_APP_BIN_DIR = "${FIRMWARE_DIR_BASE}/ipcf/4.9"
PFE_LOCAL_FIRMWARE_DIR = "${FIRMWARE_DIR_BASE}/pfe/1.11.0"
CUSTOMER_RECIPES:append = " llce"
CUSTOMER_RECIPES:openembedded-layer += 'ccid pcsc-lite opensc'
BB_NO_NETWORK = '0'
IMAGE_INSTALL:append = " llce ipc-shm pkcs11-hse pkcs11-hse-examples pfe pfe-slave libfci-cli"' >> conf/local.conf
bitbake wrlinux-image-std