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@xxxxxxxxxx> --- .../bindings/phy/qcom,qmp-usb-phy.yaml | 109 +++++++++++++++++- 1 file changed, 106 insertions(+), 3 deletions(-) diff --git a/Documentation/devicetree/bindings/phy/qcom,qmp-usb-phy.yaml b/Documentation/devicetree/bindings/phy/qcom,qmp-usb-phy.yaml index 21744bbe1764..c9a6765708cc 100644 --- a/Documentation/devicetree/bindings/phy/qcom,qmp-usb-phy.yaml +++ b/Documentation/devicetree/bindings/phy/qcom,qmp-usb-phy.yaml @@ -77,9 +77,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 @@ -270,6 +298,81 @@ allOf: - const: phy_phy - const: phy + - if: + properties: + compatible: + contains: + enum: + - qcom,msm8998-qmp-usb3-phy + - qcom,sdm845-qmp-usb3-phy + - qcom,sm8150-qmp-usb3-phy + - qcom,sm8350-qmp-usb3-phy + - qcom,sm8450-qmp-usb3-phy + then: + patternProperties: + "^phy@[0-9a-f]+$": + properties: + reg: + minItems: 5 + maxItems: 6 + items: + - description: TX lane 1 + - description: RX lane 1 + - description: PCS + - description: TX lane 2 + - description: RX lane 2 + - description: PCS_MISC + if: + properties: + compatible: + contains: + enum: + - qcom,msm8998-qmp-usb3-phy + then: + patternProperties: + "^phy@[0-9a-f]+$": + properties: + reg: + maxItems: 5 + else: + patternProperties: + "^phy@[0-9a-f]+$": + properties: + reg: + minItems: 6 + else: + patternProperties: + "^phy@[0-9a-f]+$": + properties: + reg: + minItems: 3 + maxItems: 4 + items: + - description: TX + - description: RX + - description: PCS + - description: PCS_MISC + if: + properties: + compatible: + contains: + enum: + - qcom,msm8996-qmp-usb3-phy + - qcom,sm8250-qmp-usb3-uni-phy + - qcom,sm8350-qmp-usb3-uni-phy + then: + patternProperties: + "^phy@[0-9a-f]+$": + properties: + reg: + maxItems: 3 + else: + patternProperties: + "^phy@[0-9a-f]+$": + properties: + reg: + minItems: 4 + examples: - | #include <dt-bindings/clock/qcom,gcc-sdm845.h> -- 2.35.1