我需要一个正在编写/修改的设备驱动程序,以便能够访问系统中的另一个设备。我知道有关司机的一些信息,例如姓名和/或地址,以便进行查找,但我找不到实际查找的方法。在这种特殊情况下,我需要获取一个 GPIO 设备(将加载 5 个,并且它们有 2 种不同类型),但我也需要知道一般情况,因为我有一个不同的任务,几个驱动程序共享一个他们将不得不查找的常见问题,我想以类似的方式。我已经找到了如何从用户空间查找设备,但没有关于如何从另一个内核驱动程序进行查找。此外,系统中没有模块,所有设备都是从设备树信息加载的。
让我感到困惑的部分原因是我看不到特定的 gpio init 函数如何在任何地方注册设备。我正在使用 Xilinx 特定的 AXI GPIO 设备,它使用 drivers/gpio/gpio-xilinx.c 中的代码,我可以看到它如何从设备树中获取所有信息,但我没有看到任何传回的信息到任何内核列表以供以后使用。
如果有帮助,它可以在 Xilinx Zynq 芯片上运行。