能指点下linux i2c驱动吗
答案:2 悬赏:0
解决时间 2021-03-13 11:30
- 提问者网友:枯希心
- 2021-03-12 12:00
能指点下linux i2c驱动吗
最佳答案
- 二级知识专家网友:滚刀废物浮浪人
- 2021-03-12 12:58
一般物理板上的地址,是在platform_device结构体定义的,该结构体和name相同的platform_deriver会匹配关联,,,
然后platform_driver那边应该有个get_resources的函数来获取resources既板级相关的物理地址。。
真正定义板级相关物理地址的,一般在i2c的platform_device定义的那个文件中,有个resources的结构体,物理地址一般就在resources里面。。。
可以在整个内核树中根据platform_device定义的name来搜索对应platform_device
然后platform_driver那边应该有个get_resources的函数来获取resources既板级相关的物理地址。。
真正定义板级相关物理地址的,一般在i2c的platform_device定义的那个文件中,有个resources的结构体,物理地址一般就在resources里面。。。
可以在整个内核树中根据platform_device定义的name来搜索对应platform_device
全部回答
- 1楼网友:一起来看看吧
- 2021-03-12 14:11
最简情况下:
i2c:sda数据线、scl时钟线。
spi:di输入线、do输出线、cs片选先、clk时钟线。
可能不能写到一个驱动中。
但是好在一般很少用到这么简单的情况,厂家会对其扩展和改进。
比如 w25q128fb/w25r128fv 系列闪存,支持 spi、dual spi、quad spi 和 qpi。就拿 quad spi 来说,有 6 个引脚:
quad spi:d0-d3 输入输出线、cs片选先、clk时钟线。
其中 输入为一位串行输入 d0,输出为四位串行输出 d0-d3。(四位仍少于一个字节,可姑且称为串行)
winbond华邦 这么做是为了加快闪存读取速度(四位串行相比一位串行提高了四倍)。
因此关键在于 要进行怎样的 io。至于是否将二者写到一个驱动看来并不重要。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯