summaryrefslogtreecommitdiffstats
path: root/drivers/clk
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2021-11-15 14:21:20 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2021-11-15 14:21:20 +0100
commit0fdbd47ac4ff832f1c950db0b6ccb2eda3824158 (patch)
treeb6f121ca8017c89be96af2ff96d07f1f20e8f52c /drivers/clk
parent42cdd1452a51ca970a6cda76e3bdbe4f04d6e13f (diff)
parenta1511452b8eb44cdce2e7e879b82d147e213654e (diff)
downloadbarebox-0fdbd47ac4ff832f1c950db0b6ccb2eda3824158.tar.gz
barebox-0fdbd47ac4ff832f1c950db0b6ccb2eda3824158.tar.xz
Merge branch 'for-next/rockchip'
Diffstat (limited to 'drivers/clk')
-rw-r--r--drivers/clk/clk.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
index fff1e21144..189c9c62df 100644
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
@@ -845,9 +845,15 @@ int of_clk_init(struct device_node *root, const struct of_device_id *matches)
struct device_node *np = clk_provider->np;
if (force || parent_ready(np)) {
+ struct device_d *dev;
of_pinctrl_select_state_default(np);
- clk_provider->clk_init_cb(np);
+
+ dev = of_device_create_on_demand(np);
+
+ if (clk_provider->clk_init_cb(np) == 0 && dev)
+ of_platform_device_dummy_drv(dev);
+
of_clk_set_defaults(np, true);
list_del(&clk_provider->node);