]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
USB: OHCI: Add quirk for LS7A OHCI controller (rev 0x02)
authorHuacai Chen <chenhuacai@loongson.cn>
Fri, 28 Mar 2025 04:00:59 +0000 (12:00 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 2 May 2025 05:44:32 +0000 (07:44 +0200)
commita143ed263d5122cd2f1d5cde887aca5de2fb3493
treef7cc2bb409b3c9df0ea02256a8afef567b3fd990
parent3ec61fa704a49c9ddb9f4c2694121f125db84be0
USB: OHCI: Add quirk for LS7A OHCI controller (rev 0x02)

commit bcb60d438547355b8f9ad48645909139b64d3482 upstream.

The OHCI controller (rev 0x02) under LS7A PCI host has a hardware flaw.
MMIO register with offset 0x60/0x64 is treated as legacy PS2-compatible
keyboard/mouse interface, which confuse the OHCI controller. Since OHCI
only use a 4KB BAR resource indeed, the LS7A OHCI controller's 32KB BAR
is wrapped around (the second 4KB BAR space is the same as the first 4KB
internally). So we can add an 4KB offset (0x1000) to the OHCI registers
(from the PCI BAR resource) as a quirk.

Cc: stable <stable@kernel.org>
Suggested-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Alan Stern <stern@rowland.harvard.edu>
Tested-by: Mingcong Bai <baimingcong@loongson.cn>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
Link: https://lore.kernel.org/r/20250328040059.3672979-1-chenhuacai@loongson.cn
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/ohci-pci.c