[PATCH 17/43] dt-bindings: phy: qcom,qmp-pcie: add missing child node schema

Krzysztof Kozlowski krzysztof.kozlowski at linaro.org
Tue Jul 5 03:18:37 PDT 2022


On 05/07/2022 11:42, Johan Hovold wrote:
> Add the missing the description of the PHY-provider child node which was
> ignored when converting to DT schema.
> 
> Also fix up the incorrect description that claimed that one child node
> per lane was required.
> 
> Fixes: ccf51c1cedfd ("dt-bindings: phy: qcom,qmp: Convert QMP PHY bindings to yaml")
> Signed-off-by: Johan Hovold <johan+linaro at kernel.org>
> ---
>  .../bindings/phy/qcom,qmp-pcie-phy.yaml       | 88 ++++++++++++++++++-
>  1 file changed, 85 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/phy/qcom,qmp-pcie-phy.yaml b/Documentation/devicetree/bindings/phy/qcom,qmp-pcie-phy.yaml
> index ff1577f68a00..5a1ebf874559 100644
> --- a/Documentation/devicetree/bindings/phy/qcom,qmp-pcie-phy.yaml
> +++ b/Documentation/devicetree/bindings/phy/qcom,qmp-pcie-phy.yaml
> @@ -69,9 +69,37 @@ properties:
>  patternProperties:
>    "^phy@[0-9a-f]+$":
>      type: object
> -    description:
> -      Each device node of QMP PHY is required to have as many child nodes as
> -      the number of lanes the PHY has.
> +    description: Single PHY-provider child node.
> +    properties:
> +      reg:
> +        minItems: 3
> +        maxItems: 6
> +
> +      clocks:
> +        items:
> +          - description: PIPE clock
> +
> +      clock-names:
> +        items:
> +          - const: pipe0
> +
> +      "#clock-cells":
> +        const: 0
> +
> +      clock-output-names: true
> +
> +      "#phy-cells":
> +        const: 0
> +
> +    required:
> +      - reg
> +      - clocks
> +      - clock-names
> +      - "#clock-cells"
> +      - clock-output-names
> +      - "#phy-cells"
> +
> +    additionalProperties: false
>  
>  required:
>    - compatible
> @@ -180,3 +208,57 @@ allOf:
>        required:
>          - vdda-phy-supply
>          - vdda-pll-supply
> +
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - qcom,sm8250-qmp-gen3x2-pcie-phy
> +              - qcom,sm8250-qmp-modem-pcie-phy
> +              - qcom,sm8450-qmp-gen4x2-pcie-phy
> +    then:
> +      patternProperties:
> +        "^phy@[0-9a-f]+$":
> +          properties:
> +            reg:
> +              items:
> +                - description: TX lane 1
> +                - description: RX lane 1
> +                - description: PCS
> +                - description: TX lane 2
> +                - description: RX lane 2
> +                - description: PCS_MISC
> +    else:
> +      patternProperties:
> +        "^phy@[0-9a-f]+$":
> +          properties:
> +            reg:
> +              minItems: 3
> +              maxItems: 4
> +              items:
> +                - description: TX
> +                - description: RX
> +                - description: PCS
> +                - description: PCS_MISC
> +      if:

Do not include if within other if. Just split the entire section to its
own if:.


> +        properties:
> +          compatible:
> +            contains:
> +              enum:
> +                - qcom,ipq6018-qmp-pcie-phy
> +                - qcom,ipq8074-qmp-pcie-phy
> +                - qcom,msm8998-qmp-pcie-phy
> +                - qcom,sdm845-qhp-pcie-phy
> +      then:
> +        patternProperties:
> +          "^phy@[0-9a-f]+$":
> +            properties:
> +              reg:
> +                maxItems: 3
> +      else:
> +        patternProperties:
> +          "^phy@[0-9a-f]+$":
> +            properties:
> +              reg:
> +                minItems: 4


Best regards,
Krzysztof



More information about the linux-phy mailing list