1、下载代码L4T R32.5.1为例
1)、kernel
L4T R32.5.1 Release Page | NVIDIA Developer
L4T Driver Package (BSP) Sources
对应文件:“Tegra186_Linux_R32.5.1_aarch64.tbz2”
2)、root filesystem
L4T R32.5.1 Release Page | NVIDIA Developer
Sample Root Filesystem Sources
对应文件:“Tegra_Linux_Sample-Root-Filesystem_R32.5.1_aarch64.tbz2"
3)、cboot
L4T R32.5.1 Release Page | NVIDIA Developer
对应文件:“cboot_src_t19x.tbz2"
Selecting previously unselected package nvidia-l4t-core.
....
.....
~/workspace/waveshare/jetson5.1/xa_nx/source5/Linux_for_Tegra
Removing QEMU binary from rootfs
Removing stashed Debian packages from rootfs
L4T BSP package installation completed!
Rename ubuntu.desktop --> ux-ubuntu.desktop
Disabling NetworkManager-wait-online.service
Disable the ondemand service by changing the runlevels to 'K'
Success!
3 、交叉编译环境配置
GCC 7.3.1 for 64 bit BSP and Kernel (gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz)
𝑐𝑑/𝑜𝑝𝑡 cd / opt tar xf gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz
𝑡𝑎𝑟−𝑥𝑣𝑗𝑓𝑝𝑢𝑏𝑙𝑖𝑐𝑠𝑜𝑢𝑟𝑐𝑒𝑠.𝑡𝑏𝑧2 tar−xvjfpubli c s ources.tbz2 cd Linux_for_Tegra/source/public
$ tar -xvjf kernel_src.tbz2
2)、编译内核
备注:在此之前已经安装编译依赖工具 sudo apt install build-essential bc
𝑐𝑑/𝐿𝑖𝑛𝑢𝑥𝑓𝑜𝑟𝑇𝑒𝑔𝑟𝑎/𝑠𝑜𝑢𝑟𝑐𝑒 cd / Linu x f o r T egra / source mkdir out
𝑒𝑥𝑝𝑜𝑟𝑡𝑇𝐸𝐺𝑅𝐴𝐾𝐸𝑅𝑁𝐸𝐿𝑂𝑈𝑇= /𝑤𝑜𝑟𝑘𝑠𝑝𝑎𝑐𝑒/𝐿𝑖𝑛𝑢𝑥𝑓𝑜𝑟𝑇𝑒𝑔𝑟𝑎/𝑠𝑜𝑢𝑟𝑐𝑒/𝑜𝑢𝑡/ exportTEGR A K ERNE L O UT= / workspace / Linu x f o r T egra / source / out / export CROSS_COMPILE=/opt/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
𝑒𝑥𝑝𝑜𝑟𝑡𝐿𝑂𝐶𝐴𝐿𝑉𝐸𝑅𝑆𝐼𝑂𝑁=−𝑡𝑒𝑔𝑟𝑎 exportLOCALVERSION=−tegra mkdir -p 𝑇𝐸𝐺𝑅𝐴𝐾𝐸𝑅𝑁𝐸𝐿𝑂𝑈𝑇进入𝑘𝑒𝑟𝑛𝑒𝑙源码下 TEGR A K ERNE L O UT 进 入 kernel 源 码 下 cd public/kernel/kernel-4.9
$ make ARCH=arm64 O=𝑇𝐸𝐺𝑅𝐴𝐾𝐸𝑅𝑁𝐸𝐿𝑂𝑈𝑇𝑡𝑒𝑔𝑟𝑎𝑑𝑒𝑓𝑐𝑜𝑛𝑓𝑖𝑔 TEGR A K ERNE L O UTtegr a d efconfig make ARCH=arm64 O=$TEGRA_KERNEL_OUT -j8(这个是CPU核数)
Linux_for_Tegra/source/out/arch/arm64/boot$ cp Image ~/workspace/Linux_for_Tegra/kernel/Image
Linux_for_Tegra/source/out/arch/arm64/boot$ cp dts/*
$/workspace/Linux_for_Tegra/kernel/dtb/ -rf

安装内核模块 sudo make ARCH=arm64 O=$TEGRA_KERNEL_OUT modules_install INSTALL_MOD_PATH=<top>/Linux_for_Tegra/rootfs/
4)、(可选)在rootfs路径下
𝑐𝑑<𝑚𝑜𝑑𝑢𝑙𝑒𝑠𝑖𝑛𝑠𝑡𝑎𝑙𝑙𝑝𝑎𝑡ℎ> cd<module s i nstal l p ath> tar --owner root --group root -cjf kernel_supplements.tbz2 \
lib/ modules
将 “kernel_supplements.tbz2”替换到Linux_for_Tegra/kernel$路径下 执行 apply_binaries.sh 脚本
进入recovery模式,sudo ./flash.sh p3449-0000+p3668-0001-qspi-emmc mmcblk0p1
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删