首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Linux主机上将未知的usb设备配置为以太网?

如何在Linux主机上将未知的usb设备配置为以太网?
EN

Stack Overflow用户
提问于 2018-10-16 16:22:07
回答 1查看 1.3K关注 0票数 0

当我的USB设备连接时,我得到了以下信息:

代码语言:javascript
复制
$ dmesg | tail
[   79.612133] usb 2-2: new full-speed USB device number 3 using ohci-pci
[   79.937340] usb 2-2: New USB device found, idVendor=238b, idProduct=0a21
[   79.937343] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[   79.937344] usb 2-2: Product: DMR Radio
[   79.937346] usb 2-2: Manufacturer: Hytera Communications
[   80.282770] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[   80.286007] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[   80.399206] usbcore: registered new interface driver cdc_ether
[   80.404402] usbcore: registered new interface driver rndis_host
[   80.421516] usbcore: registered new interface driver rndis_wlan

没有类似于“usb 1-4.4.2:1.1: usb0: register 'cdc_subset‘at usb-0000:00:02.1-4.4.2,Linux Device”的消息。

因此,没有名为usb0的以太网。

代码语言:javascript
复制
$ uname -a
Linux VB1804 4.15.0-36-generic #39-Ubuntu SMP Mon Sep 24 16:19:09 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

它显示为未知设备。

代码语言:javascript
复制
$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 238b:0a21  
Bus 002 Device 002: ID 80ee:0021 VirtualBox USB Tablet
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

$ lsmod | grep usbnet
usbnet                 45056  3 rndis_host,cdc_ether,rndis_wlan
mii                    16384  1 usbnet

我在物理Linux上也得到了同样的结果。

和,

代码语言:javascript
复制
$ usb-devices 
--------- other usb devices ----

T:  Bus=02 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#=  3 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=ff(vend.) Sub=fe Prot=fe MxPS= 8 #Cfgs=  1
P:  Vendor=238b ProdID=0a21 Rev=00.00
S:  Manufacturer=Hytera Communications
S:  Product=DMR Radio
C:  #Ifs= 3 Cfg#= 1 Atr=c0 MxPwr=4mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=02 Prot=ff Driver=(none)
I:  If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=(none)
I:  If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
EN

回答 1

Stack Overflow用户

发布于 2018-11-30 11:35:33

我将idVendor和idProduct添加到rndis_host.c文件中结构数组prodocts[]的白名单中。

代码语言:javascript
复制
static const struct usb_device_id   products [] = {
{   /* DMR Radio*/
    USB_DEVICE_AND_INTERFACE_INFO(0x238b, 0x0a21,
                  USB_CLASS_COMM, 2 /* ACM */, 0x0ff),
    .driver_info = (unsigned long) &rndis_info,
}, {

而且,它是有效的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52830989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档