Other Parts Discussed in Thread: J721EXSOMXEVM
Tool/software:
Hello experts, we are currently working on bringing up the custom board based on TDA4VM SoC and as I described on the title,
it does not seem to pass the necessary checks on u-boot, resulting failing the whole boot process. The custom has been designed referencing the SoM board and it's part name is J721EXSOMXEVM.
Before I post the boot log, here are the things I have done so far.
1. deleted all I2C_BOARD_DETECT related entries on
../board/ti/common/Kconfig
and
../board/ti/j721e/Kconfig
(imply and depends)
exactly same as JDA did in
e2e.ti.com/.../am6442-how-to-bypass-the-eeprom-checking-procedure
2. change
findfdt=
on ../board/ti/j721e/j721e.env
to
default_device_tree=ti/k3-j721e-sk.dtb
findfdt=
setenv name_fdt ${default_device_tree};
setenv fdtfile ${name_fdt}
so that it can bring out k3-j721e-sk.dtb which we customized for our own purposes no matter which name of the board it detects
3. setting up the exact thing that the code does on ti/common/board_detect.c and void __maybe_unused set_board_info_env_am6(char *name)
moved all the entries inside of the function that calls env_set() to int board_late_init(void)
all of the attempts above failed on me and here's the boot log. The thing is, when we connect the EEPROM that was placed on the EVK, it boots up properly. I'm going to paste the boot log when it actually loads up the kernel too.
---------------------------------------------------------------------------------
(1) boot log when it fails
U-Boot SPL 2023.04-ti-g916ba91d8319 (Oct 24 2024 - 08:13:04 +0000)
SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
Trying to boot from MMC2
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Loading Environment from nowhere... OK
Starting ATF on ARM64 core...
NOTICE: BL31: v2.10.0(release):v2.10.0-367-g00f1ec6b87-dirty
NOTICE: BL31: Built : 16:09:05, Feb 9 2024
I/TC:
I/TC: OP-TEE version: 4.1.0-51-g012cdca49 (gcc version 11.4.0 (GCC)) #1 Tue Jan 30 10:48:03 UTC 2024 aarch64
I/TC: WARNING: This OP-TEE configuration might be insecure!
I/TC: WARNING: Please check optee.readthedocs.io/.../porting_guidelines.html
I/TC: Primary CPU initializing
I/TC: GIC redistributor base address not provided
I/TC: Assuming default GIC group status and modifier
I/TC: SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
I/TC: HUK Initialized
I/TC: Activated SA2UL device
I/TC: Fixing SA2UL firewall owner for GP device
I/TC: Enabled firewalls for SA2UL TRNG device
I/TC: SA2UL TRNG initialized
I/TC: SA2UL Drivers initialized
I/TC: Primary CPU switching to normal world boot
U-Boot SPL 2023.04-ti-g916ba91d8319 (Oct 24 2024 - 08:13:04 +0000)
SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
Trying to boot from MMC2
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
U-Boot 2023.04-ti-g916ba91d8319 (Oct 24 2024 - 08:13:04 +0000)
SoC: J721E SR1.1 GP
Model: Texas Instruments K3 J721E SoC
DRAM: 2 GiB (effective 4 GiB)
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Core: 126 devices, 35 uclasses, devicetree: separate
Flash: 0 Bytes
MMC: mmc@4f80000: 0, mmc@4fb0000: 1
Loading Environment from nowhere... OK
In: serial@2800000
Out: serial@2800000
Err: serial@2800000
am65_cpsw_nuss ethernet@46000000: K3 CPSW: nuss_ver: 0x6BA00101 cpsw_ver: 0x6BA80100 ale_ver: 0x00293904 Ports:1 mdio_freq:1000000
Net: eth0: ethernet@46000000port@1
Hit any key to stop autoboot: 0
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 113
Card did not respond to voltage select! : -110
mmc_init: -95, time 37
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
** Bad device specification mmc 1 **
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@20: Error reading output register
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@20: Error reading output register
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@20: Error reading output register
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@20: Error reading output register
GPIO: 'gpio@22_17' not found
Command 'gpio' failed: Error -22
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@20: Error reading output register
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@20: Error reading output register
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@20: Error reading output register
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@20: Error reading output register
GPIO: 'gpio@22_16' not found
Command 'gpio' failed: Error -22
k3_r5f_rproc r5f@41000000: Core 1 is already in use. No rproc commands work
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
** Bad device specification mmc 1 **
Couldn't find partition mmc 1:2
Can't set block device
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
** Bad device specification mmc 1 **
Couldn't find partition mmc 1:2
Can't set block device
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
** Bad device specification mmc 1 **
Couldn't find partition mmc 1:2
Can't set block device
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
** Bad device specification mmc 1 **
Couldn't find partition mmc 1:2
Can't set block device
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
** Bad device specification mmc 1 **
Couldn't find partition mmc 1:2
Can't set block device
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
** Bad device specification mmc 1 **
Couldn't find partition mmc 1:2
Can't set block device
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
** Bad device specification mmc 1 **
Couldn't find partition mmc 1:2
Can't set block device
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
** Bad device specification mmc 1 **
Couldn't find partition mmc 1:2
Can't set block device
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
** Bad device specification mmc 1 **
Couldn't find partition mmc 1:2
Can't set block device
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
** Bad device specification mmc 1 **
Couldn't find partition mmc 1:2
Can't set block device
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
Bad Linux ARM64 Image magic!
Card did not respond to voltage select! : -110
mmc_init: -95, time 37
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Card did not respond to voltage select! : -110
mmc_init: -95, time 71
starting USB...
Bus usb@6400000: cdns-usb3-host usb@6400000: Unable to get USB2 phy (ret -61)
cdns-usb3-host usb@6400000: Unable to get USB3 phy (ret -61)
cdns-usb3-host usb@6400000: DRD version v1 (ID: 0004024e, rev: 00000200)
Register 2000840 NbrPorts 2
Starting the controller
USB XHCI 1.00
scanning bus usb@6400000 for devices... 2 USB Device(s) found
scanning usb for storage devices... 0 Storage Device(s) found
Device 0: unknown device
k3-navss-ringacc ringacc@2b800000: Ring Accelerator probed rings:286, gp-rings[96,20] sci-dev-id:235
k3-navss-ringacc ringacc@2b800000: dma-ring-reset-quirk: disabled
am65_cpsw_nuss_port ethernet@46000000port@1: K3 CPSW: rflow_id_base: 2
ethernet@46000000port@1 Waiting for PHY auto negotiation to complete.......
(2) boot log when it loads up the kernel
[Pesozu, u-boot, set_board_info_env_am6] board_name : j721e-sk
[Pesozu, u-boot, set_board_info_env_am6] board_rev : A1
[Pesozu, u-boot, set_board_info_env_am6] board_software_revision : 01
[Pesozu, u-boot, set_board_info_env_am6] board_serial : 0287
board_late_init(evm.c) -> setup_board_eeprom_env(evm.c) -> set_board_info_env_am6 (board_detect.c)
U-Boot SPL 2023.04-ti-gb02a936b6d53 (Oct 24 2024 - 01:44:55 +0000)
[Pesozu, u-boot] ====================after preloader_console_init();
[Pesozu, u-boot] ====================boodata, header (inside):
[Pesozu, u-boot] ====================boodata, num_components (inside): 0
SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
[Pesozu, u-boot] ====================#if defined(CONFIG_CPU_V7R) && defined(CONFIG_K3_AVS0) we are NOT inside of it
[Pesozu, u-boot] ====================#if defined(CONFIG_K3_J721E_DDRSS) && defined(CONFIG_K3_AVS0) we are NOT inside of it
Trying to boot from MMC2
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Loading Environment from nowhere... OK
Starting ATF on ARM64 core...
NOTICE: BL31: v2.10.0(release):v2.10.0-367-g00f1ec6b87-dirty
NOTICE: BL31: Built : 16:09:05, Feb 9 2024
I/TC:
I/TC: OP-TEE version: 4.1.0-51-g012cdca49 (gcc version 11.4.0 (GCC)) #1 Tue Jan 30 10:48:03 UTC 2024 aarch64
I/TC: WARNING: This OP-TEE configuration might be insecure!
I/TC: WARNING: Please check optee.readthedocs.io/.../porting_guidelines.html
I/TC: Primary CPU initializing
I/TC: GIC redistributor base address not provided
I/TC: Assuming default GIC group status and modifier
I/TC: SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
I/TC: HUK Initialized
I/TC: Activated SA2UL device
I/TC: Fixing SA2UL firewall owner for GP device
I/TC: Enabled firewalls for SA2UL TRNG device
I/TC: SA2UL TRNG initialized
I/TC: SA2UL Drivers initialized
I/TC: Primary CPU switching to normal world boot
U-Boot SPL 2023.04-ti-gb02a936b6d53 (Oct 24 2024 - 01:44:55 +0000)
[Pesozu, u-boot] ====================after preloader_console_init();
[Pesozu, u-boot] ====================boodata, header (else, outside): EXTBOOT
[Pesozu, u-boot] ====================boodata, num_components (else, outside): 1
SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
Trying to boot from MMC2
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
U-Boot 2023.04-ti-gb02a936b6d53 (Oct 24 2024 - 01:44:55 +0000)
SoC: J721E SR1.1 GP
Model: Texas Instruments J721E SK A72
Board: J721EX-EAIK rev A1
DRAM: 2 GiB (effective 4 GiB)
Core: 121 devices, 34 uclasses, devicetree: separate
Flash: 0 Bytes
MMC: mmc@4fb0000: 1
Loading Environment from nowhere... OK
In: serial@2800000
Out: serial@2800000
Err: serial@2800000
am65_cpsw_nuss ethernet@46000000: K3 CPSW: nuss_ver: 0x6BA00101 cpsw_ver: 0x6BA80100 ale_ver: 0x00293904 Ports:1 mdio_freq:1000000
[Pesozu, u-boot, set_board_info_env_am6] board_name : j721e-sk[Pesozu, u-boot, set_board_info_env_am6] board_rev : A1[Pesozu, u-boot, set_board_info_env_am6] board_software_revision : 01[Pesozu, u-boot, set_board_info_env_am6] board_serial : 0287Net: Could not get PHY for ethernet@46000000port@1: addr 0
am65_cpsw_nuss_port ethernet@46000000port@1: phy_connect() failed
No ethernet found.
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc1 is current device
SD/MMC found on device 1
Failed to load 'boot.scr'
1432 bytes read in 23 ms (60.5 KiB/s)
Loaded env from uEnv.txt
Importing environment from mmc1 ...
Running uenvcmd ...
1 bytes read in 23 ms (0 Bytes/s)
Already setup.
k3_r5f_rproc r5f@41000000: Core 1 is already in use. No rproc commands work
Failed to load '/lib/firmware/j7-mcu-r5f0_1-fw'
601520 bytes read in 39 ms (14.7 MiB/s)
Load Remote Processor 2 with data@addr=0x82000000 601520 bytes: Success!
Failed to load '/lib/firmware/j7-main-r5f0_1-fw'
Failed to load '/lib/firmware/j7-main-r5f1_0-fw'
Failed to load '/lib/firmware/j7-main-r5f1_1-fw'
Failed to load '/lib/firmware/j7-c66_0-fw'
Failed to load '/lib/firmware/j7-c66_1-fw'
Failed to load '/lib/firmware/j7-c71_0-fw'
20367872 bytes read in 431 ms (45.1 MiB/s)
104038 bytes read in 27 ms (3.7 MiB/s)
Working FDT set to 88000000
10434 bytes read in 25 ms (407.2 KiB/s)
## Flattened Device Tree blob at 88000000
Booting using the fdt blob at 0x88000000
Working FDT set to 88000000
ERROR: reserving fdt memory region failed (addr=880000000 size=27000000 flags=4)
Loading Device Tree to 000000008fee3000, end 000000008fffffff ... OK
Working FDT set to 8fee3000
Starting kernel ...