Re: [PATCH v6 13/18] clk: qcom: clk-krait: add enable disable ops

Dmitry Baryshkov
2022-04-13T17:28:51Z

On 22/03/2022 02:15, Ansuel Smith wrote:
> Add enable/disable ops for krait mux. On disable the mux is set to the
> safe selection.

Why? It it used during system suspend? cpuidle? cpufreq?

>
> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
> ---
> drivers/clk/qcom/clk-krait.c | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/drivers/clk/qcom/clk-krait.c b/drivers/clk/qcom/clk-krait.c
> index 7ba5dbc72bce..061af57b0ec2 100644
> --- a/drivers/clk/qcom/clk-krait.c
> +++ b/drivers/clk/qcom/clk-krait.c
> @@ -85,7 +85,25 @@ static u8 krait_mux_get_parent(struct clk_hw *hw)
> return clk_mux_val_to_index(hw, mux->parent_map, 0, sel);
> }
>
> +static int krait_mux_enable(struct clk_hw *hw)
> +{
> + struct krait_mux_clk *mux = to_krait_mux_clk(hw);
> +
> + __krait_mux_set_sel(mux, mux->en_mask);
> +
> + return 0;
> +}
> +
> +static void krait_mux_disable(struct clk_hw *hw)
> +{
> + struct krait_mux_clk *mux = to_krait_mux_clk(hw);
> +
> + __krait_mux_set_sel(mux, mux->safe_sel);
> +}
> +
> const struct clk_ops krait_mux_clk_ops = {
> + .enable = krait_mux_enable,
> + .disable = krait_mux_disable,
> .set_parent = krait_mux_set_parent,
> .get_parent = krait_mux_get_parent,
> .determine_rate = __clk_mux_determine_rate_closest,

--
With best wishes
Dmitry