we are developing a custom carrier board and have produced a first revision of it yet.
We made some kernel module and DT mods to bring it up following the steps in Kernel Customisation & Bring-Up Guide.
It could be observed, that after flashing, until
apt update had run, everything works fine.
After update, several packages of the
nvidia-l4t-series have errors, espacially the
After digging around in this forum and inspecting
apply-binaries.sh sources, the confusion about the functionality is even got bigger:
The module, dts and bootloader installation on the carrier is done by the kernel build and flash processes. According to L4T 32.4.2: DTB & Image files vs. nvidia-l4t-kernel* debian packages - Jetson & Embedded Systems / Jetson Xavier NX - NVIDIA Developer Forums, the debian packages, which are installed by
apply-binariesin the rootfs are not needed if building and flashing manually.
If we try to flash /wo preparing the rootfs /w àpply-binaries` before, we run into the error mentioned in Rootfs for L4T R32.5.1 is missing files.
If we flash it /w prepared rootfs, the nvidia packages will break our mods (see above), which is clear because the packages are based on the default kernel.
Generally, it makes no sense to have a custom and generic Image installed at the same time (if not targeting multiboot scenarios). So, the only clean solution seems to regenerate or update the debs according to Repackaging Debian Packages in the Linux Developer Guide, which would made the whole rootfs installation of kernel, modules and bootloader done by the build & flash process more or less senseless.
So, what is the desired way of bringing our custom software mods to our custom carrier board?
We use L4T R32.5.1 /w Jetson Xavier NX Production Version (p3668-0001).