Re: [PATCH] drivers: Provide devm_platform_ioremap_resource_byname()
From: Greg Kroah-Hartman
Date: Fri Jun 14 2019 - 10:14:54 EST
On Fri, Jun 14, 2019 at 04:38:40PM +0300, Andy Shevchenko wrote:
> +Cc: Jack Ping, who did internally the same
>
> On Fri, Jun 14, 2019 at 03:26:25PM +0200, Markus Elfring wrote:
> > From: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
> > Date: Fri, 14 Jun 2019 15:15:14 +0200
> >
> > The functions âplatform_get_resource_bynameâ and âdevm_ioremap_resourceâ
> > are called together in 181 source files.
> > This implementation detail can be determined also with the help
> > of the semantic patch language (Coccinelle software).
> >
> > Wrap these two calls into another helper function.
> > Thus a local variable does not need to be declared for a resource
> > structure pointer before and a redundant argument can be omitted
> > for the resource type.
>
> This one makes sense.
> Though I'm not sure Greg will see your message.
Nope, didn't see it, don't want to see it, it will only cause more work
in the longrun...
> Rafael, maybe you can apply this one?
Um, don't go around maintainers please, that's rude. There is a reason
this specific developer is in my blacklist, and perhaps they should be
in yours as well :)
> FWIW,
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
>
> >
> > Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
> > ---
> > drivers/base/platform.c | 18 ++++++++++++++++++
> > 1 file changed, 18 insertions(+)
> >
> > diff --git a/drivers/base/platform.c b/drivers/base/platform.c
> > index 4d1729853d1a..c1f19a479dd7 100644
> > --- a/drivers/base/platform.c
> > +++ b/drivers/base/platform.c
> > @@ -97,6 +97,24 @@ void __iomem *devm_platform_ioremap_resource(struct platform_device *pdev,
> > return devm_ioremap_resource(&pdev->dev, res);
> > }
> > EXPORT_SYMBOL_GPL(devm_platform_ioremap_resource);
> > +
> > +/**
> > + * devm_platform_ioremap_resource_byname
> > + * Call devm_ioremap_resource() for a platform device
> > + *
> > + * @pdev: platform device to use both for memory resource lookup as well as
> > + * resource management
> > + * @name: resource name
> > + */
> > +void __iomem *devm_platform_ioremap_resource_byname(struct platform_device *pdev,
> > + const char *name)
> > +{
> > + struct resource *res;
> > +
> > + res = platform_get_resource_byname(pdev, IORESOURCE_MEM, name);
> > + return devm_ioremap_resource(&pdev->dev, res);
> > +}
> > +EXPORT_SYMBOL_GPL(devm_platform_ioremap_resource_byname);
> > #endif /* CONFIG_HAS_IOMEM */
I don't like adding new apis with no user.
thanks,
greg k-h