Jetson Nano boot failed with PXE

I successed the default SD boot with the rootfs mounted on both SD and NFS, no problem at all.

I tried the PXE opion with respect to the doc
---------------------------------------------------------------------------https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/flashing.html#wwpID0E0SG0HA

It seems everything is fine with PXE setting, TFTP, NFS, but it failed booting, always stuck at:

[ 64.635187] tegra-xusb 70090000.xusb: cannot find firmware…retry after 1 second
[ 65.659160] tegra-xusb 70090000.xusb: Direct firmware load for tegra21x_xusb_firmware failed with error -2
[ 65.668816] tegra-xusb 70090000.xusb: Falling back to user helper
[ 107.651004] VFS: Unable to mount root fs via NFS, trying floppy.
[ 107.657280] VFS: Cannot open root device “nfs” or unknown-block(2,0): error -6
[ 107.664504] Please append a correct “root=” boot option; here are the available partitions:
[ 107.672853] 0100 8192 ram0 [ 107.676427] (driver?)
[ 107.678783] 0101 8192 ram1 [ 107.682356] (driver?)
[ 107.684720] 0102 8192 ram2 [ 107.688293] (driver?)
[ 107.690649] 0103 8192 ram3 [ 107.694220] (driver?)
[ 107.696585] 0104 8192 ram4 [ 107.700156] (driver?)
[ 107.702510] 0105 8192 ram5 [ 107.706083] (driver?)
[ 107.708444] 0106 8192 ram6 [ 107.712015] (driver?)
[ 107.714371] 0107 8192 ram7 [ 107.717941] (driver?)
[ 107.720303] 0108 8192 ram8 [ 107.723872] (driver?)
[ 107.726228] 0109 8192 ram9 [ 107.729797] (driver?)
[ 107.732159] 010a 8192 ram10 [ 107.735815] (driver?)
[ 107.738169] 010b 8192 ram11 [ 107.741827] (driver?)
[ 107.744187] 010c 8192 ram12 [ 107.747843] (driver?)
[ 107.750200] 010d 8192 ram13 [ 107.753857] (driver?)
[ 107.756219] 010e 8192 ram14 [ 107.759876] (driver?)
[ 107.762230] 010f 8192 ram15 [ 107.765888] (driver?)
[ 107.768253] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
[ 107.776502] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.9.253-tegra #1
[ 107.783015] Hardware name: NVIDIA Jetson Nano Developer Kit (DT)
[ 107.789007] Call trace:
[ 107.791451] [] dump_backtrace+0x0/0x198
[ 107.796838] [] show_stack+0x24/0x30
[ 107.801879] [] dump_stack+0xa0/0xc4
[ 107.806921] [] panic+0x12c/0x2a8
[ 107.811701] [] mount_block_root+0x19c/0x2a0
[ 107.817434] [] mount_root+0x11c/0x134
[ 107.822647] [] prepare_namespace+0x170/0x1b8
[ 107.828467] [] kernel_init_freeable+0x220/0x244
[ 107.834548] [] kernel_init+0x18/0x108
[ 107.839761] [] ret_from_fork+0x10/0x30
[ 107.845062] SMP: stopping secondary CPUs
[ 107.849027] Kernel Offset: disabled
[ 107.852507] Memory Limit: none
[ 107.860873] Rebooting in 5 seconds…

My PXE setting is:

PROMPT 0
TIMEOUT 30
DEFAULT primary
MENU TITLE PXELinux boot options
LABEL primary
MENU LABEL primary kernel on TFTP
LINUX Image
FDT tegra210-p3448-0002-p3449-0000-b00.dtb
APPEND ${cbootargs} root=/dev/nfs nfsroot=10.42.0.1:/home/ning/jetson/Linux_for_Tegra/rootfs,tcp ip=dhcp nfsrootdebug booted-via-pxe=true

It seems NFS is not right, but the NFS booting is normal when I not using the PXE.

I then changed the PXE boot device to root=/dev/mmcblk0p1, it failed at

[ 64.635187] tegra-xusb 70090000.xusb: cannot find firmware…retry after 1 second
[ 65.659160] tegra-xusb 70090000.xusb: Direct firmware load for tegra21x_xusb_firmware failed with error -2

I just can’t figure out what’s the problem, can anyone give me a hint?

Thanks!

Maybe you can read this post first.

Your last problem seems to be that although you moved the rootfs location back to /dev/mmcblk0p1, you didn’t tell uboot not run PXE boot, thus, uboot still tries to load extlinux/kernel/initrd from PXE.

The usb firmware by default is located inside the initrd and it seems missing.

Since there is no full log provided, above are just my guess.

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