Why won't the module driver be deleted?

I customized the kernel of Orin Nano and installed the OS.

You must delete the cdc_ncm and ax88179_178a module driver in the kernel.
(Driver replacement required due to discontinuation of ax88179 chip.)

Therefore, we modularized the cdc_ncm, ax88179_178a drivers using the following commands.

make ARCH=arm64 LOCALVERSION=-tegra tegra_defconfig
make ARCH=arm64 LOCALVERSION=-tegra menuconfig

Then I installed the OS and tried to uninstall the Driver using the following command.
However, it was not deleted due to the built-in module.

sudo rmmod ax88179_178a
rmmod: ERROR: Module ax88179_178a is builtin.
sudo rmmod cdc_ncm
rmmod: ERROR: Module cdc_ncm is builtin.

The driver is not listed in lsmod.

Config.gz has been confirmed to be modularized for both modules.

zcat /proc/config.gz

CONFIG_USB_NET_AX88179_178A=m
CONFIG_USB_NET_CDC_NCM=m

Why isn’t it deleted?

Thanks.

Are you sure the kernel you rebuild are updated to system?

Hi.

In the following command?

sudo ./apply_binaries.sh

Or do you mean the module installation command?

sudo make ARCH=arm64 modules_install INSTALL_MOD_PATH=/{BSP Directory}/Linux_for_Tegra/rootfs

What exactly does update mean?

You can do a lot of change on your host… but if you didn’t put the new kernel image into the right location and flash to the board, then your kernel image is always previous one…

New kernel image should be put to Linux_for_Tegra/kernel/Image so that it will be updated.

You can also read the sudo dmesg on your jetson. The kernel build time will tell you if this is the kernel you just built out…

In the following command?
sudo ./apply_binaries.sh
Or do you mean the module installation command?
sudo make ARCH=arm64 modules_install INSTALL_MOD_PATH=/{BSP Directory}/Linux_for_Tegra/rootfs

These two didn’t change the kernel image at all.

Please be sure that you know what are kernel image and what are kernel modules…

hi.

If you are talking about replacing the Image file, we have already replaced the ‘Image’ file and ‘*.dtb’ file after building.

please also check your dmesg to make sure the build time.

There has to be an error somewhere in the actual procedure. Can you provide a full serial console boot log, plus the “/boot/extlinux/extlinux.conf”? This might shed a clue.

Incidentally, it is usually incorrect to use the same “CONFIG_LOCALVERSION” if you are removing or changing an “=y” parameter. Instead of “-tegra” you might consider something like “-ncm_mod”. Then you would install both kernel and new modules. The output of “uname -r” would change to use the extension “-ncm_mod”, and the new module directory would be:
/lib/modules/$(uname -r)/kernel
(where you would put all modules from the new build without reusing the “-tegra” modules)

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.