Jetson TX2 JetPack 4.2 kernel compile
Build Jetson TX2 R32.1 kernel
下記は検証用の下書き。検証後に修正の可能性あり。
Downoad packages
- ドライバパッケージ
- ソースパッケージ
- サンプルルート
- ツールチェイン
をダウンロードする。
Extract pkg
top=$PWD # here is top # 設定 expand=1 # pkgを展開する場合。 mproc=2 # makeのprocess数 # 定数設定 spkg=JAX-TX2-public_sources.tbz2 dpkg=Jetson_Linux_R32.1.0_aarch64.tbz2 rpkg=Tegra_Linux_Sample-Root-Filesystem_R32.1.0_aarch64.tbz2 kpkg=kernel_src.tbz2 # in $spkg kk=kernel/kernel-4.9 l4=Linux_for_Tegra ps=public_sources ccc=$top/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- out=$top/$kk/build mout=$top/$l4/rootfs/ boot=$out/arch/arm64/boot dtb=tegra186-quill-p3310-1000-c03-00-base.dtb dtb_xavier=tegra194-p2888-0001-p2822-0000.dtb # expand packages if [ "x$expand" == "x1" ] ; then tar jxvf $spkg tar jxvf $ps/$kpkg tar jxvf $dpkg tar jxvf $rpkg -C rootfs fi
build kernel
cd $kk export O=$out export INSTALL_MOD_PATH=$mout export ARCH=arm64 export CROSS_COMPILE=$ccc # get default config make tegra_defconfig # edit config make menuconfig # to check modifications if you like # make oldconfig # if necessary # make prepare # make modules_prepare make -j${mproc} # kernel modules dtbsを個別ビルドしたい場合は、下記にて。 # build kernel # make -j${mproc} Image # build dtbs # make -j${mproc} dtbs # build modules # make -j${mproc} modules # install modules make modules_install
External module
mdir=外部モジュール # mdir=$top/kernel/nvidia pushd $mdir make -C $kk -M $mdir popd
Install to dpkg dir
cd $top/$l4 # copy kernel cp $boot/Image kernel/ # copy dtb cp $boot/dts/$dtb kernel/dtb # pack module ks=kernel_supplements.tbz2 tar --owner root --group root -cjf kernel/$ks lib/modules -C $mout # build binaries ./apply_binaries.sh
Flash
# after tx2 enter frb mode
sudo ./flash.sh jetson-tx2 mmcblk0p1
ダウンロード toolchain and source package
topが定義された後に下記のコード。
cd $top
ツールチェインのダウンロード
wget http://releases.linaro.org/components/toolchain/binaries/7.3-2018.05/aarch64-linux-gnu/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz | tar Jxf -
ソースパッケージ
wget https://developer.download.nvidia.com/embedded/L4T/r32_Release_v1.0/jax-tx2/BSP/JAX-TX2-public_sources.tbz2
サンプルルート
ドライバパッケージ
refs
https://developer.ridgerun.com/wiki/index.php?title=Compiling_Jetson_TX2_source_code_L4T_32.1
make oldconfig