I was setting kernel’s config and flashed Xavier.After that I removed igb from /lib/modules/4.9.140-tegra/modules.builtin in Xavier,but I still got ERROR: Module igb is builtin.
is my step right?
How to check the Image binary?
I used the command cat .config > confing.txt,and checked the config.
Please mark the driver as module in arch/arm64/config?tegra_defconfig
cd kernel/kernel-4.9
export ARCH=arm64
make DEFCONFIG_PATH=arch/arm64/configs tegra_defconfig
make menuconfig
<>
make savedefconfig
cp -v defconfig arch/arm64/configs/tegra_defconfig
make mrproper
and then build kernel.
Replace the kernel and the newly build .ko to the target and reboot
If the driver is integrated and not in the form of module, then rmmod will always fail. If you changed this to be module, then rmmod should work unless the kernel change you thought was installed did not really install. After any kernel change you should verify “uname -r” is correct, and verify your change is reflected in the output of “zcat /proc/config.gz”. An example would be “zcat /proc/config.gz | grep IGB” (and if “=y”, then this is integrated, not modular…if “=m”, then the module will be somewhere under “/lib/modules/$(uname -r)/kernel/”). “rmmod” will also fail if something is locking the driver (if the driver is in use).