Linux高级驱动
ZoneLai
这个作者很懒,什么都没留下…
展开
-
平台总线(一)
(注:基于三星S5PV210平台,Linux3.0.8内核) 总线:struct bus_type: 描述一个总线对象,完成匹配 struct bus_type { const char *name; //要有名字 int (*match)(struct device *dev, struct device_driver *drv);//匹配方法 }; 构建/销毁总线: int原创 2016-09-16 23:00:57 · 325 阅读 · 0 评论 -
平台总线(二)
任务: 1, 构建bus, device, driver 2, 实现匹配方法 3, 实现driver probe /* mybus.c */ #include #include #include #include "desc.h" char bus_version[128] = "bus verison v1"; int mybus_match(struct原创 2016-09-16 23:25:36 · 321 阅读 · 0 评论 -
平台总线(三)
平台总线:用于平台升级的 三星: s3c2410 --------------- s3c6410 ----------- s5pv210 gpio控制器 gpio控制器 gpio控制器 uart i2c spi 控制逻辑方法相同:1,配置gpio寄存器 2.读写数据 地址会不同 三元素: 总线: 开机的时候就已经创建原创 2016-09-16 23:16:45 · 644 阅读 · 0 评论 -
字符设备驱动编程思想
linux字符设备驱动编程 1,实现入口函数 xxx_init()和卸载函数 xxx_exit() 2,申请主设备号 register_chrdev_region (与内核相关) 3,注册字符设备驱动 cdev_alloc cdev_init cdev_add (与内核相关) 4,利用udev/mdev机制创建设备文件(节点) class_create, device_cre原创 2016-10-11 10:13:07 · 286 阅读 · 0 评论