[PATCH v3 2/2] USB:ehci:fix Kunpeng920 ehci hardware problem

From: Longfang Liu
Date: Thu Apr 08 2021 - 23:03:10 EST


Kunpeng920's EHCI controller does not have SBRN register.
Reading the SBRN register when the controller driver is
initialized will get 0.

When rebooting the EHCI driver, ehci_shutdown() will be called.
if the sbrn flag is 0, ehci_shutdown() will return directly.
The sbrn flag being 0 will cause the EHCI interrupt signal to
not be turned off after reboot. this interrupt that is not closed
will cause an exception to the device sharing the interrupt.

Therefore, the EHCI controller of kunpeng920 needs to be added
to the whitelist without SBRN register.

Signed-off-by: Longfang Liu <liulongfang@xxxxxxxxxx>
---
drivers/usb/host/ehci-pci.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/usb/host/ehci-pci.c b/drivers/usb/host/ehci-pci.c
index f7f3156..3690e62 100644
--- a/drivers/usb/host/ehci-pci.c
+++ b/drivers/usb/host/ehci-pci.c
@@ -53,6 +53,8 @@ static const struct ehci_nosbrn {
} ehci_nosbrn_table[] = {
/* STMICRO ConneXT has no sbrn register */
{PCI_VENDOR_ID_STMICRO, PCI_DEVICE_ID_STMICRO_USB_HOST},
+ /* HUAWEI Kunpeng920 HiSilicon USB EHCI has no sbrn register */
+ {PCI_VENDOR_ID_HUAWEI, 0xa239},
{},
};

--
2.8.1