Re: [PATCH v6 1/7] dt-bindings: net: qcom: document the ethqos device for SCMI-based systems

From: Romain Gantois
Date: Mon Dec 29 2025 - 02:35:24 EST


On Friday, 19 December 2025 12:42:16 CET Bartosz Golaszewski wrote:

> From: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx>

>

> Describe the firmware-managed variant of the QCom DesignWare MAC. As the

> properties here differ a lot from the HLOS-managed variant, lets put it

> in a separate file. Since we need to update the maximum number of power

> domains, let's update existing bindings referencing the top-level

> snps,dwmac.yaml and limit their maxItems for power-domains to 1.

>

> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx>

> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxxxxxxxx>

> ---

>  .../bindings/net/allwinner,sun7i-a20-gmac.yaml     |  3 +

>  .../bindings/net/altr,socfpga-stmmac.yaml          |  3 +

>  .../bindings/net/amlogic,meson-dwmac.yaml          |  3 +

>  .../devicetree/bindings/net/eswin,eic7700-eth.yaml |  3 +

>  .../devicetree/bindings/net/intel,dwmac-plat.yaml  |  3 +

>  .../bindings/net/loongson,ls1b-gmac.yaml           |  3 +

>  .../bindings/net/loongson,ls1c-emac.yaml           |  3 +

>  .../devicetree/bindings/net/nxp,dwmac-imx.yaml     |  3 +

>  .../devicetree/bindings/net/nxp,lpc1850-dwmac.yaml |  3 +

>  .../devicetree/bindings/net/nxp,s32-dwmac.yaml     |  3 +

>  .../devicetree/bindings/net/qcom,ethqos.yaml       |  3 +

>  .../bindings/net/qcom,sa8255p-ethqos.yaml          | 98

> ++++++++++++++++++++++ .../devicetree/bindings/net/renesas,rzn1-gmac.yaml |

>  3 +

>  .../bindings/net/renesas,rzv2h-gbeth.yaml          |  3 +

>  .../devicetree/bindings/net/rockchip-dwmac.yaml    |  3 +

>  .../devicetree/bindings/net/snps,dwmac.yaml        |  5 +-

>  .../bindings/net/sophgo,cv1800b-dwmac.yaml         |  3 +

>  .../bindings/net/sophgo,sg2044-dwmac.yaml          |  3 +

>  .../bindings/net/starfive,jh7110-dwmac.yaml        |  3 +

>  .../devicetree/bindings/net/stm32-dwmac.yaml       |  3 +

>  .../devicetree/bindings/net/tesla,fsd-ethqos.yaml  |  3 +

>  .../devicetree/bindings/net/thead,th1520-gmac.yaml |  3 +

>  .../bindings/net/toshiba,visconti-dwmac.yaml       |  3 +

>  MAINTAINERS                                        |  1 +

>  24 files changed, 166 insertions(+), 1 deletion(-)

>

> diff --git

> a/Documentation/devicetree/bindings/net/allwinner,sun7i-a20-gmac.yaml

> b/Documentation/devicetree/bindings/net/allwinner,sun7i-a20-gmac.yaml index

> 23e92be33ac8..b12632545673 100644

> --- a/Documentation/devicetree/bindings/net/allwinner,sun7i-a20-gmac.yaml

> +++ b/Documentation/devicetree/bindings/net/allwinner,sun7i-a20-gmac.yaml

> @@ -40,6 +40,9 @@ properties:

>      description:

>        PHY regulator

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - reg

> diff --git a/Documentation/devicetree/bindings/net/altr,socfpga-stmmac.yaml

> b/Documentation/devicetree/bindings/net/altr,socfpga-stmmac.yaml index

> fc445ad5a1f1..448e617cddc4 100644

> --- a/Documentation/devicetree/bindings/net/altr,socfpga-stmmac.yaml

> +++ b/Documentation/devicetree/bindings/net/altr,socfpga-stmmac.yaml

> @@ -140,6 +140,9 @@ properties:

>            - description: offset of the control register

>            - description: shift within the control register

>

> +  power-domains:

> +    maxItems: 1

> +

>  patternProperties:

>    "^mdio[0-9]$":

>      type: object

> diff --git a/Documentation/devicetree/bindings/net/amlogic,meson-dwmac.yaml

> b/Documentation/devicetree/bindings/net/amlogic,meson-dwmac.yaml index

> 5c91716d1f21..9c9cc3ef384d 100644

> --- a/Documentation/devicetree/bindings/net/amlogic,meson-dwmac.yaml

> +++ b/Documentation/devicetree/bindings/net/amlogic,meson-dwmac.yaml

> @@ -158,6 +158,9 @@ properties:

>    interrupt-names:

>      const: macirq

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - reg

> diff --git a/Documentation/devicetree/bindings/net/eswin,eic7700-eth.yaml

> b/Documentation/devicetree/bindings/net/eswin,eic7700-eth.yaml index

> 91e8cd1db67b..c1b67cfa76d0 100644

> --- a/Documentation/devicetree/bindings/net/eswin,eic7700-eth.yaml

> +++ b/Documentation/devicetree/bindings/net/eswin,eic7700-eth.yaml

> @@ -83,6 +83,9 @@ properties:

>                           register

>            - description: Offset of register controlling TX/RX clock delay

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - reg

> diff --git a/Documentation/devicetree/bindings/net/intel,dwmac-plat.yaml

> b/Documentation/devicetree/bindings/net/intel,dwmac-plat.yaml index

> 62c1da36a2b5..e41851931b94 100644

> --- a/Documentation/devicetree/bindings/net/intel,dwmac-plat.yaml

> +++ b/Documentation/devicetree/bindings/net/intel,dwmac-plat.yaml

> @@ -47,6 +47,9 @@ properties:

>    interrupt-names:

>      const: macirq

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - clocks

> diff --git a/Documentation/devicetree/bindings/net/loongson,ls1b-gmac.yaml

> b/Documentation/devicetree/bindings/net/loongson,ls1b-gmac.yaml index

> c4f3224bad38..c9a131b8d830 100644

> --- a/Documentation/devicetree/bindings/net/loongson,ls1b-gmac.yaml

> +++ b/Documentation/devicetree/bindings/net/loongson,ls1b-gmac.yaml

> @@ -66,6 +66,9 @@ properties:

>        - mii

>        - rgmii-id

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - reg

> diff --git a/Documentation/devicetree/bindings/net/loongson,ls1c-emac.yaml

> b/Documentation/devicetree/bindings/net/loongson,ls1c-emac.yaml index

> 99001b940b83..49db18423dd8 100644

> --- a/Documentation/devicetree/bindings/net/loongson,ls1c-emac.yaml

> +++ b/Documentation/devicetree/bindings/net/loongson,ls1c-emac.yaml

> @@ -65,6 +65,9 @@ properties:

>        - mii

>        - rmii

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - reg

> diff --git a/Documentation/devicetree/bindings/net/nxp,dwmac-imx.yaml

> b/Documentation/devicetree/bindings/net/nxp,dwmac-imx.yaml index

> e5db346beca9..b240c76e7dd5 100644

> --- a/Documentation/devicetree/bindings/net/nxp,dwmac-imx.yaml

> +++ b/Documentation/devicetree/bindings/net/nxp,dwmac-imx.yaml

> @@ -83,6 +83,9 @@ properties:

>      description:

>        To select RMII reference clock from external.

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - clocks

> diff --git a/Documentation/devicetree/bindings/net/nxp,lpc1850-dwmac.yaml

> b/Documentation/devicetree/bindings/net/nxp,lpc1850-dwmac.yaml index

> 05acd9bc7616..f61188ab0dbe 100644

> --- a/Documentation/devicetree/bindings/net/nxp,lpc1850-dwmac.yaml

> +++ b/Documentation/devicetree/bindings/net/nxp,lpc1850-dwmac.yaml

> @@ -51,6 +51,9 @@ properties:

>      items:

>        - const: stmmaceth

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - reg

> diff --git a/Documentation/devicetree/bindings/net/nxp,s32-dwmac.yaml

> b/Documentation/devicetree/bindings/net/nxp,s32-dwmac.yaml index

> 2b8b74c5feec..716407a75079 100644

> --- a/Documentation/devicetree/bindings/net/nxp,s32-dwmac.yaml

> +++ b/Documentation/devicetree/bindings/net/nxp,s32-dwmac.yaml

> @@ -52,6 +52,9 @@ properties:

>        - const: rx

>        - const: ptp_ref

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - clocks

>    - clock-names

> diff --git a/Documentation/devicetree/bindings/net/qcom,ethqos.yaml

> b/Documentation/devicetree/bindings/net/qcom,ethqos.yaml index

> 423959cb928d..ef520f810577 100644

> --- a/Documentation/devicetree/bindings/net/qcom,ethqos.yaml

> +++ b/Documentation/devicetree/bindings/net/qcom,ethqos.yaml

> @@ -86,6 +86,9 @@ properties:

>    phy-names:

>      const: serdes

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - clocks

> diff --git a/Documentation/devicetree/bindings/net/qcom,sa8255p-ethqos.yaml

> b/Documentation/devicetree/bindings/net/qcom,sa8255p-ethqos.yaml new file

> mode 100644

> index 000000000000..72bb764c0ca0

> --- /dev/null

> +++ b/Documentation/devicetree/bindings/net/qcom,sa8255p-ethqos.yaml

> @@ -0,0 +1,98 @@

> +# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause

> +%YAML 1.2

> +---

> +$id: http://devicetree.org/schemas/net/qcom,sa8255p-ethqos.yaml#

> +$schema: http://devicetree.org/meta-schemas/core.yaml#

> +

> +title: Qualcomm Ethernet ETHQOS device (firmware managed)

> +

> +maintainers:

> +  - Bjorn Andersson <andersson@xxxxxxxxxx>

> +  - Konrad Dybcio <konradybcio@xxxxxxxxxx>

> +  - Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx>

> +

> +description:

> +  dwmmac based Qualcomm ethernet devices which support Gigabit

> +  ethernet (version v2.3.0 and onwards) with clocks, interconnects, etc.

> +  managed by firmware

> +

> +allOf:

> +  - $ref: snps,dwmac.yaml#

> +

> +properties:

> +  compatible:

> +    const: qcom,sa8255p-ethqos

> +

> +  reg:

> +    maxItems: 2

> +

> +  reg-names:

> +    items:

> +      - const: stmmaceth

> +      - const: rgmii

> +

> +  interrupts:

> +    items:

> +      - description: Combined signal for various interrupt events

> +      - description: The interrupt that occurs when HW safety error

> triggered +

> +  interrupt-names:

> +    items:

> +      - const: macirq

> +      - const: sfty

> +

> +  power-domains:

> +    minItems: 3

> +    maxItems: 3

> +

> +  power-domain-names:

> +    items:

> +      - const: core

> +      - const: mdio

> +      - const: serdes

> +

> +  iommus:

> +    maxItems: 1

> +

> +  dma-coherent: true

> +

> +required:

> +  - compatible

> +  - reg-names

> +  - power-domains

> +  - power-domain-names

> +

> +unevaluatedProperties: false

> +

> +examples:

> +  - |

> +    #include <dt-bindings/interrupt-controller/arm-gic.h>

> +

> +    ethernet: ethernet@7a80000 {

> +        compatible = "qcom,sa8255p-ethqos";

> +        reg = <0x23040000 0x10000>,

> +              <0x23056000 0x100>;

> +        reg-names = "stmmaceth", "rgmii";

> +

> +        iommus = <&apps_smmu 0x120 0x7>;

> +

> +        interrupts = <GIC_SPI 946 IRQ_TYPE_LEVEL_HIGH>,

> +                     <GIC_SPI 782 IRQ_TYPE_LEVEL_HIGH>;

> +        interrupt-names = "macirq", "sfty";

> +

> +        dma-coherent;

> +

> +        snps,tso;

> +        snps,pbl = <32>;

> +        rx-fifo-depth = <16384>;

> +        tx-fifo-depth = <16384>;

> +

> +        phy-handle = <&ethernet_phy>;

> +        phy-mode = "2500base-x";

> +

> +        snps,mtl-rx-config = <&mtl_rx_setup1>;

> +        snps,mtl-tx-config = <&mtl_tx_setup1>;

> +

> +        power-domains = <&scmi8_pd 0>, <&scmi8_pd 1>, <&scmi8_dvfs 0>;

> +        power-domain-names = "core", "mdio", "serdes";

> +    };

> diff --git a/Documentation/devicetree/bindings/net/renesas,rzn1-gmac.yaml

> b/Documentation/devicetree/bindings/net/renesas,rzn1-gmac.yaml index

> 16dd7a2631ab..ed0d10a19ca4 100644

> --- a/Documentation/devicetree/bindings/net/renesas,rzn1-gmac.yaml

> +++ b/Documentation/devicetree/bindings/net/renesas,rzn1-gmac.yaml

> @@ -44,6 +44,9 @@ properties:

>        phandle pointing to a PCS sub-node compatible with

>        renesas,rzn1-miic.yaml#

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>

> diff --git a/Documentation/devicetree/bindings/net/renesas,rzv2h-gbeth.yaml

> b/Documentation/devicetree/bindings/net/renesas,rzv2h-gbeth.yaml index

> bd53ab300f50..bc5054b05f6d 100644

> --- a/Documentation/devicetree/bindings/net/renesas,rzv2h-gbeth.yaml

> +++ b/Documentation/devicetree/bindings/net/renesas,rzv2h-gbeth.yaml

> @@ -123,6 +123,9 @@ properties:

>        Documentation/devicetree/bindings/net/pcs/renesas,rzn1-miic.yaml#

>        (Refer RZ/T2H portion in the DT-binding file)

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - reg

> diff --git a/Documentation/devicetree/bindings/net/rockchip-dwmac.yaml

> b/Documentation/devicetree/bindings/net/rockchip-dwmac.yaml index

> d17112527dab..ef82ff2a2884 100644

> --- a/Documentation/devicetree/bindings/net/rockchip-dwmac.yaml

> +++ b/Documentation/devicetree/bindings/net/rockchip-dwmac.yaml

> @@ -121,6 +121,9 @@ properties:

>    phy-supply:

>      description: PHY regulator

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - clocks

> diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml

> b/Documentation/devicetree/bindings/net/snps,dwmac.yaml index

> dd3c72e8363e..312d1bbc2ad1 100644

> --- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml

> +++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml

> @@ -71,6 +71,7 @@ properties:

>          - loongson,ls7a-dwmac

>          - nxp,s32g2-dwmac

>          - qcom,qcs404-ethqos

> +        - qcom,sa8255p-ethqos

>          - qcom,sa8775p-ethqos

>          - qcom,sc8280xp-ethqos

>          - qcom,sm8150-ethqos

> @@ -180,7 +181,8 @@ properties:

>            - const: ahb

>

>    power-domains:

> -    maxItems: 1

> +    minItems: 1

> +    maxItems: 3

>

>    mac-mode:

>      $ref: ethernet-controller.yaml#/properties/phy-connection-type

> @@ -643,6 +645,7 @@ allOf:

>                  - ingenic,x1830-mac

>                  - ingenic,x2000-mac

>                  - qcom,qcs404-ethqos

> +                - qcom,sa8255p-ethqos

>                  - qcom,sa8775p-ethqos

>                  - qcom,sc8280xp-ethqos

>                  - qcom,sm8150-ethqos

> diff --git a/Documentation/devicetree/bindings/net/sophgo,cv1800b-dwmac.yaml

> b/Documentation/devicetree/bindings/net/sophgo,cv1800b-dwmac.yaml index

> b89456f0ef83..e78cbf594c69 100644

> --- a/Documentation/devicetree/bindings/net/sophgo,cv1800b-dwmac.yaml

> +++ b/Documentation/devicetree/bindings/net/sophgo,cv1800b-dwmac.yaml

> @@ -49,6 +49,9 @@ properties:

>    reset-names:

>      const: stmmaceth

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - reg

> diff --git a/Documentation/devicetree/bindings/net/sophgo,sg2044-dwmac.yaml

> b/Documentation/devicetree/bindings/net/sophgo,sg2044-dwmac.yaml index

> e8d3814db0e9..845e2c67d200 100644

> --- a/Documentation/devicetree/bindings/net/sophgo,sg2044-dwmac.yaml

> +++ b/Documentation/devicetree/bindings/net/sophgo,sg2044-dwmac.yaml

> @@ -52,6 +52,9 @@ properties:

>    interrupt-names:

>      maxItems: 1

>

> +  power-domains:

> +    maxItems: 1

> +

>    resets:

>      maxItems: 1

>

> diff --git

> a/Documentation/devicetree/bindings/net/starfive,jh7110-dwmac.yaml

> b/Documentation/devicetree/bindings/net/starfive,jh7110-dwmac.yaml index

> 313a15331661..8a68c6d7b5c6 100644

> --- a/Documentation/devicetree/bindings/net/starfive,jh7110-dwmac.yaml

> +++ b/Documentation/devicetree/bindings/net/starfive,jh7110-dwmac.yaml

> @@ -71,6 +71,9 @@ properties:

>        The argument one is the offset of phy mode selection, the

>        argument two is the shift of phy mode selection.

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - reg

> diff --git a/Documentation/devicetree/bindings/net/stm32-dwmac.yaml

> b/Documentation/devicetree/bindings/net/stm32-dwmac.yaml index

> 987254900d0d..29b878079ff0 100644

> --- a/Documentation/devicetree/bindings/net/stm32-dwmac.yaml

> +++ b/Documentation/devicetree/bindings/net/stm32-dwmac.yaml

> @@ -121,6 +121,9 @@ properties:

>      minItems: 1

>      maxItems: 2

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - clocks

> diff --git a/Documentation/devicetree/bindings/net/tesla,fsd-ethqos.yaml

> b/Documentation/devicetree/bindings/net/tesla,fsd-ethqos.yaml index

> dd7481bb16e5..ad635529d676 100644

> --- a/Documentation/devicetree/bindings/net/tesla,fsd-ethqos.yaml

> +++ b/Documentation/devicetree/bindings/net/tesla,fsd-ethqos.yaml

> @@ -67,6 +67,9 @@ properties:

>        - rgmii-rxid

>        - rgmii-txid

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - reg

> diff --git a/Documentation/devicetree/bindings/net/thead,th1520-gmac.yaml

> b/Documentation/devicetree/bindings/net/thead,th1520-gmac.yaml index

> b3492a9aa4ef..c859f8bb5d58 100644

> --- a/Documentation/devicetree/bindings/net/thead,th1520-gmac.yaml

> +++ b/Documentation/devicetree/bindings/net/thead,th1520-gmac.yaml

> @@ -78,6 +78,9 @@ properties:

>      items:

>        - const: macirq

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - clocks

>    - clock-names

> diff --git

> a/Documentation/devicetree/bindings/net/toshiba,visconti-dwmac.yaml

> b/Documentation/devicetree/bindings/net/toshiba,visconti-dwmac.yaml index

> f0f32e18fc85..efa39eab0256 100644

> --- a/Documentation/devicetree/bindings/net/toshiba,visconti-dwmac.yaml

> +++ b/Documentation/devicetree/bindings/net/toshiba,visconti-dwmac.yaml

> @@ -48,6 +48,9 @@ properties:

>    interrupt-names:

>      const: macirq

>

> +  power-domains:

> +    maxItems: 1

> +

>  required:

>    - compatible

>    - reg

> diff --git a/MAINTAINERS b/MAINTAINERS

> index 5b11839cba9d..fc8a25414417 100644

> --- a/MAINTAINERS

> +++ b/MAINTAINERS

> @@ -21429,6 +21429,7 @@ L:    netdev@xxxxxxxxxxxxxxx

>  L:    linux-arm-msm@xxxxxxxxxxxxxxx

>  S:    Maintained

>  F:    Documentation/devicetree/bindings/net/qcom,ethqos.yaml

> +F:    Documentation/devicetree/bindings/net/qcom,sa8255p-ethqos.yaml

>  F:    drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c

>

>  QUALCOMM FASTRPC DRIVER


Haven't found any mentions of multiple power domains for RZ/N1, so LGTM.


Reviewed-by: Romain Gantois <romain.gantois@xxxxxxxxxxx> # For RZ/N1



Attachment: signature.asc
Description: This is a digitally signed message part.