Orin nano to Suspend/Resume bug

According to the method provided at the end of Orin nano Using the power key to make the OS enter suspend/resume bug, disable the pcie@140a0000 in the dts.

Although this can resolve the issue of the system crashing when the Power Key is triggered multiple times before fully entering suspend, it results in the LAN becoming unusable.
Please assist in resolving this. Thank you.

The following is the OS-related message (Jetson 6.2):
lsb-release
nv_tegra_release
os-release
user_release_version
root@ubuntu:/home/ubuntu# cat /etc/*release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION=“Ubuntu 22.04.5 LTS”

R36 (release), REVISION: 4.3, GCID: 38968081, BOARD: generic, EABI: aarch64, DATE: Wed Jan 8 01:49:37 UTC 2025
KERNEL_VARIANT: oot
TARGET_USERSPACE_LIB_DIR=nvidia
TARGET_USERSPACE_LIB_DIR_PATH=usr/lib/aarch64-linux-gnu/nvidia
PRETTY_NAME=“Ubuntu 22.04.5 LTS”
NAME=“Ubuntu”
VERSION_ID=“22.04”
VERSION=“22.04.5 LTS (Jammy Jellyfish)”
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL=“https://www.ubuntu.com/”
SUPPORT_URL=“https://help.ubuntu.com/”
BUG_REPORT_URL=“https://bugs.launchpad.net/ubuntu/”
PRIVACY_POLICY_URL=“https://www.ubuntu.com/legal/terms-and-policies/privacy-policy”
UBUNTU_CODENAME=jammy

Hi frank_weng,

Thanks for sharing this info.
It helps to clarify the current issue may be caused from PCIe driver.

Could you help to double confirm if you will get the following error in each fails?

[  441.739777] tegra194-pcie 140a0000.pcie: Link didn't transition to L2 state
[  441.859886] tegra194-pcie 140a0000.pcie: Link didn't go to detect state

Do you have only LAN used on this bus?

When enable pcie@140a0000 in the dts:

  1. The LAN functions normally.

  2. During the suspend process, the following log messages appear (these messages do not appear when pcie@140a0000 is disabled).

    [  514.895076] tegra194-pcie 140a0000.pcie: Link didn't transition to L2 state
    [  515.015182] tegra194-pcie 140a0000.pcie: Link didn't go to detect state
    
  1. Repeatedly triggering the power key may cause the system to fail to enter suspend.

I’ve checked this with internal and gotten the following info.
When PCIe is going to suspend,

  1. It will send a message to EP(LAN in this case)
  2. EP should respond to the message, if it doesn’t “Link didn’t transition to L2 state” is printed and
  3. To reset PCIe state machine since link didn’t go into L2, we try to reset LAN and move the state machine to detect. If this fails it will print “Link didn’t go to detect state
  4. Even with these two failures, next time we can link up if EP sends training sets properly. So, we will go ahead with suspend with out failing.

Summary: EP has some issue, it is not responding for L2 message(PME turn off). Even with this failure, we will still continue with PCIe suspend since mostly likely EP will respond properly during resume.

Could you share the log with “system crashing”?

Here is the relevant log previously provided to you for debugging.

What’s the “freeze” behavior you’ve seen?
Is the freeze staying for few seconds or it could only be recovered after reser/reboot?

We can not find useful info from suspend_resume_bug.log you shared.
I’ve also just gotten an Orin Nano devkit to reproduce the issue(short PWR with GND before entering suspened completely) w/o hitting the freeze issue.

Please help to clarify and point out the exact error you hit when you hit freeze issue.

To find the issue, search for "140a0000.pcie: Link didn't transition to L2 state" in suspend_resume_bug.log.

Then, extract the relevant section from the file and save it as suspend_resume_bug_2.log.

Thank you for your help!
suspend_resume_bug_2.log (2.9 KB)

@KevinFFF

What is the situation?

The message below shows the resume, and the screen can no longer be seen.
[ 89.052738] CPU: 2 PID: 3980 Comm: systemd-sleep Tainted: G OE 5.15.148-tegra #1
[ 89.052743] Hardware name: NVIDIA NVIDIA Jetson Orin NANO Engineering Reference Developer Kit Super/Jetson, BIOS r36.4.3-85becaf8-dirty 06/25/2025
[ 89.052746] Call trace:
[ 89.052747] dump_backtrace+0x0/0x1c0
[ 89.052764] show_stack+0x34/0x50
[ 89.052769] dump_stack_lvl+0x68/0x84
[ 89.052776] dump_stack+0x18/0x34
[ 89.052778] os_dump_stack+0x1c/0x28 [nvidia]
[ 89.052958] nvAssertFailedBacktrace.part.0+0x80/0x90 [nvidia]
[ 89.053093] gpuPowerManagementResumeTegra.constprop.0+0x6c/0x80 [nvidia]
[ 89.053228] RmPowerManagementInternalTegra+0x170/0x190 [nvidia]
[ 89.053359] rm_power_management+0x70/0x130 [nvidia]
[ 89.053488] nv_power_management+0x128/0x130 [nvidia]
[ 89.053622] nvidia_resume.isra.0+0x7c/0xa0 [nvidia]
[ 89.053753] nv_pmops_resume+0x30/0x50 [nvidia]
[ 89.053882] dpm_run_callback+0x40/0x190
[ 89.053891] device_resume+0xa8/0x210
[ 89.053893] dpm_resume+0x10c/0x310
[ 89.053896] dpm_resume_end+0x28/0x40
[ 89.053898] suspend_devices_and_enter+0x1cc/0x7a0
[ 89.053905] pm_suspend+0x288/0x320
[ 89.053907] state_store+0x98/0x120
[ 89.053910] kobj_attr_store+0x18/0x30
[ 89.053917] sysfs_kf_write+0x64/0x80
[ 89.053924] kernfs_fop_write_iter+0x134/0x1d0
[ 89.053927] new_sync_write+0xfc/0x1a0
[ 89.053934] vfs_write+0x220/0x290
[ 89.053937] ksys_write+0x7c/0x110
[ 89.053941] __arm64_sys_write+0x2c/0x40
[ 89.053945] invoke_syscall+0x5c/0x130
[ 89.053950] el0_svc_common.constprop.0+0x64/0x110
[ 89.053954] do_el0_svc+0x74/0xa0
[ 89.053958] el0_svc+0x28/0x80
[ 89.053963] el0t_64_sync_handler+0xa4/0x130
[ 89.053966] el0t_64_sync+0x1a4/0x1a8
[ 89.054190] PM: dpm_run_callback(): nv_pmops_resume+0x0/0x50 [nvidia] returns -5
[ 89.054325] nv_platform 13800000.display: PM: failed to resume: error -5

Could you help to answer for this?

I’ve checked with internal that this message is expected, please check previous response for details.

It seems the error caused from display driver as following.
Is the console still working at this moment?
If not, I assume system will be reset triggered by watchdog after 120 seconds.

1: The issue is that during suspend/resume testing, multiple power button triggers caused a system crash (deadlock/freeze).
2:Your problem is about lag/stuttering. Sorry, I don’t see how it relates to the system crash.

3:During suspend/resume stress testing with the power button, the system crash occurs only when the “140a0000.pcie” function is enabled. Disabling it prevents the issue, but the LAN then becomes unusable.

4:During verification, we compared it with a reference board + SDK Manager (Jetson 6.2 image), and the same issue occurs.

5:This also happens during suspend/resume testing.

Does the current issue can be triggered by quick pressing power button?
If so, do you have AGX Orin devkit to reproduce the similar issue?

Sorry that I’m not clear about this.
Do you mean that the current issue is about the lag/delay rather than system crash?
I want to clarify what kind of freeze you’ve seen.
Please let me know if it could be recovered after few seconds.

I’ve checked with internal PCIe team. We need the exact error to check the issue in details.
140a0000.pcie: Link didn’t transition to L2 state” is the expected message.

Configuring the Power key to trigger suspend: Repeatedly pressing the Power key ‌before‌ the system fully enters suspend will inevitably cause a system panic and reboot.

This issue is also reproducible on the NVIDIA Orin AGX reference platform.

Both Orin Nano and Orin AGX platforms exhibit the same failure mode: system panic followed by a reboot.

Please kindly help resolve this issue. Thank you

Do you hang at the panic and you can only recover it through reboot?

Our internal team think this messages is not the error.

Could you reproduce the issue when you enabled 140a0000.pcie in device tree but not connecting LAN physically?

Yes, a reboot is required to resolve it.

1: The network cable is connected.
2: Disabling 140a0000.pcie will prevent the suspend/resume crash.

I would like to know if there’s similar issue when you don’t connect network cable (i.e. keep 140a0000.pcie configuration there).

The same phenomenon occurs whether the network cable is connected or not.

There is no update from you for a period, assuming this is not an issue anymore.
Hence, we are closing this topic. If need further support, please open a new one.
Thanks
~1008

Is this still an issue to support? Any result can be shared?