如何获取Linux中正在使用的USB驱动程序的名称

ome*_*erk 2 linux source drivers kernel usb

我在我的笔记本电脑上运行 Ubuntu 14.04。我的笔记本电脑有 USB 相关问题。它有时有效,有时无效。我想自己解决这个问题。所以,我想知道是否有办法确切知道哪个驱动程序负责我的笔记本电脑中的 USB,以及如何在 linux 源代码树中找到该驱动程序的源文件。这是 的回应sudo lspci -v | grep -i usb

00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05) (prog-if 30 [XHCI])
00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05) (prog-if 20 [EHCI])
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05) (prog-if 20 [EHCI])
Run Code Online (Sandbox Code Playgroud)

如果有人想知道我确实对在 Linux 内核中破解驱动程序有一点了解。

Adr*_* M. 5

如果您想知道内部 USB 的驱动程序:lspci| grep USB 这将列出您的 USB 设备,例如:

00:14.0 USB 控制器:英特尔公司 7 系列/C210 系列芯片组系列 USB xHCI 主机控制器(修订版 04)
00:1a.0 USB 控制器:英特尔公司 7 系列/C210 系列芯片组家族 USB 增强型主机控制器 #2(修订版 04) 
00:1d.0 USB 控制器:英特尔公司 7 系列/C210 系列芯片组家族 USB 增强型主机控制器 #1(修订版 04) 
07:00.0 USB 控制器:ASMedia Technology Inc. ASM1042 SuperSpeed USB 主机控制器

对于每个总线 ID(如 00:14.0),再次执行 lspci :

lspci -vvv -s 00:14.0 | 驱动程序
    正在使用的内核驱动程序:xhci_hcd

在这里,司机是xhci_hcd

和一个小循环,将所有驱动程序放在一行中:

for b in $(lspci | grep USB|awk '{print $1}'); do sudo lspci -vvv -s $b|grep driver; done

在我的桌面上,这将给出:

正在使用的内核驱动程序:xhci_hcd
正在使用的内核驱动程序:ehci-pci
正在使用的内核驱动程序:ehci-pci
正在使用的内核驱动程序:xhci_hcd