It worked. Thank you very much @WayneWWW and @ShaneCCC. After installing the modules and reflashing, it worked successfully. These are the whole steps I’ve done:
Device: Jetson Nano Developer Kit A02 (part number 945-13450-0000-000)
OS: JetPack 4.6
We downloaded the public_sources for Jetson Nano and extracted the kernel_src archive.
Then, we created the environment_nvidia file into it and include these lines (we extracted the GCC compiler into our home directory):
export CROSS_COMPILE=$HOME/l4t-gcc/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
export LOCALVERSION=-tegra
export ARCH=arm64
Afterwards, we compiled it and installed the modules into the JetPack folder (~/nvidia/nvidia_sdk/JetPack_4.6_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/) with these commands:
cd kernel/kernel-4.9/
source …/…/environment_nvidia
sudo ./scripts/rt-patch.sh apply-patches
make ARCH=arm64 O=…/…/kernel_out_jetson_nano_dev_kit tegra_defconfig
make ARCH=arm64 O=…/…/kernel_out_jetson_nano_dev_kit -j$(($(nproc)-1))
sudo make ARCH=arm64 O=../../kernel_out_jetson_nano_dev_kit modules_install INSTALL_MOD_PATH=~/nvidia/nvidia_sdk/JetPack_4.6_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/rootfs/
Then, we copied the dtb (tegra210-p3448-0000-p3449-0000-a02.dtb) and Image files from build folder (kernel_out_jetson_nano_dev_kit) to JetPack folder (~/nvidia/nvidia_sdk/JetPack_4.6_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/).
cp ../../kernel_out_jetson_nano_dev_kit/arch/arm64/boot/Image ~/nvidia/nvidia_sdk/JetPack_4.6_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/kernel/Image
cp ../../kernel_out_jetson_nano_dev_kit/arch/arm64/boot/dts/tegra210-p3448-0000-p3449-0000-a02.dtb ~/nvidia/nvidia_sdk/JetPack_4.6_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/kernel/dtb/
Finally, we flashed it with these commands:
cd ~/nvidia/nvidia_sdk/JetPack_4.6_Linux_JETSON_NANO_TARGETS/Linux_for_Tegra/
sudo ./flash.sh jetson-nano-devkit mmcblk0p1
After the Ubuntu installation guide completed, the Ubuntu Desktop loaded successfully. The kernel modules are loaded successfully.
nvidia@nvidia-desktop:~$ uname -r
4.9.253-rt168-tegra
nvidia@nvidia-desktop:~$ ls /lib/modules/
4.9.253-rt168-tegra 4.9.253-tegra
nvidia@nvidia-desktop:~$ lsmod
Module Size Used by
bnep 19192 2
fuse 119152 3
xt_conntrack 3979 1
ipt_MASQUERADE 2634 1
nf_nat_masquerade_ipv4 3993 1 ipt_MASQUERADE
nf_conntrack_netlink 33453 0
nfnetlink 9780 2 nf_conntrack_netlink
xt_addrtype 3915 2
iptable_filter 3008 1
iptable_nat 3423 1
nf_conntrack_ipv4 14286 2
nf_defrag_ipv4 2102 1 nf_conntrack_ipv4
nf_nat_ipv4 8176 1 iptable_nat
nf_nat 25620 2 nf_nat_masquerade_ipv4,nf_nat_ipv4
nf_conntrack 178317 6 nf_conntrack_ipv4,nf_conntrack_netlink,nf_nat_masquerade_ipv4,xt_conntrack,nf_nat_ipv4,nf_nat
br_netfilter 17723 0
zram 29475 4
overlay 54064 0
userspace_alert 7015 0
nvgpu 1745468 18
ip_tables 21731 2 iptable_filter,iptable_nat
x_tables 38026 5 ip_tables,iptable_filter,ipt_MASQUERADE,xt_addrtype,xt_conntrack
nvidia@nvidia-desktop:~$
Best Regards