diff options
author | Alex Chiang <achiang@hp.com> | 2009-03-07 23:46:49 -0500 |
---|---|---|
committer | Jesse Barnes <jbarnes@virtuousgeek.org> | 2009-03-20 13:48:16 -0400 |
commit | 745be2e700cdddd5da4e402854a484242c3628df (patch) | |
tree | e29464050d8b4102fddf7d89d5f3dab7115fcbaf /drivers/pci | |
parent | 9efb5fe1b80a45130ba659ba755f24534c83301b (diff) |
PCIe: portdrv: call pci_disable_device during remove
The PCIe port driver calls pci_enable_device when registering
ports, but never calls pci_disable_device during removal.
Acked-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Alex Chiang <achiang@hp.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/pcie/portdrv_core.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/pci/pcie/portdrv_core.c b/drivers/pci/pcie/portdrv_core.c index 5a5bfe7cdf5f..e39982503863 100644 --- a/drivers/pci/pcie/portdrv_core.c +++ b/drivers/pci/pcie/portdrv_core.c | |||
@@ -473,6 +473,7 @@ void pcie_port_device_remove(struct pci_dev *dev) | |||
473 | struct pcie_port_data *port_data = pci_get_drvdata(dev); | 473 | struct pcie_port_data *port_data = pci_get_drvdata(dev); |
474 | 474 | ||
475 | device_for_each_child(&dev->dev, NULL, remove_iter); | 475 | device_for_each_child(&dev->dev, NULL, remove_iter); |
476 | pci_disable_device(dev); | ||
476 | 477 | ||
477 | switch (port_data->port_irq_mode) { | 478 | switch (port_data->port_irq_mode) { |
478 | case PCIE_PORT_MSIX_MODE: | 479 | case PCIE_PORT_MSIX_MODE: |