linux驱动开发、适配记录日志

标题linux下驱动开发日志


标题一、驱动加载到linux内核中

我现在是直接使用厂家提供的驱动来做适配的。
第一步,首先要找到我们要使用的驱动的源码目录,找到其对应的Makefile,在其中我们会看到menuconfig中需要打开的配的关键字,例如designware的wdt的关键字就是dw_watchdog。
第二步,根据上一步找到的关键字,在Makefile中查找这个关键字(注;/直接按/就可以打开menuconfig中的搜索框),打开搜索框之后按照提是打开这个驱动所需的所有依赖,同时需要注意某些以来是否会对其他IP或子系统造成影响。
第三步,保存的们刚才menuconfig的配置,一般都会在对应目录下有相应的.config文件。
第四步,编写dts是设备树,方法可以参考厂家的官方配置。

标题二、linux内核启动加载驱动的过程

第一步,重新编译代码,这时候有了上一步的配置,系统会把我们的驱动编译成.o加载进去。
第二步,首先系统会根据dts的bin文件对进行解析,如果检索到了对应设备树,然后根据设备树找到相应的驱动代码。
第三步,内核会加载一个叫prob函数的函数接口,里面可能会做一些初始化啥的,同时也会生成对应的设备节点,根据不同的ip可能在不同的文件目录下或不同的子系统下,根据我目前遇到的例子,dev、还有时间子系统下都会有对应的涉笔节点。
第四步,我们可以通过dmesg|grep wdt(wdt为例)来查看我们的IP信息。

标题三、驱动接口的调用

由于刚开始接触,理解的比较浅显。大概可以分为三个步骤。
(1)open(fd,dev/wdt),打开对应的驱动文件获得一个句柄。
(2)ioctrl(fd,optio,&i),做一些操作,设置超时呀、获取状态呀,等等。
(3)close(fd),关闭文件。

目前知道的比较少,后面再做完善,加图片,贴代码。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值