Message ID | 20240827185616.45094-6-pstanner@redhat.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | PCI: Remove pcim_iounmap_regions() | expand |
On Tue, 2024-08-27 at 20:56 +0200, Philipp Stanner wrote: > 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 <pstanner@redhat.com> > --- > 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.c > b/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);
diff --git a/drivers/net/ethernet/cavium/common/cavium_ptp.c b/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); error_free: devm_kfree(dev, clock);
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 <pstanner@redhat.com> --- drivers/net/ethernet/cavium/common/cavium_ptp.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)