IMX8MM: xr_usb_serial_read_bulk_callback - non-zero urb status:

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IMX8MM: xr_usb_serial_read_bulk_callback - non-zero urb status:

Jump to solution
2,145 Views
Eddy1
Contributor V

Hi:

I recently ported the USB to serial driver for the XR21V1414 driver to the 8mm platform. I’m using BSP 5.4.3, but I keep encountering the following error when reading data, which is causing the read and write functions to malfunction.[ 1195.875954] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2

[    0.474366] usbcore: registered new interface driver usbfs
[    0.479443] usbcore: registered new interface driver hub
[    0.484797] usbcore: registered new device driver usb
[    1.327154] usbcore: registered new interface driver usb-storage
[    1.333257] usbcore: registered new interface driver option
[    1.338858] usbserial: USB Serial support registered for GSM modem (1-port)
[    1.688715] usbcore: registered new interface driver usbhid
[    1.694297] usbhid: USB HID core driver
[    2.098379] usb_phy_generic usbphynop1: usbphynop1 supply vcc not found, using dummy regulator
[    2.107256] usb_phy_generic usbphynop2: usbphynop2 supply vcc not found, using dummy regulator
[    3.708212] imx_usb 32e40000.usb: 32e40000.usb supply vbus not found, using dummy regulator
[    3.762945] imx_usb 32e50000.usb: 32e50000.usb supply vbus not found, using dummy regulator
[    4.093960] usb 1-1: new high-speed USB device number 2 using ci_hdrc
[    4.150020] usb 2-1: new high-speed USB device number 2 using ci_hdrc
[    4.557678] usb 1-1.3: new full-speed USB device number 3 using ci_hdrc
[    4.785680] usb 1-1.4: new full-speed USB device number 4 using ci_hdrc
[    4.869657] usb 1-1.4: device no response, device descriptor read/64, error -32
[    5.061961] usb 1-1.4: device no response, device descriptor read/64, error -32
[    5.253742] usb 1-1.4: new full-speed USB device number 5 using ci_hdrc
[    5.337712] usb 1-1.4: device no response, device descriptor read/64, error -32
[    5.529688] usb 1-1.4: device no response, device descriptor read/64, error -32
[    5.645938] usb 1-1-port4: attempt power cycle
[    6.253712] usb 1-1.4: new full-speed USB device number 6 using ci_hdrc
[    6.673765] usb 1-1.4: device not accepting address 6, error -32
[    6.762024] usb 1-1.4: new full-speed USB device number 7 using ci_hdrc
[    7.185710] usb 1-1.4: device not accepting address 7, error -32
[    7.193077] usb 1-1-port4: unable to enumerate USB device
[   25.571373] xr_usb_serial_common: loading out-of-tree module taints kernel.
[   25.580993] cdc_xr_usb_serial 1-1.3:1.0: USB_device_id idVendor:04e2, idProduct 1414
[   25.581007] cdc_xr_usb_serial 1-1.3:1.0: This device cannot do calls on its own. It is not a modem.
[   25.590139] cdc_xr_usb_serial 1-1.3:1.0: The data interface has switched endpoints
[   25.590144] cdc_xr_usb_serial 1-1.3:1.0: interfaces are valid
[   25.590157] cdc_xr_usb_serial 1-1.3:1.0: epwrite->bEndpointAddress =1
[   25.590332] cdc_xr_usb_serial 1-1.3:1.0: ttyXR_USB_SERIAL0: USB XR_USB_SERIAL device
[   25.600607] cdc_xr_usb_serial 1-1.3:1.2: USB_device_id idVendor:04e2, idProduct 1414
[   25.600617] cdc_xr_usb_serial 1-1.3:1.2: This device cannot do calls on its own. It is not a modem.
[   25.609777] cdc_xr_usb_serial 1-1.3:1.2: The data interface has switched endpoints
[   25.609782] cdc_xr_usb_serial 1-1.3:1.2: interfaces are valid
[   25.609792] cdc_xr_usb_serial 1-1.3:1.2: epwrite->bEndpointAddress =2
[   25.609958] cdc_xr_usb_serial 1-1.3:1.2: ttyXR_USB_SERIAL1: USB XR_USB_SERIAL device
[   25.620722] cdc_xr_usb_serial 1-1.3:1.4: USB_device_id idVendor:04e2, idProduct 1414
[   25.620733] cdc_xr_usb_serial 1-1.3:1.4: This device cannot do calls on its own. It is not a modem.
[   25.629940] cdc_xr_usb_serial 1-1.3:1.4: The data interface has switched endpoints
[   25.629948] cdc_xr_usb_serial 1-1.3:1.4: interfaces are valid
[   25.629959] cdc_xr_usb_serial 1-1.3:1.4: epwrite->bEndpointAddress =3
[   25.630129] cdc_xr_usb_serial 1-1.3:1.4: ttyXR_USB_SERIAL2: USB XR_USB_SERIAL device
[   25.640077] cdc_xr_usb_serial 1-1.3:1.6: USB_device_id idVendor:04e2, idProduct 1414
[   25.640087] cdc_xr_usb_serial 1-1.3:1.6: This device cannot do calls on its own. It is not a modem.
[   25.649235] cdc_xr_usb_serial 1-1.3:1.6: The data interface has switched endpoints
[   25.649246] cdc_xr_usb_serial 1-1.3:1.6: interfaces are valid
[   25.649255] cdc_xr_usb_serial 1-1.3:1.6: epwrite->bEndpointAddress =4
[   25.649423] cdc_xr_usb_serial 1-1.3:1.6: ttyXR_USB_SERIAL3: USB XR_USB_SERIAL device
[   25.662333] usbcore: registered new interface driver cdc_xr_usb_serial
[   25.668930] xr_usb_serial_common: Exar/MxL USB UART (serial port) driver version 1D
[ 1184.043100] tty ttyXRUSB2: xr_usb_serial_tty_install
[ 1184.044199] tty ttyXRUSB2: xr_usb_serial_tty_open
[ 1184.044209] cdc_xr_usb_serial 1-1.3:1.4: xr_usb_serial_port_activate
[ 1184.045153] xusb set rs485
[ 1184.046554] cdc_xr_usb_serial 1-1.3:1.4: 0xa1
[ 1184.047905] cdc_xr_usb_serial 1-1.3:1.4: 0x20
[ 1184.047912] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.047919] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.047925] cdc_xr_usb_serial 1-1.3:1.4: 0x04
[ 1184.047931] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.047937] cdc_xr_usb_serial 1-1.3:1.4: 0x02
[ 1184.047943] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.047949] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.047955] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.047966] cdc_xr_usb_serial 1-1.3:1.4: xr_usb_serial_ctrl_irq - input control lines: dcd- dsr- break- ring- framing- parity- overrun-
[ 1184.048263] xusb enabled rs485
[ 1184.050279] cdc_xr_usb_serial 1-1.3:1.4: 0xa1
[ 1184.051337] cdc_xr_usb_serial 1-1.3:1.4: 0x20
[ 1184.051340] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.051344] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.051348] cdc_xr_usb_serial 1-1.3:1.4: 0x04
[ 1184.051351] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.051354] cdc_xr_usb_serial 1-1.3:1.4: 0x02
[ 1184.051357] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.051363] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.051366] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.051375] cdc_xr_usb_serial 1-1.3:1.4: xr_usb_serial_ctrl_irq - input control lines: dcd- dsr- break- ring- framing- parity- overrun-
[ 1184.051527] xusb set logical level to 0
[ 1184.052141] cdc_xr_usb_serial 1-1.3:1.4: 0xa1
[ 1184.056023] cdc_xr_usb_serial 1-1.3:1.4: 0x20
[ 1184.056027] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.056030] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.056034] cdc_xr_usb_serial 1-1.3:1.4: 0x04
[ 1184.056037] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.056040] cdc_xr_usb_serial 1-1.3:1.4: 0x02
[ 1184.056043] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.056046] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.056049] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.056056] cdc_xr_usb_serial 1-1.3:1.4: xr_usb_serial_ctrl_irq - input control lines: dcd- dsr- break- ring- framing- parity- overrun-
[ 1184.057269] cdc_xr_usb_serial 1-1.3:1.4: xr_usb_serial_tty_set_termios - set line: 115200 0 0 8
[ 1184.060266] cdc_xr_usb_serial 1-1.3:1.4: 0xa1
[ 1184.060278] cdc_xr_usb_serial 1-1.3:1.4: 0x20
[ 1184.060281] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.060284] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.060288] cdc_xr_usb_serial 1-1.3:1.4: 0x04
[ 1184.060291] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.060294] cdc_xr_usb_serial 1-1.3:1.4: 0x02
[ 1184.060297] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.060300] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.060303] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.060309] cdc_xr_usb_serial 1-1.3:1.4: xr_usb_serial_ctrl_irq - input control lines: dcd- dsr- break- ring- framing- parity- overrun-
[ 1184.062272] cdc_xr_usb_serial 1-1.3:1.4: 0xa1
[ 1184.062280] cdc_xr_usb_serial 1-1.3:1.4: 0x20
[ 1184.062283] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.062286] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.062289] cdc_xr_usb_serial 1-1.3:1.4: 0x04
[ 1184.062292] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.062295] cdc_xr_usb_serial 1-1.3:1.4: 0x02
[ 1184.062301] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.062304] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.062307] cdc_xr_usb_serial 1-1.3:1.4: 0x00
[ 1184.062313] cdc_xr_usb_serial 1-1.3:1.4: xr_usb_serial_ctrl_irq - input control lines: dcd- dsr- break- ring- framing- parity- overrun-
[ 1195.866433] cdc_xr_usb_serial 1-1.3:1.4: xr_usb_serial_tty_close
[ 1195.866453] cdc_xr_usb_serial 1-1.3:1.4: xr_usb_serial_port_shutdown
[ 1195.869457] cdc_xr_usb_serial 1-1.3:1.4: xr_usb_serial_ctrl_irq - urb shutting down with status: -2
[ 1195.872573] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.872655] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.872691] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.872718] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.872744] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.872781] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.875877] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.875954] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.875985] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.876011] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.876042] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.879128] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.879198] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.879223] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.879244] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.881682] cdc_xr_usb_serial 1-1.3:1.5: xr_usb_serial_read_bulk_callback - non-zero urb status: -2
[ 1195.881783] cdc_xr_usb_serial 1-1.3:1.4: xr_usb_serial_tty_cleanup

However, the same driver works fine on BSP 4.14, so it seems that there may be a bug in the USB driver code for BSP 5.4. Could you help me fix the issue?

Eddy1_0-1702367997855.png

 

Labels (1)
0 Kudos
Reply
1 Solution
2,107 Views
Eddy1
Contributor V

Thank you for your response. I modified the driver for xr21v1414., and now I can send and receive data successfully.I have attached the modified driver.

View solution in original post

0 Kudos
Reply
3 Replies
2,123 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

Beware of this driver, it works okay when reading data with those errors, but my MX8MM died and rebooted randomly.

  • kernel: [***] usb 1-1-port2: over-current change

That's why I won't risk it and have unloaded the module, if not reading data.

You better try on 6.1v BSP:

https://www.nxp.com/design/design-center/software/embedded-software/i-mx-software/embedded-linux-for...

Regards

 

0 Kudos
Reply
2,108 Views
Eddy1
Contributor V

Thank you for your response. I modified the driver for xr21v1414., and now I can send and receive data successfully.I have attached the modified driver.

0 Kudos
Reply
2,112 Views
Eddy1
Contributor V

hi:

Thank you for your reply. Do you have the xr21v1414 RS485 driver for bsp5.4.3 ?

0 Kudos
Reply