summaryrefslogtreecommitdiff
path: root/drivers/clk/renesas/renesas-cpg-mssr.h
diff options
context:
space:
mode:
authorChris Brandt <chris.brandt@renesas.com>2018-09-24 19:49:35 +0300
committerGeert Uytterhoeven <geert+renesas@glider.be>2018-09-26 15:22:00 +0300
commit1f7db7bbf031828178216527523b29cb6001f86f (patch)
tree21aa9aadf2714b3bb13f14d5d019fd5f14db0fee /drivers/clk/renesas/renesas-cpg-mssr.h
parent9ef5e0370d3834a1ff11e22ae0a3220330890d36 (diff)
downloadlinux-1f7db7bbf031828178216527523b29cb6001f86f.tar.xz
clk: renesas: cpg-mssr: Add early clock support
Add support for SoCs that need to register core and module clocks early in order to use OF drivers that exclusively use macros such as TIMER_OF_DECLARE. Signed-off-by: Chris Brandt <chris.brandt@renesas.com> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Diffstat (limited to 'drivers/clk/renesas/renesas-cpg-mssr.h')
-rw-r--r--drivers/clk/renesas/renesas-cpg-mssr.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/clk/renesas/renesas-cpg-mssr.h b/drivers/clk/renesas/renesas-cpg-mssr.h
index d43d00351638..4e639fb8da9a 100644
--- a/drivers/clk/renesas/renesas-cpg-mssr.h
+++ b/drivers/clk/renesas/renesas-cpg-mssr.h
@@ -91,6 +91,11 @@ struct device_node;
/**
* SoC-specific CPG/MSSR Description
*
+ * @early_core_clks: Array of Early Core Clock definitions
+ * @num_early_core_clks: Number of entries in early_core_clks[]
+ * @early_mod_clks: Array of Early Module Clock definitions
+ * @num_early_mod_clks: Number of entries in early_mod_clks[]
+ *
* @core_clks: Array of Core Clock definitions
* @num_core_clks: Number of entries in core_clks[]
* @last_dt_core_clk: ID of the last Core Clock exported to DT
@@ -117,6 +122,12 @@ struct device_node;
*/
struct cpg_mssr_info {
+ /* Early Clocks */
+ const struct cpg_core_clk *early_core_clks;
+ unsigned int num_early_core_clks;
+ const struct mssr_mod_clk *early_mod_clks;
+ unsigned int num_early_mod_clks;
+
/* Core Clocks */
const struct cpg_core_clk *core_clks;
unsigned int num_core_clks;
@@ -164,6 +175,8 @@ extern const struct cpg_mssr_info r8a77980_cpg_mssr_info;
extern const struct cpg_mssr_info r8a77990_cpg_mssr_info;
extern const struct cpg_mssr_info r8a77995_cpg_mssr_info;
+void __init cpg_mssr_early_init(struct device_node *np,
+ const struct cpg_mssr_info *info);
/*
* Helpers for fixing up clock tables depending on SoC revision