i2c sub system
文章平均质量分 80
angle_birds
这个作者很懒,什么都没留下…
展开
-
驱动注册的probe函数
probe的调用 从driver_register看起:int driver_register(struct device_driver * drv){ klist_init(&drv->klist_devices, klist_devices_get, klist_devices_put); init_completion(&drv->unlo转载 2013-12-31 19:39:29 · 680 阅读 · 0 评论 -
new style I2C设备驱动分析
最近看了韦东山驱动视频的i2c部分,总结出相关知识,分享给大家 在内核中有两种方式的i2c设备驱动的编写方法,一种legacy方式,一种是newstyle方式。韦东山视频和宋宝华书籍里讲解的都是legacy方式,但是在新版本内核中,legacy方式的i2c设备驱动已经编译不过去了,因为几个主要的内核函数都已经不存在了,即内核不再支持legacy方式的i2c设备驱动。下转载 2013-12-31 19:38:40 · 768 阅读 · 0 评论 -
i2c sub system __i2c_board_list/klist_devices/klist_drivers 相互关系
kernel/drivers/i2c/i2c-boardinfo.cstruct i2c_client 中的name/addr/irq 等信息是从 struct i2c_board_info得来的,关于如何得到见下文。所有的i2c_board_info 都要添加到全局链表 __i2c_board_list 中,而且应该在硬件i2c控制器模块加载前添加,以便控制器模块加载时生成 i2c_cl原创 2013-12-31 16:52:25 · 2053 阅读 · 0 评论