Message ID | 20241017074637.1265584-3-wei.fang@nxp.com |
---|---|
State | Changes Requested |
Headers | show |
Series | add basic support for i.MX95 NETC | expand |
Context | Check | Description |
---|---|---|
robh/checkpatch | success | |
robh/patch-applied | success | |
robh/dtbs-check | warning | build log |
robh/dt-meta-schema | success |
On Thu, Oct 17, 2024 at 03:46:26PM +0800, Wei Fang wrote: > The ENETC of i.MX95 has been upgraded to revision 4.1, and the vendor > ID and device ID have also changed, so add the new compatible strings > for i.MX95 ENETC. In addition, i.MX95 supports configuration of RGMII > or RMII reference clock. > > Signed-off-by: Wei Fang <wei.fang@nxp.com> > --- > v2: Remove "nxp,imx95-enetc" compatible string. > v3: > 1. Add restriction to "clcoks" and "clock-names" properties and rename > the clock, also remove the items from these two properties. > 2. Remove unnecessary items for "pci1131,e101" compatible string. > --- > .../devicetree/bindings/net/fsl,enetc.yaml | 22 ++++++++++++++++--- > 1 file changed, 19 insertions(+), 3 deletions(-) > > diff --git a/Documentation/devicetree/bindings/net/fsl,enetc.yaml b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > index e152c93998fe..e418c3e6e6b1 100644 > --- a/Documentation/devicetree/bindings/net/fsl,enetc.yaml > +++ b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > @@ -20,10 +20,13 @@ maintainers: > > properties: > compatible: > - items: > + oneOf: > + - items: > + - enum: > + - pci1957,e100 > + - const: fsl,enetc > - enum: > - - pci1957,e100 > - - const: fsl,enetc > + - pci1131,e101 > > reg: > maxItems: 1 > @@ -40,6 +43,19 @@ required: > allOf: > - $ref: /schemas/pci/pci-device.yaml > - $ref: ethernet-controller.yaml > + - if: > + properties: > + compatible: > + contains: > + enum: > + - pci1131,e101 > + then: > + properties: > + clocks: > + maxItems: 1 > + description: MAC transmit/receiver reference clock > + clock-names: > + const: ref Did you run CHECK_DTBS for your dts file? clocks\clock-names should be under top 'properties" firstly. Then use 'if' restrict it. But I am not sure for that. only dt_binding_check is not enough because your example have not use clocks and clok-names. Frank > > unevaluatedProperties: false > > -- > 2.34.1 >
> -----Original Message----- > From: Frank Li <frank.li@nxp.com> > Sent: 2024年10月18日 0:23 > To: Wei Fang <wei.fang@nxp.com> > Cc: davem@davemloft.net; edumazet@google.com; kuba@kernel.org; > pabeni@redhat.com; robh@kernel.org; krzk+dt@kernel.org; > conor+dt@kernel.org; Vladimir Oltean <vladimir.oltean@nxp.com>; Claudiu > Manoil <claudiu.manoil@nxp.com>; Clark Wang <xiaoning.wang@nxp.com>; > christophe.leroy@csgroup.eu; linux@armlinux.org.uk; bhelgaas@google.com; > horms@kernel.org; imx@lists.linux.dev; netdev@vger.kernel.org; > devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; > linux-pci@vger.kernel.org > Subject: Re: [PATCH v3 net-next 02/13] dt-bindings: net: add i.MX95 ENETC > support > > On Thu, Oct 17, 2024 at 03:46:26PM +0800, Wei Fang wrote: > > The ENETC of i.MX95 has been upgraded to revision 4.1, and the vendor > > ID and device ID have also changed, so add the new compatible strings > > for i.MX95 ENETC. In addition, i.MX95 supports configuration of RGMII > > or RMII reference clock. > > > > Signed-off-by: Wei Fang <wei.fang@nxp.com> > > --- > > v2: Remove "nxp,imx95-enetc" compatible string. > > v3: > > 1. Add restriction to "clcoks" and "clock-names" properties and rename > > the clock, also remove the items from these two properties. > > 2. Remove unnecessary items for "pci1131,e101" compatible string. > > --- > > .../devicetree/bindings/net/fsl,enetc.yaml | 22 ++++++++++++++++--- > > 1 file changed, 19 insertions(+), 3 deletions(-) > > > > diff --git a/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > index e152c93998fe..e418c3e6e6b1 100644 > > --- a/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > +++ b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > @@ -20,10 +20,13 @@ maintainers: > > > > properties: > > compatible: > > - items: > > + oneOf: > > + - items: > > + - enum: > > + - pci1957,e100 > > + - const: fsl,enetc > > - enum: > > - - pci1957,e100 > > - - const: fsl,enetc > > + - pci1131,e101 > > > > reg: > > maxItems: 1 > > @@ -40,6 +43,19 @@ required: > > allOf: > > - $ref: /schemas/pci/pci-device.yaml > > - $ref: ethernet-controller.yaml > > + - if: > > + properties: > > + compatible: > > + contains: > > + enum: > > + - pci1131,e101 > > + then: > > + properties: > > + clocks: > > + maxItems: 1 > > + description: MAC transmit/receiver reference clock > > + clock-names: > > + const: ref > > Did you run CHECK_DTBS for your dts file? clocks\clock-names should be under > top 'properties" firstly. Then use 'if' restrict it. But I am not sure for that. only > dt_binding_check is not enough because your example have not use clocks and > clok-names. > I have run dtbs_check and dt_binding_check in my local env. there were no warnings and errors. > > > > > unevaluatedProperties: false > > > > -- > > 2.34.1 > >
Hi, Am Freitag, 18. Oktober 2024, 03:20:55 CEST schrieb Wei Fang: > > -----Original Message----- > > From: Frank Li <frank.li@nxp.com> > > Sent: 2024年10月18日 0:23 > > To: Wei Fang <wei.fang@nxp.com> > > Cc: davem@davemloft.net; edumazet@google.com; kuba@kernel.org; > > pabeni@redhat.com; robh@kernel.org; krzk+dt@kernel.org; > > conor+dt@kernel.org; Vladimir Oltean <vladimir.oltean@nxp.com>; Claudiu > > Manoil <claudiu.manoil@nxp.com>; Clark Wang <xiaoning.wang@nxp.com>; > > christophe.leroy@csgroup.eu; linux@armlinux.org.uk; bhelgaas@google.com; > > horms@kernel.org; imx@lists.linux.dev; netdev@vger.kernel.org; > > devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; > > linux-pci@vger.kernel.org > > Subject: Re: [PATCH v3 net-next 02/13] dt-bindings: net: add i.MX95 ENETC > > support > > > > On Thu, Oct 17, 2024 at 03:46:26PM +0800, Wei Fang wrote: > > > The ENETC of i.MX95 has been upgraded to revision 4.1, and the vendor > > > ID and device ID have also changed, so add the new compatible strings > > > for i.MX95 ENETC. In addition, i.MX95 supports configuration of RGMII > > > or RMII reference clock. > > > > > > Signed-off-by: Wei Fang <wei.fang@nxp.com> > > > --- > > > v2: Remove "nxp,imx95-enetc" compatible string. > > > v3: > > > 1. Add restriction to "clcoks" and "clock-names" properties and rename > > > the clock, also remove the items from these two properties. > > > 2. Remove unnecessary items for "pci1131,e101" compatible string. > > > --- > > > .../devicetree/bindings/net/fsl,enetc.yaml | 22 ++++++++++++++++--- > > > 1 file changed, 19 insertions(+), 3 deletions(-) > > > > > > diff --git a/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > index e152c93998fe..e418c3e6e6b1 100644 > > > --- a/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > +++ b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > @@ -20,10 +20,13 @@ maintainers: > > > > > > properties: > > > compatible: > > > - items: > > > + oneOf: > > > + - items: > > > + - enum: > > > + - pci1957,e100 > > > + - const: fsl,enetc > > > - enum: > > > - - pci1957,e100 > > > - - const: fsl,enetc > > > + - pci1131,e101 > > > > > > reg: > > > maxItems: 1 > > > @@ -40,6 +43,19 @@ required: > > > allOf: > > > - $ref: /schemas/pci/pci-device.yaml > > > - $ref: ethernet-controller.yaml > > > + - if: > > > + properties: > > > + compatible: > > > + contains: > > > + enum: > > > + - pci1131,e101 > > > + then: > > > + properties: > > > + clocks: > > > + maxItems: 1 > > > + description: MAC transmit/receiver reference clock > > > + clock-names: > > > + const: ref > > > > Did you run CHECK_DTBS for your dts file? clocks\clock-names should be under > > top 'properties" firstly. Then use 'if' restrict it. But I am not sure for that. only > > dt_binding_check is not enough because your example have not use clocks and > > clok-names. > > > > I have run dtbs_check and dt_binding_check in my local env. there were no > warnings and errors. Is there already the DT part somewhere? Do you mind sharing it? Best regards, Alexander
Hi, Am Freitag, 18. Oktober 2024, 09:50:43 CEST schrieb Wei Fang: > > -----Original Message----- > > From: Alexander Stein <alexander.stein@ew.tq-group.com> > > Sent: 2024年10月18日 14:53 > > To: Frank Li <frank.li@nxp.com>; Wei Fang <wei.fang@nxp.com> > > Cc: davem@davemloft.net; edumazet@google.com; kuba@kernel.org; > > pabeni@redhat.com; robh@kernel.org; krzk+dt@kernel.org; > > conor+dt@kernel.org; Vladimir Oltean <vladimir.oltean@nxp.com>; Claudiu > > Manoil <claudiu.manoil@nxp.com>; Clark Wang <xiaoning.wang@nxp.com>; > > christophe.leroy@csgroup.eu; linux@armlinux.org.uk; bhelgaas@google.com; > > horms@kernel.org; imx@lists.linux.dev; netdev@vger.kernel.org; > > devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; > > linux-pci@vger.kernel.org > > Subject: Re: [PATCH v3 net-next 02/13] dt-bindings: net: add i.MX95 ENETC > > support > > > > Hi, > > > > Am Freitag, 18. Oktober 2024, 03:20:55 CEST schrieb Wei Fang: > > > > -----Original Message----- > > > > From: Frank Li <frank.li@nxp.com> > > > > Sent: 2024年10月18日 0:23 > > > > To: Wei Fang <wei.fang@nxp.com> > > > > Cc: davem@davemloft.net; edumazet@google.com; kuba@kernel.org; > > > > pabeni@redhat.com; robh@kernel.org; krzk+dt@kernel.org; > > > > conor+dt@kernel.org; Vladimir Oltean <vladimir.oltean@nxp.com>; > > > > conor+Claudiu > > > > Manoil <claudiu.manoil@nxp.com>; Clark Wang > > <xiaoning.wang@nxp.com>; > > > > christophe.leroy@csgroup.eu; linux@armlinux.org.uk; > > > > bhelgaas@google.com; horms@kernel.org; imx@lists.linux.dev; > > > > netdev@vger.kernel.org; devicetree@vger.kernel.org; > > > > linux-kernel@vger.kernel.org; linux-pci@vger.kernel.org > > > > Subject: Re: [PATCH v3 net-next 02/13] dt-bindings: net: add i.MX95 > > > > ENETC support > > > > > > > > On Thu, Oct 17, 2024 at 03:46:26PM +0800, Wei Fang wrote: > > > > > The ENETC of i.MX95 has been upgraded to revision 4.1, and the > > > > > vendor ID and device ID have also changed, so add the new > > > > > compatible strings for i.MX95 ENETC. In addition, i.MX95 supports > > > > > configuration of RGMII or RMII reference clock. > > > > > > > > > > Signed-off-by: Wei Fang <wei.fang@nxp.com> > > > > > --- > > > > > v2: Remove "nxp,imx95-enetc" compatible string. > > > > > v3: > > > > > 1. Add restriction to "clcoks" and "clock-names" properties and > > > > > rename the clock, also remove the items from these two properties. > > > > > 2. Remove unnecessary items for "pci1131,e101" compatible string. > > > > > --- > > > > > .../devicetree/bindings/net/fsl,enetc.yaml | 22 > > ++++++++++++++++--- > > > > > 1 file changed, 19 insertions(+), 3 deletions(-) > > > > > > > > > > diff --git a/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > > > b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > > > index e152c93998fe..e418c3e6e6b1 100644 > > > > > --- a/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > > > +++ b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > > > @@ -20,10 +20,13 @@ maintainers: > > > > > > > > > > properties: > > > > > compatible: > > > > > - items: > > > > > + oneOf: > > > > > + - items: > > > > > + - enum: > > > > > + - pci1957,e100 > > > > > + - const: fsl,enetc > > > > > - enum: > > > > > - - pci1957,e100 > > > > > - - const: fsl,enetc > > > > > + - pci1131,e101 > > > > > > > > > > reg: > > > > > maxItems: 1 > > > > > @@ -40,6 +43,19 @@ required: > > > > > allOf: > > > > > - $ref: /schemas/pci/pci-device.yaml > > > > > - $ref: ethernet-controller.yaml > > > > > + - if: > > > > > + properties: > > > > > + compatible: > > > > > + contains: > > > > > + enum: > > > > > + - pci1131,e101 > > > > > + then: > > > > > + properties: > > > > > + clocks: > > > > > + maxItems: 1 > > > > > + description: MAC transmit/receiver reference clock > > > > > + clock-names: > > > > > + const: ref > > > > > > > > Did you run CHECK_DTBS for your dts file? clocks\clock-names should > > > > be under top 'properties" firstly. Then use 'if' restrict it. But I > > > > am not sure for that. only dt_binding_check is not enough because > > > > your example have not use clocks and clok-names. > > > > > > > > > > I have run dtbs_check and dt_binding_check in my local env. there were > > > no warnings and errors. > > > > Is there already the DT part somewhere? Do you mind sharing it? > > > I will prepare the DT patch when this series is applied. Below is my local > patch of imx95.dtsi. FYI. > > [snip] Thanks for providing the DT patch. With this I was able to get ethernet running on my i.MX95 based board. Please keep me on CC if you send DT patch. Thanks. Best regards, Alexander
On Thu, Oct 17, 2024 at 12:23:05PM -0400, Frank Li wrote: > On Thu, Oct 17, 2024 at 03:46:26PM +0800, Wei Fang wrote: > > The ENETC of i.MX95 has been upgraded to revision 4.1, and the vendor > > ID and device ID have also changed, so add the new compatible strings > > for i.MX95 ENETC. In addition, i.MX95 supports configuration of RGMII > > or RMII reference clock. > > > > Signed-off-by: Wei Fang <wei.fang@nxp.com> > > --- > > v2: Remove "nxp,imx95-enetc" compatible string. > > v3: > > 1. Add restriction to "clcoks" and "clock-names" properties and rename > > the clock, also remove the items from these two properties. > > 2. Remove unnecessary items for "pci1131,e101" compatible string. > > --- > > .../devicetree/bindings/net/fsl,enetc.yaml | 22 ++++++++++++++++--- > > 1 file changed, 19 insertions(+), 3 deletions(-) > > > > diff --git a/Documentation/devicetree/bindings/net/fsl,enetc.yaml b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > index e152c93998fe..e418c3e6e6b1 100644 > > --- a/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > +++ b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > @@ -20,10 +20,13 @@ maintainers: > > > > properties: > > compatible: > > - items: > > + oneOf: > > + - items: > > + - enum: > > + - pci1957,e100 > > + - const: fsl,enetc > > - enum: > > - - pci1957,e100 > > - - const: fsl,enetc > > + - pci1131,e101 > > > > reg: > > maxItems: 1 > > @@ -40,6 +43,19 @@ required: > > allOf: > > - $ref: /schemas/pci/pci-device.yaml > > - $ref: ethernet-controller.yaml > > + - if: > > + properties: > > + compatible: > > + contains: > > + enum: > > + - pci1131,e101 > > + then: > > + properties: > > + clocks: > > + maxItems: 1 > > + description: MAC transmit/receiver reference clock > > + clock-names: > > + const: ref > > Did you run CHECK_DTBS for your dts file? clocks\clock-names should be > under top 'properties" firstly. Then use 'if' restrict it. But I am not > sure for that. only dt_binding_check is not enough because your example > have not use clocks and clok-names. That's a manual check, but yes. Define all properties at top level. Rob
> > > Is there already the DT part somewhere? Do you mind sharing it? > > > > > I will prepare the DT patch when this series is applied. Below is my > > local patch of imx95.dtsi. FYI. > > > [snip] > > Thanks for providing the DT patch. With this I was able to get ethernet running > on my i.MX95 based board. > Please keep me on CC if you send DT patch. Thanks. > Okay, I will.
> -----Original Message----- > From: Rob Herring <robh@kernel.org> > Sent: 2024年10月18日 21:09 > To: Frank Li <frank.li@nxp.com> > Cc: Wei Fang <wei.fang@nxp.com>; davem@davemloft.net; > edumazet@google.com; kuba@kernel.org; pabeni@redhat.com; > krzk+dt@kernel.org; conor+dt@kernel.org; Vladimir Oltean > <vladimir.oltean@nxp.com>; Claudiu Manoil <claudiu.manoil@nxp.com>; > Clark Wang <xiaoning.wang@nxp.com>; christophe.leroy@csgroup.eu; > linux@armlinux.org.uk; bhelgaas@google.com; horms@kernel.org; > imx@lists.linux.dev; netdev@vger.kernel.org; devicetree@vger.kernel.org; > linux-kernel@vger.kernel.org; linux-pci@vger.kernel.org > Subject: Re: [PATCH v3 net-next 02/13] dt-bindings: net: add i.MX95 ENETC > support > > On Thu, Oct 17, 2024 at 12:23:05PM -0400, Frank Li wrote: > > On Thu, Oct 17, 2024 at 03:46:26PM +0800, Wei Fang wrote: > > > The ENETC of i.MX95 has been upgraded to revision 4.1, and the > > > vendor ID and device ID have also changed, so add the new compatible > > > strings for i.MX95 ENETC. In addition, i.MX95 supports configuration > > > of RGMII or RMII reference clock. > > > > > > Signed-off-by: Wei Fang <wei.fang@nxp.com> > > > --- > > > v2: Remove "nxp,imx95-enetc" compatible string. > > > v3: > > > 1. Add restriction to "clcoks" and "clock-names" properties and > > > rename the clock, also remove the items from these two properties. > > > 2. Remove unnecessary items for "pci1131,e101" compatible string. > > > --- > > > .../devicetree/bindings/net/fsl,enetc.yaml | 22 ++++++++++++++++--- > > > 1 file changed, 19 insertions(+), 3 deletions(-) > > > > > > diff --git a/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > index e152c93998fe..e418c3e6e6b1 100644 > > > --- a/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > +++ b/Documentation/devicetree/bindings/net/fsl,enetc.yaml > > > @@ -20,10 +20,13 @@ maintainers: > > > > > > properties: > > > compatible: > > > - items: > > > + oneOf: > > > + - items: > > > + - enum: > > > + - pci1957,e100 > > > + - const: fsl,enetc > > > - enum: > > > - - pci1957,e100 > > > - - const: fsl,enetc > > > + - pci1131,e101 > > > > > > reg: > > > maxItems: 1 > > > @@ -40,6 +43,19 @@ required: > > > allOf: > > > - $ref: /schemas/pci/pci-device.yaml > > > - $ref: ethernet-controller.yaml > > > + - if: > > > + properties: > > > + compatible: > > > + contains: > > > + enum: > > > + - pci1131,e101 > > > + then: > > > + properties: > > > + clocks: > > > + maxItems: 1 > > > + description: MAC transmit/receiver reference clock > > > + clock-names: > > > + const: ref > > > > Did you run CHECK_DTBS for your dts file? clocks\clock-names should be > > under top 'properties" firstly. Then use 'if' restrict it. But I am > > not sure for that. only dt_binding_check is not enough because your > > example have not use clocks and clok-names. > > That's a manual check, but yes. Define all properties at top level. > Okay, I will move them to top level, thanks.
diff --git a/Documentation/devicetree/bindings/net/fsl,enetc.yaml b/Documentation/devicetree/bindings/net/fsl,enetc.yaml index e152c93998fe..e418c3e6e6b1 100644 --- a/Documentation/devicetree/bindings/net/fsl,enetc.yaml +++ b/Documentation/devicetree/bindings/net/fsl,enetc.yaml @@ -20,10 +20,13 @@ maintainers: properties: compatible: - items: + oneOf: + - items: + - enum: + - pci1957,e100 + - const: fsl,enetc - enum: - - pci1957,e100 - - const: fsl,enetc + - pci1131,e101 reg: maxItems: 1 @@ -40,6 +43,19 @@ required: allOf: - $ref: /schemas/pci/pci-device.yaml - $ref: ethernet-controller.yaml + - if: + properties: + compatible: + contains: + enum: + - pci1131,e101 + then: + properties: + clocks: + maxItems: 1 + description: MAC transmit/receiver reference clock + clock-names: + const: ref unevaluatedProperties: false
The ENETC of i.MX95 has been upgraded to revision 4.1, and the vendor ID and device ID have also changed, so add the new compatible strings for i.MX95 ENETC. In addition, i.MX95 supports configuration of RGMII or RMII reference clock. Signed-off-by: Wei Fang <wei.fang@nxp.com> --- v2: Remove "nxp,imx95-enetc" compatible string. v3: 1. Add restriction to "clcoks" and "clock-names" properties and rename the clock, also remove the items from these two properties. 2. Remove unnecessary items for "pci1131,e101" compatible string. --- .../devicetree/bindings/net/fsl,enetc.yaml | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-)