Commit d4e59f10 authored by Geert Uytterhoeven's avatar Geert Uytterhoeven

clk: renesas: r8a7790: Add new CPG/MSSR driver

Add a new R-Car H2 Clock Pulse Generator / Module Standby and Software
Reset driver, using the CPG/MSSR driver core.  This will enable support
for module resets, which are not supported by the existing driver.

The old driver can still be used through a Kconfig option, to preserve
backward compatibility with old DTBs.
Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
parent 0ea86f5a
...@@ -19,6 +19,16 @@ config CLK_RENESAS ...@@ -19,6 +19,16 @@ config CLK_RENESAS
if CLK_RENESAS if CLK_RENESAS
config CLK_RENESAS_LEGACY
bool "Legacy DT clock support"
depends on CLK_R8A7790
default y
help
Enable backward compatibility with old device trees describing a
hierarchical representation of the various CPG and MSTP clocks.
Say Y if you want your kernel to work with old DTBs.
# SoC # SoC
config CLK_EMEV2 config CLK_EMEV2
bool "Emma Mobile EV2 clock support" if COMPILE_TEST bool "Emma Mobile EV2 clock support" if COMPILE_TEST
...@@ -55,7 +65,8 @@ config CLK_R8A7779 ...@@ -55,7 +65,8 @@ config CLK_R8A7779
config CLK_R8A7790 config CLK_R8A7790
bool bool
select CLK_RCAR_GEN2 select CLK_RCAR_GEN2 if CLK_RENESAS_LEGACY
select CLK_RCAR_GEN2_CPG
select CLK_RENESAS_DIV6 select CLK_RENESAS_DIV6
config CLK_R8A7791 config CLK_R8A7791
......
...@@ -7,6 +7,7 @@ obj-$(CONFIG_CLK_R8A7743) += r8a7743-cpg-mssr.o ...@@ -7,6 +7,7 @@ obj-$(CONFIG_CLK_R8A7743) += r8a7743-cpg-mssr.o
obj-$(CONFIG_CLK_R8A7745) += r8a7745-cpg-mssr.o obj-$(CONFIG_CLK_R8A7745) += r8a7745-cpg-mssr.o
obj-$(CONFIG_CLK_R8A7778) += clk-r8a7778.o obj-$(CONFIG_CLK_R8A7778) += clk-r8a7778.o
obj-$(CONFIG_CLK_R8A7779) += clk-r8a7779.o obj-$(CONFIG_CLK_R8A7779) += clk-r8a7779.o
obj-$(CONFIG_CLK_R8A7790) += r8a7790-cpg-mssr.o
obj-$(CONFIG_CLK_R8A7795) += r8a7795-cpg-mssr.o obj-$(CONFIG_CLK_R8A7795) += r8a7795-cpg-mssr.o
obj-$(CONFIG_CLK_R8A7796) += r8a7796-cpg-mssr.o obj-$(CONFIG_CLK_R8A7796) += r8a7796-cpg-mssr.o
obj-$(CONFIG_CLK_SH73A0) += clk-sh73a0.o obj-$(CONFIG_CLK_SH73A0) += clk-sh73a0.o
......
This diff is collapsed.
...@@ -639,6 +639,12 @@ static const struct of_device_id cpg_mssr_match[] = { ...@@ -639,6 +639,12 @@ static const struct of_device_id cpg_mssr_match[] = {
.data = &r8a7745_cpg_mssr_info, .data = &r8a7745_cpg_mssr_info,
}, },
#endif #endif
#ifdef CONFIG_CLK_R8A7790
{
.compatible = "renesas,r8a7790-cpg-mssr",
.data = &r8a7790_cpg_mssr_info,
},
#endif
#ifdef CONFIG_CLK_R8A7795 #ifdef CONFIG_CLK_R8A7795
{ {
.compatible = "renesas,r8a7795-cpg-mssr", .compatible = "renesas,r8a7795-cpg-mssr",
......
...@@ -132,6 +132,7 @@ struct cpg_mssr_info { ...@@ -132,6 +132,7 @@ struct cpg_mssr_info {
extern const struct cpg_mssr_info r8a7743_cpg_mssr_info; extern const struct cpg_mssr_info r8a7743_cpg_mssr_info;
extern const struct cpg_mssr_info r8a7745_cpg_mssr_info; extern const struct cpg_mssr_info r8a7745_cpg_mssr_info;
extern const struct cpg_mssr_info r8a7790_cpg_mssr_info;
extern const struct cpg_mssr_info r8a7795_cpg_mssr_info; extern const struct cpg_mssr_info r8a7795_cpg_mssr_info;
extern const struct cpg_mssr_info r8a7796_cpg_mssr_info; extern const struct cpg_mssr_info r8a7796_cpg_mssr_info;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment