Linux kernel 在linux内核中将设备驱动程序附加到多个外围驱动程序
我们正在为ADC编写一个设备驱动程序。ADC使用2条通信总线:SPI用于控制,McASP用于数据。因此,我们需要将ADC驱动程序连接到这些总线驱动程序。 在设备树中,ADC是SPI控制器的子节点。是否也可以引用McASP控制器下的ADC节点,即执行以下操作:Linux kernel 在linux内核中将设备驱动程序附加到多个外围驱动程序,linux-kernel,linux-device-driver,embedded-linux,Linux Kernel,Linux Device Driver,Embedded Linux,我们正在为ADC编写一个设备驱动程序。ADC使用2条通信总线:SPI用于控制,McASP用于数据。因此,我们需要将ADC驱动程序连接到这些总线驱动程序。 在设备树中,ADC是SPI控制器的子节点。是否也可以引用McASP控制器下的ADC节点,即执行以下操作: spi1: spi@xx{ .. adc: adc@x { ... } } mcasp: mcasp@yy{ ... &adc } 或者内核中是否有一些attach()函数?
spi1: spi@xx{
..
adc: adc@x {
...
}
}
mcasp: mcasp@yy{
...
&adc
}
或者内核中是否有一些attach()
函数?
解决这个问题的正确方法是什么
谢谢。事实上,我可以使用\u parse\u phandle()的
函数和\u find\u device\u by\u node()的函数的组合。
还有一系列的
查找*函数可供使用 事实上,我可以通过\u node()使用\u parse\u phandle()的函数和\u find\u device的函数的组合
还有一系列的
查找*
函数可供使用 就我所理解的设备树的概念而言,您需要为辅助总线提供一个幻影。假设您有一个SPI设备(通过控制),主总线是SPI。因此,在SPI设备描述中,您需要向数据总线添加一个幻影。谢谢,我了解了幻影的概念。但是,如何将数据总线的幻象转换为设备结构(structdev)仍在苦苦挣扎?反之亦然,如何从数据总线驱动程序引用SPI设备?据我所知,设备树的概念,您需要提供一个辅助总线的幻影。假设您有一个SPI设备(通过控制),主总线是SPI。因此,在SPI设备描述中,您需要向数据总线添加一个幻影。谢谢,我了解了幻影的概念。但是,如何将数据总线的幻象转换为设备结构(structdev)仍在苦苦挣扎?反之亦然,如何从数据总线驱动程序引用SPI设备?