3.4.1.1单独创建一个驱动文件夹

3.4.1的基础上,

  1. 在drivers/char目录下,创建一个目录。mkdir hello_drive ;
  2. 把hello.c驱动文件复制到该目录下,创建一个Kconfig文件,touch Kconfig ;并编辑如下代码:

      

  3. 创建Makefile文件,编辑如下代码:  

    

  4. 回到char目录下,编辑Kconfig文件,增加一条代码如下,让其包含子目录下的Kconfig:

    

   5. 同样在char目录下,编辑Makefile文件,增一条代码如下,让其包含子目录hello_driver,指定在此目录下进行编译工作:

     

  6.回到根目录下,make menuconfig ,可以得到新的配置选项如下:

    

   7. vi config ,查找 /hello  ,得到如下:

          

 Kconfig文件只是有一个变量名,供配置选择,并且能在 make menuconfig上显示,此时并没有与驱动挂钩;当把驱动复制到内核目录下时,编辑makefile文件,增加代码:

  obj-$(CONFIG_hello)    += hello.o ,表示引用此变量名,在内核目录中编译当前目录的 此模块。才会与驱动挂钩。Kconfig中的变量名可以通过.config进行修改,这需要运行make menuconfig命令进行修改。

 

 

 

 

   

 

posted @ 2022-10-05 21:56  QianFa01  阅读(67)  评论(0)    收藏  举报