Kernel boot time optimization JP5.1.2

Hi

I am working on optimizing the kernel time on a Orin nano dev board with JP 5.1.2. I have followed the steps provided by NVIDIA.
However i have observed that every time it takes 3 seconds to reach the login (or for the system to be accessible) after CPU shutdown:

[2024-02-27 12:17:46] [   16.472051] using random self ethernet address
[2024-02-27 12:17:46] [   16.476647] using random host ethernet address
[2024-02-27 12:17:47] [   17.483910] using random self ethernet address
[2024-02-27 12:17:47] [   17.488534] using random host ethernet address
[2024-02-27 12:17:49] [   19.698501] CPU4: shutdown
[2024-02-27 12:17:49] [   19.850468] CPU5: shutdown
[2024-02-27 12:17:49] [   19.946298] CPU6: shutdown
[2024-02-27 12:17:49] [   20.038965] IRQ 116: no longer affine to CPU7
[2024-02-27 12:17:49] [   20.044303] CPU7: shutdown
[2024-02-27 12:17:52] 
[2024-02-27 12:17:52] Ubuntu 20.04.6 LTS user-desktop ttyTCU0
[2024-02-27 12:17:52] 
[2024-02-27 12:17:52] user-desktop login: 

May i know what is the reason behind this?

Also, how do i disable the using random self ethernet address check?

Please assist.
Thanks

Hi,
Since Ubunut is a multi user system, it is obligatory to go to login request asking for username and password. Not sure if it helps but you may try to configure auto login. Please refer to
Flashing Support — NVIDIA Jetson Linux Developer Guide 1 documentation

It may not be possible to totally disable login request.

For the print:

[   16.472051] using random self ethernet address

It is part of initializing ethernet. If you don’t need ethernet function, please disable the related configs and rebuild kernel.

@DaneLLL

I have enabled auto login.

I want to know why is there a wait time of 3s and is there any way to reduce it?

Thanks.

Hi,
It may be this setting:
authentication - Change login timeout when logging in into Ubuntu - Stack Overflow

Please change it for a try.

@DaneLLL

Sorry that did not help, it remains the same:

[2024-02-29 11:27:39] [   18.589512] CPU5: shutdown
[2024-02-29 11:27:39] [   18.713365] CPU6: shutdown
[2024-02-29 11:27:39] [   18.782018] IRQ 116: no longer affine to CPU7
[2024-02-29 11:27:39] [   18.787116] CPU7: shutdown
[2024-02-29 11:27:43] 
[2024-02-29 11:27:43] Ubuntu 20.04.6 LTS user-desktop ttyTCU0

@DaneLLL

Also, there is a 5 seconds wait time from Attempting Direct Boot to L4T Configuration Settings. Is there a way to remove this wait?
the timeout before that is already set to zero seconds.


[2023-12-21 **16:10:15.314**] L4TLauncher: Attempting Direct Boot ------- > (15th second)

**(5s wait)**

[2023-12-21 **16:10:20.016**] Processing "L4T Configuration Settings" DTB overlay -------> (20th second)

[2023-12-21 16:10:20.064] Deleting fragment fragment@0
[2023-12-21 16:10:20.065] Processing "P3767 Overlay Support" DTB overlay
[2023-12-21 16:10:20.065] Deleting fragment fragment@0
[2023-12-21 16:10:20.065] Deleting fragment fragment@1
[2023-12-21 16:10:20.065] Deleting fragment fragment@2
[2023-12-21 16:10:20.065] Deleting fragment fragment@3
[2023-12-21 16:10:20.065] Processing "P3768 Overlay Support" DTB overlay
[2023-12-21 16:10:20.065] Deleting fragment fragment@0
[2023-12-21 16:10:20.065] Deleting fragment fragment@1
[2023-12-21 16:10:20.065] Processing "UEFI Boot order nvme default" DTB overlay
[2023-12-21 16:10:20.065] Deleting fragment fragment@0
[2023-12-21 16:10:20.080] UpdateRamOopsMemory: RamOopsBase: 0x46EA70000, RamOopsSize: 0x200000
[2023-12-21 16:10:20.112] FtpmProtocol Not Found - Not Found
[2023-12-21 16:10:20.113] GetParentPcieControllerPrivate: cannot retrieve device path protocol from device handle: Unsupported
[2023-12-21 16:10:20.658] Loading driver at 0x004405A0000 EntryPoint=0x00441F3C598
[2023-12-21 16:10:20.658] Loading driver at 0x004405A0000 EntryPoint=0x00441F3C598 
[2023-12-21 16:10:20.658] EFI stub: Booting Linux Kernel...
[2023-12-21 16:10:20.659] EFI stub: Using DTB from configuration table
[2023-12-21 16:10:20.659] EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
[2023-12-21 16:10:20.659] EFI stub: Exiting boot services and installing virtual address map...
[2023-12-21 16:10:20.674] Link didn't transition to L2 state
[2023-12-21 16:10:20.802] Link didn't go to detect state as well
[2023-12-21 16:10:20.802] PROGRESS CODE: V03101019 I0
[2023-12-21 16:10:20.962] ��I/TC: Secondary CPU 1 initializing

Hi,
Do you mean 5-second wait in UEFI? If yes, please check

Jetson AGX Orin FAQ
Q: There is a wait in UEFI stage. How to disable it to accelerate system booting?

And it looks like it becomes 4 seconds after you change the setting:

[2024-02-29 11:27:39] [   18.787116] CPU7: shutdown
[2024-02-29 11:27:43] 
[2024-02-29 11:27:43] Ubuntu 20.04.6 LTS user-desktop ttyTCU0

This looks to be from Ubuntu initializing multi-user mode. We are uncertain where it is set. May see if other users can share experience.

@DaneLLL

I have already set timeout to 0s and that happens here:

[2024-02-29 12:44:20] **  WARNING: Test Key is used.  **
[2024-02-29 12:44:20] 
                      [2024-02-29 12:44:20] L4TLauncher: Attempting Direct Boot

I am seeing the wait time after Attempting Direct Boot.

And for login:
I changed the settings back to 3 seconds and no affect takes place

@DaneLLL

Also I have disabled bluetooth in the kernel config file but it is still being initialized.


[2024-02-29 12:44:29] [    1.634889] Advanced Linux Sound Architecture Driver Initialized.
[2024-02-29 12:44:29] [    1.641261] Bluetooth: Core ver 2.22
[2024-02-29 12:44:29] [    1.644842] NET: Registered protocol family 31
[2024-02-29 12:44:29] [    1.649283] Bluetooth: HCI device and connection manager initialized
[2024-02-29 12:44:29] [    1.655636] Bluetooth: HCI socket layer initialized
[2024-02-29 12:44:29] [    1.660510] Bluetooth: L2CAP socket layer initialized
[2024-02-29 12:44:29] [    1.665562] Bluetooth: SCO socket layer initialized

Hi,
The Orin NX module does not have the BT component, so this should not have impact if you don’t connect WIFI/BT module in M.2 Key-E slot.

If you would like to check further why it still gets printed, please search the kernel source code to investigate why. Probably need to disable other configs.

1 Like

@DaneLLL

there are progress codes being run and it take about 4-5 seconds here…

[2023-12-21 **16:10:15.314**] L4TLauncher: Attempting Direct Boot ------- > (15th second)

**(5s wait)**

[2023-12-21 **16:10:20.016**] Processing "L4T Configuration Settings" DTB overlay -------> (20th second)

[2023-12-21 16:10:20.064] Deleting fragment fragment@0
[2023-12-21 16:10:20.065] Processing "P3767 Overlay Support" DTB overlay
[2023-12-21 16:10:20.065] Deleting fragment fragment@0
[2023-12-21 16:10:20.065] Deleting fragment fragment@1
[2023-12-21 16:10:20.065] Deleting fragment fragment@2
[2023-12-21 16:10:20.065] Deleting fragment fragment@3
[2023-12-21 16:10:20.065] Processing "P3768 Overlay Support" DTB overlay
[2023-12-21 16:10:20.065] Deleting fragment fragment@0
[2023-12-21 16:10:20.065] Deleting fragment fragment@1
[2023-12-21 16:10:20.065] Processing "UEFI Boot order nvme default" DTB overlay
[2023-12-21 16:10:20.065] Deleting fragment fragment@0
[2023-12-21 16:10:20.080] UpdateRamOopsMemory: RamOopsBase: 0x46EA70000, RamOopsSize: 0x200000
[2023-12-21 16:10:20.112] FtpmProtocol Not Found - Not Found
[2023-12-21 16:10:20.113] GetParentPcieControllerPrivate: cannot retrieve device path protocol from device handle: Unsupported
[2023-12-21 16:10:20.658] Loading driver at 0x004405A0000 EntryPoint=0x00441F3C598
[2023-12-21 16:10:20.658] Loading driver at 0x004405A0000 EntryPoint=0x00441F3C598 
[2023-12-21 16:10:20.658] EFI stub: Booting Linux Kernel...

@DaneLLL

Hi do we have any solution to this?

Hi,
We have checked this:

[2023-12-21 **16:10:15.314**] L4TLauncher: Attempting Direct Boot ------- > (15th second)

**(5s wait)**

This does not look like the waiting that awaits for pressing ESC button. It looks to be system has passed the stage and is booting. It takes around 5 seconds. So you should have removed the 5-second waiting successfully.

@DaneLLL

I have removed the 5s wait for pressing ESC button. And that wait time is gone.

What about this 5s wait time after Attempting direct boot?

[2023-12-21 16:10:15.314] L4TLauncher: Attempting Direct Boot (15th second)

[2023-12-21 16:10:20.016] Processing "L4T Configuration Settings" DTB overlay (20th second)
[2023-12-21 16:10:20.064] Deleting fragment fragment@0
[2023-12-21 16:10:20.065] Processing "P3767 Overlay Support" DTB overlay
[2023-12-21 16:10:20.065] Deleting fragment fragment@0
[2023-12-21 16:10:20.065] Deleting fragment fragment@1
[2023-12-21 16:10:20.065] Deleting fragment fragment@2
[2023-12-21 16:10:20.065] Deleting fragment fragment@3
[2023-12-21 16:10:20.065] Processing "P3768 Overlay Support" DTB overlay
[2023-12-21 16:10:20.065] Deleting fragment fragment@0
[2023-12-21 16:10:20.065] Deleting fragment fragment@1
[2023-12-21 16:10:20.065] Processing "UEFI Boot order nvme default" DTB overlay
[2023-12-21 16:10:20.065] Deleting fragment fragment@0
[2023-12-21 16:10:20.080] UpdateRamOopsMemory: RamOopsBase: 0x46EA70000, RamOopsSize: 0x200000
[2023-12-21 16:10:20.112] FtpmProtocol Not Found - Not Found
[2023-12-21 16:10:20.113] GetParentPcieControllerPrivate: cannot retrieve device path protocol from device handle: Unsupported
[2023-12-21 16:10:20.658] Loading driver at 0x004405A0000 EntryPoint=0x00441F3C598
[2023-12-21 16:10:20.658] Loading driver at 0x004405A0000 EntryPoint=0x00441F3C598 
[2023-12-21 16:10:20.658] EFI stub: Booting Linux Kernel...

This is what takes place there…

Hi,
The 5s wait is in booting UEFI. The log is disabled by default so you may feel like it is a waiting. For clarification, you can follow the steps to enable the debug log:

Build without docker · NVIDIA/edk2-nvidia Wiki · GitHub

And if you have followed the guidance in

Boot Time Optimization — NVIDIA Jetson Linux Developer Guide 1 documentation

Your system should be optimal in booting time.

@DaneLLL

I have used the DEBUG Image itself.
I don’t have an issue with other optimizations.
I just want to know if we can disable or reduce that wait time with respect to any driver?

Hi,
If you have followed the developer guide, the boot time should be optimal. May confirm again if you disable PCIe and USB interfaces in device tree which are not present in your custom board.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.