Hello, I would like to test the latest version of U-Boot on the Jetson TX1.
Unfortunately U-Boot is lacking a README that would explain how to do that: http://git.denx.de/?p=u-boot.git;a=tree;f=board/nvidia/p2371-2180;h=097fb9aaec8abd522b7b8382e5c4169f5ea8f691;hb=HEAD I understand that the Jetson TK1's Python based https://github.com/NVIDIA/tegra-uboot-flasher-scripts have never been updated for Tegra X1. That leaves L4T Jetson TX1 Driver Package, latest version being R28.1.0. Here's what I have tried: $ sudo ./flash.sh p2371-2180-devkit mmcblk0p1 On openSUSE Leap 42.3 this keeps failing the first time: copying bctfile(/home/andreas/MCU/ARM/JetsonTX1/Linux_for_Tegra/bootloader/t210ref/BCT/P2180_A00_LP4_DSC_204Mhz.cfg)... done. copying bootloader(/home/andreas/MCU/ARM/JetsonTX1/Linux_for_Tegra/bootloader/t210ref/cboot.bin)... done. populating kernel to rootfs... done. populating initrd to rootfs... done. populating extlinux.conf.emmc to rootfs... done. populating /home/andreas/MCU/ARM/JetsonTX1/Linux_for_Tegra/kernel/dtb/tegra210-jetson-tx1-p2597-2180-a01-devkit.dtb to rootfs... done. done. Making Boot image... done. copying bcffile(/home/andreas/MCU/ARM/JetsonTX1/Linux_for_Tegra/bootloader/t210ref/cfg/board_config_p2597-devkit.xml)... done. Existing sosfile(/home/andreas/MCU/ARM/JetsonTX1/Linux_for_Tegra/bootloader/nvtboot_recovery.bin) reused. copying tegraboot(/home/andreas/MCU/ARM/JetsonTX1/Linux_for_Tegra/bootloader/t210ref/nvtboot.bin)... done. Existing bpffile(/home/andreas/MCU/ARM/JetsonTX1/Linux_for_Tegra/bootloader/bpmp.bin) reused. copying wb0boot(/home/andreas/MCU/ARM/JetsonTX1/Linux_for_Tegra/bootloader/t210ref/warmboot.bin)... done. Existing tosfile(/home/andreas/MCU/ARM/JetsonTX1/Linux_for_Tegra/bootloader/tos.img) reused. Existing eksfile(/home/andreas/MCU/ARM/JetsonTX1/Linux_for_Tegra/bootloader/eks.img) reused. copying dtbfile(/home/andreas/MCU/ARM/JetsonTX1/Linux_for_Tegra/kernel/dtb/tegra210-jetson-tx1-p2597-2180-a01-devkit.dtb)... done. Making system.img... /dev/loop0 is not block device. Terminating.. I have managed to work around that by running sudo losetup -f once. That gets me to a: U-Boot 2016.07-g0ce7ca2 (Jul 20 2017 - 00:37:03 -0700) (where our efiboot command doesn't quite work yet) https://elinux.org/Jetson/TX1_Upstream_Kernel claims: "The distributed tarball contains a pre-built U-Boot and kernel, but these may be replaced with any images you wish to flash, by replacing the distributed images in the directory tree." and "To flash only the primary bootloader and U-Boot: ./flash.sh -k EBT p2371-2180 mmcblk0p1" Apparently that's not true anymore (R23.1.1 armhf vs. R28.1.0 aarch64): Operation succeeds, but U-Boot is still the old one. Possible cause: The EBT partition gets a cboot.bin, not u-boot-dtb.bin. If I repeat without -k EBT and with the openSUSE OBS builds of U-Boot v2018.01 then again flashing appears to succeed, but boot gets stuck at: [0003.260] Starting Bpmp FW [0003.263] BPMP-FW Carveout: Base = 0xff2c0000 and Size = 0x40000 (short of showing the U-Boot banner) Also, ATF shows up as: NOTICE: BL31: v1.2(release):cc5fd7c NOTICE: BL31: Built : 00:37:02, Jul 20 2017 (which is most certainly lacking Jan 2018 Spectre mitigations for CA57) Security Bulletin http://nvidia.custhelp.com/app/answers/detail/a_id/4616 announces an R28.2 for later this month, but with t210 in mainline ATF I would really like to use my own patched ATF build already. https://github.com/ARM-software/arm-trusted-firmware/blob/6f62574767546b11199142b1b577a86571051c40/docs/plat/nvidia-tegra.rst doesn't explain how to get the t210 bl31.bin onto a board either. https://elinux.org/Jetson_TX1 links to multiple App Notes on a non-reachable Nvidia FTP server. I found that replacing ftp with http, they can still be reached (dated 2015), but http://download.nvidia.com/tegra-public-appnotes/t210-nvtboot-flow.html isn't too helpful either, other than giving a rough overview. Colleagues have succeeded in loading a U-Boot via RCM into RAM and executing from there, but I figure that won't quite work for ATF. And it's no permanent solution anyway. So could someone please comment on how to perform a minimally-invasive update of the individual Open Source firmware components for Jetson TX1? Thanks, Andreas -- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Graham Norton HRB 21284 (AG Nürnberg) _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot