Bootloader errors on custom board

When I try to run the Jetson TX2 bootloader and kernel on a custom board, there’s some errors:

[0000.189] I> Welcome to MB2(TBoot-BPMP)(version: 01.00.160913-t186-M-00.00-mobile-1b8ce67c)
[0000.198] I> bit @ 0xd480000
[0000.201] I> Boot-device: eMMC
[0000.205] I> sdmmc bdev is already initialized
[0000.209] I> pmic: reset reason (nverc)	: 0x80
[0000.216] I> Found 16 partitions in SDMMC_BOOT (instance 3)
[0000.224] I> Found 31 partitions in SDMMC_USER (instance 3)
[0000.230] I> A/B: bin_type (16) slot 0
[0000.233] I> Loading partition bpmp-fw at 0xd7800000
[0000.238] I> Reading two headers - addr:0xd7800000 blocks:1
[0000.243] I> Addr: 0xd7800000, start-block: 58777608, num_blocks: 1
[0000.259] I> Binary(16) of size 533504 is loaded @ 0xd7800000
[0000.264] I> A/B: bin_type (17) slot 0
[0000.268] I> Loading partition bpmp-fw-dtb at 0xd79f0000
[0000.273] I> Reading two headers - addr:0xd79f0000 blocks:1
[0000.279] I> Addr: 0xd79f0000, start-block: 58780024, num_blocks: 1
[0000.292] I> Binary(17) of size 465840 is loaded @ 0xd798e200
[0000.471] I> Loading SCE-FW ...
[0000.474] I> A/B: bin_type (12) slot 0
[0000.478] I> Loading partition sce-fw at 0xd7300000
[0000.483] I> Reading two headers - addr:0xd7300000 blocks:1
[0000.488] I> Addr: 0xd7300000, start-block: 58782024, num_blocks: 1
[0000.498] I> Binary(12) of size 125168 is loaded @ 0xd7300000
[0000.503] I> Init SCE
[0000.506] I> Loading APE-FW ...
[0000.509] I> A/B: bin_type (11) slot 0
[0000.512] I> Loading partition adsp-fw at 0xd7400000
[0000.517] I> Reading two headers - addr:0xd7400000 blocks:1
[0000.523] I> Addr: 0xd7400000, start-block: 58761224, num_blocks: 1
[0000.532] I> Binary(11) of size 107808 is loaded @ 0xd7400000
[0000.538] I> Copy BTCM section
[0000.541] I> A/B: bin_type (13) slot 0
[0000.544] I> Loading partition cpu-bootloader at 0x96000000
[0000.550] I> Reading two headers - addr:0x96000000 blocks:1
[0000.555] I> Addr: 0x96000000, start-block: 58740744, num_blocks: 1
[0000.567] I> Binary(13) of size 277776 is loaded @ 0x96000000
[0000.572] I> A/B: bin_type (20) slot 0
[0000.576] I> Loading partition bootloader-dtb at 0x8520f400
[0000.581] I> Reading two headers - addr:0x8520f400 blocks:1
[0000.587] I> Addr: 0x8520f400, start-block: 58742792, num_blocks: 1
[0000.599] I> Binary(20) of size 344048 is loaded @ 0x8520f400
[0000.605] I> A/B: bin_type (14) slot 0
[0000.609] I> Loading partition secure-os at 0x8530f600
[0000.614] I> Reading two headers - addr:0x8530f600 blocks:1
[0000.619] I> Addr: 0x8530f600, start-block: 58744840, num_blocks: 1
[0000.631] I> Binary(14) of size 312752 is loaded @ 0x8530f600
[0000.638] I> TOS boot-params @ 0x85000000
[0000.642] I> TOS params prepared
[0000.645] I> Loading EKS ...
[0000.648] I> A/B: bin_type (15) slot 0
[0000.652] I> Loading partition eks at 0x8590f800
[0000.656] I> Reading two headers - addr:0x8590f800 blocks:1
[0000.662] I> Addr: 0x8590f800, start-block: 58757128, num_blocks: 1
[0000.669] I> Binary(15) of size 1040 is loaded @ 0x8590f800
[0000.675] I> EKB detected (length: 0x400) @ 0x8590f800
[0000.680] I> Copied encrypted keys
[0000.684] I> boot profiler @ 0x275844000
[0000.688] I> boot profiler for TOS @ 0x275844000
[0000.692] I> Unhalting SCE
[0000.695] I> Primary Memory Start:80000000 Size:70000000
[0000.700] I> Extended Memory Start:f0110000 Size:1856f0000
[0000.707] I> MB2(TBoot-BPMP) done

NOTICE:  BL31: v1.3(release):a28d87f09
NOTICE:  BL31: Built : 21:15:42, Aug 12 2019
ipc-unittest-main: 1519: Welcome to IPC unittest!!!
ipc-unittest-main: 1531: waiting forever
ipc-unittest-srv: 329: Init unittest services!!!
keystore-demo: 141: Hello world from keystore-demo app
keystore-demo: 207: main: EKB contents match expected value
exit called, thread 0xffffffffea87ad58, name trusty_app_2_7d18fc60-e9fc-11e8
platform_bootstrap_epilog: trusty bootstrap complete
[0000.949] I> Welcome to Cboot
[0000.951] I> Cboot Version: t186-dcb303f9
[0000.955] I> CPU-BL Params @ 0x275800000
[0000.959] I>  0) Base:0x00000000 Size:0x00000000
[0000.963] I>  1) Base:0x277f00000 Size:0x00100000
[0000.968] I>  2) Base:0x277e00000 Size:0x00100000
[0000.972] I>  3) Base:0x277d00000 Size:0x00100000
[0000.977] I>  4) Base:0x277c00000 Size:0x00100000
[0000.982] I>  5) Base:0x277b00000 Size:0x00100000
[0000.986] I>  6) Base:0x277800000 Size:0x00200000
[0000.991] I>  7) Base:0x277400000 Size:0x00400000
[0000.995] I>  8) Base:0x277a00000 Size:0x00100000
[0001.000] I>  9) Base:0x277300000 Size:0x00100000
[0001.004] I> 10) Base:0x276800000 Size:0x00800000
[0001.009] I> 11) Base:0x30000000 Size:0x00040000
[0001.013] I> 12) Base:0xf0000000 Size:0x00100000
[0001.017] I> 13) Base:0x30040000 Size:0x00001000
[0001.022] I> 14) Base:0x30048000 Size:0x00001000
[0001.026] I> 15) Base:0x30049000 Size:0x00001000
[0001.031] I> 16) Base:0x3004a000 Size:0x00001000
[0001.035] I> 17) Base:0x3004b000 Size:0x00001000
[0001.040] I> 18) Base:0x3004c000 Size:0x00001000
[0001.044] I> 19) Base:0x3004d000 Size:0x00001000
[0001.049] I> 20) Base:0x3004e000 Size:0x00001000
[0001.053] I> 21) Base:0x3004f000 Size:0x00001000
[0001.057] I> 22) Base:0x00000000 Size:0x00000000
[0001.062] I> 23) Base:0xf0100000 Size:0x00010000
[0001.066] I> 24) Base:0x00000000 Size:0x00000000
[0001.071] I> 25) Base:0x00000000 Size:0x00000000
[0001.075] I> 26) Base:0x00000000 Size:0x00000000
[0001.080] I> 27) Base:0x00000000 Size:0x00000000
[0001.084] I> 28) Base:0x84400000 Size:0x00400000
[0001.088] I> 29) Base:0x30000000 Size:0x00010000
[0001.093] I> 30) Base:0x278000000 Size:0x08000000
[0001.097] I> 31) Base:0x00000000 Size:0x00000000
[0001.102] I> 32) Base:0x276000000 Size:0x00600000
[0001.106] I> 33) Base:0x80000000 Size:0x70000000
[0001.111] I> 34) Base:0xf0110000 Size:0x1856f0000
[0001.115] I> 35) Base:0x00000000 Size:0x00000000
[0001.120] I> 36) Base:0x00000000 Size:0x00000000
[0001.124] I> 37) Base:0x2772e0000 Size:0x00020000
[0001.129] I> 38) Base:0x84000000 Size:0x00400000
[0001.133] I> 39) Base:0x96000000 Size:0x02000000
[0001.137] I> 40) Base:0x85000000 Size:0x01200000
[0001.142] I> 41) Base:0x275800000 Size:0x00500000
[0001.146] I> 42) Base:0x00000000 Size:0x00000000
[0001.151] I> 43) Base:0x00000000 Size:0x00000000
[0001.155] GIC-SPI Target CPU: 4
[0001.159] Interrupts Init done
[0001.162] calling constructors
[0001.165] initializing heap
[0001.168] initializing threads
[0001.171] initializing timers
[0001.174] creating bootstrap completion thread
[0001.179] top of bootstrap2()
[0001.182] CPU: ARM Cortex A57
[0001.185] CPU: MIDR: 0x411FD073, MPIDR: 0x80000100
[0001.191] initializing platform
[0001.194] I> Boot-device: eMMC
[0001.198] I> sdmmc bdev is already initialized
[0001.204] I> Found 16 partitions in SDMMC_BOOT (instance 3)
[0001.211] I> Found 31 partitions in SDMMC_USER (instance 3)
[0001.216] W> opt-in fuse is not set, skip fuse_burning
[0001.221] I> Reserved memory at 0xfbe00000 for U-Boot relocation
[0001.227] W> No valid slot number is found in scratch register
[0001.232] W> Return default slot: _a
[0001.236] I> A/B: bin_type (21) slot 0
[0001.239] I> Loading partition kernel-dtb at 0x80000000 from device(0x1)
[0001.253] I> Kernel_dtb @0x80000000
[0001.256] I> Bl_dtb @0x8520f400
[0001.259] I> gpio framework initialized
[0001.265] I> tegrabl_gpio_driver_register: register 'nvidia,tegra186-gpio' driver
[0001.275] I> tegrabl_gpio_driver_register: register 'nvidia,tegra186-gpio-aon' driver
[0001.283] I> tegrabl_tca9539_init: i2c bus: 0, slave addr: 0xee
[0001.293] E> I2C: slave not found in slaves.
[0001.297] E> I2C: Could not write 0 bytes to slave: 0x00ee with repeat start false.
[0001.305] E> I2C_DEV: Failed to send register address 0x00000004.
[0001.311] E> I2C_DEV: Could not write 1 registers of size 1 to slave 0xee at 0x00000004 via instance 0.
[0001.320] E> tca9539_device_init: failed to write polar reg
[0001.326] E> tegrabl_tca9539_init: failed to init device!
[0001.331] I> tegrabl_tca9539_init: i2c bus: 0, slave addr: 0xe8
[0001.338] E> I2C: slave not found in slaves.
[0001.342] E> I2C: Could not write 0 bytes to slave: 0x00e8 with repeat start false.
[0001.350] E> I2C_DEV: Failed to send register address 0x00000004.
[0001.356] E> I2C_DEV: Could not write 1 registers of size 1 to slave 0xe8 at 0x00000004 via instance 0.
[0001.365] E> tca9539_device_init: failed to write polar reg
[0001.370] E> tegrabl_tca9539_init: failed to init device!
[0001.378] I> fixed regulator driver initialized
[0001.410] I> register 'maxim' power off handle
[0001.416] I> virtual i2c enabled
[0001.419] I> registered 'maxim,max77620' pmic
[0001.423] I> tegrabl_gpio_driver_register: register 'max77620-gpio' driver
[0001.436] I> Find /i2c@c250000's alias i2c7
[0001.440] I> Reading eeprom i2c=7 address=0x50
[0001.470] I> Device at /i2c@c250000:0x50
[0001.474] I> Reading eeprom i2c=7 address=0x57
[0001.478] E> I2C: slave not found in slaves.
[0001.483] E> I2C: Could not write 0 bytes to slave: 0x00ae with repeat start true.
[0001.491] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.497] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xae at 0x00000000 via instance 7.
[0001.506] E> eeprom: Failed to read I2C slave device
[0001.511] I> Eeprom read failed 0x3526070d
[0001.516] I> Find /i2c@c240000's alias i2c1
[0001.520] I> Reading eeprom i2c=1 address=0x51
[0001.526] E> I2C: slave not found in slaves.
[0001.530] E> I2C: Could not write 0 bytes to slave: 0x00a2 with repeat start true.
[0001.538] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.544] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa2 at 0x00000000 via instance 1.
[0001.554] E> eeprom: Retry to read I2C slave device.
[0001.558] E> I2C: slave not found in slaves.
[0001.563] E> I2C: Could not write 0 bytes to slave: 0x00a2 with repeat start true.
[0001.571] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.577] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa2 at 0x00000000 via instance 1.
[0001.586] E> eeprom: Failed to read I2C slave device
[0001.591] I> Eeprom read failed 0x3526070d
[0001.596] I> Find /i2c@3160000's alias i2c0
[0001.600] I> Reading eeprom i2c=0 address=0x50
[0001.604] E> I2C: slave not found in slaves.
[0001.608] E> I2C: Could not write 0 bytes to slave: 0x00a0 with repeat start true.
[0001.616] E> I2C_DEV: Failed to send register address 0x00000000.
[0001.622] E> I2C_DEV: Could not read 256 registers of size 1 from slave 0xa0 at 0x00000000 via instance 0.
[0001.632] E> eeprom: Failed to read I2C slave device
[0001.636] I> Eeprom read failed 0x3526070d
[0001.641] I> Find /i2c@3180000's alias i2c2
[0001.645] I> Reading eeprom i2c=2 address=0x54
[0001.649] I> Enabling gpio chip_id = 2, gpio pin = 9
[0001.654] C> GPIO driver for chip_id 0x2 could not be found
[0001.660] E> cam_eeprom_read: Can't get gpio driver
[0001.664] I> Eeprom read failed 0x4d4d000d
[0001.668] I> Reading eeprom i2c=2 address=0x57
[0001.673] I> Enabling gpio chip_id = 2, gpio pin = 9
[0001.677] C> GPIO driver for chip_id 0x2 could not be found
[0001.683] E> cam_eeprom_read: Can't get gpio driver
[0001.687] I> Eeprom read failed 0x4d4d000d
[0001.691] I> create_pm_ids: id: 3310-1000-D01-B, len: 15
[0001.696] I> config: mem-type:00,power-config:00,misc-config:00,modem-config:00,touch-config:00,display-config:00,, len: 93
[0001.729] I> enabling 'vdd-hdmi' regulator
[0001.733] E> tegrabl_display_get_pdata, failed to parse dtb settings
[0001.742] E> cannot find any other nvdisp nodes
[0001.746] E> no valid display unit config found in dtb
[0001.753] W> display init failed
[0001.756] initializing target
[0001.759] calling apps_init()
[0001.762] starting app kernel_boot_app
[0001.768] I> found decompressor handler: lz4-legacy
[0001.773] I> decompressing BMP blob ...
[0001.788] I> Kernel type = Normal
[0001.791] I> Loading kernel from partition ...
[0001.795] W> No valid slot number is found in scratch register
[0001.801] W> Return default slot: _a
[0001.804] I> A/B: bin_type (24) slot 0
[0001.809] I> Boot image size read from image header: f2d10
[0001.814] I> Boot image load address: 0x0x80400000
[0001.819] I> Loading partition kernel at 0x80400000 from device(0x1)
[0002.612] I> Kernel hdr @0x80400000
[0002.615] I> Kernel dtb @0x80000000
[0002.619] I> T18x: Authenticate boot.img (bin_type 24), max size 0x4000000
[0002.627] I> T18x: Authenticate tegra194-p2888-0001-p2822-0000.dtb (bin_type 21), max size 0x100000
[0002.637] I> Checking boot.img header magic ... [0002.641] I> [OK]
[0002.643] I> Valid boot.img @ 0x80400000
[0002.647] I> decompressor handler not found
[0002.651] I> Copying kernel image (477378 bytes) from 0x80400800 to 0x80800000 ... [0002.659] I> Done
[0002.661] I> Move ramdisk (len: 0) from 0x80475800 to 0x94830000
[0002.668] I> Updated bpmp info to DTB
[0002.674] I> Ramdisk: Base: 0x94830000; Size: 0x0
[0002.678] I> Updated initrd info to DTB
[0002.682] W> WARN: Fail to override "console=none" in commandline
[0002.688] E> tegrabl_linuxboot_add_disp_param, du 0 failed to get display params
[0002.695] E> tegrabl_linuxboot_add_disp_param, du 0 failed to get display params
[0002.702] E> tegrabl_linuxboot_add_disp_param, du 0 failed to get display params
[0002.709] I> disabled_core_mask: 0xffffff0c
[0002.713] W> No valid slot number is found in scratch register
[0002.719] W> Return default slot: _a
[0002.722] I> Active slot suffix: 
[0002.726] I> add_boot_slot_suffix: slot_suffix = 
[0002.730] I> Linux Cmdline: root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1 
[0002.767] I> Updated bootarg info to DTB
[0002.770] I> eeprom_get_mac_addr: MAC (type: 0): 00:04:4b:c6:2d:20
[0002.777] I> eeprom_get_mac_addr: MAC (type: 1): 00:04:4b:c6:2d:21
[0002.783] I> eeprom_get_mac_addr: MAC (type: 2): 00:04:4b:c6:2d:22
[0002.791] E> Found no plugin manager ids in source DT
[0002.796] W> Add plugin manager ids from board info
[0002.800] E> "plugin-manager" doesn't exist, creating
[0002.805] E> "ids" doesn't exist, creating
[0002.809] E> "connection" doesn't exist, creating
[0002.814] E> "configs" doesn't exist, creating
[0002.818] I> create_pm_ids: id: 3310-1000-D01-B, len: 15
[0002.823] I> config: mem-type:00,power-config:00,misc-config:00,modem-config:00,touch-config:00,display-config:00,, len: 93
[0002.834] I> Adding plugin-manager/ids/3310-1000-D01=/i2c@c250000:module@0x50
[0002.842] E> "i2c@c250000" doesn't exist, creating
[0002.846] E> "module@0x50" doesn't exist, creating
[0002.853] I> Adding plugin-manager/ids/3310-1000-D01-B
[0002.860] I> Adding plugin-manager/configs/3310-mem-type 00
[0002.866] I> Adding plugin-manager/configs/3310-power-config 00
[0002.872] I> Adding plugin-manager/configs/3310-misc-config 00
[0002.878] I> Adding plugin-manager/configs/3310-modem-config 00
[0002.884] I> Adding plugin-manager/configs/3310-touch-config 00
[0002.889] I> Adding plugin-manager/configs/3310-display-config 00
[0002.896] I> Adding plugin-manager/cvm
[0002.899] E> "chip-id" doesn't exist, creating
[0002.904] I> Adding plugin-manager/chip-id/A02P
[0002.908] E> "odm-data" doesn't exist, creating
[0002.913] I> Adding /chosen/plugin-manager/odm-data
[0002.922] I> added [base:0x80000000, size:0x70000000] to /memory
[0002.928] I> added [base:0xf0200000, size:0x185600000] to /memory
[0002.934] I> added [base:0x275e00000, size:0x200000] to /memory
[0002.940] I> added [base:0x276600000, size:0x200000] to /memory
[0002.946] I> added [base:0x277000000, size:0x200000] to /memory
[0002.951] I> Updated memory info to DTB
[0002.956] E> add_disp_param: failed to get display params for du=0
[0002.964] E> "reset" doesn't exist, creating
[0002.968] E> "pmc-reset-reason" doesn't exist, creating
[0002.973] E> "pmic-reset-reason" doesn't exist, creating
[0002.980] I> Adding ecid(000000016450b8881c0000000afb0340) to DT
[0002.985] I> disabled_core_mask: 0xffffff0c
[0002.998] I> Add serial number:0424118099568 as DT property
[0003.007] I> Plugin-manager override starting
[0003.012] I> node /plugin-manager/fragement@0 matches
[0003.022] I> node /plugin-manager/fragement@4 matches
[0003.034] I> node /plugin-manager/fragment-sdwake-p3310-1000-300 matches
[0003.053] I> node /plugin-manager/fragement-pmon-p3310-1000-300 matches
[0003.063] I> node /plugin-manager/fragement-pmon-p3310-1000-800 matches
[0003.071] I> node /plugin-manager/fragment-devslp@0 matches
[0003.083] I> node /plugin-manager/fragment-500-pcie-config matches
[0003.097] I> node /plugin-manager/fragment-500-xusb-config matches
[0003.120] I> node /plugin-manager/fragment-p3310-c00-comm matches
[0003.133] I> node /plugin-manager/fragment-p3310-c00-pmic matches
[0003.143] I> node /plugin-manager/fragment-p3310-c01 matches
[0003.155] I> node /plugin-manager/fragment-p3310-c03 matches
[0003.191] I> node /plugin-manager/fragment-p3310-c00-camera matches
[0003.217] I> Disable plugin-manager status in FDT
[0003.221] I> Plugin-manager override finished successfully
[0003.227] I> tegrabl_load_kernel_and_dtb: Done
[0003.231] E> tegrabl_display_clear: display is not initialized
[0003.236] W> Boot logo display failed...
[0003.240] I> Kernel EP: 0x80800000, DTB: 0x80000000

In line 146~152 we have the errors:

[0001.283] I> tegrabl_tca9539_init: i2c bus: 0, slave addr: 0xee
[0001.293] E> I2C: slave not found in slaves.
[0001.297] E> I2C: Could not write 0 bytes to slave: 0x00ee with repeat start false.
[0001.305] E> I2C_DEV: Failed to send register address 0x00000004.
[0001.311] E> I2C_DEV: Could not write 1 registers of size 1 to slave 0xee at 0x00000004 via instance 0.
[0001.320] E> tca9539_device_init: failed to write polar reg
[0001.326] E> tegrabl_tca9539_init: failed to init device!

It’s because I don’t have the I2C expander TCA9539 on my custom board.
My question is: What the file I should change to disable this chip?
I tried whit a minimal Device Tree changing the file tegra186-quill-p3310-1000-c03-00-base.dtb and the boot still trying to enable the TCA9539.
Also I tried to modify uboot, but I can’t locate where this component (and others present on devkit board and not in my custom board) is located.

Thanks

You could try to remove the one using tca9539 in this device tree.

./common/kernel-dts/t18x-common-platforms/tegra186-cvb-prod-p2597-b00-p3310-1000-a00-00.dtsi

Because p2597 refers to devkit baseboard I tried to remove the file tegra186-cvb-prod-p2597-b00-p3310-1000-a00-00.dtsi from tegra186-quill-power-tree-p3310-1000-a00-00.dtsi file, but there’s a lot of definition like “battery_reg”, “vdd_fan”, “vdd_usb2_5v”, etc on this file. Now I’ll try to remove only the gpio_i2c_0_77 definition from file tegra186-cvb-prod-p2597-b00-p3310-1000-a00-00.dtsi to test what will happen. So do you confirm that the bootload process look at this DTB to configure things?

UPDATE: Now I’ve changed the tegra186-cvb-prod-p2597-b00-p3310-1000-a00-00.dtsi removing the values for gpio_i2c_0_77 and for gpio@77 but nothing change on u-boot/c-boot logs:

[0001.276] I> gpio framework initialized
[0001.283] I> tegrabl_gpio_driver_register: register 'nvidia,tegra186-gpio' driver
[0001.292] I> tegrabl_gpio_driver_register: register 'nvidia,tegra186-gpio-aon' driver
[0001.300] I> tegrabl_tca9539_init: i2c bus: 0, slave addr: 0xee
[0001.310] E> I2C: slave not found in slaves.
[0001.314] E> I2C: Could not write 0 bytes to slave: 0x00ee with repeat start false.
[0001.322] E> I2C_DEV: Failed to send register address 0x00000004.
[0001.328] E> I2C_DEV: Could not write 1 registers of size 1 to slave 0xee at 0x00000004 via instance 0.
[0001.337] E> tca9539_device_init: failed to write polar reg
[0001.343] E> tegrabl_tca9539_init: failed to init device!

But on the kernel log we have some changes:

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x100
[    0.000000] Linux version 4.9.140-tegra (buildbrain@mobile-u64-770) (gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecf9
[    0.000000] Boot CPU: AArch64 Processor [411fd073]
[    0.000000] OF: fdt:memory scan node memory@80000000, reg size 16416,
[    0.000000] OF: fdt: - 80000000 ,  70000000
[    0.000000] OF: fdt: - f0200000 ,  185600000
[    0.000000] OF: fdt: - 275e00000 ,  200000
[    0.000000] OF: fdt: - 276600000 ,  200000
[    0.000000] OF: fdt: - 277000000 ,  200000
[    0.000000] earlycon: uart8250 at MMIO32 0x0000000003100000 (options '')
[    0.000000] bootconsole [uart8250] enabled
<hit enter to activate fiq debugger>
[    0.727868] pca953x 0-0074: failed reading register
[    0.728084] i2c i2c-0: of_i2c: modalias failure on /i2c@3160000/gpio@77
[    0.845105] OF: /fixed-regulators/regulator@2: could not get #gpio-cells for /i2c@3160000/gpio@77
[    0.847153] OF: /fixed-regulators/regulator@12: could not get #gpio-cells for /i2c@3160000/gpio@77
[    0.848464] OF: /fixed-regulators/regulator@118: could not get #gpio-cells for /i2c@3160000/gpio@77
[    1.410122] tegra-xusb-padctl 3520000.xusb_padctl: failed to setup XUSB ports: -517

So the question remain: What file(s) I need to change to fix the bootloader (u-boot/c-boot) configuration?

Hi,

Sorry that I don’t think you could change it since the cboot source is not yet released here.

So I can Ignore all erros in log before “Start kernel” message, and have to focus on DT for Kernel only?
Even these part of bootload log can be ignored?:

[0001.733] E> tegrabl_display_get_pdata, failed to parse dtb settings
[0001.742] E> cannot find any other nvdisp nodes
[0001.746] E> no valid display unit config found in dtb
[0001.753] W> display init failed

...

[0002.688] E> tegrabl_linuxboot_add_disp_param, du 0 failed to get display params
[0002.695] E> tegrabl_linuxboot_add_disp_param, du 0 failed to get display params
[0002.702] E> tegrabl_linuxboot_add_disp_param, du 0 failed to get display params

...

[0003.231] E> tegrabl_display_clear: display is not initialized
[0003.236] W> Boot logo display failed...

All these messages happen before “Starting Kernel” message…

If not, where I suppose to change to fix these problems?

Display also needs a regulator from DT. It is same on both kernel and bootloader.

Current issue comes from the fact regulators cannot use a non-existing gpio expander. The solution would be give a dummy regulator for your power tree. The dummy one is “battery_reg”.