Re: Strange problem with USB device

From: Alan Stern
Date: Tue Jun 08 2021 - 22:12:43 EST


On Tue, Jun 08, 2021 at 03:56:11PM -0500, Larry Finger wrote:
> On 6/8/21 1:53 PM, Alan Stern wrote:
> > I don't get it. If this is a PCIe device, why should it appear
> > on a USB bus? Wouldn't you expect it to show up as a PCI device
> > on a PCI bus instead?
> >
>
> I do not know the internal details, but Realtek packages a PCIe wifi
> device and a bluetooth USB device in the same package. Intel does the
> same thing on my Wireless 7260.
>
> My lsusb shows:
> Bus 003 Device 002: ID 8087:8000 Intel Corp. Integrated Rate Matching Hub
> Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
> Bus 001 Device 002: ID 8087:8008 Intel Corp. Integrated Rate Matching Hub
> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
> Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
> Bus 002 Device 004: ID 8087:07dc Intel Corp. Bluetooth wireless interface
> Bus 002 Device 003: ID 0bda:c822 Realtek Semiconductor Corp. Bluetooth Radio
> Bus 002 Device 002: ID 04f2:b3b2 Chicony Electronics Co., Ltd TOSHIBA
> Web Camera - FHD
> Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
>
> I have no devices plugged into a USB port.

Okay, now I get the picture. The Intel PCIe card contains an
EHCI USB host controller plus a couple of on-board USB Bluetooth
devices and an on-board USB webcam, in addition to the PCIe wifi
device.

Which means you're looking at the problem all wrong. It isn't a
USB problem at all; it's a PCI problem. Namely, why doesn't the
system detect the USB host controller on the PCIe board?

I have added the PCI maintainer and mailing list to the CC.
Maybe they can help shed some light.

The original Suse Bugzilla report:

https://bugzilla.suse.com/show_bug.cgi?id=1186889

shows the Realtek board at PCI address 0000:03:00.0, but there's
no mention of a USB host controller on that board. The only host
controller on the system is the one at address 0000:00:14.0,
which is xHCI and is directly on the motherboard.

Furthermore, there's no trace of any mention of an EHCI USB host
controller in the system log. So maybe the board has to be told
somehow to turn that controller on before it will show up, and
the rtw_8822ce driver isn't giving the appropriate order.

Can the bug reporter get information from Windows about the USB
host controllers, and in particular, the one on the RTL8822
board?

Alan Stern