[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241014121324.GT77519@kernel.org>
Date: Mon, 14 Oct 2024 13:13:24 +0100
From: Simon Horman <horms@...nel.org>
To: Philipp Stanner <pstanner@...hat.com>
Cc: Jens Axboe <axboe@...nel.dk>, Wu Hao <hao.wu@...el.com>,
Tom Rix <trix@...hat.com>, Moritz Fischer <mdf@...nel.org>,
Xu Yilun <yilun.xu@...el.com>, Andy Shevchenko <andy@...nel.org>,
Linus Walleij <linus.walleij@...aro.org>,
Bartosz Golaszewski <brgl@...ev.pl>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Bjorn Helgaas <bhelgaas@...gle.com>,
Richard Cochran <richardcochran@...il.com>,
Damien Le Moal <dlemoal@...nel.org>, Hannes Reinecke <hare@...e.de>,
Al Viro <viro@...iv.linux.org.uk>, Keith Busch <kbusch@...nel.org>,
Li Zetao <lizetao1@...wei.com>, linux-block@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-fpga@...r.kernel.org,
linux-gpio@...r.kernel.org, netdev@...r.kernel.org,
linux-pci@...r.kernel.org,
Bartosz Golaszewski <bartosz.golaszewski@...aro.org>
Subject: Re: [PATCH v7 4/5] gpio: Replace deprecated PCI functions
On Mon, Oct 14, 2024 at 09:53:25AM +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()").
>
> Replace those functions with calls to pcim_iomap_region().
>
> Signed-off-by: Philipp Stanner <pstanner@...hat.com>
> Reviewed-by: Andy Shevchenko <andy@...nel.org>
> Acked-by: Bartosz Golaszewski <bartosz.golaszewski@...aro.org>
> ---
> drivers/gpio/gpio-merrifield.c | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpio/gpio-merrifield.c b/drivers/gpio/gpio-merrifield.c
> index 421d7e3a6c66..274afcba31e6 100644
> --- a/drivers/gpio/gpio-merrifield.c
> +++ b/drivers/gpio/gpio-merrifield.c
> @@ -78,24 +78,24 @@ static int mrfld_gpio_probe(struct pci_dev *pdev, const struct pci_device_id *id
> if (retval)
> return retval;
>
> - retval = pcim_iomap_regions(pdev, BIT(1) | BIT(0), pci_name(pdev));
> - if (retval)
> - return dev_err_probe(dev, retval, "I/O memory mapping error\n");
> -
> - base = pcim_iomap_table(pdev)[1];
> + base = pcim_iomap_region(pdev, 1, pci_name(pdev));
> + if (IS_ERR(base))
> + return dev_err_probe(dev, PTR_ERR(base), "I/O memory mapping error\n");
>
> irq_base = readl(base + 0 * sizeof(u32));
> gpio_base = readl(base + 1 * sizeof(u32));
>
> /* Release the IO mapping, since we already get the info from BAR1 */
> - pcim_iounmap_regions(pdev, BIT(1));
> + pcim_iounmap_region(pdev, 1);
>
> priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
> if (!priv)
> return -ENOMEM;
>
> priv->dev = dev;
> - priv->reg_base = pcim_iomap_table(pdev)[0];
> + priv->reg_base = pcim_iomap_region(pdev, 0, pci_name(pdev));
> + if (IS_ERR(priv->reg_base))
> + return dev_err_probe(dev, PTR_ERR(base), "I/O memory mapping error\n");
Hi Philipp,
There seems to be a mismatch in the use of priv->reg_base and base above.
Should the above use PTR_ERR(priv->reg_base) instead of PTR_ERR(base)?
>
> priv->pin_info.pin_ranges = mrfld_gpio_ranges;
> priv->pin_info.nranges = ARRAY_SIZE(mrfld_gpio_ranges);
> --
> 2.46.2
>
>
Powered by blists - more mailing lists