]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
mmc: cavium-thunderx: Use non-hybrid PCI devres API
authorPhilipp Stanner <phasta@kernel.org>
Thu, 17 Apr 2025 09:27:43 +0000 (11:27 +0200)
committerUlf Hansson <ulf.hansson@linaro.org>
Wed, 14 May 2025 14:59:18 +0000 (16:59 +0200)
cavium-thunderx enables its PCI device with pcim_enable_device(). This,
implicitly, switches the function pci_request_regions() into managed
mode, where it becomes a devres function.

The PCI subsystem wants to remove this hybrid nature from its
interfaces. To do so, users of the aforementioned combination of
functions must be ported to non-hybrid functions.

Moreover, since both functions are already managed in this driver, the
calls to pci_release_regions() are unnecessary.

Remove the calls to pci_release_regions().

Replace the call to sometimes-managed pci_request_regions() with one to
the always-managed pcim_request_all_regions().

Signed-off-by: Philipp Stanner <phasta@kernel.org>
Link: https://lore.kernel.org/r/20250417092742.27887-2-phasta@kernel.org
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/cavium-thunderx.c

index 2e2ff984f0b3785e32633f8a205146203a5b56dc..1373deb3f531e19dbdb3138b9b9bac5d36728326 100644 (file)
@@ -72,7 +72,7 @@ static int thunder_mmc_probe(struct pci_dev *pdev,
        if (ret)
                return ret;
 
-       ret = pci_request_regions(pdev, KBUILD_MODNAME);
+       ret = pcim_request_all_regions(pdev, KBUILD_MODNAME);
        if (ret)
                return ret;
 
@@ -164,7 +164,6 @@ error:
                }
        }
        clk_disable_unprepare(host->clk);
-       pci_release_regions(pdev);
        return ret;
 }
 
@@ -183,7 +182,6 @@ static void thunder_mmc_remove(struct pci_dev *pdev)
        writeq(dma_cfg, host->dma_base + MIO_EMM_DMA_CFG(host));
 
        clk_disable_unprepare(host->clk);
-       pci_release_regions(pdev);
 }
 
 static const struct pci_device_id thunder_mmc_id_table[] = {