将安卓驱动编译成moudle开机后自动启动

假设我们写好了驱动程序:xxx.c,并且可以正常运行(驱动的init match probe等等都OK)

先看一下将驱动编译进内核的情况,主要关注以下几个文件:

驱动文件夹下的Makefile里有一句:

obj-$(CONFIG_XXX)  += xxx.o

驱动文件夹下的Kconfig(如我的是Kconfig.x86)有:

config XXX
    bool "ABCD"
    depens on YYYY
    help
        ...

arch/x86/configs/kkkk_defconfig里有一句:

CONFIG_XXX=y

(这里等号两边不要留空格)

接下来将驱动编译成module

Makefile不变

将Kconfig中的改为:

config XXX
    tristate "ABCD"
    depends on YYYY
    help
        ...

defconfig中的改为:

CONFIG_XXX=m

编译成功后,在目录android/out/target/product/YOUR_IMAGE_NAME/obj/kernel/目录下可以找到编译完成的module。
系统启动后,用adb查看/system/lib/modules/目录,也可以找到对应的module。

现在我们的系统中已经包含了该driver,只不过是以moudle的形式存在,接下来要做的工作就是利用脚本将该module在系统启动的时候insmod。关于系统启动时脚本的调用还有待研究……

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。