diff options
Diffstat (limited to 'drivers/clk/berlin/bg2q.c')
-rw-r--r-- | drivers/clk/berlin/bg2q.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/clk/berlin/bg2q.c b/drivers/clk/berlin/bg2q.c index 440ef81..638a649 100644 --- a/drivers/clk/berlin/bg2q.c +++ b/drivers/clk/berlin/bg2q.c @@ -290,10 +290,14 @@ static const struct berlin2_gate_data bg2q_gates[] __initconst = { static void __init berlin2q_clock_setup(struct device_node *np) { + struct device_node *parent_np = of_get_parent(np); const char *parent_names[9]; struct clk *clk; int n; + if (of_device_is_compatible(parent_np, "syscon")) + np = parent_np; + gbase = of_iomap(np, 0); if (!gbase) { pr_err("%s: Unable to map global base\n", np->full_name); @@ -386,3 +390,5 @@ bg2q_fail: } CLK_OF_DECLARE(berlin2q_clock, "marvell,berlin2q-chip-ctrl", berlin2q_clock_setup); +CLK_OF_DECLARE(berlin2q_clk, "marvell,berlin2q-clk", + berlin2q_clock_setup); |