|
@@ -4216,7 +4216,7 @@ int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd,
|
|
|
}
|
|
|
|
|
|
pm_val &= ~PORT_HIRD_MASK;
|
|
|
- pm_val |= PORT_HIRD(hird) | PORT_RWE;
|
|
|
+ pm_val |= PORT_HIRD(hird) | PORT_RWE | PORT_L1DS(udev->slot_id);
|
|
|
xhci_writel(xhci, pm_val, pm_addr);
|
|
|
pm_val = xhci_readl(xhci, pm_addr);
|
|
|
pm_val |= PORT_HLE;
|
|
@@ -4224,7 +4224,7 @@ int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd,
|
|
|
/* flush write */
|
|
|
xhci_readl(xhci, pm_addr);
|
|
|
} else {
|
|
|
- pm_val &= ~(PORT_HLE | PORT_RWE | PORT_HIRD_MASK);
|
|
|
+ pm_val &= ~(PORT_HLE | PORT_RWE | PORT_HIRD_MASK | PORT_L1DS_MASK);
|
|
|
xhci_writel(xhci, pm_val, pm_addr);
|
|
|
/* flush write */
|
|
|
xhci_readl(xhci, pm_addr);
|