lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 26 Jan 2023 12:17:56 +0100
From:   Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To:     Christian Marangi <ansuelsmth@...il.com>,
        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 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.


Best regards,
Krzysztof

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ