Disagrees about version of symbol module_layout

Hello,

I’m customizing the kernel r35.31, JetPack 5.1.1
kernel version 5.10.104-tegra

Im using intel AX210 wifi
inside the config file present in IWLWIFI , IWLMVM,IWLDVM,CFG80211 is made y so as to insert automatically instead of m
but module is not inserted
lsmod doesn’t show these modules

Bluetooth: hci0: Failed to load Intel firmware file intel/ibt-0041-0041.sfi (-110)

How to solve this issue to get wifi

Hi,
For information, is the intel AX210 wifi connected to M2 Key E slot on Orin Nano developer kit? Would like to know which interface is used in the connection.

This error means the kernel modules you built out does not match to the kernel image in use.

Please upgrade them both instead of only one of them.

1 Like

what should be the steps i should follow to correct this on my customized carrier board

How did you build your ko files out? Are you building it on Jetson or you build it on host PC?

Also, it is easy to understand what is “Disagrees about version of symbol module_layout” error on the Internet.

This issue is really not Jetson specific but common kernel building issue.

from a working flashed image with all the kernel source i need to develop a working image from a base SDK , i extracted the case source files and replaced the public folder with public(from working image) and made a patch file from it and applied the patch the built the kernel and flashing was done but wifi is not available or there is issue with the wifi that is mentioned above

while checking the dmesg it shows
btintel: exports duplicate symbol btinte_check_bdaddr (owned by kernel)

Hi,

Your issue just indicates that you only update the kernel modules but not also the kernel image itself…

exports duplicate symbol means part of the symbols are in the modules and same symbol was in the kernel image too.

Do you really know what is the difference between kernel modules and images?

so how can i make this upgrade?
or is there any way to solve this issue

Do you really know what is the difference between kernel modules and image?

Could you answer this question first? It is okay to just tell you don’t know.
I need to know for what knowledge you have on your side for next guidance…

It is not helpful if you just keep repeating same things again and again.

I dont know I’m beginer

Kernel driver could be built for 2 types.

Kernel image → file is under /boot/Image on Jetson. (when you set =y in kernel config, it will be here)
Kernel modules (ko files) → files are under /lib/modules/ (when you set =m in kernel config, it will be here)

These two files need to updated at same time and based on same version.
For example, you cannot use a ko file based on kernel 6.7 to Jetson because the kernel version we provided in kernel 5.10.

Your issue so far is you only have ko files put into device and tried to run, but you never upgrade the /boot/Image .

We have document here to guide how to build kernel from NVIDIA kernel sources.
https://docs.nvidia.com/jetson/archives/r35.5.0/DeveloperGuide/SD/Kernel/KernelCustomization.html#building-the-kernel

I have followed these same steps
at which point does this issue occour
my uname -r gives 5.10.104-tegra

What steps? How about you share the command you ran for us to double check?

export CROSS_COMPILE_AARCH64_PATH=/aarch64–glibc–stable-final

export CROSS_COMPILE_AARCH64=/aarch64–glibc–stable-final/bin/aarch64-buildroot-linux-gnu-

cd Linux_for_Tegra/source/public

mkdir kernel_out
./nvbuild.sh -o $PWD/kernel_out

sudo cp kernel_out/drivers/gpu/nvgpu/nvgpu.ko …/…/…/Linux_for_Tegra/rootfs/usr/lib/modules/5.10.104-tegra/kernel/drivers/gpu/nvgpu/nvgpu.ko

sudo cp kernel_out/arch/arm64/boot/dts/nvidia/* …/…/…/Linux_for_Tegra/kernel/dtb

cp kernel_out/arch/arm64/boot/Image …/…/…/Linux_for_Tegra/kernel/Image

cd …/…/…/Linux_for_Tegra/rootfs/usr

sudo tar --owner root --group root -cjf kernel_supplements.tbz2 lib/modules

sudo cp …/…/…/Linux_for_Tegra/rootfs/usr/kernel_supplements.tbz2 …/…/…/Linux_for_Tegra/kernel/

Then where is the ko file you are using now? Where are they copied from?

I don’t know how this .ko file came even after making it y in defconfig file

If you already make it =y in kernel config, then you don’t need to insmod or modprobe that ko file anymore after boot up…

Hi,
A user has shared a patch:
AX210 Driver Issue

Please apply it and try.

Yes…but if i give it ‘y’ it should not create .ko file while building right?
But its creating