Reputation: 1309
I have a physical card with an IMX6 CPU that runs Linux (a kernel I compiled from source, from the manufacturer's website). I also have a USB Cellular modem dongle that I want to use with the card. However, when I plug the dongle in the card, I get this in dmesg
:
[ 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
It looks like Linux is recognizing the device as a mass storage device (it doubles as a storage device), but not as a modem. When I insert the same dongle into a regular Ubuntu machine, I get this:
[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
I know how to compile modules externally and into the kernel, by choosing them in menuconfig
. However, I don't know which modules I should compile for this device, if they are even included in the kernel source. How can I find which modules / drivers to compile?
Upvotes: 0
Views: 577
Reputation: 169
you can check the sysfs attributes in Ubuntu for the associated driver in /sys/bus/usb/devices/ and enable that driver in your board kernel configuration.
Upvotes: 0
Reputation: 36402
USB modems often start up as Mass storage devices to allow for driver installation.
You can use software such as USB_ModeSwitch to force it to change modes. (this is likely already installed and working on your Ubuntu system)
Failing that, many will switch modes when their storage is ejected (as by eject
).
Upvotes: 1