Re: [PATCH] pinctrl:Convert the composition of devm_request_mem_region and devm_ioremap to a single call

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Linus Walleij <linus.walleij@xxxxxxxxxx> [151030 12:54]:
> Please run posts like this by the maintainers. Tony Lindgren is one
> user, Haojian is another.

I think we need to add ourselves to MAINTAINERS for this driver,
otherwise we'll keep on missing emails.

> On Fri, Oct 30, 2015 at 8:51 AM, Sanjeev Sharma
> <sanjeev_sharma@xxxxxxxxxx> wrote:
> > Use devm_ioremap_resource() in order to make the code simpler,
> > and remove redundant return value check of platform_get_resource()
> > because this value is alreadytaken care by devm_ioremap_resource()
> >
> > Signed-off-by: Sanjeev Sharma <sanjeev_sharma@xxxxxxxxxx>
> > ---
> >  drivers/pinctrl/pinctrl-single.c | 21 +++------------------
> >  1 file changed, 3 insertions(+), 18 deletions(-)
> >
> > diff --git a/drivers/pinctrl/pinctrl-single.c b/drivers/pinctrl/pinctrl-single.c
> > index ef04b96..905cc0a 100644
> > --- a/drivers/pinctrl/pinctrl-single.c
> > +++ b/drivers/pinctrl/pinctrl-single.c
> > @@ -1865,24 +1865,9 @@ static int pcs_probe(struct platform_device *pdev)
> >                                                   "pinctrl-single,bit-per-mux");
> >
> >         res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> > -       if (!res) {
> > -               dev_err(pcs->dev, "could not get resource\n");
> > -               return -ENODEV;
> > -       }
> > -
> > -       pcs->res = devm_request_mem_region(pcs->dev, res->start,
> > -                       resource_size(res), DRIVER_NAME);
> > -       if (!pcs->res) {
> > -               dev_err(pcs->dev, "could not get mem_region\n");
> > -               return -EBUSY;
> > -       }
> > -
> > -       pcs->size = resource_size(pcs->res);
> > -       pcs->base = devm_ioremap(pcs->dev, pcs->res->start, pcs->size);
> > -       if (!pcs->base) {
> > -               dev_err(pcs->dev, "could not ioremap\n");
> > -               return -ENODEV;
> > -       }
> > +       pcs->base = devm_ioremap_resource(pcs->dev, res);
> > +       if (IS_ERR(pcs->base))
> > +               return PTR_ERR(pcs->base);
> >
> >         INIT_RADIX_TREE(&pcs->pgtree, GFP_KERNEL);
> >         INIT_RADIX_TREE(&pcs->ftree, GFP_KERNEL);

This won't work, we're using the physical address from pcs->res in the
code at least in pcs_add_pin.

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux