Linux for Tegra today still ships with a Linux 4.9 kernel version.
At https://github.com/OE4T/linux-tegra-4.9, an L4T-derived kernel with patches to build with the most recent compilers is available.
At the branch “public” of https://github.com/woachk/linux-tegra-4.9, some backports that might interest others were done (because I had to…):
- AArch64 KVM: cntpct_el0 access fixes
- AArch64 KVM: user-mode interrupt controller support (kernel-irqchip=off)
- AArch64 KVM: report non-ISV data aborts to user-space
- (not a backport, patch from Aleph Research) AArch64 KVM: report IDSR accesses to user-space. This allows to run Darwin.
- SMMU: Typo fix to be able to build kernel with 48-bit VA space
- BFQ patchset for Linux 4.9
How to build (from a Jetson system w/ L4T installed, I embed tegra19x_xusb_firmware inside the kernel, so you’ll have to copy that to /lib/firmware otherwise):
git clone https://github.com/woachk/linux-tegra-4.9 -b public
cd linux-tegra-4.9
wget https://threedots.ovh/bubbles/t194_config.gz
gunzip t194_config.gz
mv t194_config .config
make -j8
And then you can follow your preferred way to install, through editing /boot/extlinux/extlinux.conf on your primary partition.