Hi, I deisgned custom carrier board for nano/tx2nx/xavier nx.
It is boot normal in nano-sd/tx2nx/xavier nx, but fail in nano-emmc.
This is log from debug uart.
[0000.221] [L4T TegraBoot] (version 00.00.2018.01-l4t-8728f3cb)
[0000.226] Processing in cold boot mode Bootloader 2
[0000.231] A02 Bootrom Patch rev = 1023
[0000.234] Power-up reason: pmc por
[0000.238] No Battery Present
[0000.240] pmic max77620 reset reason
[0000.244] pmic max77620 NVERC : 0x80
[0000.247] RamCode = 0
[0000.249] Platform has DDR4 type RAM
[0000.253] max77620 disabling SD1 Remote Sense
[0000.257] Setting DDR voltage to 1125mv
[0000.261] Serial Number of Pmic Max77663: 0x935ee
[0000.268] Entering ramdump check
[0000.271] Get RamDumpCarveOut = 0x0
[0000.275] RamDumpCarveOut=0x0, RamDumperFlag=0xe59ff3f8
[0000.280] Last reboot was clean, booting normally!
[0000.284] Sdram initialization is successful
[0000.288] SecureOs Carveout Base=0x00000000ff800000 Size=0x00800000
[0000.295] Lp0 Carveout Base=0x00000000ff780000 Size=0x00001000
[0000.300] BpmpFw Carveout Base=0x00000000ff700000 Size=0x00080000
[0000.306] GSC1 Carveout Base=0x00000000ff600000 Size=0x00100000
[0000.312] GSC2 Carveout Base=0x00000000ff500000 Size=0x00100000
[0000.318] GSC4 Carveout Base=0x00000000ff400000 Size=0x00100000
[0000.324] GSC5 Carveout Base=0x00000000ff300000 Size=0x00100000
[0000.330] GSC3 Carveout Base=0x000000017f300000 Size=0x00d00000
[0000.346] RamDump Carveout Base=0x00000000ff280000 Size=0x00080000
[0000.352] Platform-DebugCarveout: 0
[0000.355] Nck Carveout Base=0x00000000ff080000 Size=0x00200000
[0000.361] Non secure mode, and RB not enabled.
[0000.365] BoardID = 3448, SKU = 0x2
[0000.368] Not Nano-SD or !QSPI-ONLY, check GPT table first ...
[0000.374] Read GPT from (0:3)
[0000.389] Csd NumOfBlocks=0
[0000.401] Using GPT Primary to query partitions
[0000.405] Initialize FailControl
[0000.408] Read PT from (0:3)
[0000.443] PT crc32 and magic check passed.
[0000.447] Using BFS PT to query partitions
[0000.452] Loading Tboot-CPU binary
[0000.458] Verifying TBC in OdmNonSecureSBK mode
[0000.468] Bootloader load address is 0xa0000000, entry address is 0xa0000258
[0000.475] Bootloader downloaded successfully.
[0000.479] Downloaded Tboot-CPU binary to 0xa0000258
[0000.484] MAX77620_GPIO5 configured
[0000.487] CPU power rail is up
[0000.490] CPU clock enabled
[0000.494] Performing RAM repair
[0000.497] Updating A64 Warmreset Address to 0xa00002e9
[0000.502] BoardID = 3448, SKU = 0x2
[0000.505] Not Nano-SD or !QSPI-ONLY, check GPT table first ...
[0000.511] NvTbootFailControlDoFailover: No failover; Continuing ...
[0000.517] Loading NvTbootBootloaderDTB
[0000.534] Verifying NvTbootBootloaderDTB in OdmNonSecureSBK mode
[0000.606] Bootloader DTB Load Address: 0x83000000
[0000.610] BoardID = 3448, SKU = 0x2
[0000.614] Not Nano-SD or !QSPI-ONLY, check GPT table first ...
[0000.619] Loading NvTbootKernelDTB
[0000.636] Verifying NvTbootKernelDTB in OdmNonSecureSBK mode
[0000.707] Kernel DTB Load Address: 0x83100000
[0000.712] BoardID = 3448, SKU = 0x2
[0000.715] Not Nano-SD or !QSPI-ONLY, check GPT table first ...
[0000.721] NvTbootFailControlDoFailover: No failover; Continuing ...
[0000.728] Loading cboot binary
[0000.739] Verifying EBT in OdmNonSecureSBK mode
[0000.781] Bootloader load address is 0x92c00000, entry address is 0x92c00258
[0000.788] Bootloader downloaded successfully.
[0000.792] BoardID = 3448, SKU = 0x2
[0000.795] Not Nano-SD or !QSPI-ONLY, check GPT table first ...
[0000.801] NvTbootFailControlDoFailover: No failover; Continuing ...
[0000.808] PT: Partition NCT NOT found !
[0000.811] Warning: Find Partition via PT Failed
[0000.816] Next binary entry address: 0x92c00258
[0000.820] BoardId: 3448
[0000.825] Overriding pmu board id with proc board id
[0000.829] Display board id is not available
[0000.834] BoardID = 3448, SKU = 0x2
[0000.837] Not Nano-SD or !QSPI-ONLY, check GPT table first ...
[0000.843] NvTbootFailControlDoFailover: No failover; Continuing ...
[0000.856] Verifying SC7EntryFw in OdmNonSecureSBK mode
[0000.912] /bpmp deleted
[0000.915] SC7EntryFw header found loaded at 0xff700000
[0001.102] OVR2 PMIC
[0001.104] Bpmp FW successfully loaded
[0001.108] BoardID = 3448, SKU = 0x2
[0001.111] Not Nano-SD or !QSPI-ONLY, check GPT table first ...
[0001.117] NvTbootFailControlDoFailover: No failover; Continuing ...
[0001.124] WB0 init successfully at 0xff780000
[0001.128] Verifying NvTbootWb0 in OdmNonSecureSBK mode
[0001.133] Set NvDecSticky Bits
[0001.137] GSC2 address ff53fffc value c0edbbcc
[0001.143] GSC MC Settings done
[0001.146] BoardID = 3448, SKU = 0x2
[0001.149] Not Nano-SD or !QSPI-ONLY, check GPT table first ...
[0001.156] TOS Image length 53680
[0001.159] Monitor size 53680
[0001.162] OS size 0
[0001.167] Secure Os AES-CMAC Verification Success!
[0001.172] TOS image cipher info: plaintext
[0001.176] Loading and Validation of Secure OS Successful
[0001.192] SC7 Entry Firmware - 0xff700000, 0x4000
[0001.196] NvTbootPackSdramParams: start.
[0001.201] NvTbootPackSdramParams: done.
[0001.205] Tegraboot started after 150198 us
[0001.209] Basic modules init took 719771 us
[0001.213] Sec Bootdevice Read Time = 54 ms, Read Size = 3682 KB
[0001.219] Sec Bootdevice Write Time = 0 ms, Write Size = 0 KB
[0001.224] Next stage binary read took 7379 us
[0001.228] Carveout took -34773 us
[0001.232] CPU initialization took 391755 us
[0001.236] Total time taken by TegraBoot 1084132 us
[0001.240] Starting CPU & Halting co-processor
64NOTICE: BL31: v1.3(release):b5eeb33f7
NOTICE: BL31: Built : 12:09:37, Jul 26 2021
ERROR: Error initializing runtime service trusty_fast
[0001.362] RamCode = 0
[0001.367] LPDDR4 Training: Read DT: Number of tables = 2
[0001.372] EMC Training (SRC-freq: 204000; DST-freq: 1600000)
[0001.385] EMC Training Successful
[0001.388] 408000 not found in DVFS table
[0001.394] RamCode = 0
[0001.398] DT Write: emc-table@204000 succeeded
[0001.403] DT Write: emc-table@1600000 succeeded
[0001.407] LPDDR4 Training: Write DT: Number of tables = 2
[0001.450]
[0001.451] Debug Init done
[0001.454] Marked DTB cacheable
[0001.457] Bootloader DTB loaded at 0x83000000
[0001.461] Marked DTB cacheable
[0001.464] Kernel DTB loaded at 0x83100000
[0001.468] DeviceTree Init done
[0001.481] Pinmux applied successfully
[0001.486] gicd_base: 0x50041000
[0001.489] gicc_base: 0x50042000
[0001.492] Interrupts Init done
[0001.496] Using base:0x60005090 & irq:208 for tick-timer
[0001.501] Using base:0x60005098 for delay-timer
[0001.506] platform_init_timer: DONE
[0001.509] Timer(tick) Init done
[0001.513] osc freq = 38400 khz
[0001.517]
[0001.518] Welcome to L4T Cboot
[0001.521]
[0001.522] Cboot Version: 00.00.2018.01-t210-c952b4e6
[0001.527] calling constructors
[0001.530] initializing heap
[0001.533] initializing threads
[0001.536] initializing timers
[0001.539] creating bootstrap completion thread
[0001.543] top of bootstrap2()
[0001.546] CPU: ARM Cortex A57
[0001.549] CPU: MIDR: 0x411FD071, MPIDR: 0x80000000
[0001.553] initializing platform
[0001.607] Config for emmc ddr50 mode completed
[0001.611] sdmmc bdev is already initialized
[0001.615] Enable APE clock
[0001.618] Un-powergate APE partition
[0001.621] of_register: registering tegra_udc to of_hal
[0001.627] of_register: registering inv20628-driver to of_hal
[0001.632] of_register: registering ads1015-driver to of_hal
[0001.638] of_register: registering lp8557-bl-driver to of_hal
[0001.644] of_register: registering bq2419x_charger to of_hal
[0001.649] of_register: registering bq27441_fuel_gauge to of_hal
[0001.660] gpio framework initialized
[0001.664] of_register: registering tca9539_gpio to of_hal
[0001.669] of_register: registering tca9539_gpio to of_hal
[0001.675] of_register: registering i2c_bus_driver to of_hal
[0001.680] of_register: registering i2c_bus_driver to of_hal
[0001.686] of_register: registering i2c_bus_driver to of_hal
[0001.691] pmic framework initialized
[0001.695] of_register: registering max77620_pmic to of_hal
[0001.700] regulator framework initialized
[0001.704] of_register: registering tps65132_bl_driver to of_hal
[0001.710] initializing target
[0001.716] gpio_driver_register: register 'tegra_gpio_driver' driver
[0001.727] fixed regulator driver initialized
[0001.744] initializing OF layer
[0001.747] NCK carveout not present
[0001.750] Skipping dts_overrides
[0001.754] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.771] I2C Bus Init done
[0001.773] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.783] I2C Bus Init done
[0001.786] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.796] I2C Bus Init done
[0001.799] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.809] I2C Bus Init done
[0001.812] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.822] I2C Bus Init done
[0001.825] of_children_init: Ops found for compatible string maxim,max77620
[0001.835] max77620_init using irq 118
[0001.840] register 'maxim,max77620' pmic
[0001.844] gpio_driver_register: register 'max77620-gpio' driver
[0001.850] of_children_init: Ops found for compatible string nvidia,tegra210-i2c
[0001.861] I2C Bus Init done
[0001.864] NCK carveout not present
[0001.873] Find /i2c@7000c000's alias i2c0
[0001.877] get eeprom at 1-a0, size 256, type 0
[0001.886] Find /i2c@7000c500's alias i2c2
[0001.890] get eeprom at 3-a0, size 256, type 0
[0001.894] get eeprom at 3-ae, size 256, type 0
[0001.899] pm_ids_update: Updating 1,a0, size 256, type 0
[0001.904] I2C slave not started
[0001.907] I2C write failed
[0001.910] Writing offset failed
[0001.913] eeprom_init: EEPROM read failed
[0001.917] pm_ids_update: eeprom init failed
[0001.921] pm_ids_update: Updating 3,a0, size 256, type 0
[0001.951] pm_ids_update: The pm board id is 3448-0002-400
[0001.957] Adding plugin-manager/ids/3448-0002-400=/i2c@7000c500:module@0x50
[0001.966] pm_ids_update: pm id update successful
[0001.970] pm_ids_update: Updating 3,ae, size 256, type 0
[0001.976] I2C slave not started
[0001.979] I2C write failed
[0001.981] Writing offset failed
[0001.984] eeprom_init: EEPROM read failed
[0001.988] pm_ids_update: eeprom init failed
[0002.018] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0002.024] shim_eeprom_update_mac:267: Failed to update 0 MAC address in DTB
[0002.032] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0002.038] shim_eeprom_update_mac:267: Failed to update 1 MAC address in DTB
[0002.046] updating /chosen/nvidia,ethernet-mac node 00:04:4b:e9:cf:2b
[0002.052] Plugin Manager: Parse ODM data 0x000a4000
[0002.065] shim_cmdline_install: /chosen/bootargs: earlycon=uart8250,mmio32,0x70006000
[0002.079] Find /i2c@7000c000's alias i2c0
[0002.083] get eeprom at 1-a0, size 256, type 0
[0002.092] Find /i2c@7000c500's alias i2c2
[0002.096] get eeprom at 3-a0, size 256, type 0
[0002.100] get eeprom at 3-ae, size 256, type 0
[0002.104] pm_ids_update: Updating 1,a0, size 256, type 0
[0002.110] I2C slave not started
[0002.113] I2C write failed
[0002.115] Writing offset failed
[0002.118] eeprom_init: EEPROM read failed
[0002.122] pm_ids_update: eeprom init failed
[0002.126] pm_ids_update: Updating 3,a0, size 256, type 0
[0002.157] pm_ids_update: The pm board id is 3448-0002-400
[0002.163] Adding plugin-manager/ids/3448-0002-400=/i2c@7000c500:module@0x50
[0002.170] pm_ids_update: pm id update successful
[0002.174] pm_ids_update: Updating 3,ae, size 256, type 0
[0002.180] I2C slave not started
[0002.183] I2C write failed
[0002.185] Writing offset failed
[0002.188] eeprom_init: EEPROM read failed
[0002.192] pm_ids_update: eeprom init failed
[0002.222] Add serial number:1423019109468 as DT property
[0002.230] Applying platform configs
[0002.236] platform-init is not present. Skipping
[0002.241] calling apps_init()
[0002.262] Found 17 GPT partitions in "sdmmc3_user"
[0002.267] Proceeding to Cold Boot
[0002.270] starting app android_boot_app
[0002.274] Device state: unlocked
[0002.277] display console init
[0002.285] could not find regulator
[0002.308] hdmi cable not connected
[0002.312] is_hdmi_needed: HDMI not connected, returning false
[0002.317] hdmDT entry for leds-pwm not found
i[0002.325] is not connected
[0002.327] sor0 is not supported
[0002.330] display_console_init: no valid display out_type
[0002.338] subnode volume_up is not found !
[0002.342] subnode back is not found !
[0002.346] subnode volume_down is not found !
[0002.350] subnode menu is not found !
[0002.354] Gpio keyboard init success
[0002.401] found decompressor handler: lz4-legacy
[0002.415] decompressing blob (type 1)...
[0002.482] display_resolution: No display init
[0002.486] Failed to retrieve display resolution
[0002.490] Could not load/initialize BMP blob...ignoring
[0002.540] decompressor handler not found
[0002.544] load_firmware_blob: Firmware blob loaded, entries=2
[0002.549] XUSB blob version 0 size 126464 @ 0x92cb328c
[0002.555] -------> se_aes_verify_sbk_clear: 747
[0002.560] se_aes_verify_sbk_clear: Error
[0002.564] SE operation failed
[0002.567] bl_battery_charging: connected to external power supply
[0002.576] display_console_ioctl: No display init
[0002.580] switch_backlight failed
[0002.590] device_query_partition_size: failed to open partition sdmmc3_user:MSC !
[0002.597] MSC Partition not found
[0002.607] device_query_partition_size: failed to open partition sdmmc3_user:USP !
[0002.614] USP partition read failed!
[0002.617] blob_init: blob-partition USP header read failed
[0002.623] android_boot Unable to update recovery partition
[0002.628] kfs_getpartname: name = LNX
[0002.632] Loading kernel from LNX
[0002.721] load kernel from storage
[0002.731] decompressor handler not found
[0002.765] Successfully loaded kernel and ramdisk images
[0002.770] board ID = D78, board SKU = 2
[0002.774] display_resolution: No display init
[0002.779] Failed to retrieve display resolution
[0002.783] bmp blob is not loaded and initialized
[0002.788] Failed to display boot-logo
[0002.791] NCK carveout not present
[0002.795] Skipping dts_overrides
[0002.798] NCK carveout not present
[0002.807] Find /i2c@7000c000's alias i2c0
[0002.811] get eeprom at 1-a0, size 256, type 0
[0002.820] Find /i2c@7000c500's alias i2c2
[0002.824] get eeprom at 3-a0, size 256, type 0
[0002.828] get eeprom at 3-ae, size 256, type 0
[0002.832] pm_ids_update: Updating 1,a0, size 256, type 0
[0002.838] I2C slave not started
[0002.841] I2C write failed
[0002.843] Writing offset failed
[0002.846] eeprom_init: EEPROM read failed
[0002.850] pm_ids_update: eeprom init failed
[0002.854] pm_ids_update: Updating 3,a0, size 256, type 0
[0002.884] pm_ids_update: The pm board id is 3448-0002-400
[0002.891] Adding plugin-manager/ids/3448-0002-400=/i2c@7000c500:module@0x50
[0002.900] pm_ids_update: pm id update successful
[0002.904] pm_ids_update: Updating 3,ae, size 256, type 0
[0002.910] I2C slave not started
[0002.913] I2C write failed
[0002.915] Writing offset failed
[0002.918] eeprom_init: EEPROM read failed
[0002.922] pm_ids_update: eeprom init failed
[0002.952] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0002.958] shim_eeprom_update_mac:267: Failed to update 0 MAC address in DTB
[0002.966] eeprom_get_mac: EEPROM invalid MAC address (all 0xff)
[0002.972] shim_eeprom_update_mac:267: Failed to update 1 MAC address in DTB
[0002.980] updating /chosen/nvidia,ethernet-mac node 00:04:4b:e9:cf:2b
[0002.986] Plugin Manager: Parse ODM data 0x000a4000
[0002.998] shim_cmdline_install: /chosen/bootargs: earlycon=uart8250,mmio32,0x70006000
[0003.007] Add serial number:1423019109468 as DT property
[0003.016] "bpmp" doesn't exist, creating
[0003.021] Updated bpmp info to DTB
[0003.026] Updated initrd info to DTB
[0003.029] "proc-board" doesn't exist, creating
[0003.036] Updated board info to DTB
[0003.039] "pmu-board" doesn't exist, creating
[0003.045] Updated board info to DTB
[0003.048] "display-board" doesn't exist, creating
[0003.054] Updated board info to DTB
[0003.057] "reset" doesn't exist, creating
[0003.062] Updated reset info to DTB
[0003.066] display_console_ioctl: No display init
[0003.070] display_console_ioctl: No display init
[0003.075] display_console_ioctl: No display init
[0003.079] Cmdline: tegraid=21.1.2.0.0 ddr_die=4096M@2048M section=512M 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 lp0_vec=0x1000@0xff780000 core_edp_mv=1125 core_edp_ma=4000 gpt
[0003.114] DTB cmdline: earlycon=uart8250,mmio32,0x70006000
[0003.119] boot image cmdline: root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 sdhci_tegra.en_boot_part_access=1
[0003.136] Updated bootarg info to DTB
[0003.139] Adding uuid 000000016445c8461800000017060100 to DT
[0003.145] Adding eks info 0 to DT
[0003.151] WARNING: Failed to pass NS DRAM ranges to TOS, err: -7
[0003.157] Updated memory info to DTB
[0003.164] set vdd_core voltage to 1125 mv
[0003.168] setting 'vdd-core' regulator to 1125000 micro volts
[0003.174] Found secure-pmc; disable BPMP
U-Boot 2020.04-g46e4604c78 (Jul 26 2021 - 12:09:42 -0700)
SoC: tegra210
Model: NVIDIA Jetson Nano Developer Kit
Board: NVIDIA P3450-0000
DRAM: 4 GiB
MMC: sdhci@700b0000: 1, sdhci@700b0600: 0
Loading Environment from MMC... *** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Net: No ethernet found.
Hit any key to stop autoboot: 2 0
Tegra210 (P3450-0000) # MC: sdhci@700b480p: LKH/k+鷼?样
It seem the key hited? And the design for debug uart pin is floating.How can I shield the key to stop autoboot and make the autoboot continue.
Thank you very much!