On Tue, Dec 03, 2024 at 12:13:50PM +0000, André Draszik wrote: > orientation-switch is the standard declaration to inform the Type-C mux > layer that a remote-endpoint is capable of processing orientation > change messages. > > The USB PHY on gs101 needs to be configured based on the orientation of > the connector. For that the DTS needs a link between the phy's port and > a TCPCi, and we'll need to inform the phy driver that it should handle > the orientation (register a handler). > > Update the schema to enforce that by requiring the orientation-switch > and port properties on gs101 (only). We disallow orientation-switch on > all other supported platforms, since other versions of this phy (or its > system integration) don't currently support or even need it. > > Even though this new required gs101 property is an ABI break, the > intention for the driver is to behave as before if it's missing > (meaning for gs101 it will work in SS mode in one orientation only). > Other platforms are not affected. > > Reviewed-by: Peter Griffin <peter.griffin@xxxxxxxxxx> > Signed-off-by: André Draszik <andre.draszik@xxxxxxxxxx> > > --- > v2: > * squash original patches #2 and #3 > * actually disallow orientation-switch on !gs101 (not just optional) (Conor) > * update commit message to clarify that the intention for the driver is > to work with old and new DTS (Conor) > * collect tags > --- > Documentation/devicetree/bindings/phy/samsung,usb3-drd-phy.yaml | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/Documentation/devicetree/bindings/phy/samsung,usb3-drd-phy.yaml b/Documentation/devicetree/bindings/phy/samsung,usb3-drd-phy.yaml > index 1f8b35917b11..c1d16254aeec 100644 > --- a/Documentation/devicetree/bindings/phy/samsung,usb3-drd-phy.yaml > +++ b/Documentation/devicetree/bindings/phy/samsung,usb3-drd-phy.yaml > @@ -51,6 +51,9 @@ properties: > "#phy-cells": > const: 1 > > + orientation-switch: > + $ref: /schemas/usb/usb-switch.yaml#/properties/orientation-switch Generally, we don't reference things at a property level, but node level. You can just do: - if: properties: compatible: contains: const: google,gs101-usb31drd-phy then: $ref: /schemas/usb/usb-switch.yaml# And switch additionalProperties with unevaluatedProperties. Rob