我正在尝试编写设备树覆盖图以识别基于SPI的enc28j60模块到我的BeagleBone Black。该模块未显示在/kernel-dev/Documentation/devicetree/bindings中,但内核中确实存在用于该模块的驱动程序。

缺乏文档说明是否缺少设备树绑定(bind)?不能说类似compatible = "microchip,enc28j60"之类的东西,我想知道还可以使用设备树覆盖来加载enc28j60.ko驱动程序吗?

最佳答案

经过一些研究和grep'ing,似乎devicetree兼容的驱动程序具有一段代码,如下所示:

static struct of_device_id enc28j60_of_match[] __devinitdata = {
  { .compatible = "microchip,enc28j60", },
  {}
};

然后将其包含在platform_driver结构中。如果内核在设备树覆盖中遇到compatible = "microchip,enc28j60",这将指示内核如何使用react。

关于linux - 在设备树中使用什么 "compatible" key ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17874315/

10-11 21:28