On Tue, Aug 06, 2024 at 12:11:55PM -0400, Frank Li wrote: > On Tue, Aug 06, 2024 at 10:29:47AM +0200, Krzysztof Kozlowski wrote: > > On 06/08/2024 07:06, Xu Yang wrote: > > > The usb phy in i.MX95 is compatible with i.MX8MP's, this will add a > > > compatible "fsl,imx95-usb-phy" for i.MX95. Also change reg maxItems > > > to 2 since i.MX95 needs another regmap to control Type-C Assist (TCA) > > > block. Since i.MX95 usb phy is able to switch SS lanes, this will also > > > add orientation-switch and port property to the file. > > > > > > Signed-off-by: Xu Yang <xu.yang_2@xxxxxxx> > > > > > > --- > > > Changes in v2: > > > - replace minItems with description in reg property > > > - remove orientation-switch and port > > > - refer to usb-switch.yaml > > > - use unevaluatedProperties > > > --- > > > .../bindings/phy/fsl,imx8mq-usb-phy.yaml | 42 ++++++++++++++++--- > > > 1 file changed, 37 insertions(+), 5 deletions(-) > > > > > > diff --git a/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml b/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml > > > index dc3a3f709fea..6d6d211883ae 100644 > > > --- a/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml > > > +++ b/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml > > > @@ -11,12 +11,17 @@ maintainers: > > > > > > properties: > > > compatible: > > > - enum: > > > - - fsl,imx8mq-usb-phy > > > - - fsl,imx8mp-usb-phy > > > + oneOf: > > > + - enum: > > > + - fsl,imx8mq-usb-phy > > > + - fsl,imx8mp-usb-phy > > > + - items: > > > + - const: fsl,imx95-usb-phy > > > + - const: fsl,imx8mp-usb-phy > > > > > > reg: > > > - maxItems: 1 > > > + minItems: 1 > > > + maxItems: 2 > > > > > > "#phy-cells": > > > const: 0 > > > @@ -89,7 +94,34 @@ required: > > > - clocks > > > - clock-names > > > > > > -additionalProperties: false > > > +allOf: > > > + - if: > > > + properties: > > > + compatible: > > > + contains: > > > + enum: > > > + - fsl,imx95-usb-phy > > > + then: > > > + properties: > > > + reg: > > > + items: > > > + - description: USB PHY Control range > > > + - description: USB PHY TCA Block range > > > + else: > > > + properties: > > > + reg: > > > + maxItems: 1 > > > + > > > + - if: > > > + properties: > > > + compatible: > > > + contains: > > > + enum: > > > + - fsl,imx95-usb-phy > > > + then: > > > + $ref: /schemas/usb/usb-switch.yaml# > > > > ref should be rather in top-level. You can always disallow certain > > properties for devices, if they are really not applicable. > > There are some "required" in usb-switch.yaml, > > oneOf: > - required: > - port > - required: > - ports > > If put on the top, it may cause DTB check warning for other compatible > strings, which have not support usb-switch. Yes, even though I move usb-switch to top and set false for certain properties, dtbinding check still has below error: /home/nxf75279/work/usb/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.example.dtb: phy@381f0040: 'oneOf' conditional failed, one must be fixed: 'port' is a required property 'ports' is a required property from schema $id: http://devicetree.org/schemas/phy/fsl,imx8mq-usb-phy.yaml# Thanks, Xu Yang > > Frank > > > > Best regards, > > Krzysztof > >