我要为Ubuntu 16.06和内核4.1.15_2.0.0_ga构建内核。
我有一个基于Technexion公司的iMX6-dl的电路板。他们提供了对内核以及配置和设备树文件的访问。
我使用这些步骤构建内核并向内核添加新模块(驱动程序),例如用于Atheros PCIe WiFi卡的ath9k。
git clone https://github.com/TechNexion/linux.git && cd linux
export KERNEL_SRC=$PWD
export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-
git checkout tn-imx_4.1.15_2.0.0_ga
make tn_imx_defconfig
make menuconfig
add the drivers I need to the config file
make -j4 zImage modules imx6dl-edm1-cf-pmic_fairy.dtb
完成这些步骤后,构建内核时没有任何错误。在日志中,我看到我在menuconfig编译中选择的所有模块没有任何错误,我可以看到* .o文件。
我还看到驱动程序的* .ko文件被选为" M"在menucconfig设置中。
构建完成后,我使用这两个命令行将新内核添加到已经使用相同内核和Ubuntu版本的映像闪存(并正常工作)的SD卡上。
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/
当我使用make module_install时,它只是将* .ko驱动程序复制到SD卡。
我不知道如何添加标有"的其他驱动程序。 *"在menuconfig中输入SD卡,例如" ath9k.o"。
我是这些软件的新手。
对此有何帮助?我错过了什么吗?