[PATCH] dt-bindings: phy: imx8mq-usb: optionally refer to usb-switch.yaml

Xu Yang xu.yang_2 at nxp.com
Thu Nov 14 18:00:45 PST 2024


Hi Conor,

On Thu, Nov 14, 2024 at 05:45:07PM +0000, Conor Dooley wrote:
> On Thu, Nov 14, 2024 at 06:22:03PM +0800, Xu Yang wrote:
> > The i.MX95 usb-phy can work with or without orientation-switch. With
> > current setting, if usb-phy works without orientation-switch, the
> > dt-schema check will show below error:
> > 
> > phy at 4c1f0040: '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#
> > 
> > This will add a condition to optionally refer to usb-switch.yaml.
> > 
> > Signed-off-by: Xu Yang <xu.yang_2 at nxp.com>
> 
> $subject is not what the patch does.

I look through other yaml and find below format could achieve the
restriction on one property:

https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/tree/Documentation/devicetree/bindings/usb/gpio-sbu-mux.yaml?h=usb-testing#n54

  - if:
      required:
        - mode-switch
    then:
      required:
        - enable-gpios

If mode-switch is present, then enable-gpios is required. If not, then
enable-gpios is not required.

For my case, if compatible contains "fsl,imx95-usb-phy" and orientation-switch
is present, then this schema needs to refer to usb-switch.yaml. If not. then
this schema will not refer to usb-switch.yaml. So the subject could reflect
the thing this patch does.

Is this feasible? If not, could you give some advices? 

Thanks,
Xu Yang

> 
> > ---
> >  Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml | 2 ++
> >  1 file changed, 2 insertions(+)
> > 
> > diff --git a/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml b/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml
> > index 6d6d211883ae..1238792157f8 100644
> > --- a/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml
> > +++ b/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml
> > @@ -118,6 +118,8 @@ allOf:
> >            contains:
> >              enum:
> >                - fsl,imx95-usb-phy
> > +      required:
> > +        - orientation-switch
> >      then:
> >        $ref: /schemas/usb/usb-switch.yaml#
> >  
> > -- 
> > 2.34.1
> > 





More information about the linux-arm-kernel mailing list