aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/pci/hotplug/pciehp_ctrl.c14
-rw-r--r--drivers/pci/hotplug/pciehp_hpc.c7
2 files changed, 14 insertions, 7 deletions
diff --git a/drivers/pci/hotplug/pciehp_ctrl.c b/drivers/pci/hotplug/pciehp_ctrl.c
index 7ad8a7dbc1a4..96a5d55a4983 100644
--- a/drivers/pci/hotplug/pciehp_ctrl.c
+++ b/drivers/pci/hotplug/pciehp_ctrl.c
@@ -174,6 +174,13 @@ static void set_slot_off(struct controller *ctrl, struct slot * pslot)
174 } 174 }
175 } 175 }
176 176
177 /*
178 * After turning power off, we must wait for at least 1 second
179 * before taking any action that relies on power having been
180 * removed from the slot/adapter.
181 */
182 msleep(1000);
183
177 if (PWR_LED(ctrl)) 184 if (PWR_LED(ctrl))
178 pslot->hpc_ops->green_led_off(pslot); 185 pslot->hpc_ops->green_led_off(pslot);
179 186
@@ -277,6 +284,13 @@ static int remove_board(struct slot *p_slot)
277 } 284 }
278 } 285 }
279 286
287 /*
288 * After turning power off, we must wait for at least 1 second
289 * before taking any action that relies on power having been
290 * removed from the slot/adapter.
291 */
292 msleep(1000);
293
280 if (PWR_LED(ctrl)) 294 if (PWR_LED(ctrl))
281 /* turn off Green LED */ 295 /* turn off Green LED */
282 p_slot->hpc_ops->green_led_off(p_slot); 296 p_slot->hpc_ops->green_led_off(p_slot);
diff --git a/drivers/pci/hotplug/pciehp_hpc.c b/drivers/pci/hotplug/pciehp_hpc.c
index eb631af94738..79f104963166 100644
--- a/drivers/pci/hotplug/pciehp_hpc.c
+++ b/drivers/pci/hotplug/pciehp_hpc.c
@@ -754,13 +754,6 @@ static int hpc_power_off_slot(struct slot * slot)
754 } 754 }
755 dbg("%s: SLOTCTRL %x write cmd %x\n", 755 dbg("%s: SLOTCTRL %x write cmd %x\n",
756 __func__, ctrl->cap_base + SLOTCTRL, slot_cmd); 756 __func__, ctrl->cap_base + SLOTCTRL, slot_cmd);
757
758 /*
759 * After turning power off, we must wait for at least 1 second
760 * before taking any action that relies on power having been
761 * removed from the slot/adapter.
762 */
763 msleep(1000);
764 out: 757 out:
765 if (changed) 758 if (changed)
766 pcie_unmask_bad_dllp(ctrl); 759 pcie_unmask_bad_dllp(ctrl);