如何将设备文件也加载进内核,开机自动匹配呢?

问题介绍:

  概括:将设备文件编译进内核

  我们一般是根据内核驱动代码的基础上来写平台设备文件platform_device,在一个单独的文件下,编译成模块需要时加载。但是每次用时都需要手动加载,很麻烦。如果有些设备我们想开机后相应的设备和驱动就匹配上,用户至于要使用就行了,那该怎么办呢?

解决方法:

  1.在源码目录下,进入vi模式,执行   :cs  find  t  MACHINE_START

  

  2.查找自己对芯片型号前面第一列对应的数据,我的是“sun8i”  对应的是492,所以我选择492

  

3.  光标会跳转到MACHINRE_START函数中,如下图

其中sunxi_dev_init就是初始化设备函数,所以我们可以将自己的设备注册文件放到这个函数中,开机就会自动执行了,但是这个函数在哪里呢?

  首先将光标放到函数上,按“ctrl+}”即可跳转,如图:

  

 选择2,即可进入函数

4.将自己的注册函数加入此函数内部

489行即为我自己加入的设备注册函数,其中函数的实现和头文件可以写在函数的外面。(最好先写成模块编译没问题了再加载进来)

猜你喜欢

转载自www.cnblogs.com/edan/p/9238180.html