Overview & identity
Class 0c0320 describes the EHCI programming interface. A full-/low-speed peripheral may appear under a companion controller or through a hub translator rather than as a failed EHCI device.
This is an explicit class, transport or driver-context profile. It is not an exact numeric product match.
A numeric match establishes a candidate family within the reviewed evidence. Marketing names, board variants, subsystem conditions and successful operation remain separate questions.
Driver & binding
ehci_pci supplies the PCI glue and ehci_hcd the controller logic. The source also deliberately bypasses selected IDs handled by another implementation, so the generic class is a candidate rather than a forced binding.
ehci_pci— kernel driver/module candidateehci_hcd— kernel driver/module candidate
Firmware
No host payload established here
No external firmware filename was established in the checked driver path. This does not describe firmware stored inside the device.
Read-only diagnostics
Run one displayed command at a time. Replace uppercase placeholders with the affected device, interface or module from your own output. Commands are never executed here. Read-only output can still contain private identifiers.
Inspect the PCI function and binding
lspci -nnk -s BDFReplace BDF with the complete address, for example 0000:00:14.0. This read-only query needs pciutils and normally no sudo. “Kernel driver in use” is observed binding; “Kernel modules” lists candidates.
Inspect interfaces and negotiated speed
lsusb -tThis read-only usbutils query normally needs no sudo. Driver belongs to the displayed interface, while speed is the negotiated connection. Other interfaces of the same physical device may use other drivers.
Limitations & related issues
Seeing 12M or 1.5M beside a keyboard is not a slow-drive diagnosis. EHCI does not imply SuperSpeed support; compare the specific peripheral branch before changing cables or drivers.
These guides are linked for relevant observations, not as known defects of every device in this family.
- A device callback aborts system suspend · First documented next step
- Kernel module was built for a different kernel · First documented next step
Choose a hardware diagnostic workflow · Inspect a log excerpt in Fix Lab
References
Source review records a checked implementation or document, not a reproduced hardware test. Version-specific tables do not establish a minimum kernel or guaranteed operation.
- Linux: drivers/usb/host/ehci-pci.c
Reviewed upstream source
PCI_DEVICE_CLASS(PCI_CLASS_SERIAL_USB_EHCI - Linux: include/linux/pci_ids.h
Reviewed upstream source
PCI_CLASS_SERIAL_USB_UHCI - Linux: drivers/usb/host/Kconfig
Project or distribution documentation
config USB_EHCI_HCD