diff options
author | Geert Uytterhoeven <geert+renesas@glider.be> | 2017-06-21 22:24:15 +0200 |
---|---|---|
committer | Geert Uytterhoeven <geert+renesas@glider.be> | 2017-10-20 11:15:33 +0200 |
commit | 1f4023cdd1bdbe6cb01d0b2cbd1f46207189e3cf (patch) | |
tree | 722b66d177d78224d334f2c170d775fc151a06c0 /drivers/clk/renesas/rcar-gen2-cpg.c | |
parent | clk: renesas: cpg-mssr: Restore module clocks during resume (diff) | |
download | linux-1f4023cdd1bdbe6cb01d0b2cbd1f46207189e3cf.tar.xz linux-1f4023cdd1bdbe6cb01d0b2cbd1f46207189e3cf.zip |
clk: renesas: cpg-mssr: Add support to restore core clocks during resume
On R-Car Gen3 systems, PSCI system suspend powers down the SoC, possibly
losing clock configuration. Hence add a notifier chain that can be used
by core clocks to save/restore clock state during system suspend/resume.
The implementation of the actual clock state save/restore operations is
clock-specific, and to be registered with the notifier chain in the SoC
or family-specific cpg_mssr_info.cpg_clk_register() callback.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Tested-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Diffstat (limited to 'drivers/clk/renesas/rcar-gen2-cpg.c')
-rw-r--r-- | drivers/clk/renesas/rcar-gen2-cpg.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/clk/renesas/rcar-gen2-cpg.c b/drivers/clk/renesas/rcar-gen2-cpg.c index 123b1e622179..feb14579a71b 100644 --- a/drivers/clk/renesas/rcar-gen2-cpg.c +++ b/drivers/clk/renesas/rcar-gen2-cpg.c @@ -262,10 +262,9 @@ static unsigned int cpg_pll0_div __initdata; static u32 cpg_mode __initdata; struct clk * __init rcar_gen2_cpg_clk_register(struct device *dev, - const struct cpg_core_clk *core, - const struct cpg_mssr_info *info, - struct clk **clks, - void __iomem *base) + const struct cpg_core_clk *core, const struct cpg_mssr_info *info, + struct clk **clks, void __iomem *base, + struct raw_notifier_head *notifiers) { const struct clk_div_table *table = NULL; const struct clk *parent; |