2016-03-06 77 views
0

我有一个运行Linux(我从源代码,从制造商的网站编译的内核)IMX6 CPU的物理卡。我也有一个我想用于该卡的USB蜂窝调制解调器加密狗。然而,当我在卡插上加密狗,我得到这个dmesg交叉编译驱动程序的USB调制解调器

[ 29.825491] usb 1-1: new high-speed USB device number 2 using ci_hdrc 
[ 29.983396] usb-storage 1-1:1.0: USB Mass Storage device detected 
[ 29.991796] scsi0 : usb-storage 1-1:1.0 
[ 30.987573] scsi 0:0:0:0: Direct-Access  ALCATEL Mass Storage  2.31 PQ: 0 ANSI: 2 
[ 30.996027] scsi 0:0:0:1: CD-ROM   ALCATEL Mass Storage  2.31 PQ: 0 ANSI: 2 
[ 31.008487] sd 0:0:0:0: [sda] Attached SCSI removable disk 

它看起来像Linux是识别设备为大容量存储设备(双打作为存储设备),但不作为调制解调器。当我插入相同的加密狗到常规的Ubuntu机器,我得到这个:

[264822.947101] usb 1-5: new high-speed USB device number 12 using ehci-pci 
[264823.086874] usb 1-5: New USB device found, idVendor=1bbb, idProduct=0017 
[264823.086880] usb 1-5: New USB device strings: Mfr=3, Product=2, SerialNumber=[REDACTED] 
[264823.086883] usb 1-5: Product: HSPA Data Card 
[264823.086886] usb 1-5: Manufacturer: USBModem 
[264823.086888] usb 1-5: SerialNumber: [REDACTED] 
[264823.089483] option 1-5:1.0: GSM modem (1-port) converter detected 
[264823.089685] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB1 
[264823.089816] option 1-5:1.1: GSM modem (1-port) converter detected 
[264823.090019] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB2 
[264823.090150] option 1-5:1.2: GSM modem (1-port) converter detected 
[264823.090311] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB3 
[264823.090433] option 1-5:1.3: GSM modem (1-port) converter detected 
[264823.090574] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB4 
[264823.090666] usb-storage 1-5:1.4: USB Mass Storage device detected 
[264823.090916] scsi host16: usb-storage 1-5:1.4 
[264823.091067] option 1-5:1.5: GSM modem (1-port) converter detected 
[264823.091133] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB5 
[264824.089843] scsi 16:0:0:0: Direct-Access  ALCATEL Mass Storage  2.31 PQ: 0 ANSI: 2 
[264824.090238] sd 16:0:0:0: Attached scsi generic sg2 type 0 
[264824.093552] sd 16:0:0:0: [sdb] Attached SCSI removable disk 

我知道如何编译模块外部进入内核,在menuconfig选择它们。但是,我不知道我应该为这个设备编译哪些模块,如果它们甚至包含在内核源代码中的话。我怎样才能找到要编译的模块/驱动程序?

回答

1

USB调制解调器通常作为大容量存储设备启动,以允许安装驱动程序。

您可以使用软件如USB_ModeSwitch强制它改变模式。 (这可能已经安装并在你的Ubuntu系统上工作)

如果失败了,许多人会在存储被弹出时切换模式(如eject)。

+0

看起来'eject'根本没有任何效果。我什至不能说这个设备映射到哪里。我在'/ dev/disk/by-id /'下找到了一个名为'usb-ALCATEL_Mass_Storage- '的东西,但我不知道该怎么办。任何想法? –

+0

@AndyThomas:考虑到你的dmesg输出,我希望'eject/dev/sda'应该可以工作,但使用'usb_modeswitch'可能会更容易。 – Hasturkun

+0

'eject/dev/sda'也不起作用。我的主板上没有'usb_modeswitch',你认为这值得交叉编译吗? –

0

您可以检查Ubuntu中的sysfs属性,查找/ sys/bus/usb/devices /中的关联驱动程序 ,并在您的主板内核配置中启用该驱动程序。