ユーザ用ツール

サイト用ツール


u-bootのカスタマイズ

**文書の過去の版を表示しています。**

U-Bootのカスタマイズ

Jetson TX2 NX Moduleで、U-BootのTX2 NX向けバージョンのバグを修正する必要に迫られて、一度、U-Bootを自分でビルドして実際に書き込んで使用したことはあるが、そのときは、詳細な記録を残していなかったので、今回、Jetson Nano Moduleの環境にて、U-Bootのカスタマイズ、というか、具体的に変更する必要のあるネタは今のところないので、とりあえず、自分でビルドしてそれを使ってみるとして、その記録をここに残す。

U-Bootのビルド

32.7.1 Release Notes

https://developer.download.nvidia.com/embedded/L4T/r32_Release_v7.1/Jetson_Linux_Driver_Package_Release_Notes_R32.7.1_GA.pdf?_WGgKwjJxb7q7sje7RDMOPrUef0LWxRhS5EGYVw62YJLB-Cz2BXy08ufELuY_VdN4ZJXQ-H5aD9RvAGPrKKhQIp-CDP6g6y1RJDSryNgSLZNPMoF-bNEX0wX8UsSUl0QmPRijgappDtfxk5K4Ho20r1nAHTk3yJDdb6iVKVGAb-Y2GMcPA9aEEQuq-d_BJ4kNWeYipo&t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczpcL1wvd3d3Lmdvb2dsZS5jb21cLyJ9

に、

Release tag tegra-l4t-r32.7.1

とあるので、これを使うのか。

NVIDIA Jetson Linux Developer Guide 32.7.1 Release のDownloading and Building U-Bootのセクション

https://docs.nvidia.com/jetson/archives/l4t-archived/l4t-3271/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/uboot_guide.html#wwpID0E0UL0HA

を参照しつつやってみる。(TX2 NXのときもそうしたはず)

arioka@beelink-u59:~/work/git$ git clone -n git://nv-tegra.nvidia.com/3rdparty/u-boot.git
Cloning into 'u-boot'...
remote: Enumerating objects: 691094, done.
remote: Counting objects: 100% (691094/691094), done.
remote: Compressing objects: 100% (108227/108227), done.
remote: Total 691094 (delta 573623), reused 691060 (delta 573589), pack-reused 0
Receiving objects: 100% (691094/691094), 136.85 MiB | 1.46 MiB/s, done.
Resolving deltas: 100% (573623/573623), done.
arioka@beelink-u59:~/work/git$ cd u-boot/
arioka@beelink-u59:~/work/git/u-boot$ ls
arioka@beelink-u59:~/work/git/u-boot$ git checkout -b jetson_nano_module_u-boot_customization tegra-l4t-r32.7.1
Updating files: 100% (16598/16598), done.
Switched to a new branch 'jetson_nano_module_u-boot_customization'
arioka@beelink-u59:~/work/git/u-boot$ 
arioka@beelink-u59:~/work/git/u-boot$ 
arioka@beelink-u59:~/work/git/u-boot$ git branch
* jetson_nano_module_u-boot_customization
arioka@beelink-u59:~/work/git/u-boot$ ls
Kbuild	     Makefile  board	  configs  dts	     include  scripts
Kconfig      README    cmd	  disk	   env	     lib      test
Licenses     api       common	  doc	   examples  net      tools
MAINTAINERS  arch      config.mk  drivers  fs	     post
arioka@beelink-u59:~/work/git/u-boot$ git checkout-index -a --prefix=exports/
arioka@beelink-u59:~/work/git/u-boot$ ls
Kbuild	     Makefile  board	  configs  dts	     fs       post
Kconfig      README    cmd	  disk	   env	     include  scripts
Licenses     api       common	  doc	   examples  lib      test
MAINTAINERS  arch      config.mk  drivers  exports   net      tools
arioka@beelink-u59:~/work/git/u-boot$ mv exports/
.azure-pipelines.yml  Makefile              dts/
.checkpatch.conf      README                env/
.gitattributes        api/                  examples/
.github/              arch/                 fs/
.gitignore            board/                include/
.gitlab-ci.yml        cmd/                  lib/
.mailmap              common/               net/
.travis.yml           config.mk             post/
Kbuild                configs/              scripts/
Kconfig               disk/                 test/
Licenses/             doc/                  tools/
MAINTAINERS           drivers/              
arioka@beelink-u59:~/work/git/u-boot$ mv exports ~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/
Linux_for_Tegra/     public_sources.tbz2  
arioka@beelink-u59:~/work/git/u-boot$ mv exports ~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/source
source/         source_sync.sh  
arioka@beelink-u59:~/work/git/u-boot$ mv exports ~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/source
source/         source_sync.sh  
arioka@beelink-u59:~/work/git/u-boot$ mv exports ~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/bootloader/
189992/
BUP_generator.py
LICENSE
LICENSE.chkbdinfo
LICENSE.mkbctpart
LICENSE.mkbootimg
LICENSE.mkgpt
LICENSE.mksparse
LICENSE.tegraopenssl
LICENSE.tos-mon-only.img.arm-trusted-firmware
LICENSE.u-boot
NVIDIA_Trademark_License_Addendum_SW.pdf
P3448_A00_lpddr4_204Mhz_P987.cfg
__pycache__/
bbd.bin
bmp.blob
boot.img
boot.img.sb
cboot.bin
chkbdinfo
crc-flash.xml.bin
crc-flash.xml.tmp
cvm.bin
arioka@beelink-u59:~/work/git/u-boot$ ls ~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/bootloader/
189992
BUP_generator.py
LICENSE
LICENSE.chkbdinfo
LICENSE.mkbctpart
LICENSE.mkbootimg
LICENSE.mkgpt
LICENSE.mksparse
LICENSE.tegraopenssl
LICENSE.tos-mon-only.img.arm-trusted-firmware
LICENSE.u-boot
NVIDIA_Trademark_License_Addendum_SW.pdf
P3448_A00_lpddr4_204Mhz_P987.cfg
__pycache__
bbd.bin
bmp.blob
boot.img
boot.img.sb
cboot.bin
chkbdinfo
crc-flash.xml.bin
crc-flash.xml.tmp
cvm.bin
eks.img
emmc_bootblob_ver.txt
extlinux.conf
flash.xml
flash.xml.sb
flash_parameters.txt
flash_win.bat
flashcmd.txt
initrd
kernel_tegra210-p3448-0000-p3449-0000-b00.dtb
kernel_tegra210-p3448-0000-p3449-0000-b00.dtb.sb
kernel_tegra210-p3448-0002-p3449-0000-b00.dtb
kernel_tegra210-p3448-0002-p3449-0000-b00.dtb.sb
l4t_bup_gen.func
l4t_initrd.img
mkbctpart
mkbootimg
mkgpt
mksparse
nv_boot_control.conf
nvidia-l4t-bootloader_32.7.2-20220420143418_arm64.deb
nvtboot.bin
nvtboot_cpu.bin
nvtboot_cpu_rb.bin
nvtboot_recovery.bin
nvtboot_recovery_cpu.bin
qspi_bootblob_ver.txt
rp4.blob
sc7entry-firmware.bin
system.img
system.img.raw
t210ref
tegra210-p3448-0000-p3449-0000-b00.dtb
tegra210-p3448-0002-p3449-0000-b00.dtb
tegrabct
tegradevflash
tegraflash.py
tegraflash_internal.py
tegrahost
tegraopenssl
tegraparser
tegrarcm
tegrasign
tegrasign_v3.py
tegrasign_v3_internal.py
tegrasign_v3_util.py
tos-mon-only.img
tos.img
warmboot.bin
arioka@beelink-u59:~/work/git/u-boot$ ^C
arioka@beelink-u59:~/work/git/u-boot$ ls ~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/
README_Autoflash.txt                nvautoflash.sh
README_Massflash.txt                nvmassflashgen.sh
README_RAPID_BOOT.txt               nvsdkmanager_flash.sh
TX1_boot-firmware-redundancy.txt    p2371.conf
apply_binaries.sh                   p2597-0000+p2180-1000-24x7.conf
bootloader/                         p2597-0000+p2180-1000.conf
build_l4t_bup.sh                    p3448-0000-max-spi.conf
flash.sh                            p3448-0000.conf.common
jetson-nano-2gb-devkit.conf         p3449-0000+p3448-0000-qspi-sd.conf
jetson-nano-devkit-emmc.conf        p3449-0000+p3448-0000-qspi.conf
jetson-nano-devkit.conf             p3449-0000+p3448-0002.conf
jetson-nano-emmc.conf               p3450.conf
jetson-nano-qspi-sd.conf            p3542-0000+p3448-0003-qspi-sd.conf
jetson-nano-qspi.conf               p3542-0000+p3448-0003-qspi.conf
jetson-tx1-devkit.conf              p3542.conf
jetson-tx1.conf                     rootfs/
kernel/                             source/
l4t_generate_soc_bup.sh             source_sync.sh
nv_tegra/                           tools/
nv_tools/                           
arioka@beelink-u59:~/work/git/u-boot$ ls ~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/
README_Autoflash.txt		  nvautoflash.sh
README_Massflash.txt		  nvmassflashgen.sh
README_RAPID_BOOT.txt		  nvsdkmanager_flash.sh
TX1_boot-firmware-redundancy.txt  p2371.conf
apply_binaries.sh		  p2597-0000+p2180-1000-24x7.conf
bootloader			  p2597-0000+p2180-1000.conf
build_l4t_bup.sh		  p3448-0000-max-spi.conf
flash.sh			  p3448-0000.conf.common
jetson-nano-2gb-devkit.conf	  p3449-0000+p3448-0000-qspi-sd.conf
jetson-nano-devkit-emmc.conf	  p3449-0000+p3448-0000-qspi.conf
jetson-nano-devkit.conf		  p3449-0000+p3448-0002.conf
jetson-nano-emmc.conf		  p3450.conf
jetson-nano-qspi-sd.conf	  p3542-0000+p3448-0003-qspi-sd.conf
jetson-nano-qspi.conf		  p3542-0000+p3448-0003-qspi.conf
jetson-tx1-devkit.conf		  p3542.conf
jetson-tx1.conf			  rootfs
kernel				  source
l4t_generate_soc_bup.sh		  source_sync.sh
nv_tegra			  tools
nv_tools
arioka@beelink-u59:~/work/git/u-boot$ ls ~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/source
source/         source_sync.sh  
arioka@beelink-u59:~/work/git/u-boot$ mkdir ~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/sources
arioka@beelink-u59:~/work/git/u-boot$ mv exports ~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/sources/u-boot
arioka@beelink-u59:~/work/git/u-boot$ cd ~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/sources/u-boot
arioka@beelink-u59:~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/sources/u-boot$ ls
Kbuild	     Makefile  board	  configs  dts	     include  scripts
Kconfig      README    cmd	  disk	   env	     lib      test
Licenses     api       common	  doc	   examples  net      tools
MAINTAINERS  arch      config.mk  drivers  fs	     post
arioka@beelink-u59:~/nvidia/nvidia_sdk/JetPack_4.6.2_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/sources/u-boot$ 
u-bootのカスタマイズ.1661307332.txt.gz · 最終更新: 2022/08/24 11:15 by makotoa67