clk: renesas: rzg2l: Don't assume all CPG_MOD clocks support PM
authorLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Wed, 26 Oct 2022 01:42:26 +0000 (02:42 +0100)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Fri, 28 Oct 2022 12:35:57 +0000 (14:35 +0200)
commit3702cff6d9385565b1ea2670a5623f9695412019
tree099ab79a8551ffe0148e0e54aabcac7521a12eec
parentc82009584edb36dade0598dce840bed725cfcd56
clk: renesas: rzg2l: Don't assume all CPG_MOD clocks support PM

There are cases where not all CPG_MOD clocks should be assumed to support
PM. For example on the CRU block there is a particular sequence that needs
to be followed to initialize the CSI-2 D-PHY in which individual clocks
need to be turned ON/OFF, due to which Runtime PM support wasn't used by
the CRU CSI-2 driver.

This patch adds support to allow indicating if PM is not supported by the
CPG_MOD clocks. Two new members no_pm_mod_clks and num_no_pm_mod_clks are
added to struct rzg2l_cpg_info so that MOD clocks which do not support PM
can be passed by no_pm_mod_clks[] array and when the driver uses Runtime
PM support the clk ID is matched against the no_pm_mod_clks[] array to see
if the clk is needed to be included as part of Runtime PM.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Link: https://lore.kernel.org/r/20221026014227.162121-2-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
drivers/clk/renesas/rzg2l-cpg.c
drivers/clk/renesas/rzg2l-cpg.h