I compiled a custom Kernel, where I enabled some modules. Is it necessary to replace dtbs as well ?
For instance, I added modules related to encryption algorithms, and even crypto offload. Should I change the DTBS is this case ?
If so, is it possible to do it without flashing the device entirely ?
Some devices in a system are “plug-n-play”. The device itself has a mechanism to self-describe, and there is a hot plug or similar system which can query that, and announce to drivers what and where the device is. Other devices cannot self-describe, and are directly on some physical bus address; these devices need a device tree fragment for that device. Other devices are generally not modified by adding kernel modules (or by leaving the original kernel Image features intact).
Did you start with the same kernel configuration as the existing system, e.g., tegra_defconfig or the “/proc/config.gz”, followed by adding something new? Or was there a significant change in previous drivers due to changed hardware, e.g., a new carrier board design? Unless you changed the carrier board, or added drivers for some device directly connected to a physical bus and having its own address, then you won’t need to change the device tree.
I don’t know much about the drivers you are talking about. But the error you are telling is a very common things in kernel world. If your driver is trying to access some illegal memory, then it will give this error.
It is all case by case. For example, the thread you are referring to is related to camera driver. But XFRM and IPSEC are obviously not related to camera at all… So it is pointless to refer to that post and try to modify device tree in camera sensor…
I will also suggest that knowing your kernel configuration matched the existing configuration prior to making changes is really the first step. If you take a configuration which is incorrect for your Jetson, and make a modification, then even if your modification is correct it will fail. This is why I asked if you started with “tegra_defconfig”. Knowing if you only added modules, versus having changed the actual Image (the non-modular kernel) also matters, because then you can verify if the installation is correct or not (and incorrect installation might mix and match things not intended to go together in some cases). There is no definition of how it should behave when you mix things not intended to mix.