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. Signed-off-by: Liu Ying <victor.liu@xxxxxxx> --- 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