关于linux 设备驱动中调用其他驱动的问题
请教下, 开发linux 驱动时,可不可以在驱动程序中操作其他设备。比如,想开发 iic 陀螺仪的驱动,能不能直接在iic 陀螺仪的驱动中 打开 系统中已经挂载的iic 设备?
还有,能否在驱动中使用socket 进行网络通信。
谢谢 没听说过在某个驱动里面,还能去操作其他驱动的 应该能,因为linux应用层可以通过mmap操作任何寄存器,驱动当然也能用mmap而且是必须能用 honami520 发表于 2016-7-2 19:49
没听说过在某个驱动里面,还能去操作其他驱动的
我的意思是,在 陀螺仪的驱动程序里打开 iic的设备问题。 底层用iic的驱动去操作硬件。
相当于在 iic 驱动外面又封装了一次。 NJ8888 发表于 2016-7-2 23:02
应该能,因为linux应用层可以通过mmap操作任何寄存器,驱动当然也能用mmap而且是必须能用 ...
嗯嗯 。 canopen 发表于 2016-7-3 18:11
我的意思是,在 陀螺仪的驱动程序里打开 iic的设备问题。 底层用iic的驱动去操作硬件。
相当于在 iic 驱 ...
如果是使用I2C总线或者SPI总线,这个是可以得。 honami520 发表于 2016-7-3 19:50
如果是使用I2C总线或者SPI总线,这个是可以得。
喔,好的,谢谢。 canopen 发表于 2016-7-4 22:32
喔,好的,谢谢。
linux下面i2c的驱动实现方法有三种。
你说的这种办法,简单点的就是将陀螺仪这个设备注册成一个字符设备。
通过ioctl函数,直接读写数据。
网上也有很多这方面的资料,具体的你可以看看这边。
http://blog.csdn.net/luckywang1103/article/details/16834519
当然可以了,楼主参考RTC、触摸等这些的驱动,他们都是基于i2c总线的设备
在驱动中网络通信有点太另类了吧
页:
[1]