linux i2c设备驱动移植问题 请大师们赐教啊 5
linux下i2c-dev.c是对设备节点进行操作的这个文件和其他i2c模块有什么联系比如说ad7417.cltc4215.c(这些文件中没有文件操作file_opera...
linux下i2c-dev.c是对设备节点进行操作的这个文件和其他i2c模块有什么联系比如说ad7417.c ltc4215.c(这些文件中没有文件操作file_operation只是有probe等)等,难道我要做移植的时候这两个模块(i2c-dev.c和ad7417.c)都要加载么 还是只加载一个或者把两个写在一起进行加载,还有我要进行I2c设备进行移植注意的事情有哪些 请大师们赐教啊
怎么没人来回答啊? 展开
怎么没人来回答啊? 展开
2个回答
展开全部
linux下驱动代码分为两个层次,一个是设备抽象,一个是真实设备
像i2c-dev.c属于设备抽象,你没有它,所有char设备的i2c机制都失效
像ad7417.c属于真实设备,没有它只是影响ad7417对应的具体设备。
所以你想使用ad7417的对应设备,这两个文件必须都得有
i2c-dev.c是核心代码,它的输出产物是个k-object:
MODULE_DESCRIPTION("I2C /dev entries driver");
至于你的ad7417.c是否有用到i2c-dev.c的代码,我就不知道了,如果有则需要联编
像i2c-dev.c属于设备抽象,你没有它,所有char设备的i2c机制都失效
像ad7417.c属于真实设备,没有它只是影响ad7417对应的具体设备。
所以你想使用ad7417的对应设备,这两个文件必须都得有
i2c-dev.c是核心代码,它的输出产物是个k-object:
MODULE_DESCRIPTION("I2C /dev entries driver");
至于你的ad7417.c是否有用到i2c-dev.c的代码,我就不知道了,如果有则需要联编
追问
看了你的一番讲解顿悟了许多啊,如果我要实现一个I2c设备驱动的话我就要修改两个内容 1.板级信息的注册i2c_board_info 2.具体相关驱动的撰写也就是上面所谓的ad7417.c这个设备实现它的读写函数属性(不知道我说的对不对请指点) 最近在看spi相关驱动 其中有一个spidev.c这个文件 网上有人说这个文件就是指向具体的设备可以通用 要想实现一个spi设备驱动只要只要修改里面的name和添加spi_board_info就可以 请指点
浙江启扬智能科技有限公司
2023-06-12 广告
2023-06-12 广告
不一定,ARM架构的嵌入式开发可以基于uc/os、Linux、Windows等操作系统,而不一定要使用LINUX操作系统。在ARM架构上,Windows和Linux都是可以使用的,而且许多嵌入式系统开发工具也都是支持这两种操作系统的。因此,...
点击进入详情页
本回答由浙江启扬智能科技有限公司提供
2013-01-31
展开全部
真对不起,我对linux系统不了解
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询