[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160420150258.GH28402@c203.arch.suse.de>
Date: Wed, 20 Apr 2016 17:02:58 +0200
From: Johannes Thumshirn <jthmshirn@...e.de>
To: Andreas Werner <andreas.werner@....de>
Cc: morbidrsa@...il.com, jthumshirn@...e.de,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/2] mcb: Replace ioremap and request_region with the
devm version
On Wed, Apr 20, 2016 at 03:17:55PM +0200, Andreas Werner wrote:
> Replaced ioremap with devm_ioremap and request_mem_region with
> devm_request_mem_region. This makes the code much more cleaner.
>
> Signed-off-by: Andreas Werner <andreas.werner@....de>
> ---
> drivers/mcb/mcb-pci.c | 19 +++++++------------
> 1 file changed, 7 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/mcb/mcb-pci.c b/drivers/mcb/mcb-pci.c
> index 67d5e7d..99dd9db 100644
> --- a/drivers/mcb/mcb-pci.c
> +++ b/drivers/mcb/mcb-pci.c
> @@ -55,19 +55,20 @@ static int mcb_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
> goto out_disable;
> }
>
> - res = request_mem_region(priv->mapbase, CHAM_HEADER_SIZE,
> - KBUILD_MODNAME);
> + res = devm_request_mem_region(&pdev->dev, priv->mapbase,
> + CHAM_HEADER_SIZE,
> + KBUILD_MODNAME);
> if (!res) {
> dev_err(&pdev->dev, "Failed to request PCI memory\n");
> ret = -EBUSY;
> goto out_disable;
> }
>
> - priv->base = ioremap(priv->mapbase, CHAM_HEADER_SIZE);
> + priv->base = devm_ioremap(&pdev->dev, priv->mapbase, CHAM_HEADER_SIZE);
> if (!priv->base) {
> dev_err(&pdev->dev, "Cannot ioremap\n");
> ret = -ENOMEM;
> - goto out_release;
> + goto out_disable;
> }
>
> flags = pci_resource_flags(pdev, 0);
> @@ -75,7 +76,7 @@ static int mcb_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
> ret = -ENOTSUPP;
> dev_err(&pdev->dev,
> "IO mapped PCI devices are not supported\n");
> - goto out_iounmap;
> + goto out_disable;
> }
>
> pci_set_drvdata(pdev, priv);
> @@ -83,7 +84,7 @@ static int mcb_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
> priv->bus = mcb_alloc_bus(&pdev->dev);
> if (IS_ERR(priv->bus)) {
> ret = PTR_ERR(priv->bus);
> - goto out_iounmap;
> + goto out_disable;
> }
>
> priv->bus->get_irq = mcb_pci_get_irq;
> @@ -101,10 +102,6 @@ static int mcb_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
>
> out_mcb_bus:
> mcb_release_bus(priv->bus);
> -out_iounmap:
> - iounmap(priv->base);
> -out_release:
> - pci_release_region(pdev, 0);
> out_disable:
> pci_disable_device(pdev);
> return ret;
> @@ -116,8 +113,6 @@ static void mcb_pci_remove(struct pci_dev *pdev)
>
> mcb_release_bus(priv->bus);
>
> - iounmap(priv->base);
> - release_region(priv->mapbase, CHAM_HEADER_SIZE);
> pci_disable_device(pdev);
> }
>
> --
> 2.6.2
>
Applied to mcb-for-v4.7,
Thanks
--
Johannes Thumshirn Storage
jthumshirn@...e.de +49 911 74053 689
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)
Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850
Powered by blists - more mailing lists