how to find which driver to use for a device

From a LWN.net subscriber:

Posted Aug 2, 2008 18:12 UTC (Sat) by cortana (subscriber, #24596) [Link]

Because I'm always forgetting this information when trying to trouble shoot others' systems...

1. Find the device in the sysfs. For instance, my wireless network card corresponds to
'/sys/devices/pci0000:00/0000:00:0f.0/'.
2. Examine the 'modalias' file in this directory.
3. Run /sbin/modprobe -v -n --first-time $(< /sys/devices/pci0000:00/0000:00:0f.0/modalias).
This shows you the module that will be loaded for this hardware.

You can also do this by hand...

1. Find the device in the output of 'lspci -nn'.
2. Note the pair of numbers on the end of the line. These are the vendor and device IDs that
uniquely identify the device.
3. Look this information up in /lib/modules/$yourkernel/modules.pcimap

The same approaches work for USB and presumably all other modern/sensible hardware.

Comments