Re: [PATCH v3 1/3] drivers: bus: simple-pm-bus: Populate simple MFD child devices

From: Rob Herring
Date: Thu Aug 04 2022 - 08:20:03 EST


On Thu, Aug 4, 2022 at 12:10 AM Liu Ying <victor.liu@xxxxxxx> wrote:
>
> There could be simple MFD device(s) connected to a simple PM bus as child
> node(s), like Freescale i.MX8qxp pixel link MSI bus. Add a child match
> table as an argument to of_platform_populate() function call to specify
> the simple MFD devices so that they can be populated.

There could be a simple-bus under it as well. You should just use
of_platform_default_populate() instead.

>
> Signed-off-by: Liu Ying <victor.liu@xxxxxxx>
> ---
> v1->v3:
> * No change.
>
> drivers/bus/simple-pm-bus.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/bus/simple-pm-bus.c b/drivers/bus/simple-pm-bus.c
> index 6b8d6257ed8a..ff5f8ca5c024 100644
> --- a/drivers/bus/simple-pm-bus.c
> +++ b/drivers/bus/simple-pm-bus.c
> @@ -13,6 +13,11 @@
> #include <linux/platform_device.h>
> #include <linux/pm_runtime.h>
>
> +static const struct of_device_id simple_pm_bus_child_matches[] = {
> + { .compatible = "simple-mfd", },
> + {}
> +};
> +
> static int simple_pm_bus_probe(struct platform_device *pdev)
> {
> const struct device *dev = &pdev->dev;
> @@ -49,7 +54,7 @@ static int simple_pm_bus_probe(struct platform_device *pdev)
> pm_runtime_enable(&pdev->dev);
>
> if (np)
> - of_platform_populate(np, NULL, lookup, &pdev->dev);
> + of_platform_populate(np, simple_pm_bus_child_matches, lookup, &pdev->dev);
>
> return 0;
> }
> --
> 2.25.1
>