Re: [PATCH v4 1/4] drivers: provide devm_platform_get_and_ioremap_resource_byname()

From: Greg Kroah-Hartman
Date: Thu Oct 03 2024 - 07:59:47 EST


On Thu, Sep 26, 2024 at 05:31:18PM +0300, Andrei Stefanescu wrote:
> Similar to commit 890cc39a879906b63912482dfc41944579df2dc6
> ("drivers: provide devm_platform_get_and_ioremap_resource()")
> add a wrapper for "platform_get_resource_byname" and
> "devm_ioremap_resource". This new wrapper also returns the resource, if
> any, via a pointer.
>
> Suggested-by: Krzysztof Kozlowski <krzk@xxxxxxxxxx>
> Reviewed-by: Matthias Brugger <mbrugger@xxxxxxxx>
> Signed-off-by: Andrei Stefanescu <andrei.stefanescu@xxxxxxxxxxx>
> ---
> drivers/base/platform.c | 27 +++++++++++++++++++++++++++
> include/linux/platform_device.h | 13 +++++++++++++
> 2 files changed, 40 insertions(+)
>
> diff --git a/drivers/base/platform.c b/drivers/base/platform.c
> index 4c3ee6521ba5..da6827f9462a 100644
> --- a/drivers/base/platform.c
> +++ b/drivers/base/platform.c
> @@ -108,6 +108,33 @@ devm_platform_get_and_ioremap_resource(struct platform_device *pdev,
> }
> EXPORT_SYMBOL_GPL(devm_platform_get_and_ioremap_resource);
>
> +/**
> + * devm_platform_get_and_ioremap_resource_byname - call devm_ioremap_resource()
> + * for a platform device and get
> + * a resource by its name
> + *
> + * @pdev: platform device to use both for memory resource lookup as well as
> + * resource management
> + * @name: resource name
> + * @res: optional output parameter to store a pointer to the obtained resource.
> + *
> + * Return: a pointer to the remapped memory or an ERR_PTR() encoded error code
> + * on failure.
> + */
> +void __iomem *
> +devm_platform_get_and_ioremap_resource_byname(struct platform_device *pdev,
> + const char *name,
> + struct resource **res)
> +{
> + struct resource *r;
> +
> + r = platform_get_resource_byname(pdev, IORESOURCE_MEM, name);
> + if (res)
> + *res = r;
> + return devm_ioremap_resource(&pdev->dev, r);

Does this really help out much? Where will the end be if we keep
stacking these up like this, the function names are getting huge...

I'm not going to object, but I'm also not going to ack it :)

thanks,

greg k-h