aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2018-04-16 13:24:54 -0400
committerTony Lindgren <tony@atomide.com>2018-04-30 15:04:51 -0400
commitc4bebea8c5fd7d94dc7ef60ac208a0668ba43796 (patch)
tree0912fc4d120ed9db58a8cfeab0677547967a1564
parent463ab4d58f972ba7fb782fbeebd84efc8ce8c091 (diff)
bus: ti-sysc: Handle simple-bus for nested children
Otherwise child devices that some interconnect target module devices have won't probe using simple-bus. Signed-off-by: Tony Lindgren <tony@atomide.com>
-rw-r--r--drivers/bus/ti-sysc.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/bus/ti-sysc.c b/drivers/bus/ti-sysc.c
index 7cd2fd04b212..25c0e4ae9f1d 100644
--- a/drivers/bus/ti-sysc.c
+++ b/drivers/bus/ti-sysc.c
@@ -1314,6 +1314,11 @@ static void ti_sysc_idle(struct work_struct *work)
1314 pm_runtime_put_sync(ddata->dev); 1314 pm_runtime_put_sync(ddata->dev);
1315} 1315}
1316 1316
1317static const struct of_device_id sysc_match_table[] = {
1318 { .compatible = "simple-bus", },
1319 { /* sentinel */ },
1320};
1321
1317static int sysc_probe(struct platform_device *pdev) 1322static int sysc_probe(struct platform_device *pdev)
1318{ 1323{
1319 struct ti_sysc_platform_data *pdata = dev_get_platdata(&pdev->dev); 1324 struct ti_sysc_platform_data *pdata = dev_get_platdata(&pdev->dev);
@@ -1375,8 +1380,8 @@ static int sysc_probe(struct platform_device *pdev)
1375 sysc_show_registers(ddata); 1380 sysc_show_registers(ddata);
1376 1381
1377 ddata->dev->type = &sysc_device_type; 1382 ddata->dev->type = &sysc_device_type;
1378 error = of_platform_populate(ddata->dev->of_node, 1383 error = of_platform_populate(ddata->dev->of_node, sysc_match_table,
1379 NULL, pdata ? pdata->auxdata : NULL, 1384 pdata ? pdata->auxdata : NULL,
1380 ddata->dev); 1385 ddata->dev);
1381 if (error) 1386 if (error)
1382 goto err; 1387 goto err;