I'm going to build a kernel for Ubuntu 16.06 and kernel 4.1.15_2.0.0_ga.
I have a board based on iMX6-dl from Technexion company. They provided the access to their kernel and config and device tree files.
I use these steps to build kernel and add new modules (drivers) to the kernel such as ath9k for Atheros PCIe WiFi cards.
git clone https://github.com/TechNexion/linux.git && cd linux
git checkout tn-imx_4.1.15_2.0.0_ga
add the drivers I need to the config file
make -j4 zImage modules imx6dl-edm1-cf-pmic_fairy.dtb
After these steps, the kernel is built without any error. In the log I see all the modules I've selected in menuconfig compiling without any error and I can see *.o files.
I also see *.ko files for the driver selected as "M" in menucconfig setting.
Once the built is finished I use these two command lines to add new kernel to the SD card that already flashed (and working) with the image the company providing with the same kernel and version of Ubuntu.
cp arch/arm/boot/zImage arch/arm/boot/dts/imx6dl-edm1-cf-pmic_fairy.dtb /media/user/74C5-8858/
make ARCH=arm modules_install INSTALL_MOD_PATH=/media/user/c8843fd8-cc57-4557-93a9-5fa0e596fa72/
When I use make module_install it just copies the *.ko drivers to the SD card.
I don't know how I can add other drivers that marked with " * " in menuconfig to the SD card such as "ath9k.o".
I'm new to these software things.
Any help for that? Am I missing anything?