Bootloader/FW DTB?

Hello. Which dts/dtb should I change to allow the bootloader/fw to use a modified one before running

The issue is when I have a PCIe endpoint device with more than 128MB BAR, I get the following error

ASSERT [PciHostBridgeDxe] /dvs/git/dirty/git-master_linux/out/nvidia/bootloader/uefi/Jetson_RELEASE/edk2/MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridge.c(963): (Translation & Alignment) == 0

I can update and generate a dtb with working ranges in

However, this only helps with the kernel recognizing things correctly. The first few layers of booting still dislikes the larger BARs.
If I power on the endpoint device after the first levels of boot, then the system boots up correctly and the kernel recognizes the PCIe device and its BARs just fine.

So my question is about the dtb used in the bootloader (BL2/3/31/32, etc)


Please update the device tree before you flash the board and reflash so that UEFI can take effect.

I did update
and ran, but that didnt seem to fix the issue.
Is that the correct file to modify, or is there a different one I should be targeting?


Please change the one under kernel/dtb, remove kernel dtb under bootloader before you flash.

After the flash is done, you shall see new bootloader dtb gerneated under L4T/bootloader again.

For future reference, I had to change both kernel/dtb /kernel_tegra234-p3701-0000-p3737-0000.dtb and kernel/dtb/tegra234-p3701-0000-p3737-0000.dtb to get the desired behavior.


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