cxl: Use to_pci_driver() instead of pci_dev->driver
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Tue, 12 Oct 2021 21:03:39 +0000 (16:03 -0500)
committerBjorn Helgaas <bhelgaas@google.com>
Mon, 18 Oct 2021 14:20:15 +0000 (09:20 -0500)
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.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
drivers/misc/cxl/guest.c
drivers/misc/cxl/pci.c

index 94e29ba..9d485c9 100644 (file)
@@ -27,7 +27,7 @@ static void pci_error_handlers(struct cxl_afu *afu,
                return;
 
        list_for_each_entry(afu_dev, &afu->phb->bus->devices, bus_list) {
-               afu_drv = afu_dev->driver;
+               afu_drv = to_pci_driver(afu_dev->dev.driver);
                if (!afu_drv)
                        continue;
 
index 27393b7..3de0aea 100644 (file)
@@ -1807,7 +1807,7 @@ static pci_ers_result_t cxl_vphb_error_detected(struct cxl_afu *afu,
                return result;
 
        list_for_each_entry(afu_dev, &afu->phb->bus->devices, bus_list) {
-               afu_drv = afu_dev->driver;
+               afu_drv = to_pci_driver(afu_dev->dev.driver);
                if (!afu_drv)
                        continue;
 
@@ -2034,7 +2034,7 @@ static pci_ers_result_t cxl_pci_slot_reset(struct pci_dev *pdev)
                         * shouldn't start new work until we call
                         * their resume function.
                         */
-                       afu_drv = afu_dev->driver;
+                       afu_drv = to_pci_driver(afu_dev->dev.driver);
                        if (!afu_drv)
                                continue;
 
@@ -2083,7 +2083,7 @@ static void cxl_pci_resume(struct pci_dev *pdev)
                        continue;
 
                list_for_each_entry(afu_dev, &afu->phb->bus->devices, bus_list) {
-                       afu_drv = afu_dev->driver;
+                       afu_drv = to_pci_driver(afu_dev->dev.driver);
                        if (!afu_drv)
                                continue;