diff options
Diffstat (limited to 'drivers/usb/host/xhci.c')
-rw-r--r-- | drivers/usb/host/xhci.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c index 1e36dbb48366..2983e5dd98bf 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c | |||
@@ -4216,7 +4216,7 @@ int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd, | |||
4216 | } | 4216 | } |
4217 | 4217 | ||
4218 | pm_val &= ~PORT_HIRD_MASK; | 4218 | pm_val &= ~PORT_HIRD_MASK; |
4219 | pm_val |= PORT_HIRD(hird) | PORT_RWE; | 4219 | pm_val |= PORT_HIRD(hird) | PORT_RWE | PORT_L1DS(udev->slot_id); |
4220 | xhci_writel(xhci, pm_val, pm_addr); | 4220 | xhci_writel(xhci, pm_val, pm_addr); |
4221 | pm_val = xhci_readl(xhci, pm_addr); | 4221 | pm_val = xhci_readl(xhci, pm_addr); |
4222 | pm_val |= PORT_HLE; | 4222 | pm_val |= PORT_HLE; |
@@ -4224,7 +4224,7 @@ int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd, | |||
4224 | /* flush write */ | 4224 | /* flush write */ |
4225 | xhci_readl(xhci, pm_addr); | 4225 | xhci_readl(xhci, pm_addr); |
4226 | } else { | 4226 | } else { |
4227 | pm_val &= ~(PORT_HLE | PORT_RWE | PORT_HIRD_MASK); | 4227 | pm_val &= ~(PORT_HLE | PORT_RWE | PORT_HIRD_MASK | PORT_L1DS_MASK); |
4228 | xhci_writel(xhci, pm_val, pm_addr); | 4228 | xhci_writel(xhci, pm_val, pm_addr); |
4229 | /* flush write */ | 4229 | /* flush write */ |
4230 | xhci_readl(xhci, pm_addr); | 4230 | xhci_readl(xhci, pm_addr); |