Re: [PATCH v4 5/7] ethernet: cavium: Replace deprecated PCI functions
From: Philipp Stanner <hidden>
Date: 2024-08-28 06:57:07
Also in:
linux-block, linux-fpga, linux-gpio, linux-pci, lkml, virtualization
On Tue, 2024-08-27 at 20:56 +0200, Philipp Stanner wrote:
quoted hunk ↗ jump to hunk
pcim_iomap_regions() and pcim_iomap_table() have been deprecated by the PCI subsystem in commit e354bb84a4c1 ("PCI: Deprecate pcim_iomap_table(), pcim_iomap_regions_request_all()"). Furthermore, the driver contains an unneeded call to pcim_iounmap_regions() in its probe() function's error unwind path. Replace the deprecated PCI functions with pcim_iomap_region(). Remove the unnecessary call to pcim_iounmap_regions(). Signed-off-by: Philipp Stanner <redacted> --- drivers/net/ethernet/cavium/common/cavium_ptp.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)diff --git a/drivers/net/ethernet/cavium/common/cavium_ptp.cb/drivers/net/ethernet/cavium/common/cavium_ptp.c index 9fd717b9cf69..914ccc8eaf5e 100644--- a/drivers/net/ethernet/cavium/common/cavium_ptp.c +++ b/drivers/net/ethernet/cavium/common/cavium_ptp.c@@ -239,12 +239,11 @@ static int cavium_ptp_probe(struct pci_dev*pdev, if (err) goto error_free; - err = pcim_iomap_regions(pdev, 1 << PCI_PTP_BAR_NO, pci_name(pdev)); + clock->reg_base = pcim_iomap_region(pdev, PCI_PTP_BAR_NO, pci_name(pdev)); + err = PTR_ERR_OR_ZERO(clock->reg_base); if (err) goto error_free; - clock->reg_base = pcim_iomap_table(pdev)[PCI_PTP_BAR_NO]; - spin_lock_init(&clock->spin_lock); cc = &clock->cycle_counter;@@ -292,7 +291,6 @@ static int cavium_ptp_probe(struct pci_dev *pdev,clock_cfg = readq(clock->reg_base + PTP_CLOCK_CFG); clock_cfg &= ~PTP_CLOCK_CFG_PTP_EN; writeq(clock_cfg, clock->reg_base + PTP_CLOCK_CFG); - pcim_iounmap_regions(pdev, 1 << PCI_PTP_BAR_NO);
I think I removed that by accident – thinking about it, we should not remove it since the driver later returns 0 from its probe(). So we should not keep blocking the region. Has to be addressed in v5. P.
error_free: devm_kfree(dev, clock);