FX3 Device Enumeration with Ubuntu 20.04

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
BruceAshford
Level 1
Level 1
First reply posted First question asked Welcome!

I'm feeling a little out of my depth here as I'm a System Administrator rather than a seasoned Electronics Engineer, I hope this question makes sense...

I am trying to upgrade two machines, that each have several Cypress Westbrige devices attached to them, from Ubuntu 16.04 to Ubuntu 20.04. With Ubuntu 16.04, all devices enumerate correctly first as 04b4:00f3 and then go on to download their custom firmware, detach and reattach. However, with 20.04 I get the following errors:

 

 

Feb 23 12:05:47 master kernel: usb 1-6-port1: status 0101, change 0000, 12 Mb/s
Feb 23 12:05:47 master kernel: usb 1-6-port1: indicator auto status 0
Feb 23 12:05:47 master kernel: usb 1-6.1: new full-speed USB device number 3 using xhci_hcd
Feb 23 12:05:47 master kernel: usb 1-6.1: device descriptor read/64, error -32
Feb 23 12:05:47 master kernel: usb 1-6.1: device descriptor read/64, error -32
Feb 23 12:05:47 master kernel: usb 1-6.1: new full-speed USB device number 4 using xhci_hcd
Feb 23 12:05:47 master kernel: usb 1-6.1: device descriptor read/64, error -32
Feb 23 12:05:48 master kernel: usb 1-6.1: device descriptor read/64, error -32
Feb 23 12:05:48 master kernel: usb 1-6-port1: attempt power cycle
Feb 23 12:05:48 master kernel: usb 1-6-port1: not enabled, trying reset again...
Feb 23 12:05:48 master kernel: usb 1-6.1: new full-speed USB device number 5 using xhci_hcd
Feb 23 12:05:48 master kernel: usb 1-6.1: Device not responding to setup address.
Feb 23 12:05:48 master kernel: usb 1-6.1: Device not responding to setup address.
Feb 23 12:05:49 master kernel: usb 1-6.1: device not accepting address 5, error -71
Feb 23 12:05:49 master kernel: usb 1-6.1: new full-speed USB device number 6 using xhci_hcd
Feb 23 12:05:49 master kernel: usb 1-6.1: Device not responding to setup address.
Feb 23 12:05:49 master kernel: usb 1-6.1: Device not responding to setup address.
Feb 23 12:05:49 master kernel: usb 1-6.1: device not accepting address 6, error -71
Feb 23 12:05:49 master kernel: usb 1-6-port1: unable to enumerate USB device

 

 

Two other similar devices connected to this machine at 1-6.3 and 1-6.4 show identical errors.

I have tried:

  • using 'uhubctl' to power cycle the ports of the 1-6 hub
  • using 'uhubctl' to reset each of the ports on the hub
  • adding the 'usbcore.autosuspend=-1' kernel parameter (after reading your KBA222372 - Trouble Shooting Guide for the FX3/FX3S/CX3 Enumeration)
  • adding extra time for the device descriptor read with kernel parameter 'usbcore.initial_descriptor_timeout=10000' (10s rather than the default 5s)
  • setting various combinations of 'usbcore.use_both_schemes' and 'usbcore.old_scheme_first' to change method the kernel uses to initialise USB device

Have any other users experienced similar problems Cypress FX3 based devices when running Ubuntu 20.04?

Thx

0 Likes
1 Solution

Hello,

Glad to hear that the enumeration is successful on both the PC

We have seen post with similar issue https://unix.stackexchange.com/questions/72625/why-is-usb-not-working-in-linux-when-it-works-in-uefi.... You can check the BIOS settings as directed in the post, in case that helps.

Regards,
Rashi

View solution in original post

0 Likes
5 Replies
Rashi_Vatsa
Moderator
Moderator
Moderator
5 likes given 500 solutions authored 1000 replies posted

Hello,

From the description I understand that FX3 is used in USB boot and custom firmware is programmed over USB

Please let me know if the device can be connected to another host with Ubuntu 20.04.  Please let me know if other USB devices like mouse and keyboard are detected on the ubuntu 20.04. If other usb devices are recognized and only fx3 is not recognized can you share the snippet after running following command

-lsusb - v

Also confirm if FX3 is detected every time it is connected to PC with Ubuntu 16.04 just to confirm if the problem is not with the FX3 hardware.

Please let us know which kernel is being used. After searching through web, these are some cases with similar problem https://askubuntu.com/questions/1274890/ubuntu-20-04-keyboard-not-working  https://askubuntu.com/questions/1287589/usb-ports-stopped-working-on-ubuntu-20-04-1 

 

Regards,
Rashi
0 Likes

Hi Rashi

Thanks for your feedback - it doesn't sound like this is a known problem.

The two machines I have Ubuntu 20.04 installed on are running kernel 5.8.0-41 and 5.8.0-43. One is running headless so does not have any other USB devices. The other has a mouse, keyboard and a USB stick connected and they are all detected correctly.

As you suggest, we will revert to Ubuntu 16.04 and verify that the devices are still working correctly with this OS. I will update the case again once we have done this.

Regards

Bruce

0 Likes
Rashi_Vatsa
Moderator
Moderator
Moderator
5 likes given 500 solutions authored 1000 replies posted

Hello Bruce,

One is running headless so does not have any other USB devices. The other has a mouse, keyboard and a USB stick connected and they are all detected correctly.

>> Can you please let me know with which kernel version is the problem seen. Also confirm, if the issue is seen when only FX3 is connected to that PC (the non working kernel ) i.e. without any other USB devices connected like mouse, keyboard

Regards,
Rashi
0 Likes
BruceAshford
Level 1
Level 1
First reply posted First question asked Welcome!

These two machines have been reinstalled and are now working correctly. We are continuing to investigate but the focus has shifted from Ubuntu 20.04 and kernel 5.8.0 to the way we provide power to the FX3 based devices.

Thank you for your help.

0 Likes

Hello,

Glad to hear that the enumeration is successful on both the PC

We have seen post with similar issue https://unix.stackexchange.com/questions/72625/why-is-usb-not-working-in-linux-when-it-works-in-uefi.... You can check the BIOS settings as directed in the post, in case that helps.

Regards,
Rashi
0 Likes