LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Shawn Guo <shawn.guo@linaro.org>
To: Bjorn Andersson <bjorn.andersson@linaro.org>
Cc: Stephen Boyd <sboyd@kernel.org>, Rob Herring <robh+dt@kernel.org>,
Loic Poulain <loic.poulain@linaro.org>,
devicetree@vger.kernel.org, linux-arm-msm@vger.kernel.org,
linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/3] clk: qcom: smd-rpm: Add rate hooks for clk_smd_rpm_branch_ops
Date: Thu, 16 Sep 2021 13:04:24 +0800 [thread overview]
Message-ID: <20210916050423.GG25255@dragon> (raw)
In-Reply-To: <YUIr/002dfXxDWDY@ripper>
On Wed, Sep 15, 2021 at 10:23:11AM -0700, Bjorn Andersson wrote:
> On Wed 15 Sep 08:05 PDT 2021, Shawn Guo wrote:
>
> > On Tue, Sep 14, 2021 at 02:56:28PM -0700, Stephen Boyd wrote:
> > > Quoting Shawn Guo (2021-09-13 19:55:52)
> > > > On QCM2290 platform, the clock xo_board runs at 38400000, while the
> > > > child clock bi_tcxo needs to run at 19200000. That said,
> > > > clk_smd_rpm_branch_ops needs the capability of setting rate. Add rate
> > > > hooks into clk_smd_rpm_branch_ops to make it possible.
> > >
> > > This doesn't sound right. The branch is a simple on/off. If xo_board is
> > > 38.4MHz, then there is an internal divider in the SoC that makes bi_tcxo
> > > (i.e. the root of the entire clk tree) be 19.2MHz. We don't model the
> > > divider, I guess because it isn't very important to. Instead, we tack on
> > > a divider field and implement recalc_rate op. See clk-rpmh.c in the qcom
> > > directory for this.
> >
> > Thanks for the comment, Stephen! To be honest, I copied the
> > implementation from vendor kernel, and wasn't really sure if it's
> > correct or the best.
> >
> > So here is what I get based on your suggestion. Let's me know if
> > it's how you wanted it to be. Thanks!
> >
> > Shawn
> >
> > ----8<---------
> >
> > From 23dda79fee412738f046b89bdd20ef95a24c35cc Mon Sep 17 00:00:00 2001
> > From: Shawn Guo <shawn.guo@linaro.org>
> > Date: Wed, 15 Sep 2021 22:00:32 +0800
> > Subject: [PATCH] clk: qcom: smd-rpm: Add a divider field for branch clock
> >
> > Similar to clk-rpmh, clk-smd-rpm has the same need to handle the case
> > where an internal divider is there between xo_board and bi_tcxo. The
> > change is made in the a back compatible way below.
> >
> > - Add div field to struct clk_smd_rpm, and have
> > __DEFINE_CLK_SMD_RPM_BRANCH() assign it.
> >
> > - Update all existing __DEFINE_CLK_SMD_RPM_BRANCH() wrappers to pass a
> > zero div.
> >
> > - Add DEFINE_CLK_SMD_RPM_BRANCH_DIV() which doesn't take rate argument
> > but div.
> >
> > - Update clk_smd_rpm_recalc_rate() to handle div and add it as
> > .recalc_rate of clk_smd_rpm_branch_ops.
> >
>
> This looks good to me.
>
> And the confirmed that the xo_board in sdm630.dtsi (and hence SDM660) is
> wrong, it should be 38.4MHz as well.
Hmm, I see CAF kernel has 19.2MHz for SDM630/660 xo_board clock. Or am
I looking at the wrong place?
Shawn
> Unfortunately adding the appropriate divider to the sdm660 bcxo would
> break existing .dtsi (but we can probably convince the community that it
> would be ok, if we do it now).
next prev parent reply other threads:[~2021-09-16 5:04 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-14 2:55 [PATCH 0/3] Add QCM2290 RPM clocks support Shawn Guo
2021-09-14 2:55 ` [PATCH 1/3] clk: qcom: smd-rpm: Add rate hooks for clk_smd_rpm_branch_ops Shawn Guo
2021-09-14 21:56 ` Stephen Boyd
2021-09-15 15:05 ` Shawn Guo
2021-09-15 17:23 ` Bjorn Andersson
2021-09-15 17:44 ` Bjorn Andersson
2021-09-16 5:04 ` Shawn Guo [this message]
2021-09-15 2:55 ` Bjorn Andersson
2021-09-15 15:12 ` Shawn Guo
2021-09-14 2:55 ` [PATCH 2/3] dt-bindings: clk: qcom,rpmcc: Document QCM2290 compatible Shawn Guo
2021-09-14 2:55 ` [PATCH 3/3] clk: qcom: smd-rpm: Add QCM2290 RPM clock support Shawn Guo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210916050423.GG25255@dragon \
--to=shawn.guo@linaro.org \
--cc=bjorn.andersson@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=loic.poulain@linaro.org \
--cc=robh+dt@kernel.org \
--cc=sboyd@kernel.org \
--subject='Re: [PATCH 1/3] clk: qcom: smd-rpm: Add rate hooks for clk_smd_rpm_branch_ops' \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).