EMMc write failure based on SDK BSP40 on RDB2 v2.0 board

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

EMMc write failure based on SDK BSP40 on RDB2 v2.0 board

Jump to solution
4,018 Views
hittzt
Senior Contributor I

Hi,

 

Recently, I tried to test EMMc boot case based on SDK BSP40 on RDB2 v2.0 board. But when I try to write fip.s32 image to EMMc, the board reset as the following log shows:

root@nxp-s32g:~# flashcp -v fip.s32-qspi-bsp40 /dev/mtd0
Erasing blocks: 18/18 (100%)
Writing data: 1106k/1106k (100%)
Verifying data: 1106k/1106k (100%)
root@nxp-s32g:~# reboot
NOTICE: Reset status: Power-On Reset
NOTICE: BL2: v2.5(release):bsp40.0-2.5
NOTICE: BL2: Built : 08:41:20, Mar 21 2024
NOTICE: BL2: Booting BL31


U-Boot 2022.04+gd482def7e3+p0 (Mar 21 2024 - 08:40:56 +0000)

SoC: NXP S32G274A rev. 2.0
CPU: ARM Cortex-A53 r0p4 @ max 1000 MHz
Model: NXP S32G274A-RDB2
DRAM: 3.5 GiB
Core: 305 devices, 25 uclasses, devicetree: board
MMC: FSL_SDHC: 0
Loading Environment from SPIFlash... SF: Detected mx25uw51245g with page size 256 Bytes, erase size 64 KiB, total 64 MiB
OK
s32cc_serdes_phy serdes@40480000: Using mode 0 for SerDes subsystem
pci_s32cc pcie@40400000: Could not set DEVICE ID
pci_s32cc pcie@40400000: Configuring as RootComplex
pci_s32cc pcie@40400000: Failed to get link up
In: serial@401c8000
Out: serial@401c8000
Err: serial@401c8000
Board revision: RDB2/GLDBOX Revision C
PCIe: BusDevFun VendorId DeviceId Device Class Sub-Class
__________________________________________________________________________
pcie@40400000 RootComplex
| `-- 01:00.00 0x1957 0x4002 Bridge device 0x04
Net: eth0: ethernet@4033c000
Found PFE version 0x50300 (S32G2)
Too large ELF file, size: 4294836224
PFE firmware file '<NULL>@0x030a0000:<NULL>' loading failed: -27

Found PFE version 0x50300 (S32G2)
Too large ELF file, size: 4294836224
PFE firmware file '<NULL>@0x030a0000:<NULL>' loading failed: -27

Found PFE version 0x50300 (S32G2)
Too large ELF file, size: 4294836224
PFE firmware file '<NULL>@0x030a0000:<NULL>' loading failed: -27

Hit any key to stop autoboot: 0
=> mmc rescan
=> mmc list
FSL_SDHC: 0 (eMMC)
=>
FSL_SDHC: 0 (eMMC)
=> dhcp
ethernet@4033c000 Waiting for PHY auto negotiation to complete....... done
BOOTP broadcast 1
BOOTP broadcast 2
*** Unhandled DHCP Option in OFFER/ACK: 43
*** Unhandled DHCP Option in OFFER/ACK: 43
DHCP client bound to address 128.224.35.131 (282 ms)
Using ethernet@4033c000 device
TFTP from server 128.224.161.77; our IP address is 128.224.35.131; sending through gateway 128.224.34.1
Filename 'undionly.kpxe'.
Load address: 0x8a080000
Loading: #####
6.3 MiB/s
done
Bytes transferred = 72763 (11c3b hex)
=> setenv serverip 128.224.34.193
=> setenv gatewayip 128.224.178.1
=>
=> setenv netmask 255.255.254.0
=>
=>
=>
=>

=> run loadtftpimage
Using ethernet@4033c000 device
TFTP from server 128.224.34.193; our IP address is 128.224.35.131
Filename 'Image'.
Load address: 0x8a080000
Loading: #################################################################
#############
9.2 MiB/s
done
Bytes transferred = 1134464 (114f80 hex)
=> setexpr loadaddr ${loadaddr} + 0x1000
=> setexpr n_b<INTERRUPT>0 00 00
=> setexpr n_blocks 0x114f80 / 0x200
=> pri n_blocks
n_blocks=8a7
=> setexpr n_blocks ${n_blocks} - 7
=> pri n_blocks
n_blocks=8a0
=> mmc rescan
=> mmc list
FSL_SDHC: 0 (eMMC)
=> mmc write ${loadaddr} 8 ${n_blocks}

MMC write: dev # 0, block # 8, count 2208 .�NOTICE: Reset status: Power-On Reset
NOTICE: BL2: v2.5(release):bsp40.0-2.5
NOTICE: BL2: Built : 08:41:20, Mar 21 2024
NOTICE: BL2: Booting BL31


U-Boot 2022.04+gd482def7e3+p0 (Mar 21 2024 - 08:40:56 +0000)

SoC: NXP S32G274A rev. 2.0
CPU: ARM Cortex-A53 r0p4 @ max 1000 MHz
Model: NXP S32G274A-RDB2
DRAM: 3.5 GiB
Core: 305 devices, 25 uclasses, devicetree: board
MMC: FSL_SDHC: 0
Loading Environment from SPIFlash... SF: Detected mx25uw51245g with page size 256 Bytes, erase size 64 KiB, total 64 MiB
OK
s32cc_serdes_phy serdes@40480000: Using mode 0 for SerDes subsystem
pci_s32cc pcie@40400000: Could not set DEVICE ID
pci_s32cc pcie@40400000: Configuring as RootComplex
pci_s32cc pcie@40400000: Failed to get link up
In: serial@401c8000
Out: serial@401c8000
Err: serial@401c8000
Board revision: RDB2/GLDBOX Revision C
PCIe: BusDevFun VendorId DeviceId Device Class Sub-Class
__________________________________________________________________________
pcie@40400000 RootComplex
| `-- 01:00.00 0x1957 0x4002 Bridge device 0x04
Net: eth0: ethernet@4033c000
Found PFE version 0x50300 (S32G2)
Too large ELF file, size: 4294836224
PFE firmware file '<NULL>@0x030a0000:<NULL>' loading failed: -27

Found PFE version 0x50300 (S32G2)
Too large ELF file, size: 4294836224
PFE firmware file '<NULL>@0x030a0000:<NULL>' loading failed: -27

Found PFE version 0x50300 (S32G2)
Too large ELF file, size: 4294836224
PFE firmware file '<NULL>@0x030a0000:<NULL>' loading failed: -27

Hit any key to stop autoboot: 0
=>
=>

Firstly, I tried to write the fip-qspi.s32 image to qspi flash, then boot from the qspi flash, and in uboot stage, write the fip.s32-sdcard image to EMMc. At this point, the board reset as above.

 

Would you please help to check the issue?

 

Thanks,

Zhantao

0 Kudos
Reply
1 Solution
3,921 Views
chenyin_h
NXP Employee
NXP Employee

Hello, @hittzt

I have reproduced it on a local RDB2 REVC(with 2.0 silicon equipped), and found that it could be fixed by disabling the following option in u-boot configuration: MMC_IO_VOLTAGE, you may have a try with it.

I also have discussed it with internal teams, and got confirmed that the main problem here is not related with Silicon 2.0 but related with board revision, The voltage supply of eMMC on RDB2 REVC in default is 3.3V, but the default mode of BSP40 is using 1.8v, this may be the root cause of the issue.

Hope it helpful.

 

Best Regards

Chenyin

View solution in original post

0 Kudos
Reply
5 Replies
3,922 Views
chenyin_h
NXP Employee
NXP Employee

Hello, @hittzt

I have reproduced it on a local RDB2 REVC(with 2.0 silicon equipped), and found that it could be fixed by disabling the following option in u-boot configuration: MMC_IO_VOLTAGE, you may have a try with it.

I also have discussed it with internal teams, and got confirmed that the main problem here is not related with Silicon 2.0 but related with board revision, The voltage supply of eMMC on RDB2 REVC in default is 3.3V, but the default mode of BSP40 is using 1.8v, this may be the root cause of the issue.

Hope it helpful.

 

Best Regards

Chenyin

0 Kudos
Reply
3,898 Views
hittzt
Senior Contributor I

Hi @chenyin_h ,

 

Thanks for your reply.

Your reply is very helpful, the issue can be fixed as you suggested.

 

Thanks,

Zhantao

0 Kudos
Reply
3,979 Views
chenyin_h
NXP Employee
NXP Employee

Hello, @hittzt

Thanks for the feedback.

It is good to hear that the issue seems only existed on RDB2 with 2.0 silicon.

Sorry that we do not have 2.0 silicon based board within the team, let me check if there are any from other teams, will update it while getting further results.

Sorry for your inconvenience.

 

Best Regards

Chenyin

0 Kudos
Reply
3,994 Views
chenyin_h
NXP Employee
NXP Employee

Hello, @hittzt

Thanks for the questions.

Sorry that I did not reproduce the issue locally, a slight difference here is that I was using a RDB2 with 2.1 silicon. May I know if you had met such issues on other boards?

Logs are attached for your reference.

 

Best Regards

Chenyin

0 Kudos
Reply
3,988 Views
hittzt
Senior Contributor I

Hi @chenyin_h ,

 

Thanks your reply.

 

I tested the case on RDB2 v2.0 and RDB3 v1.1 boards, and RDB3 v1.1 works well with EMMc boot mode.

And there is no RDB2 v2.1 boards in my hand.

Would you please help to check the status of RDB2 v2.0 board in your side?

 

Thanks,

Zhantao

0 Kudos
Reply