Commit 4141127c authored by Uwe Kleine-König's avatar Uwe Kleine-König Committed by Bjorn Helgaas

powerpc/eeh: Use to_pci_driver() instead of pci_dev->driver

Struct pci_driver contains a struct device_driver, so for PCI devices, it's
easy to convert a device_driver * to a pci_driver * with to_pci_driver().
The device_driver * is in struct device, so we don't need to also keep
track of the pci_driver * in struct pci_dev.

Replace pdev->driver with to_pci_driver().  This is a step toward removing
pci_dev->driver.

[bhelgaas: split to separate patch]
Link: https://lore.kernel.org/r/20211004125935.2300113-11-u.kleine-koenig@pengutronix.deSigned-off-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
parent 97918f79
...@@ -104,13 +104,13 @@ static bool eeh_edev_actionable(struct eeh_dev *edev) ...@@ -104,13 +104,13 @@ static bool eeh_edev_actionable(struct eeh_dev *edev)
*/ */
static inline struct pci_driver *eeh_pcid_get(struct pci_dev *pdev) static inline struct pci_driver *eeh_pcid_get(struct pci_dev *pdev)
{ {
if (!pdev || !pdev->driver) if (!pdev || !pdev->dev.driver)
return NULL; return NULL;
if (!try_module_get(pdev->driver->driver.owner)) if (!try_module_get(pdev->dev.driver->owner))
return NULL; return NULL;
return pdev->driver; return to_pci_driver(pdev->dev.driver);
} }
/** /**
...@@ -122,10 +122,10 @@ static inline struct pci_driver *eeh_pcid_get(struct pci_dev *pdev) ...@@ -122,10 +122,10 @@ static inline struct pci_driver *eeh_pcid_get(struct pci_dev *pdev)
*/ */
static inline void eeh_pcid_put(struct pci_dev *pdev) static inline void eeh_pcid_put(struct pci_dev *pdev)
{ {
if (!pdev || !pdev->driver) if (!pdev || !pdev->dev.driver)
return; return;
module_put(pdev->driver->driver.owner); module_put(pdev->dev.driver->owner);
} }
/** /**
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment