[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <63d28d5a.050a0220.7afab.f613@mx.google.com>
Date: Thu, 26 Jan 2023 15:25:29 +0100
From: Christian Marangi <ansuelsmth@...il.com>
To: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Cc: Andy Gross <agross@...nel.org>,
Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konrad.dybcio@...aro.org>,
Ilia Lin <ilia.lin@...nel.org>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Viresh Kumar <viresh.kumar@...aro.org>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Nishanth Menon <nm@...com>, Stephen Boyd <sboyd@...nel.org>,
Yassine Oudjana <y.oudjana@...tonmail.com>,
linux-arm-msm@...r.kernel.org, linux-pm@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3 1/2] dt-bindings: cpufreq: qcom-cpufreq-nvmem: make
cpr bindings optional
On Thu, Jan 26, 2023 at 12:17:56PM +0100, Krzysztof Kozlowski wrote:
> On 23/01/2023 20:34, Christian Marangi wrote:
> > The qcom-cpufreq-nvmem driver supports 2 kind of devices:
> > - pre-cpr that doesn't have power-domains and base everything on nvmem
> > cells and multiple named microvolt bindings
> > - cpr-based that require power-domain in the cpu nodes and use various
> > source to decide the correct voltage and freq
> >
> > When the schema was introduced, it was wrongly set to always require these
> > binding but this is not the case for pre-cpr devices.
> >
> > Make the power-domain optional and set them required only for qcs404
> > based devices.
> >
> > While at it also make more clear what the opp-table supports by adding
> > ref to the opp-v2-kryo-cpu and opp-v2-qcom-level schema.
> >
> > Fixes: ec24d1d55469 ("dt-bindings: opp: Convert qcom-nvmem-cpufreq to DT schema")
> > Signed-off-by: Christian Marangi <ansuelsmth@...il.com>
> > ---
> >
> > Changes v2:
> > - Reword commit description
> > - Fix condition order
> > - Add allOf
> >
> > .../bindings/cpufreq/qcom-cpufreq-nvmem.yaml | 81 +++++++++++++------
> > 1 file changed, 56 insertions(+), 25 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml b/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > index 9c086eac6ca7..6f5e7904181f 100644
> > --- a/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > +++ b/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > @@ -17,6 +17,9 @@ description: |
> > on the CPU OPP in use. The CPUFreq driver sets the CPR power domain level
> > according to the required OPPs defined in the CPU OPP tables.
> >
> > + For old implementation efuses are parsed to select the correct opp table and
> > + voltage and CPR is not supported/used.
> > +
> > select:
> > properties:
> > compatible:
> > @@ -33,37 +36,65 @@ select:
> > required:
> > - compatible
> >
> > -properties:
> > - cpus:
> > - type: object
> > -
> > - patternProperties:
> > - '^cpu@[0-9a-f]+$':
> > - type: object
> > -
> > - properties:
> > - power-domains:
> > - maxItems: 1
> > -
> > - power-domain-names:
> > - items:
> > - - const: cpr
> > -
> > - required:
> > - - power-domains
> > - - power-domain-names
> > -
> > patternProperties:
> > '^opp-table(-[a-z0-9]+)?$':
> > - if:
> > + allOf:
> > + - if:
> > + properties:
> > + compatible:
> > + const: operating-points-v2-kryo-cpu
> > + then:
> > + $ref: /schemas/opp/opp-v2-kryo-cpu.yaml#
> > +
> > + - if:
> > + properties:
> > + compatible:
> > + const: operating-points-v2-qcom-level
> > + then:
> > + $ref: /schemas/opp/opp-v2-qcom-level.yaml#
>
> This entire part looks independent, please split it into separate patch
> with its own explanation. What I still miss here - why do you remove
> "required-opps" from required properties. It's not clear to me at all.
>
Hi, the required-opps needs to be part of this patch since they are only
needed for genpd based devices.
I will split the additional if parts in another patch since they are not
related.
--
Ansuel
Powered by blists - more mailing lists