mbox series

[00/40] pinctrl/arm64: qcom: fix some of Qualcomm pinctrl schema warnings

Message ID 20220911111200.199182-1-krzysztof.kozlowski@linaro.org
Headers show
Series pinctrl/arm64: qcom: fix some of Qualcomm pinctrl schema warnings | expand

Message

Krzysztof Kozlowski Sept. 11, 2022, 11:11 a.m. UTC
Hi,

That's a set for some of arm64 pinctrl bindings fixing most common warnings.  I
have a plan to continue this for remaining arm64 (sm8250 needs updates) and for
arm.

Dependencies
============
1. dt-bindings are independent of DTS patches.

Best regards,
Krzysztof

Krzysztof Kozlowski (40):
  dt-bindings: pinctrl: qcom,sm6115-pinctrl: fix matching pin config
  dt-bindings: pinctrl: qcom,sm6115-pinctrl: fix matching SD card pins
  dt-bindings: pinctrl: qcom,sm6115-pinctrl: fix indentation in example
  dt-bindings: pinctrl: qcom,sm6125-pinctrl: fix matching pin config
  dt-bindings: pinctrl: qcom,sm6125-pinctrl: do not require function on
    non-GPIOs
  dt-bindings: pinctrl: qcom,sm6125-pinctrl: extend example
  dt-bindings: pinctrl: qcom,sm6350-pinctrl: fix matching pin config
  dt-bindings: pinctrl: qcom,sm6350-pinctrl: do not require function on
    non-GPIOs
  dt-bindings: pinctrl: qcom,sm6350-pinctrl: fix indentation in example
  dt-bindings: pinctrl: qcom,sm6375-pinctrl: fix matching pin config
  dt-bindings: pinctrl: qcom,sm6375-pinctrl: do not require function on
    non-GPIOs
  dt-bindings: pinctrl: qcom,sm6375-pinctrl: fix indentation in example
  dt-bindings: pinctrl: qcom,sm8250-pinctrl: do not require function on
    non-GPIOs
  dt-bindings: pinctrl: qcom,sm8250-pinctrl: reference tlmm common pins
  dt-bindings: pinctrl: qcom,sm8250-pinctrl: fix indentation in example
  dt-bindings: pinctrl: qcom,sm8350-pinctrl: fix matching pin config
  dt-bindings: pinctrl: qcom,sm8350-pinctrl: fix indentation in example
  dt-bindings: pinctrl: qcom,sm8350-pinctrl: do not require function on
    non-GPIOs
  dt-bindings: pinctrl: qcom,sm8450-pinctrl: fix matching pin config
  dt-bindings: pinctrl: qcom,sm8450-pinctrl: fix indentation in example
  dt-bindings: pinctrl: qcom,sm8450-pinctrl: do not require function on
    non-GPIOs
  dt-bindings: pinctrl: qcom,sm8450-pinctrl: add gpio-line-names
  dt-bindings: pinctrl: qcom,sc7280-pinctrl: correct number of GPIOs
  dt-bindings: pinctrl: qcom,sc7280-pinctrl: do not require function on
    non-GPIOs
  dt-bindings: pinctrl: qcom,sc7280-pinctrl: add gpio-line-names
  dt-bindings: pinctrl: qcom,sc7280-pinctrl: reference tlmm schema
  dt-bindings: pinctrl: qcom,sc7280-pinctrl: fix indentation in example
  dt-bindings: pinctrl: qcom,sc8180x-pinctrl: fix matching pin config
  dt-bindings: pinctrl: qcom,sc8180x-pinctrl: do not require function on
    non-GPIOs
  dt-bindings: pinctrl: qcom,sc8180x-pinctrl: fix indentation in example
  dt-bindings: pinctrl: qcom,sc8280xp-pinctrl: fix matching pin config
  dt-bindings: pinctrl: qcom,sc8280xp-pinctrl: do not require function
    on non-GPIOs
  dt-bindings: pinctrl: qcom,sc8280xp-pinctrl: fix indentation in
    example
  arm64: dts: qcom: sm6125: align TLMM pin configuration with DT schema
  arm64: dts: qcom: sm6350: align TLMM pin configuration with DT schema
  arm64: dts: qcom: sm8350-sagami: correct TS pin property
  arm64: dts: qcom: sm8350: align TLMM pin configuration with DT schema
  arm64: dts: qcom: sm8450: align TLMM pin configuration with DT schema
  arm64: dts: qcom: sc7280: align TLMM pin configuration with DT schema
  arm64: dts: qcom: sc7280-herobrine: correct TLMM gpio-line-names

 .../bindings/pinctrl/qcom,sc7280-pinctrl.yaml |  55 +--
 .../pinctrl/qcom,sc8180x-pinctrl.yaml         |  79 +++--
 .../pinctrl/qcom,sc8280xp-pinctrl.yaml        |  73 ++--
 .../bindings/pinctrl/qcom,sm6115-pinctrl.yaml |  94 +++---
 .../bindings/pinctrl/qcom,sm6125-pinctrl.yaml |  61 +++-
 .../bindings/pinctrl/qcom,sm6350-pinctrl.yaml |  73 ++--
 .../bindings/pinctrl/qcom,sm6375-tlmm.yaml    |  73 ++--
 .../bindings/pinctrl/qcom,sm8250-pinctrl.yaml |  41 ++-
 .../bindings/pinctrl/qcom,sm8350-pinctrl.yaml |  73 ++--
 .../bindings/pinctrl/qcom,sm8450-pinctrl.yaml |  82 +++--
 .../boot/dts/qcom/sc7280-herobrine-crd.dts    |   2 -
 .../arm64/boot/dts/qcom/sc7280-herobrine.dtsi |  44 +--
 .../arm64/boot/dts/qcom/sc7280-idp-ec-h1.dtsi |   8 +-
 arch/arm64/boot/dts/qcom/sc7280-idp.dtsi      |  20 +-
 arch/arm64/boot/dts/qcom/sc7280-qcard.dtsi    |  14 +-
 arch/arm64/boot/dts/qcom/sc7280.dtsi          | 316 +++++++++---------
 .../qcom/sm6125-sony-xperia-seine-pdx201.dts  |   4 +-
 arch/arm64/boot/dts/qcom/sm6125.dtsi          |  10 +-
 arch/arm64/boot/dts/qcom/sm6350.dtsi          |  14 +-
 .../dts/qcom/sm8350-sony-xperia-sagami.dtsi   |   4 +-
 arch/arm64/boot/dts/qcom/sm8350.dtsi          |  44 +--
 .../qcom/sm8450-sony-xperia-nagara-pdx223.dts |  12 +-
 arch/arm64/boot/dts/qcom/sm8450.dtsi          | 152 ++++-----
 23 files changed, 733 insertions(+), 615 deletions(-)

Comments

Iskren Chernev Sept. 11, 2022, 1 p.m. UTC | #1
On 9/11/22 14:11, Krzysztof Kozlowski wrote:
> SD card pins do not have function, so do not require it:
> 
>   pinctrl@500000: sdc2-off-state: 'oneOf' conditional failed, one must be fixed:
>     'pins' is a required property
>     'bias-disable;' is a required property
>     'clk-pins' does not match any of the regexes: 'pinctrl-[0-9]+'
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Reviewed-by: Iskren Chernev <iskren.chernev@gmail.com>

> ---
>  .../bindings/pinctrl/qcom,sm6115-pinctrl.yaml         | 11 ++++++++++-
>  1 file changed, 10 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,sm6115-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,sm6115-pinctrl.yaml
> index 8a2b4767c7b6..28b29bf714b4 100644
> --- a/Documentation/devicetree/bindings/pinctrl/qcom,sm6115-pinctrl.yaml
> +++ b/Documentation/devicetree/bindings/pinctrl/qcom,sm6115-pinctrl.yaml
> @@ -69,7 +69,6 @@ patternProperties:
>      description:
>        Pinctrl node's client devices use subnodes for desired pin configuration.
>        Client device subnodes use below standard properties.
> -    $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
>  
>      properties:
>        pins:
> @@ -121,6 +120,16 @@ patternProperties:
>      required:
>        - pins
>  
> +    allOf:
> +      - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
> +      - if:
> +          properties:
> +            pins:
> +              pattern: "^gpio([0-9]|[1-9][0-9]|10[0-9]|11[0-2])$"
> +        then:
> +          required:
> +            - function
> +
>      additionalProperties: false
>  
>  allOf:
Krzysztof Kozlowski Sept. 11, 2022, 1:26 p.m. UTC | #2
On 11/09/2022 14:59, Iskren Chernev wrote:
> 
> 
> 
> On 9/11/22 14:11, Krzysztof Kozlowski wrote:
>> Matching PMIC GPIOs config nodes within a '-state' node by '.*' pattern
>> does not work as expected because of linux,phandle in the DTB:
>>
>>     'pins' is a required property
>>     'function' is a required property
>>     'rx', 'tx' do not match any of the regexes: 'pinctrl-[0-9]+'
>>     [[59]] is not of type 'object'
>>
>> Make the schema stricter and expect such nodes to be either named
>> 'pinconfig' or followed with '-pins' prefix.
> 
> Well, now you don't allow pinconfig, so maybe tweak the commit message.

True, thanks!


Best regards,
Krzysztof