Hi,
I am bringing up a Jetson AGX Orin module (P3701-0004, 64GB) on a custom carrier board and running into a DCE firmware crash during boot. I am using JetPack 6.2.2 / L4T R36.5.0.
Error:
ERROR: camera-ip/isp5/isp5.c:2031 [isp5_pm_init] "ERROR: Failed to turn isp1 power on"
BUG: core/init/init.c:86 [init_all] "*** FIRMWARE INIT FAILED AT LEVEL 95 ***"
After the error, the DCE firmware crashes with a null function pointer call:
call stack:
sp 0x50181fe0 pc 0x50069696
sp 0x50181ff8 pc 0xaaaaaaaa
eht_idx_find: 0xaaaaaaaa not a valid code address
The system then stalls at “RM Task Running” and never proceeds to UEFI/kernel.
boot debug info file:
agx_orin_cold_reset_debug_info.txt (64.8 KB)
Our custom carrier board design:
- CSI camera interface is present on the carrier board, but the ISP power rail (VDD_ISP) has not been implemented yet in the current hardware revision
- No MGBE (10G Ethernet)
- No UFS storage
- PCIe interface is reserved for SSD but not currently in use
- Uses eMMC boot
Steps already taken:
- Set
cvb_eeprom_read_size = <0x0> in tegra234-mb2-bct-common.dtsi — resolved the EEPROM boot hang
- Set
ODMDATA="hsio-uphy-config-0" in p3701.conf.common
- Created a custom UPHY config with empty lane-owner-map:
lane-owner-map = <0 0 0>
- Disabled
isp@14800000, isp-thi@14b00000, and nvcsi@15a00000 nodes in the kernel DTB (tegra234-p3737-0000+p3701-0004-nv.dtb) by setting status = "disabled" — this had no effect on the DCE firmware crash
Question:
Is there a way to configure the DCE firmware to skip ISP power-on initialization when the ISP power rail is not yet available? Our carrier board has CSI interfaces and will eventually support cameras, but the ISP power rail has not been implemented in the current hardware revision. We would like the system to boot normally first, and add the ISP power rail in a future hardware revision.
We confirmed via UART debug log that the crash occurs inside the DCE firmware before UEFI starts, so kernel DTB changes do not help.
Any guidance would be greatly appreciated. Thank you.
— 🤖 This is an automated AI response. I’m here to help, but please verify important details! —
Based on the provided context, I found a relevant solution in the Community Solutions section.
The error symptom “ERROR: Failed to turn isp1 power on” is not the root cause, but rather a symptom that RCE/ISP power-on failed because something earlier in the boot path is broken (i.e., often BPMP / DDR / power).
To resolve this issue, you may need to dig into the bootloader logs to find the real error, which is usually a few lines before this error message. Additionally, you can refer to the developer guide, specifically the section on MB1 Configuration Changes, since you are using a custom board.
Here is the relevant Community Solution:
Accepted Solution:
hello ivan.langridge, ERROR: Failed to turn isp1 power on should not the root cause, it’s a symptom that RCE/ISP power-on failed because something earlier in the boot path is broken (i.e. often BPMP / DDR / power). please dig into bootloader logs, the real error usually a few lines before this. you may see-also developer guide, [ MB1 Configuration Changes][1] since it’s a customize board. [1]: https://docs.nvidia.com/jetson/archives/r36.5/DeveloperGuide/HR/JetsonModul eAdaptationAndBringUp/JetsonAgxOrinSeries.html#mb1-configuration-changes
I could not find clear support for skipping ISP power-on initialization in the provided Jetson AGX Orin documentation. However, the above solution may help you identify and resolve the underlying issue causing the DCE firmware crash.
— We support team will also look into your issue to have further suggestions soon. please stay tuned. —
Your issue has nothing to do with DCE or ISP.
BPMP error all lead to the same ISP error log but the true crash is not related to ISP at all.
HSIO UPHY reset has been de-asserted 0x0
start PLL 8 calibration timeout
FATAL ERROR [FILE=platform/drivers/uphy/uphy-tegra234.c, ERR_UID=2251]: start Pd
The true error is because of this. I don’t know how you get a DCE crash thing here because your error log does not have any DCE fw crash…
hsio-uphy-config-0 should be the default setting already. No need to set this again.
Created a custom UPHY config with empty lane-owner-map: lane-owner-map = <0 0 0>
There is no such thing needed here. I don’t know who told you to do this because this should never be configured.
If you don’t have MGBE, then you need to set gbe-uphy-config-0 in your ODMDATA.
Jetson AGX Orin Platform Adaptation and Bring-Up — NVIDIA Jetson Linux Developer Guide
Hi WayneWWW,
Thank you so much for the clarification! Your explanation was spot on.
I followed your advice and set ODMDATA to “gbe-uphy-config-0,hsstp-lane-map-3,hsio-uphy-config-16,nvhs-uphy-config-0” (removing gbe-uphy-config-22 and gbe0-enable-10g since our custom carrier board does not have MGBE), and also reverted the incorrect UPHYLANE_CONFIG change. After reflashing, the board boots successfully.
Just to summarize the root cause for anyone who finds this thread in the future: the true error was a HSIO UPHY PLL calibration timeout caused by ODMDATA referencing MGBE hardware (gbe-uphy-config-22) that does not exist on the custom carrier board. The “Failed to turn isp1 power on” message in the DCE firmware log was a secondary symptom, not the root cause.
Thanks again for the help!