Linux 驱动
文章平均质量分 61
记录学习的点点滴滴
l_ss
这个作者很懒,什么都没留下…
展开
-
LED——platform框架
在linux2.6以后的设备驱动模型中,需关心总线、设备和驱动这3个实体,总线将设备和驱动绑定。在系统没注册一个设备的时候,会寻找与之匹配的驱动,相反的,在系统每注册一个驱动的时候,会寻找与之匹配的设备,而匹配有总线完成。实现资源与驱动的分离。platform_device指定资源。原创 2023-10-25 16:57:01 · 48 阅读 · 1 评论 -
led驱动改造——设备树
platform_device和platform_driver的每一次配对都会调用probe函数,我们在设备树中定义了两个设备节点,所以会有两次调用。probe函数需要做的是引脚信息的存储和创建设备。把得到的arch/arm/boot/dts/100ask_imx6ull-14x14.dtb文件传输到imx6ull板子上,这里采用nfs。需要先学习platform_device与platform_driver是如何配对。在设备树文件下添加GROUP_PIN宏。在根节点下添加led节点。原创 2023-10-30 21:25:23 · 150 阅读 · 1 评论 -
linux按键中断点灯——imx6ull
irq是终端号,handler是中断函数,flags是出发方式,有低电平触发,高电平触发,下降沿触发,上升沿触发,name是设置中断的名字,dev是传给中断函数的参数。irq是终端号,dev_id是传给中断函数的参数,与request_irq中的dev一样。添加接口供keydrv.c调用。在根节点添加以下节点。原创 2023-11-15 16:16:40 · 94 阅读 · 1 评论 -
led驱动——gpio和pinctrl子系统
pinctrl是用来指定引脚复用的和配置引脚(上下拉等等),引脚上的功能有很多,比如,串口,i2c等等。主要参考文档:在linux内核源码Documentation\devicetree\bindings\pinctrl\pinctrl-bindings.txt。2.init,exit,出口入口函数,在入口函数中注册platform_driver和在出口函数中反注册platform_driver。(3) class_create和device_create。(2)注册file_operations。原创 2023-11-13 16:28:42 · 171 阅读 · 0 评论 -
LED分层,分离的程设设计
具体请查看百问网资料,嵌入式linux应用开发手册v5.1,这里简单描述下分层:在leddrv驱动程序中,把led操作部分抽象出来,设计成led_operations对象,所以我们就不用管硬件部分的工作,只知道这个对象,然后就可以进行引脚的初始化和操作。分离:led是属于gpio的操作,假如有实现了一个板子的所有gpio相关配置chip_demo_gpio.c,我们只需要指定需要用到的那些引脚资源就行。原创 2023-10-24 20:17:47 · 56 阅读 · 0 评论 -
ubuntu的ip配置
eth0 接口地址会被指定为 192.168.5.11/24,默认网关是 192.168.5.1, DNS 服务器是 8.8.8.8。原文链接:https://www.imooc.com/article/275055。如果你想给网络设备分配一个静态 IP 地址,那就新建下面的配置文件。重启 systemd-networkd 服务或者重启机器。运行以下命令检查服务状态。原创 2023-10-23 16:50:24 · 2209 阅读 · 0 评论 -
开发板的内核编译与安装
资料来源于百问网嵌入式Linux应用开发完全手册V5.1。原创 2023-10-23 17:16:01 · 107 阅读 · 0 评论 -
Hallo驱动
函数原型如下:**原创 2023-10-23 20:57:47 · 43 阅读 · 0 评论 -
开发板挂载mount到虚拟机
这样就可以在/mnt目录下看到ubuntu的文件了。如果遇到apt进程被占用。在最后面加上下面语句。原创 2023-10-23 16:49:04 · 263 阅读 · 0 评论