]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
dt-bindings: net: mdio: change nodename match pattern
authorFrank Li <Frank.Li@nxp.com>
Thu, 15 Aug 2024 16:34:07 +0000 (12:34 -0400)
committerJakub Kicinski <kuba@kernel.org>
Fri, 16 Aug 2024 21:28:53 +0000 (14:28 -0700)
Change mdio.yaml nodename match pattern to
'^mdio(-(bus|external))?(@.+|-([0-9]+))$'

Fix mdio.yaml wrong parser mdio controller's address instead phy's address
when mdio-mux exista.

For example:
mdio-mux-emi1@54 {
compatible = "mdio-mux-mmioreg", "mdio-mux";

        mdio@20 {
reg = <0x20>;
       ^^^ This is mdio controller register

ethernet-phy@2 {
reg = <0x2>;
                              ^^^ This phy's address
};
};
};

Only phy's address is limited to 31 because MDIO bus definition.

But CHECK_DTBS report below warning:

arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dtb: mdio-mux-emi1@54:
mdio@20:reg:0:0: 32 is greater than the maximum of 31

The reason is that "mdio-mux-emi1@54" match "nodename: '^mdio(@.*)?'" in
mdio.yaml.

Change to '^mdio(-(bus|external))?(@.+|-([0-9]+))?$' to avoid wrong match
mdio mux controller's node.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://patch.msgid.link/20240815163408.4184705-1-Frank.Li@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Documentation/devicetree/bindings/net/mdio.yaml

index a266ade918ca7cd72a4380c2f53ba9d65d97c92f..bed3987a8fbf61249037c343288d02b2227ce1d1 100644 (file)
@@ -19,7 +19,7 @@ description:
 
 properties:
   $nodename:
-    pattern: "^mdio(@.*)?"
+    pattern: '^mdio(-(bus|external))?(@.+|-([0-9]+))?$'
 
   "#address-cells":
     const: 1