<分区>
这个问题有两个方面:
1- 如何手动从 USB 设备上分离驱动程序并连接另一个设备?例如,我有一个连接时自动使用 usb-storage 驱动程序的设备。
//usbview 输出
Vendor Id: xxxx
Product Id: xxxx
...
Number of Interfaces: 2
Interface Number: 0
Name: usb-storage
Number of Endpoints: 2
...
Interface Number: 1
Name: (none)
Number of Endpoints: 2
...
我不想使用 usb-storage 驱动程序,所以我在主机上运行了一个应用程序,我在其中使用 libusb 库分离 usb-storage 驱动程序,然后我声明了接口(interface)。然后,我可以向在我的 USB 设备和主机 Linux 系统上运行的应用程序发送数据,以及从这些应用程序发送数据。
如何在应用程序之外手动分离驱动程序?
2- 如何自动分配驱动程序以附加到设备插件上。我目前有一个 udev 规则设置来自动设置设备权限。
SUBSYSTEM=="usb", ATTR{idVendor}=="xxxx", MODE="0666"
我可以使用 udev 规则将驱动程序分配给 USB 设备上的特定接口(interface)吗?例如,如果我希望在接口(interface) 0 上自动使用 usbnet 模块而不是 usb-storage,这在 udev 中可能吗?
谢谢,
(我对 StackExchange 如何与它的不同站点一起工作或者它们是否完全相同感到有点困惑。这是一个 Linux 问题,所以它也发布在 Unix 和 Linux 上。如果不应该请原谅我'也不会在这里发布,但 StackOverflow 也处理 Linux,所以...)