diff options
author | Ofer Heifetz <oferh@marvell.com> | 2015-05-04 12:42:42 +0300 |
---|---|---|
committer | Russell King (Oracle) <rmk+kernel@armlinux.org.uk> | 2022-06-21 10:58:08 +0100 |
commit | f52c00eea511c42d5a3ee1901ad9dab547895e31 (patch) | |
tree | 65a0879b8891b4c11c80df1b1098e5759c4a7fbe | |
parent | a3ed309ae79917e4f990b4afa5a451db90c7d3d5 (diff) |
usb: host: xhci: mvebu: add reset on resume quirk
The resume operation of mvebu xHCI host have some issues,
so The XHCI_RESET_ON_RESUME quirk is added for it.
Signed-off-by: Ofer Heifetz <oferh@marvell.com>
Tested-by: Nadav Haklai <nadavh@marvell.com>
Signed-off-by: Grzegorz Jaszczyk <jaz@semihalf.com>
Reviewed-by: Lior Amsalem <alior@marvell.com>
Tested-by: Lior Amsalem <alior@marvell.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
-rw-r--r-- | drivers/usb/host/xhci-mvebu.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/usb/host/xhci-mvebu.c b/drivers/usb/host/xhci-mvebu.c index 60651a50770f..728a51798b11 100644 --- a/drivers/usb/host/xhci-mvebu.c +++ b/drivers/usb/host/xhci-mvebu.c @@ -42,6 +42,14 @@ static void xhci_mvebu_mbus_config(void __iomem *base, } } +static void xhci_mvebu_quirks(struct platform_device *pdev) +{ + struct usb_hcd *hcd = platform_get_drvdata(pdev); + struct xhci_hcd *xhci = hcd_to_xhci(hcd); + + xhci->quirks |= XHCI_RESET_ON_RESUME; +} + int xhci_mvebu_mbus_init_quirk(struct usb_hcd *hcd) { struct device *dev = hcd->self.controller; @@ -71,6 +79,8 @@ int xhci_mvebu_mbus_init_quirk(struct usb_hcd *hcd) */ iounmap(base); + xhci_mvebu_quirks(pdev); + return 0; } |