Ubuntu Core 18 image for Jetson TX1 / TX2 / Nano

Hi all,

I have been taking a fresh look at the Jetson TX1 Ubuntu Core 18
images to have them based on latest nvidia developer kit (L4T). The
following repositories contain the kernel and gadget snaps for the
device:


And this repository contains the image build scripts:

All these repositories contain instruction on how to do the
builds. The final result is a tarball that can be used jointly with
nvidia’s L4T to get the image flashed. This tarball is also in github
so you do not need to build everything from scratch:

Exact instructions on how to flash Ubuntu Core can be found inside the
tarball.

Note that these images work only for Jetson TX1. Also, these images are not
supported and not official in any way. Patches for bug fixing/support
for TK1/TX2/AGX Xavier are welcome :).

EDIT: I have blogged about some details of this image: https://www.alfonsobeato.net/arm/porting-ubuntu-core-18-to-nvidia-jetson-tx1-developer-kit/

UPDATE: Now TX2 is supported too! The TX2 image and an updated TX1 image can be downloaded from the releases page: https://github.com/alfonsosanchezbeato/jetson-ubuntu-core/releases

UPDATE: Jetson Nano has now also its image! Check out in https://github.com/alfonsosanchezbeato/jetson-ubuntu-core/releases

– Alfonso

8 Likes

Hi Alfonso,

I’m working on a snap bundled firmware for our Jetson based products and could work on TX2 & Xavier - both are sitting on my desk.

But if I’m not wrong Ubuntu Core doesn’t support classic snaps which is a problem for me because didn’t find another way to use the hardware accelerated GStreamer provided from NVidia. So did you manage to use the hardware acceleration on TX1 under Ubuntu Core?

Atanas

Atanas

2 Likes

@palavrov I have not tried accelerated payloads yet, but I’m using the nvidia kernel, which should support HW acceleration on its side. There is no intrinsic reason for confined snaps, the only ones supported by Ubuntu Core, not to be able to use HW acceleration, but maybe some new interface that provides access to those capabilities needs to be developed. You could propose changes / new interfaces like those in https://github.com/snapcore/snapd/tree/master/interfaces/builtin .

If using a classic snap makes things easier for you, you could try to use the kernel in the snap in the nvidia image and install snapd. The kernel patches on top of the nvidia kernel should allow you to run snaps on classic Ubuntu.

Snapd comes preinstalled on Xavier SDK (L4T 31.1) i.e. don’t need to do anything for now. But Ubuntu Core image is still a good alternative to simplify the build and final firmware distribution. In few weeks will get back to the subject and will try to adapt and run your snap core on tx2 & xavier. Hope that it would not need weeks as if start from scratch.

The snaps probably will not need much changes, at least for the TX2, but partitioting seems to be quite different, so maybe that is what will require more changes. Keep us posted!

@palavrov I have now a working image for TX2, feel free to give it a try (see link in the updated post).

2 Likes

Sorry, didn’t have time to work on that last few weeks and probably will not have time during the next few weeks too - migrating to Ubuntu Core is still on the pipeline but there are too much other tasks with higher priority.

I am actually interested to figure out if there was any progress made for enabling UbuntuCore on Jetson Xavier NX, I might be able to have my hands on that thing in future.

Also @abeato, can you tell if Canonical’s recent parnership with NVIDIA will improve anything for the Jetson platform in terms of official Ubuntu Core support ?

@om26er for the moment I have not worked on the Xavier NX enablement, I do not have the hardware around. I guess it should not be too hard to add support for it though. As usual, patches are welcome :slight_smile:

For the Jetson situation, I do not think there is any change.

1 Like

I tried running nano image from release tab and also following the above instructions(making image). Either way the image is not booting up. @abeato
Note: after the flash it makes 13 partition that means the flash was successful. And tested by flashing multiple times even using Win32DiskImager.

Could you share the console log?

@abeato unfortunately there is no console as we do not get serial console. It does not move forward to splash screen, so no serial. Is it working with your jetson Nano? If it is, can you tell me which jetson nano is it 1)devkit 2 GB, or 2) emmc 4GB

I have worked only with the SD card one, so it is quite probable that things do not work with the eMMC version. FYI the tarball with the Nano release is https://github.com/alfonsosanchezbeato/jetson-ubuntu-core/releases/download/v0.5/core-18-jetson-nano.tar.xz

@abeato yes I tried that image again and its not working
Development kit: 2Gb jetson nano.
Is it working on your board?

Yes, it works for me…

@abeato I managed to get logs while bootup.

[0000.125] [L4T TegraBoot] (version 00.00.2018.01-l4t-e82258de)

[0000.130] Processing in cold boot mode Bootloader 2
[0000.135] A02 Bootrom Patch rev = 1023
[0000.138] Power-up reason: pmc por
[0000.141] No Battery Present
[0000.144] pmic max77620 reset reason
[0000.147] pmic max77620 NVERC : 0x40
[0000.151] RamCode = 1
[0000.153] Platform has DDR4 type RAM
[0000.156] max77620 disabling SD1 Remote Sense
[0000.161] Setting DDR voltage to 1125mv
[0000.165] Serial Number of Pmic Max77663: 0x739f1
[0000.172] Entering ramdump check
[0000.175] Get RamDumpCarveOut = 0x0
[0000.178] RamDumpCarveOut=0x0, RamDumperFlag=0xe59ff3f8
[0000.184] Last reboot was clean, booting normally!
[0000.188] Sdram initialization is successful
[0000.192] SecureOs Carveout Base=0x00000000ff800000 Size=0x00800000
[0000.198] Lp0 Carveout Base=0x00000000ff800000 Size=0x00000000
[0000.204] BpmpFw Carveout Base=0x00000000ff800000 Size=0x00000000
[0000.210] GSC1 Carveout Base=0x00000000ff800000 Size=0x00000000
[0000.216] Resize the SecureOs Carveout to 0x00100000
[0000.221] GSC2 Carveout Base=0x00000000ff900000 Size=0x00100000
[0000.226] GSC4 Carveout Base=0x00000000ff800000 Size=0x00000000
[0000.232] GSC5 Carveout Base=0x00000000ff800000 Size=0x00000000
[0000.238] GSC3 Carveout Base=0x00000000bf800000 Size=0x00200000
[0000.244] RamDump Carveout Base=0x0000000000000000 Size=0x00000000
[0000.250] Platform-DebugCarveout: 0
[0000.253] Nck Carveout Base=0x00000000ff800000 Size=0x00000000
[0000.259] Non secure mode, and RB not enabled.
[0000.263] BoardID = 3448, SKU = 0x3
[0000.266] QSPI-ONLY: SkipQspiOnlyFlag = 0
[0000.270] Nano-SD: checking PT table on QSPI …
[0000.274] Read PT from (2:0)
[0000.290] Using BFS PT to query partitions
[0000.295] Loading Tboot-CPU binary
[0000.324] Verifying TBC in OdmNonSecureSBK mode
[0000.334] Bootloader load address is 0xa0000000, entry address is 0xa0000258
[0000.341] Bootloader downloaded successfully.
[0000.345] Downloaded Tboot-CPU binary to 0xa0000258
[0000.350] MAX77620_GPIO5 configured
[0000.353] CPU power rail is up
[0000.356] CPU clock enabled
[0000.360] Performing RAM repair
[0000.363] Updating A64 Warmreset Address to 0xa00002e9
[0000.368] BoardID = 3448, SKU = 0x3
[0000.371] QSPI-ONLY: SkipQspiOnlyFlag = 0
[0000.375] Nano-SD: checking PT table on QSPI …
[0000.379] Loading NvTbootBootloaderDTB
[0000.446] Verifying NvTbootBootloaderDTB in OdmNonSecureSBK mode
[0000.525] Bootloader DTB Load Address: 0x83000000
[0000.530] BoardID = 3448, SKU = 0x3
[0000.533] QSPI-ONLY: SkipQspiOnlyFlag = 0
[0000.537] Nano-SD: checking PT table on QSPI …
[0000.542] Loading NvTbootKernelDTB
[0000.608] Verifying NvTbootKernelDTB in OdmNonSecureSBK mode
[0000.687] Kernel DTB Load Address: 0x83100000
[0000.691] BoardID = 3448, SKU = 0x3
[0000.695] QSPI-ONLY: SkipQspiOnlyFlag = 0
[0000.698] Nano-SD: checking PT table on QSPI …
[0000.705] Loading cboot binary
[0000.820] Verifying EBT in OdmNonSecureSBK mode
[0000.862] Bootloader load address is 0x92c00000, entry address is 0x92c00258
[0000.869] Bootloader downloaded successfully.
[0000.873] BoardID = 3448, SKU = 0x3
[0000.877] QSPI-ONLY: SkipQspiOnlyFlag = 0
[0000.880] Nano-SD: checking PT table on QSPI …
[0000.885] PT: Partition NCT NOT found !
[0000.889] Warning: Find Partition via PT Failed
[0000.893] Next binary entry address: 0x92c00258
[0000.897] BoardId: 3448
[0000.902] Overriding pmu board id with proc board id
[0000.907] Display board id is not available
[0000.911] No Bpmp FW loaded
[0000.914] Not loading WB0 as no bpmp/sc7entry fw
[0000.918] Set NvDecSticky Bits
[0000.922] GSC2 address ff93fffc value c0edbbcc
[0000.928] GSC MC Settings done
[0000.931] BoardID = 3448, SKU = 0x3
[0000.934] QSPI-ONLY: SkipQspiOnlyFlag = 0
[0000.938] Nano-SD: checking PT table on QSPI …
[0000.943] TOS Image length 53680
[0000.946] Monitor size 53680
[0000.949] OS size 0
[0000.964] Secure Os AES-CMAC Verification Success!
[0000.969] TOS image cipher info: plaintext
[0000.973] Loading and Validation of Secure OS Successful
[0000.989] NvTbootPackSdramParams: start.
[0000.994] NvTbootPackSdramParams: done.
[0000.997] Tegraboot started after 51843 us
[0001.001] Basic modules init took 922519 us
[0001.005] Sec Bootdevice Read Time = 12 ms, Read Size = 61 KB
[0001.011] Sec Bootdevice Write Time = 0 ms, Write Size = 0 KB
[0001.016] Next stage binary read took 11286 us
[0001.021] Carveout took -63807 us
[0001.024] CPU initialization took 99956 us
[0001.028] Total time taken by TegraBoot 969954 us

[0001.032] Starting CPU & Halting co-processor

64NOTICE: BL31: v1.3(release):5b49e7f80
NOTICE: BL31: Built : 08:37:40, Feb 19 2021
ERROR: Error initializing runtime service trusty_fast
[0001.154] RamCode = 1
[0001.159] LPDDR4 Training: Read DT: Number of tables = 2
[0001.164] EMC Training (SRC-freq: 204000; DST-freq: 1600000)
[0001.176] EMC Training Successful
[0001.179] 408000 not found in DVFS table
[0001.186] RamCode = 1
[0001.189] DT Write: emc-table@204000 succeeded
[0001.195] DT Write: emc-table@1600000 succeeded
[0001.199] LPDDR4 Training: Write DT: Number of tables = 2
[0001.237]
[0001.238] Debug Init done
[0001.240] Marked DTB cacheable
[0001.243] Bootloader DTB loaded at 0x83000000
[0001.248] Marked DTB cacheable
[0001.251] Kernel DTB loaded at 0x83100000
[0001.255] DeviceTree Init done
[0001.268] Pinmux applied successfully
[0001.272] gicd_base: 0x50041000
[0001.276] gicc_base: 0x50042000
[0001.279] Interrupts Init done
[0001.283] Using base:0x60005090 & irq:208 for tick-timer
[0001.288] Using base:0x60005098 for delay-timer
[0001.292] platform_init_timer: DONE
[0001.296] Timer(tick) Init done
[0001.300] osc freq = 38400 khz
[0001.303]
[0001.305] Welcome to L4T Cboot
[0001.308]
[0001.309] Cboot Version: 00.00.2018.01-t210-39562017
[0001.314] calling constructors
[0001.317] initializing heap
[0001.319] initializing threads
[0001.322] initializing timers
[0001.325] creating bootstrap completion thread
[0001.329] top of bootstrap2()
[0001.332] CPU: ARM Cortex A57
[0001.335] CPU: MIDR: 0x411FD071, MPIDR: 0x80000000
[0001.340] initializing platform
[0001.348] Manufacturer: MF = 0xc2, ID MSB = 0x25
[0001.352] ID LSB = 0x36, ID-CFI len = 194 bytes
[0001.356] Macronix QSPI chip present
[0001.360] SPI device register
[0001.363] init boot device
[0001.365] allocating memory for boot device(SPI)
[0001.370] registering boot device
[0001.378] QSPI bdev is already initialized
[0001.382] Enable APE clock
[0001.385] Un-powergate APE partition
[0001.388] of_register: registering tegra_udc to of_hal
[0001.394] of_register: registering inv20628-driver to of_hal
[0001.399] of_register: registering ads1015-driver to of_hal
[0001.405] of_register: registering lp8557-bl-driver to of_hal
[0001.410] of_register: registering bq2419x_charger to of_hal
[0001.416] of_register: registering bq27441_fuel_gauge to of_hal
[0001.428] gpio framework initialized
[0001.431] of_register: registering tca9539_gpio to of_hal
[0001.436] of_register: registering tca9539_gpio to of_hal
[0001.442] of_register: registering i2c_bus_driver to of_hal
[0001.447] of_register: registering i2c_bus_driver to of_hal
[0001.453] of_register: registering i2c_bus_driver to of_hal
[0001.459] pmic framework initialized
[0001.462] of_register: registering max77620_pmic to of_hal
[0001.467] regulator framework initialized
[0001.471] of_register: registering tps65132_bl_driver to of_hal
[0001.477] initializing target
[0001.483] gpio_driver_register: register ‘tegra_gpio_driver’ driver
[0001.491] board ID = D78, board SKU = 3
[0001.495] Skipping Z3!
[0001.500] fixed regulator driver initialized
[0001.519] initializing OF layer
[0001.522] NCK carveout not present
[0001.525] Skipping dts_overrides
[0001.529] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.546] I2C Bus Init done
[0001.549] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.559] I2C Bus Init done
[0001.562] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.572] I2C Bus Init done
[0001.575] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.585] I2C Bus Init done
[0001.588] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.598] I2C Bus Init done
[0001.601] of_children_init: Ops found for compatible string maxim,max77620
[0001.611] max77620_init using irq 118
[0001.616] register ‘maxim,max77620’ pmic
[0001.621] gpio_driver_register: register ‘max77620-gpio’ driver
[0001.627] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.637] I2C Bus Init done
[0001.641] NCK carveout not present
[0001.651] Find /i2c@7000c000’s alias i2c0
[0001.655] get eeprom at 1-a0, size 256, type 0
[0001.664] Find /i2c@7000c500’s alias i2c2
[0001.667] get eeprom at 3-a0, size 256, type 0
[0001.672] get eeprom at 3-ae, size 256, type 0
[0001.676] pm_ids_update: Updating 1,a0, size 256, type 0
[0001.682] I2C slave not started
[0001.685] I2C write failed
[0001.687] Writing offset failed
[0001.690] eeprom_init: EEPROM read failed
[0001.694] pm_ids_update: eeprom init failed
[0001.698] pm_ids_update: Updating 3,a0, size 256, type 0
[0001.728] pm_ids_update: The pm board id is 3448-0003-400
[0001.735] Adding plugin-manager/ids/3448-0003-400=/i2c@7000c500:module@0x50
[0001.744] pm_ids_update: pm id update successful
[0001.748] pm_ids_update: Updating 3,ae, size 256, type 0
[0001.779] eeprom_init: EEPROM incompatible version found
[0001.784] pm_ids_update: eeprom init failed
[0001.814] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0001.820] shim_eeprom_update_mac:267: Failed to update 0 MAC address in DTB
[0001.827] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0001.833] shim_eeprom_update_mac:267: Failed to update 1 MAC address in DTB
[0001.842] updating /chosen/nvidia,ethernet-mac node 48:b0:2d:2d:e3:37
[0001.848] Plugin Manager: Parse ODM data 0x000a4000
[0001.861] shim_cmdline_install: /chosen/bootargs: earlycon=uart8250,mmio32,0x70006000
[0001.876] Find /i2c@7000c000’s alias i2c0
[0001.880] get eeprom at 1-a0, size 256, type 0
[0001.889] Find /i2c@7000c500’s alias i2c2
[0001.893] get eeprom at 3-a0, size 256, type 0
[0001.897] get eeprom at 3-ae, size 256, type 0
[0001.901] pm_ids_update: Updating 1,a0, size 256, type 0
[0001.907] I2C slave not started
[0001.910] I2C write failed
[0001.912] Writing offset failed
[0001.915] eeprom_init: EEPROM read failed
[0001.919] pm_ids_update: eeprom init failed
[0001.924] pm_ids_update: Updating 3,a0, size 256, type 0
[0001.954] pm_ids_update: The pm board id is 3448-0003-400
[0001.960] Adding plugin-manager/ids/3448-0003-400=/i2c@7000c500:module@0x50
[0001.967] pm_ids_update: pm id update successful
[0001.971] pm_ids_update: Updating 3,ae, size 256, type 0
[0002.001] eeprom_init: EEPROM incompatible version found
[0002.007] pm_ids_update: eeprom init failed
[0002.037] Add serial number:1423720060050 as DT property
[0002.044] Applying platform configs
[0002.051] platform-init is not present. Skipping
[0002.056] calling apps_init()
[0002.061] Couldn’t find GPT header
[0002.066] Proceeding to Cold Boot
[0002.069] starting app android_boot_app
[0002.073] Device state: unlocked
[0002.076] display console init
[0002.084] could not find regulator
[0002.088] hdmi cable connected
[0002.103] edid read success
[0002.119] DT entry for leds-pwm not found
[0002.122] edid read success
[0002.125] width = 640, height = 480, frequency = 25174825
[0002.130] width = 1920, height = 1080, frequency = 148500000
[0002.136] width = 1366, height = 768, frequency = 72000000
[0002.142] width = 1360, height = 768, frequency = 85500000
[0002.147] width = 1920, height = 1080, frequency = 148351648
[0002.153] width = 1280, height = 720, frequency = 74175824
[0002.158] width = 1280, height = 720, frequency = 74175824
[0002.164] width = 720, height = 480, frequency = 26973026
[0002.169] width = 720, height = 576, frequency = 26973026
[0002.174] width = 1920, height = 1080, frequency = 148351648
[0002.180] Best mode Width = 1920, Height = 1080, freq = 148351648
[0002.188] tmds-config node not found
[0002.192] pmc_set_io_pad_voltage: Error -2 retrieving platform-io-pad-voltagepropsetting ‘avdd-io-hdmi-dp’ regulator to 1050000 micro volts
[0002.207] setting ‘vdd-1v8’ regulator to 1800000 micro volts
[0002.214] could not find regulator
[0002.217] could not find regulator
[0002.221] could not find regulator
[0002.249] using default cmu settings
[0002.253] dc_hdmi_enable, starting HDMI initialisation
[0002.259] dc_hdmi_enable, HDMI initialisation complete
[0002.264] list and configure display window
[0002.273] display console init completed
[0002.284] subnode volume_up is not found !
[0002.288] subnode back is not found !
[0002.291] subnode volume_down is not found !
[0002.296] subnode menu is not found !
[0002.299] Gpio keyboard init success
[0002.380] found decompressor handler: lz4-legacy
[0002.394] decompressing blob (type 1)…
[0002.463] load_bmp_blob: panelresolution=1080 type=3
[0002.538] decompressor handler not found
[0002.542] load_firmware_blob: Firmware blob loaded, entries=2
[0002.547] XUSB blob version 0 size 124416 @ 0x934ae28c
[0002.554] -------> se_aes_verify_sbk_clear: 747
[0002.558] se_aes_verify_sbk_clear: Error
[0002.562] SE operation failed
[0002.565] bl_battery_charging: connected to external power supply
[0002.577] device_query_partition_size: failed to open partition spiflash0:MSC !
[0002.584] MSC Partition not found
[0002.591] device_query_partition_size: failed to open partition spiflash0:USP !
[0002.598] USP partition read failed!
[0002.601] blob_init: blob-partition USP header read failed
[0002.607] android_boot Unable to update recovery partition
[0002.612] kfs_getpartname: name = LNX
[0002.616] Loading kernel from LNX
[0002.625] Found 19 BFS partitions in “spiflash0”
[0002.943] load kernel from storage
[0002.948] decompressor handler not found
[0003.211] Successfully loaded kernel and ramdisk images
[0003.216] board ID = D78, board SKU = 3
[0003.221] sdmmc node status = okay
[0003.224] sdcard instance = 0
[0003.227] sdcard gpio handle 0x5a
[0003.230] sdcard gpio pin 0xc9
[0003.233] sdcard gpio flags 0x0
[0003.236] vmmc-supply 0x9d
[0003.239] cd_gpio_pin = 201
[0003.241] pin_state = 0
[0003.244] Found sdcard
[0003.246] SD-card IS present …
[0003.249] load_and_boot_kernel: SD card detected OK
[0003.255] load_bmp_blob: panelresolution=1080 type=3
[0003.740] display bmp image done
[0003.743] NCK carveout not present
[0003.747] Skipping dts_overrides
[0003.750] NCK carveout not present
[0003.760] Find /i2c@7000c000’s alias i2c0
[0003.764] get eeprom at 1-a0, size 256, type 0
[0003.772] Find /i2c@7000c500’s alias i2c2
[0003.776] get eeprom at 3-a0, size 256, type 0
[0003.781] get eeprom at 3-ae, size 256, type 0
[0003.785] pm_ids_update: Updating 1,a0, size 256, type 0
[0003.790] I2C slave not started
[0003.793] I2C write failed
[0003.796] Writing offset failed
[0003.799] eeprom_init: EEPROM read failed
[0003.803] pm_ids_update: eeprom init failed
[0003.807] pm_ids_update: Updating 3,a0, size 256, type 0
[0003.837] pm_ids_update: The pm board id is 3448-0003-400
[0003.844] Adding plugin-manager/ids/3448-0003-400=/i2c@7000c500:module@0x50
[0003.853] pm_ids_update: pm id update successful
[0003.857] pm_ids_update: Updating 3,ae, size 256, type 0
[0003.887] eeprom_init: EEPROM incompatible version found
[0003.893] pm_ids_update: eeprom init failed
[0003.923] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0003.928] shim_eeprom_update_mac:267: Failed to update 0 MAC address in DTB
[0003.936] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0003.942] shim_eeprom_update_mac:267: Failed to update 1 MAC address in DTB
[0003.951] updating /chosen/nvidia,ethernet-mac node 48:b0:2d:2d:e3:37
[0003.957] Plugin Manager: Parse ODM data 0x000a4000
[0003.970] shim_cmdline_install: /chosen/bootargs: earlycon=uart8250,mmio32,0x70006000
[0003.979] Add serial number:1423720060050 as DT property
[0003.987] Updated bpmp info to DTB
[0003.991] Updated initrd info to DTB
[0003.995] “proc-board” doesn’t exist, creating
[0004.001] Updated board info to DTB
[0004.004] “pmu-board” doesn’t exist, creating
[0004.011] Updated board info to DTB
[0004.014] “display-board” doesn’t exist, creating
[0004.020] Updated board info to DTB
[0004.023] “reset” doesn’t exist, creating
[0004.028] Updated reset info to DTB
[0004.031] Cmdline: tegraid=21.1.2.0.0 ddr_die=2048M@2048M section=256M memtype=0 vpr_resize usb_port_owner_info=0 lane_owner_info=0 emc_max_dvfs=0 touch_id=0@63 video=tegrafb no_console_suspend=1 console=ttyS0,115200n8 debug_uartport=lsport,4 earlyprintk=uart8250-32bit,0x70006000 maxcpus=4 usbcore.old_scheme_first=1 core_edp_mv=1075 core_edp_ma=4000 gpt tegra_fbmem=0x800000@0x92ca9000 is_hdmi_initialised=1
[0004.068] DTB cmdline: earlycon=uart8250,mmio32,0x70006000
[0004.074] boot image cmdline: root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0
[0004.087] Updated bootarg info to DTB
[0004.091] Adding uuid 0000000164504701200000000b038000 to DT
[0004.096] Adding eks info 0 to DT
[0004.102] WARNING: Failed to pass NS DRAM ranges to TOS, err: -7
[0004.108] Updated memory info to DTB
[0004.116] set vdd_core voltage to 1075 mv
[0004.120] setting ‘vdd-core’ regulator to 1075000 micro volts
[0004.126] Found secure-pmc; disable BPMP

U-Boot 2020.04-g6b630d64fd (Feb 19 2021 - 08:37:45 -0800)

SoC: tegra210
Model: NVIDIA Jetson Nano 2GB Developer Kit
Board: NVIDIA P3541-0000
DRAM: 2 GiB
MMC: sdhci@700b0000: 1, sdhci@700b0600: 0
Loading Environment from SPI Flash… SF: Detected mx25u3235f with page size 256 Bytes, erase size 4 KiB, total 4 MiB
*** Warning - bad CRC, using default environment

In: serial
Out: serial
Err: serial
Net: No ethernet found.
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc1 is current device
Scanning mmc 1:1…
starting USB…
Bus usb@7d000000: tegrausb: Invalid dr_mode 2 for host mode
probe failed, error -1
Bus xusb@70090000:
Firmware size 124416
Firmware timestamp: 0x5da88fc3, Version: 50.25 release

Register HCSParams1: 9000124 NbrPorts: 9
Starting the controller
USB XHCI 1.00
scanning bus xusb@70090000 for devices… Interface 2 has too many endpoints!
6 USB Device(s) found
scanning usb for storage devices… 0 Storage Device(s) found

Device 0: unknown device

Warning: eth_rtl8169 using MAC address from ROM
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 10.102.10.178 (3098 ms)
*** ERROR: serverip' not set Cannot autoload with TFTPGET missing environment variable: pxeuuid missing environment variable: bootfile Retrieving file: pxelinux.cfg/01-48-b0-2d-2d-e3-37 *** ERROR: serverip’ not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0A660AB2
*** ERROR: serverip' not set missing environment variable: bootfile Retrieving file: pxelinux.cfg/0A660AB *** ERROR: serverip’ not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0A660A
*** ERROR: serverip' not set missing environment variable: bootfile Retrieving file: pxelinux.cfg/0A660 *** ERROR: serverip’ not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0A66
*** ERROR: serverip' not set missing environment variable: bootfile Retrieving file: pxelinux.cfg/0A6 *** ERROR: serverip’ not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0A
*** ERROR: serverip' not set missing environment variable: bootfile Retrieving file: pxelinux.cfg/0 *** ERROR: serverip’ not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-tegra210-p3541-0000
*** ERROR: serverip' not set missing environment variable: bootfile Retrieving file: pxelinux.cfg/default-arm-tegra210 *** ERROR: serverip’ not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm
*** ERROR: serverip' not set missing environment variable: bootfile Retrieving file: pxelinux.cfg/default *** ERROR: serverip’ not set
Config file not found
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
DHCP client bound to address 10.102.10.178 (4570 ms)
*** ERROR: serverip' not set Cannot autoload with TFTPGET BOOTP broadcast 1 BOOTP broadcast 2 BOOTP broadcast 3 DHCP client bound to address 10.102.10.178 (4141 ms) *** ERROR: serverip’ not set
Cannot autoload with TFTPGET
Tegra210 (P3541-0000) #

… is definitely the main issue here …