Message ID | 20250219093104.2589449-2-xu.yang_2@nxp.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | add USB2.0 support for i.MX95-19x19 EVK board | expand |
On Wed, Feb 19, 2025 at 05:30:59PM +0800, Xu Yang wrote: > The i.MX95 USB2.0 controller is basically compatible with i.MX7d, except > it needs a second interrupt for wakeup handling. This will add compatible > for i.MX95 platform and restriciton on interrupt property. Besides, this ^ typo, run check-patch --code-spell > will also add iommus property. dt-bindings: usb: Add i.MX95 compatible string 'fsl,imx95-usb' The i.MX95 USB2.0 controller is mostly compatible with i.MX7D, except it requires a second interrupt for wakeup handling. Add the compatible string for the i.MX95 platform, add the iommus property, and enforce the interrupt property restriction. Keep the same restriction for existing compatible strings. Fix below nit. Reviewed-by: Frank Li <Frank.Li@nxp.com> Frank > > Signed-off-by: Xu Yang <xu.yang_2@nxp.com> > --- > .../bindings/usb/chipidea,usb2-common.yaml | 3 +++ > .../bindings/usb/chipidea,usb2-imx.yaml | 26 ++++++++++++++++++- > 2 files changed, 28 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/usb/chipidea,usb2-common.yaml b/Documentation/devicetree/bindings/usb/chipidea,usb2-common.yaml > index d2a7d2ecf48a..10020af15afc 100644 > --- a/Documentation/devicetree/bindings/usb/chipidea,usb2-common.yaml > +++ b/Documentation/devicetree/bindings/usb/chipidea,usb2-common.yaml > @@ -42,6 +42,9 @@ properties: > > phy_type: true > > + iommus: > + maxItems: 1 > + > itc-setting: > description: > interrupt threshold control register control, the setting should be > diff --git a/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml b/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml > index 8f6136f5d72e..3678804a3743 100644 > --- a/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml > +++ b/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml > @@ -41,6 +41,7 @@ properties: > - fsl,imx8mm-usb > - fsl,imx8mn-usb > - fsl,imx93-usb > + - fsl,imx95-usb > - const: fsl,imx7d-usb > - const: fsl,imx27-usb > - items: > @@ -54,7 +55,13 @@ properties: > maxItems: 1 > > interrupts: > - maxItems: 1 > + minItems: 1 > + items: > + - description: USB controller interrupt > + - description: Wakeup interrupt > + description: > + One interrupt for USB controller and wakeup interrupt combined > + case or two interrupts for individual USB controller and wakeup Needn't descrition here. Items: descrption already provide enough informaiton. Or you can change first description: USB controller interrupt Or combine USB controller and wakeup interrupts. > > clocks: > minItems: 1 > @@ -191,6 +198,7 @@ allOf: > contains: > enum: > - fsl,imx93-usb > + - fsl,imx95-usb > then: > properties: > clocks: > @@ -238,6 +246,22 @@ allOf: > maxItems: 1 > clock-names: false > > + # imx95 soc use two interrupts > + - if: > + properties: > + compatible: > + contains: > + enum: > + - fsl,imx95-usb > + then: > + properties: > + interrupts: > + minItems: 2 > + else: > + properties: > + interrupts: > + maxItems: 1 > + > unevaluatedProperties: false > > examples: > -- > 2.34.1 >
On Wed, Feb 19, 2025 at 12:58:10PM -0500, Frank Li wrote: > On Wed, Feb 19, 2025 at 05:30:59PM +0800, Xu Yang wrote: > > The i.MX95 USB2.0 controller is basically compatible with i.MX7d, except > > it needs a second interrupt for wakeup handling. This will add compatible > > for i.MX95 platform and restriciton on interrupt property. Besides, this > ^ typo, > > run check-patch --code-spell > > > will also add iommus property. > > dt-bindings: usb: Add i.MX95 compatible string 'fsl,imx95-usb' > > The i.MX95 USB2.0 controller is mostly compatible with i.MX7D, except it > requires a second interrupt for wakeup handling. Add the compatible string > for the i.MX95 platform, add the iommus property, and enforce the > interrupt property restriction. Keep the same restriction for existing > compatible strings. Okay. > > Fix below nit. > > Reviewed-by: Frank Li <Frank.Li@nxp.com> > > Frank > > > > [...] > > + description: > > + One interrupt for USB controller and wakeup interrupt combined > > + case or two interrupts for individual USB controller and wakeup > > Needn't descrition here. Items: descrption already provide enough > informaiton. Or you can change first > > description: USB controller interrupt Or combine USB controller and wakeup > interrupts. Okay. will do. Thanks, Xu Yang
diff --git a/Documentation/devicetree/bindings/usb/chipidea,usb2-common.yaml b/Documentation/devicetree/bindings/usb/chipidea,usb2-common.yaml index d2a7d2ecf48a..10020af15afc 100644 --- a/Documentation/devicetree/bindings/usb/chipidea,usb2-common.yaml +++ b/Documentation/devicetree/bindings/usb/chipidea,usb2-common.yaml @@ -42,6 +42,9 @@ properties: phy_type: true + iommus: + maxItems: 1 + itc-setting: description: interrupt threshold control register control, the setting should be diff --git a/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml b/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml index 8f6136f5d72e..3678804a3743 100644 --- a/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml +++ b/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml @@ -41,6 +41,7 @@ properties: - fsl,imx8mm-usb - fsl,imx8mn-usb - fsl,imx93-usb + - fsl,imx95-usb - const: fsl,imx7d-usb - const: fsl,imx27-usb - items: @@ -54,7 +55,13 @@ properties: maxItems: 1 interrupts: - maxItems: 1 + minItems: 1 + items: + - description: USB controller interrupt + - description: Wakeup interrupt + description: + One interrupt for USB controller and wakeup interrupt combined + case or two interrupts for individual USB controller and wakeup clocks: minItems: 1 @@ -191,6 +198,7 @@ allOf: contains: enum: - fsl,imx93-usb + - fsl,imx95-usb then: properties: clocks: @@ -238,6 +246,22 @@ allOf: maxItems: 1 clock-names: false + # imx95 soc use two interrupts + - if: + properties: + compatible: + contains: + enum: + - fsl,imx95-usb + then: + properties: + interrupts: + minItems: 2 + else: + properties: + interrupts: + maxItems: 1 + unevaluatedProperties: false examples:
The i.MX95 USB2.0 controller is basically compatible with i.MX7d, except it needs a second interrupt for wakeup handling. This will add compatible for i.MX95 platform and restriciton on interrupt property. Besides, this will also add iommus property. Signed-off-by: Xu Yang <xu.yang_2@nxp.com> --- .../bindings/usb/chipidea,usb2-common.yaml | 3 +++ .../bindings/usb/chipidea,usb2-imx.yaml | 26 ++++++++++++++++++- 2 files changed, 28 insertions(+), 1 deletion(-)