Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

PCI hotplug: pciehp: remove unnecessary wait after turning power off

The pciehp driver waits for 1000 msec after turning power off to make
sure the power has been completely removed. But this 1000 msec wait is
not needed if a slot doesn't implement power control because software
cannot control the power. Power will be automatically removed at adapter
removal time on such a slot

Tested-by: "Phil Endecott" <phil_pibbu_endecott@chezphil.org>
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

authored by

Kenji Kaneshige and committed by
Jesse Barnes
c7b4fee3 9eff02e2

+12 -14
+12 -14
drivers/pci/hotplug/pciehp_ctrl.c
··· 178 178 "Issue of Slot Power Off command failed\n"); 179 179 return; 180 180 } 181 + /* 182 + * After turning power off, we must wait for at least 1 second 183 + * before taking any action that relies on power having been 184 + * removed from the slot/adapter. 185 + */ 186 + msleep(1000); 181 187 } 182 - 183 - /* 184 - * After turning power off, we must wait for at least 1 second 185 - * before taking any action that relies on power having been 186 - * removed from the slot/adapter. 187 - */ 188 - msleep(1000); 189 188 190 189 if (PWR_LED(ctrl)) 191 190 pslot->hpc_ops->green_led_off(pslot); ··· 285 286 "Issue of Slot Disable command failed\n"); 286 287 return retval; 287 288 } 289 + /* 290 + * After turning power off, we must wait for at least 1 second 291 + * before taking any action that relies on power having been 292 + * removed from the slot/adapter. 293 + */ 294 + msleep(1000); 288 295 } 289 - 290 - /* 291 - * After turning power off, we must wait for at least 1 second 292 - * before taking any action that relies on power having been 293 - * removed from the slot/adapter. 294 - */ 295 - msleep(1000); 296 296 297 297 if (PWR_LED(ctrl)) 298 298 /* turn off Green LED */