Re: [PATCH] dt-bindings: net: nvidia,tegra234-mgbe: Add missing properties

From: Thierry Reding

Date: Mon Aug 17 2026 - 08:18:16 EST


On Fri, Jul 17, 2026 at 04:27:19PM -0500, Rob Herring wrote:
> On Thu, Jul 16, 2026 at 11:20:01PM +0200, Thierry Reding wrote:
> > From: Thierry Reding <treding@xxxxxxxxxx>
> >
> > Being a DWMAC derivative, the Tegra234 MGBE supports AXI configuration
> > nodes named stmmac-axi-config and phandle references to them using the
> > snps,axi-config property.
> >
> > While at it, add the 10gbase-r PHY mode.
> >
> > Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
> > ---
> > This gets rid of the remaining warnings on half of the Tegra234 boards.
> >
> > .../devicetree/bindings/net/nvidia,tegra234-mgbe.yaml | 9 ++++++++-
> > 1 file changed, 8 insertions(+), 1 deletion(-)
> >
> > diff --git a/Documentation/devicetree/bindings/net/nvidia,tegra234-mgbe.yaml b/Documentation/devicetree/bindings/net/nvidia,tegra234-mgbe.yaml
> > index 215f14d1897d..dc897e312c55 100644
> > --- a/Documentation/devicetree/bindings/net/nvidia,tegra234-mgbe.yaml
> > +++ b/Documentation/devicetree/bindings/net/nvidia,tegra234-mgbe.yaml
> > @@ -81,8 +81,9 @@ properties:
> > phy-mode:
> > contains:
> > enum:
> > - - usxgmii
> > - 10gbase-kr
> > + - 10gbase-r
> > + - usxgmii
> >
> > mdio:
> > $ref: mdio.yaml#
> > @@ -90,6 +91,12 @@ properties:
> > description:
> > Optional node for embedded MDIO controller.
> >
> > + snps,axi-config:
> > + $ref: snps,dwmac.yaml#/properties/snps,axi-config
> > +
> > + stmmac-axi-config:
> > + $ref: snps,dwmac.yaml#/properties/stmmac-axi-config
>
> You should be referencing the whole snps,dwmac.yaml.

I initially tried that, but it makes things a lot worse:

Documentation/devicetree/bindings/net/nvidia,tegra234-mgbe.example.dtb: ethernet@6800000 (nvidia,tegra234-mgbe): clock-names: ['mgbe', 'mac', 'mac-divider', 'ptp_ref', 'rx-input-m', 'rx-input', 'tx', 'eee-pcs', 'rx-pcs-input', 'rx-pcs-m', 'rx-pcs', 'tx-pcs'] is too long
from schema $id: http://devicetree.org/schemas/net/nvidia,tegra234-mgbe.yaml
Documentation/devicetree/bindings/net/nvidia,tegra234-mgbe.example.dtb: ethernet@6800000 (nvidia,tegra234-mgbe): clocks: [[4294967295, 380], [4294967295, 377], [4294967295, 376], [4294967295, 381], [4294967295, 357], [4294967295, 248], [4294967295, 374], [4294967295, 379], [4294967295, 369], [4294967295, 361], [4294967295, 373], [4294967295, 375]] is too long
from schema $id: http://devicetree.org/schemas/net/nvidia,tegra234-mgbe.yaml
Documentation/devicetree/bindings/net/nvidia,tegra234-mgbe.example.dtb: ethernet@6800000 (nvidia,tegra234-mgbe): compatible: ['nvidia,tegra234-mgbe'] does not contain items matching the given schema
from schema $id: http://devicetree.org/schemas/net/nvidia,tegra234-mgbe.yaml
Documentation/devicetree/bindings/net/nvidia,tegra234-mgbe.example.dtb: ethernet@6800000 (nvidia,tegra234-mgbe): interrupt-names:0: 'oneOf' conditional failed, one must be fixed:
'macirq' was expected
'eth_wake_irq' was expected
'eth_lpi' was expected
'sfty' was expected
'common' does not match '^rx-queue-[0-7]$'
'common' does not match '^tx-queue-[0-7]$'
'common' does not match '^ptp-pps-[0-3]$'
from schema $id: http://devicetree.org/schemas/net/nvidia,tegra234-mgbe.yaml
Documentation/devicetree/bindings/net/nvidia,tegra234-mgbe.example.dtb: ethernet@6800000 (nvidia,tegra234-mgbe): mdio: 'compatible' is a required property
from schema $id: http://devicetree.org/schemas/net/nvidia,tegra234-mgbe.yaml
Documentation/devicetree/bindings/net/nvidia,tegra234-mgbe.example.dtb: ethernet@6800000 (nvidia,tegra234-mgbe): reg: [[109051904, 65536], [109117440, 65536], [109707264, 65536]] is too long
from schema $id: http://devicetree.org/schemas/net/nvidia,tegra234-mgbe.yaml
Documentation/devicetree/bindings/net/nvidia,tegra234-mgbe.example.dtb: ethernet@6800000 (nvidia,tegra234-mgbe): reset-names: 'oneOf' conditional failed, one must be fixed:
['mac', 'pcs'] is too long
'mac' is not one of ['stmmaceth', 'ahb']
'stmmaceth' was expected
'ahb' was expected
from schema $id: http://devicetree.org/schemas/net/nvidia,tegra234-mgbe.yaml

This is because while the underlying IP is derived from the Synopsis
one, the Tegra MGBE is slightly modified and has different clock inputs,
interrupts, etc.

Or, well, I guess I don't actually know (does anyoen?) if the licensed
IP is properly represented by snps,dwmac.yaml, or if it's just a set of
values that happen to apply to some set of derived IPs.

Anyway, the easiest would probably be to just duplicate the
snps,axi-config property because it's only a phandle. stmmac-axi-config
not having a vendor prefix doesn't throw an error, so we could probably
keep it as-is.

I suppose another alternative would be to add special cases into
snps,dwmac.yaml, but I don't know if that's a great idea, it's just
going to make that very messy if everyone starts doing that.

Which do you prefer? Or is there another option that you think would be
better here?

Thanks,
Thierry

Attachment: signature.asc
Description: PGP signature