Message ID | 20231120224919.2293730-2-dmitry.baryshkov@linaro.org (mailing list archive) |
---|---|
State | Handled Elsewhere, archived |
Headers | show |
Series | dt-bindings: connector: usb: provide bindings for altmodes | expand |
On 20/11/2023 23:00, Dmitry Baryshkov wrote: > Add description of the USB-C AltModes supported on the particular USB-C > connector. This is required for devices like Qualcomm Robotics RB5, > which have no other way to express alternative modes supported by the > hardware platform. > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > .../bindings/connector/usb-connector.yaml | 29 +++++++++++++++++++ > 1 file changed, 29 insertions(+) > > diff --git a/Documentation/devicetree/bindings/connector/usb-connector.yaml b/Documentation/devicetree/bindings/connector/usb-connector.yaml > index 7c8a3e8430d3..c1aaac861d9d 100644 > --- a/Documentation/devicetree/bindings/connector/usb-connector.yaml > +++ b/Documentation/devicetree/bindings/connector/usb-connector.yaml > @@ -171,6 +171,28 @@ properties: > offer the power, Capability Mismatch is set. Required for power sink and > power dual role. > > + altmodes: > + type: object > + description: List of Alternative Modes supported by the schematics on the > + particular device. This is only necessary if there are no other means to > + discover supported alternative modes (e.g. through the UCSI firmware > + interface). > + > + patternProperties: > + "^(displayport)$": This is just a property, so should be under "properties:". The rest looks good to me, but I don't know USB that much to judge. Best regards, Krzysztof
On Tue, 21 Nov 2023 at 10:31, Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote: > > On 20/11/2023 23:00, Dmitry Baryshkov wrote: > > Add description of the USB-C AltModes supported on the particular USB-C > > connector. This is required for devices like Qualcomm Robotics RB5, > > which have no other way to express alternative modes supported by the > > hardware platform. > > > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > > --- > > .../bindings/connector/usb-connector.yaml | 29 +++++++++++++++++++ > > 1 file changed, 29 insertions(+) > > > > diff --git a/Documentation/devicetree/bindings/connector/usb-connector.yaml b/Documentation/devicetree/bindings/connector/usb-connector.yaml > > index 7c8a3e8430d3..c1aaac861d9d 100644 > > --- a/Documentation/devicetree/bindings/connector/usb-connector.yaml > > +++ b/Documentation/devicetree/bindings/connector/usb-connector.yaml > > @@ -171,6 +171,28 @@ properties: > > offer the power, Capability Mismatch is set. Required for power sink and > > power dual role. > > > > + altmodes: > > + type: object > > + description: List of Alternative Modes supported by the schematics on the > > + particular device. This is only necessary if there are no other means to > > + discover supported alternative modes (e.g. through the UCSI firmware > > + interface). > > + > > + patternProperties: > > + "^(displayport)$": > > This is just a property, so should be under "properties:". Having it under properties would make adding new altmodes harder. Inherently it should become something like "^(displayport|virtuallink|thunderbolt)$". > > The rest looks good to me, but I don't know USB that much to judge. > > Best regards, > Krzysztof >
On Tue, Nov 21, 2023 at 12:00:18AM +0200, Dmitry Baryshkov wrote: > Add description of the USB-C AltModes supported on the particular USB-C > connector. This is required for devices like Qualcomm Robotics RB5, > which have no other way to express alternative modes supported by the > hardware platform. > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > .../bindings/connector/usb-connector.yaml | 29 +++++++++++++++++++ > 1 file changed, 29 insertions(+) > > diff --git a/Documentation/devicetree/bindings/connector/usb-connector.yaml b/Documentation/devicetree/bindings/connector/usb-connector.yaml > index 7c8a3e8430d3..c1aaac861d9d 100644 > --- a/Documentation/devicetree/bindings/connector/usb-connector.yaml > +++ b/Documentation/devicetree/bindings/connector/usb-connector.yaml > @@ -171,6 +171,28 @@ properties: > offer the power, Capability Mismatch is set. Required for power sink and > power dual role. > > + altmodes: > + type: object > + description: List of Alternative Modes supported by the schematics on the > + particular device. This is only necessary if there are no other means to > + discover supported alternative modes (e.g. through the UCSI firmware > + interface). Move additionalProperties here. > + > + patternProperties: > + "^(displayport)$": > + type: object > + description: > + A single USB-C Alternative Mode as supported by the USB-C connector logic. Move additionalProperties here. And a blank line > + properties: > + svid: > + $ref: /schemas/types.yaml#/definitions/uint16 > + description: Unique value assigned by USB-IF to the Vendor / AltMode. blank line Since you've constrained the node name, then the only possible value here is 0xff01? OTOH, I don't know that we want to enumerate all possible values here especially if there could be lots of vendor modes. But then again, maybe better to just wait and see if that becomes a problem. With those nits fixed, Reviewed-by: Rob Herring <robh@kernel.org>
diff --git a/Documentation/devicetree/bindings/connector/usb-connector.yaml b/Documentation/devicetree/bindings/connector/usb-connector.yaml index 7c8a3e8430d3..c1aaac861d9d 100644 --- a/Documentation/devicetree/bindings/connector/usb-connector.yaml +++ b/Documentation/devicetree/bindings/connector/usb-connector.yaml @@ -171,6 +171,28 @@ properties: offer the power, Capability Mismatch is set. Required for power sink and power dual role. + altmodes: + type: object + description: List of Alternative Modes supported by the schematics on the + particular device. This is only necessary if there are no other means to + discover supported alternative modes (e.g. through the UCSI firmware + interface). + + patternProperties: + "^(displayport)$": + type: object + description: + A single USB-C Alternative Mode as supported by the USB-C connector logic. + properties: + svid: + $ref: /schemas/types.yaml#/definitions/uint16 + description: Unique value assigned by USB-IF to the Vendor / AltMode. + vdo: + $ref: /schemas/types.yaml#/definitions/uint32 + description: VDO returned by Discover Modes USB PD command. + additionalProperties: false + additionalProperties: false + port: $ref: /schemas/graph.yaml#/properties/port description: OF graph bindings modeling a data bus to the connector, e.g. @@ -289,6 +311,13 @@ examples: compatible = "usb-c-connector"; label = "USB-C"; + altmodes { + displayport { + svid = /bits/ 16 <0xff01>; + vdo = <0x00001c46>; + }; + }; + ports { #address-cells = <1>; #size-cells = <0>;
Add description of the USB-C AltModes supported on the particular USB-C connector. This is required for devices like Qualcomm Robotics RB5, which have no other way to express alternative modes supported by the hardware platform. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> --- .../bindings/connector/usb-connector.yaml | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+)