Linux clock framework development
 help / color / mirror / Atom feed
From: Jagadeesh Kona <quic_jkona@quicinc.com>
To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Cc: Bjorn Andersson <andersson@kernel.org>,
	Konrad Dybcio <konrad.dybcio@linaro.org>,
	Michael Turquette <mturquette@baylibre.com>,
	Stephen Boyd <sboyd@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>,
	<linux-arm-msm@vger.kernel.org>, <linux-clk@vger.kernel.org>,
	<devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	Taniya Das <quic_tdas@quicinc.com>,
	Satya Priya Kakitapalli <quic_skakitap@quicinc.com>,
	Ajit Pandey <quic_ajipan@quicinc.com>,
	Imran Shaik <quic_imrashai@quicinc.com>
Subject: Re: [PATCH V2 RESEND 6/6] arm64: dts: qcom: sm8650: Add video and camera clock controllers
Date: Fri, 5 Apr 2024 11:30:59 +0530	[thread overview]
Message-ID: <03f8d2ee-2467-48aa-9b76-06eb13202b8c@quicinc.com> (raw)
In-Reply-To: <CAA8EJpoW8MQQ3OPfOVYRJtgsn1JgKd5Ew7vqgWx3xWE-xJ=R-g@mail.gmail.com>



On 4/4/2024 9:35 PM, Dmitry Baryshkov wrote:
> On Thu, 4 Apr 2024 at 13:06, Jagadeesh Kona <quic_jkona@quicinc.com> wrote:
>>
>>
>>
>> On 4/4/2024 11:00 AM, Dmitry Baryshkov wrote:
>>> On Thu, 4 Apr 2024 at 08:13, Jagadeesh Kona <quic_jkona@quicinc.com> wrote:
>>>>
>>>>
>>>>
>>>> On 4/3/2024 9:24 PM, Dmitry Baryshkov wrote:
>>>>> On Wed, 3 Apr 2024 at 10:16, Jagadeesh Kona <quic_jkona@quicinc.com> wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>> On 3/25/2024 11:38 AM, Jagadeesh Kona wrote:
>>>>>>>
>>>>>>>
>>>>>>> On 3/21/2024 6:43 PM, Dmitry Baryshkov wrote:
>>>>>>>> On Thu, 21 Mar 2024 at 11:27, Jagadeesh Kona <quic_jkona@quicinc.com>
>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> Add device nodes for video and camera clock controllers on Qualcomm
>>>>>>>>> SM8650 platform.
>>>>>>>>>
>>>>>>>>> Signed-off-by: Jagadeesh Kona <quic_jkona@quicinc.com>
>>>>>>>>> ---
>>>>>>>>>      arch/arm64/boot/dts/qcom/sm8650.dtsi | 28 ++++++++++++++++++++++++++++
>>>>>>>>>      1 file changed, 28 insertions(+)
>>>>>>>>>
>>>>>>>>> diff --git a/arch/arm64/boot/dts/qcom/sm8650.dtsi
>>>>>>>>> b/arch/arm64/boot/dts/qcom/sm8650.dtsi
>>>>>>>>> index 32c0a7b9aded..d862aa6be824 100644
>>>>>>>>> --- a/arch/arm64/boot/dts/qcom/sm8650.dtsi
>>>>>>>>> +++ b/arch/arm64/boot/dts/qcom/sm8650.dtsi
>>>>>>>>> @@ -4,6 +4,8 @@
>>>>>>>>>       */
>>>>>>>>>
>>>>>>>>>      #include <dt-bindings/clock/qcom,rpmh.h>
>>>>>>>>> +#include <dt-bindings/clock/qcom,sm8450-videocc.h>
>>>>>>>>> +#include <dt-bindings/clock/qcom,sm8650-camcc.h>
>>>>>>>>>      #include <dt-bindings/clock/qcom,sm8650-dispcc.h>
>>>>>>>>>      #include <dt-bindings/clock/qcom,sm8650-gcc.h>
>>>>>>>>>      #include <dt-bindings/clock/qcom,sm8650-gpucc.h>
>>>>>>>>> @@ -3110,6 +3112,32 @@ opp-202000000 {
>>>>>>>>>                             };
>>>>>>>>>                     };
>>>>>>>>>
>>>>>>>>> +               videocc: clock-controller@aaf0000 {
>>>>>>>>> +                       compatible = "qcom,sm8650-videocc";
>>>>>>>>> +                       reg = <0 0x0aaf0000 0 0x10000>;
>>>>>>>>> +                       clocks = <&bi_tcxo_div2>,
>>>>>>>>> +                                <&gcc GCC_VIDEO_AHB_CLK>;
>>>>>>>>> +                       power-domains = <&rpmhpd RPMHPD_MMCX>;
>>>>>>>>> +                       required-opps = <&rpmhpd_opp_low_svs>;
>>>>>>>>
>>>>>>>> The required-opps should no longer be necessary.
>>>>>>>>
>>>>>>>
>>>>>>> Sure, will check and remove this if not required.
>>>>>>
>>>>>>
>>>>>> I checked further on this and without required-opps, if there is no vote
>>>>>> on the power-domain & its peer from any other consumers, when runtime
>>>>>> get is called on device, it enables the power domain just at the minimum
>>>>>> non-zero level. But in some cases, the minimum non-zero level of
>>>>>> power-domain could be just retention and is not sufficient for clock
>>>>>> controller to operate, hence required-opps property is needed to specify
>>>>>> the minimum level required on power-domain for this clock controller.
>>>>>
>>>>> In which cases? If it ends up with the retention vote, it is a bug
>>>>> which must be fixed.
>>>>>
>>>>
>>>> The minimum non-zero level(configured from bootloaders) of MMCX is
>>>> retention on few chipsets but it can vary across the chipsets. Hence to
>>>> be on safer side from our end, it is good to have required-opps in DT to
>>>> specify the minimum level required for this clock controller.
>>>
>>> We are discussing sm8650, not some abstract chipset. Does it list
>>> retention or low_svs as a minimal level for MMCX?
>>>
>>
>> Actually, the minimum level for MMCX is external to the clock
>> controllers.
> 
> Yes, it comes from cmd-db
> 
>>   But the clock controller requires MMCX to be atleast at
>> lowsvs for it to be functional.
> 
> Correct
> 
>> Hence we need to keep required-opps to
>> ensure the same without relying on the actual minimum level for MMCX.
> 
> And this is not correct. There is no need for the DT to be redundant.
> I plan to send patches removing the existing required-opps when they
> are not required.
>
I agree this is not required if cmd-db minimum level is already at 
lowsvs. But since MMCX running at lowsvs is a mandatory requirement for 
clock controller to operate, I believe it is good to have required-opps 
to ensure we meet this requirement in all cases, rather than relying on 
the cmd-db minimum level which we have no control over.

Thanks,
Jagadeesh


  reply	other threads:[~2024-04-05  6:01 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-21  9:25 [PATCH V2 RESEND 0/6] Add support for videocc and camcc on SM8650 Jagadeesh Kona
2024-03-21  9:25 ` [PATCH V2 RESEND 1/6] dt-bindings: clock: qcom: Add SM8650 video clock controller Jagadeesh Kona
2024-03-21 13:12   ` Dmitry Baryshkov
2024-03-25  6:07     ` Jagadeesh Kona
2024-03-25  6:38       ` Dmitry Baryshkov
2024-03-25  7:00         ` Jagadeesh Kona
2024-04-18 21:01       ` Vladimir Zapolskiy
2024-04-22 11:00         ` Jagadeesh Kona
2024-04-25 13:32           ` Vladimir Zapolskiy
2024-04-26 14:26             ` Jagadeesh Kona
2024-03-21  9:25 ` [PATCH V2 RESEND 2/6] clk: qcom: videocc-sm8550: Add support for videocc XO clk ares Jagadeesh Kona
2024-03-21  9:44   ` Dmitry Baryshkov
2024-03-21 11:36     ` Jagadeesh Kona
2024-03-23  0:30   ` Konrad Dybcio
2024-03-25  6:09     ` Jagadeesh Kona
2024-03-21  9:25 ` [PATCH V2 RESEND 3/6] clk: qcom: videocc-sm8550: Add SM8650 video clock controller Jagadeesh Kona
2024-03-21 10:03   ` Dmitry Baryshkov
2024-03-21 11:33     ` Jagadeesh Kona
2024-03-21  9:25 ` [PATCH V2 RESEND 4/6] dt-bindings: clock: qcom: Add SM8650 camera " Jagadeesh Kona
2024-03-21 10:20   ` Johan Hovold
2024-03-21 11:28     ` Jagadeesh Kona
2024-04-18 21:32   ` Vladimir Zapolskiy
2024-03-21  9:25 ` [PATCH V2 RESEND 5/6] clk: qcom: camcc-sm8650: Add SM8650 camera clock controller driver Jagadeesh Kona
2024-03-21 10:26   ` Dmitry Baryshkov
2024-04-18 21:30   ` Vladimir Zapolskiy
2024-04-22 10:57     ` Jagadeesh Kona
2024-03-21  9:25 ` [PATCH V2 RESEND 6/6] arm64: dts: qcom: sm8650: Add video and camera clock controllers Jagadeesh Kona
2024-03-21 13:07   ` Vladimir Zapolskiy
2024-03-23  0:33     ` Konrad Dybcio
2024-04-18 20:56       ` Vladimir Zapolskiy
2024-03-21 13:13   ` Dmitry Baryshkov
2024-03-25  6:08     ` Jagadeesh Kona
2024-04-03  7:16       ` Jagadeesh Kona
2024-04-03 15:54         ` Dmitry Baryshkov
2024-04-04  5:13           ` Jagadeesh Kona
2024-04-04  5:30             ` Dmitry Baryshkov
2024-04-04 10:06               ` Jagadeesh Kona
2024-04-04 16:05                 ` Dmitry Baryshkov
2024-04-05  6:00                   ` Jagadeesh Kona [this message]
2024-04-05  7:44                     ` Dmitry Baryshkov
2024-04-18 11:17                       ` Jagadeesh Kona

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=03f8d2ee-2467-48aa-9b76-06eb13202b8c@quicinc.com \
    --to=quic_jkona@quicinc.com \
    --cc=andersson@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.baryshkov@linaro.org \
    --cc=konrad.dybcio@linaro.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mturquette@baylibre.com \
    --cc=quic_ajipan@quicinc.com \
    --cc=quic_imrashai@quicinc.com \
    --cc=quic_skakitap@quicinc.com \
    --cc=quic_tdas@quicinc.com \
    --cc=robh+dt@kernel.org \
    --cc=sboyd@kernel.org \
    --cc=vladimir.zapolskiy@linaro.org \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox