![sysfs:模块和驱动程序之间的对应关系?](https://linux22.com/image/14885/sysfs%EF%BC%9A%E6%A8%A1%E5%9D%97%E5%92%8C%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E4%B9%8B%E9%97%B4%E7%9A%84%E5%AF%B9%E5%BA%94%E5%85%B3%E7%B3%BB%EF%BC%9F.png)
在 sysfs 中,我们可以找到哪个驱动程序正在处理一个设备。例如,以下显示处理设备的驱动程序led0
称为leds-gpio
.
pi@raspberrypi:/sys/devices/platform/leds/leds/led0/device $ ls -l
...
lrwxrwxrwx 1 root root 0 Apr 18 10:58 driver -> ../../../bus/platform/drivers/leds-gpio
...
leds-gpio.c
在Linux内核的源代码中可以找到。然而,leds-gpio
无论是通过lsmod
还是在中,都找不到任何名为 的模块/lib/modules/$(uname -r)
。
我们如何知道哪个模块包含给定的驱动程序(例如leds-gpio
本例中的驱动程序)?