
On 06/16/2017 09:19 AM, Marek Vasut wrote:
On 06/16/2017 03:31 PM, Bin Meng wrote:
It was observed that on Intel MinnowMax board, when xHCI is enabled in the BayTrail SoC, with a USB 3.0 device connected to the bottom USB 3.0 port (mapped to xHCI root port #7), its PORTSC register is always 0x201203 (CCS = 1, CSC = 0). The root cause of such behavior is unknown yet. Connect status change bit is set on the same port with a USB 2.0 device (mapped to xHCI port #1, which is a different port on the root hub).
With current logic in usb_scan_port(), the enumeration process will abort if it does not detect a connect status change on a hub port. However since a device connection status is correctly reported, the enumeration process can still continue.
With this change, USB device connected to the bottom blue port on MinnowMax board can be enumerated under either SS or HS mode.
Signed-off-by: Bin Meng bmeng.cn@gmail.com
I'd be slightly concerned this can break some other controllers, like the DWC2 . CCing Dinh, maybe he can test it on SoCFPGA.
I tested this patch on a SoCFPGA Atlas/DE0-Nano board, and USB is still working fine.
Feel free to add:
Tested-by: Dinh Nguyen dinguyen@kernel.org