[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220315224703.EE7E8C340E8@smtp.kernel.org>
Date: Tue, 15 Mar 2022 15:47:02 -0700
From: Stephen Boyd <sboyd@...nel.org>
To: Andy Gross <agross@...nel.org>,
Ansuel Smith <ansuelsmth@...il.com>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Jonathan Hunter <jonathanh@...dia.com>,
Michael Turquette <mturquette@...libre.com>,
Peter De Schrijver <pdeschrijver@...dia.com>,
Prashant Gaikwad <pgaikwad@...dia.com>,
Rob Herring <robh+dt@...nel.org>,
Thierry Reding <thierry.reding@...il.com>,
devicetree@...r.kernel.org, linux-arm-msm@...r.kernel.org,
linux-clk@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-tegra@...r.kernel.org
Subject: Re: [PATCH 11/16] clk: qcom: krait-cc: force sec_mux to QSB
Quoting Ansuel Smith (2022-03-13 12:04:14)
> Now that we have converted every driver to parent_data, it was
> notice that the bootloader can't really leave the system in a
> strange state where l2 or the cpu0/1 can be sourced in a number of ways
> for example cpu1 sourcing out of qsb, l2 sourcing out of pxo.
> To correctly reset the mux and the HFPLL force the sec_mux to QSB.
>
> Signed-off-by: Ansuel Smith <ansuelsmth@...il.com>
> ---
> drivers/clk/qcom/krait-cc.c | 12 ++++++++++--
> 1 file changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/clk/qcom/krait-cc.c b/drivers/clk/qcom/krait-cc.c
> index 6530f10a546f..1bdc89c097e6 100644
> --- a/drivers/clk/qcom/krait-cc.c
> +++ b/drivers/clk/qcom/krait-cc.c
> @@ -15,6 +15,8 @@
>
> #include "clk-krait.h"
>
> +#define QSB_RATE 1
> +
> static unsigned int sec_mux_map[] = {
> 2,
> 0,
> @@ -178,6 +180,12 @@ krait_add_sec_mux(struct device *dev, struct clk *qsb, int id,
> if (ret)
> clk = ERR_PTR(ret);
>
> + /* Force the sec_mux to be set to QSB rate.
The comment start should be on a line alone
/*
* Force the ...
> + * This is needed to correctly set the parents and
> + * to later reset mux and HFPLL to a known freq.
> + */
> + clk_set_rate(clk, QSB_RATE);
> +
> err_clk:
> if (unique_aux)
> kfree(parent_name);
Powered by blists - more mailing lists