bil*_*bon 5 linux usb linux-device-driver
我的目标是为Linux 2.6.32及更高版本(我使用debian squeeze)创建一个虚拟USB char设备(而不是阻止设备),系统可以识别该设备。
我希望将此设备与lsusb一起列出,作为普通的USB设备,并且每个应用程序都可以使用libusb来打开设备,发送控制消息以及进行批量写入/读取。但是在此虚拟设备后面,它的行为将由我的应用程序设置。我要设置它的产品ID,供应商ID,对USB状态的答复以及批量读取。
我已经阅读了一些有关如何使用USB / IP来创建虚拟USB设备的帖子,而这正是我要执行 的操作虚拟USB设备的安装和仿真 http://breaking-the-system.blogspot.fr /2014/08/emulating-usb-devices-in-python-with-no.html
但是不幸的是,当我尝试使用2.6.32及更高版本的内核时,我没有成功使其工作。因此,我研究了如何创建将创建虚拟设备的内核模块: http //pete.akeo.ie/2011/08/writing-linux-device-driver-for-kernels.html
这看起来也不错,但是提供的示例并未指出如何使其成为USB设备。我见过一些有关Windows的文章,但没有一篇对Linux有所帮助。
如果可以通过软件完成,我想避免购买一些USB可编程卡。
有谁在如何使第一种方法在较新的内核下工作或如何转换第二种方法的示例代码以制造USB设备的任何线索?
我已经修复了http://break-the-system.blogspot.fr/2014/08/emulated-usb-devices-in-python-with-no.html的代码(使用 USB/IP 的第一种方法)来使用linux 4.3。
原始代码中缺少 USB 请求,例如设置配置和获取状态。如果不实现用于操作系统驱动程序的所有 USB 请求,代码将无法工作。
固定代码可以在https://github.com/lcgamboa/USB-Emulation下载。
| 归档时间: |
|
| 查看次数: |
4953 次 |
| 最近记录: |