We are trying to update kernel version in out IOT product from 4.9 to 5.10.9. Sierra modem wireless works fine in kernel 4.9 however in kernel 5.10, its not detecting.
New kernel output
xxx:~# lsusb
Bus 002 Device 002: ID 0424:3503 Microchip Technology, Inc. (formerly SMSC)
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub.
old kernel ouptut:
lsusb
Bus 003 Device 003: ID 1199:9071 Sierra Wireless, Inc.
Bus 003 Device 002: ID 0424:3503 Standard Microsystems Corp.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
I enabled desired configs for sierra modem wireless with kernel menuconfig (
CONFIG_USB_SERIAL=m,
CONFIG_USB_SERIAL_GENERIC=y,
CONFIG_USB_SERIAL_CONSOLE=y
CONFIG_USB_NET_QMI_WWAN=m
CONFIG_USB_SIERRA_NET=m
I think that its not related to hardware issue or modem software issue, Since same modem works with kernel version 4.9 with same hardware but not working in kernel 5.10. In our product, we are using yocto buildsystem to build customized kernels. I am not sure whether I am missing out configuration parameters or patches
yeah, its working with ubuntu and also kernel version of 4.9 with same hardware and same modem. In dmesg, i will get output like this
[ 4.476443] usbcore: registered new interface driver usbserial
[ 4.489477] usbcore: registered new interface driver cdc_wdm
[ 4.496928] qmi_wwan 3-1.3:1.8: cdc-wdm0: USB WDM device
[ 4.509625] qmi_wwan 3-1.3:1.8 wwan0: register ‘qmi_wwan’ at usb-ci_hdrc.2-1.3, WWAN/QMI device, be:ec:77:b4:bc:5c
[ 4.512611] qmi_wwan 3-1.3:1.10: cdc-wdm1: USB WDM device
[ 4.520874] qmi_wwan 3-1.3:1.10 wwan1: register ‘qmi_wwan’ at usb-ci_hdrc.2-1.3, WWAN/QMI device, be:ec:77:b4:bc:5c
[ 4.520994] usbcore: registered new interface driver qmi_wwan
[ 4.755502] usbcore: registered new interface driver usbserial_generic
[ 4.837276] usbserial: USB Serial support registered for generic
[ 4.896511] usbcore: registered new interface driver qcserial
[ 4.935527] usbserial: USB Serial support registered for Qualcomm USB modem
[ 4.992732] qcserial 3-1.3:1.0: Qualcomm USB modem converter detected
[ 5.007310] usb 3-1.3: Qualcomm USB modem converter now attached to ttyUSB0
[ 5.045642] qcserial 3-1.3:1.2: Qualcomm USB modem converter detected
[ 5.061652] usb 3-1.3: Qualcomm USB modem converter now attached to ttyUSB1
[ 5.082401] qcserial 3-1.3:1.3: Qualcomm USB modem converter detected
[ 5.100424] usb 3-1.3: Qualcomm USB modem converter now attached to ttyUSB2
you should at least see something like this even there is no driver:
usb 2-2: new SuperSpeed USB device number 2 using xhci_hcd
usb 2-2: config 1 has an invalid interface number: 4 but max is 3
usb 2-2: config 1 has no interface number 2
usb 2-2: New USB device found, idVendor=1199, idProduct=90d3, bcdDevice= 0.06
usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 2-2: Product: Sierra Wireless EM9191
usb 2-2: Manufacturer: Sierra Wireless, Incorporated
or maybe a missing platform driver? minicard pin 20 control? slot power control?
Like @jyijyi says: the modem will show up on the USB bus whether or not there is a driver for it. So when it doesn’t show up, then it’s either physically disconnected, powered down or held in reset. This is managed by the host platform. If it works on one kernel version but not on another running on the same hardware, then you should look for a driver issue. But it won’t be the usb/modem drivers… It will be the drivers controlling the minicard slot on the host platform.
Thanks a lot for the answers. yeah its driver configuration issue. I figured it out two of usb ports and mini pci slot where the modem is connected is not detecting anything. Its not issue in modem software