summaryrefslogtreecommitdiff
path: root/drivers/pci/devres.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pci/devres.c')
-rw-r--r--drivers/pci/devres.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/drivers/pci/devres.c b/drivers/pci/devres.c
index 4ac662efc6ac..31ebda1db1b0 100644
--- a/drivers/pci/devres.c
+++ b/drivers/pci/devres.c
@@ -407,7 +407,7 @@ static void pcim_release(struct device *gendev, void *res)
if (this->restore_intx)
pci_intx(dev, this->orig_intx);
- if (pci_is_enabled(dev) && !this->pinned)
+ if (pci_is_enabled(dev) && !dev->pinned)
pci_disable_device(dev);
}
@@ -463,18 +463,12 @@ EXPORT_SYMBOL(pcim_enable_device);
* pcim_pin_device - Pin managed PCI device
* @pdev: PCI device to pin
*
- * Pin managed PCI device @pdev. Pinned device won't be disabled on
- * driver detach. @pdev must have been enabled with
- * pcim_enable_device().
+ * Pin managed PCI device @pdev. Pinned device won't be disabled on driver
+ * detach. @pdev must have been enabled with pcim_enable_device().
*/
void pcim_pin_device(struct pci_dev *pdev)
{
- struct pci_devres *dr;
-
- dr = find_pci_dr(pdev);
- WARN_ON(!dr || !pci_is_enabled(pdev));
- if (dr)
- dr->pinned = 1;
+ pdev->pinned = true;
}
EXPORT_SYMBOL(pcim_pin_device);