uslcom Input/Output error when using cp2103 on USB3 root hub on FreeBSD 12.2

From: Francois ten Krooden <ftk_at_Nanoteq.com>
Date: Fri, 18 Feb 2022 13:10:40 UTC
Hi

We are running FreeBSD 12.2 on a Kontron ComExpress module (COMe-mAL10).
We have a device with a CP2103 chip (USB-to-serial) connected to the USB3 (xhci) root hub on the module.
This device uses the uslcom driver in FreeBSD.

When we try and communicate with the device connected to the serial side of the CP2103 the message is received and the device responds.
The data however never reaches the FreeBSD host operating system.
After some debugging and using dtrace with the uslcom driver we managed to find that the
"uslcom_read_callback" function is called and the usb_error_t error value passed to the function is 5 (EIO, Input/Output error).

The strange issue is that when the daemon that does the communication is restarted, everything is normal and the communication is successful.

We used the same setup previously on an older ComExpress module, which had a USB2 root hub where we had no problems in communication.

Does anybody have some ideas which we could potentially try to find and resolve this issue.

Kind Regards
Francois


Francois ten Krooden
Principal Developer

[Logo]<http://www.nanoteq.co.za/>

Mobile:+27 82 909 3292 | Office:+27 12 672 7000 | Email: ftk@nanoteq.com<mailto:ftk@nanoteq.com>


Unit C01, Corporate Park 66, 269 Von Willich Avenue, Centurion

www.nanoteq.com<http://www.nanoteq.com>




[Email banner4]



Important Notice:

This e-mail and its contents are subject to the Nanoteq (Pty) Ltd e-mail legal notice available at:
http://www.nanoteq.com/ContactUs/Disclaimers.aspx