From: Rob Herring <robh@kernel.org>
To: Chen-Yu Tsai <wens@kernel.org>
Cc: Andrew Lunn <andrew+netdev@lunn.ch>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>, Chen-Yu Tsai <wens@csie.org>,
Jernej Skrabec <jernej@kernel.org>,
Samuel Holland <samuel@sholland.org>,
netdev@vger.kernel.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org,
Andre Przywara <andre.przywara@arm.com>
Subject: Re: [PATCH net-next v4 01/10] dt-bindings: net: sun8i-emac: Add A523 GMAC200 compatible
Date: Tue, 9 Sep 2025 21:22:30 -0500 [thread overview]
Message-ID: <20250910022230.GA3646514-robh@kernel.org> (raw)
In-Reply-To: <20250908181059.1785605-2-wens@kernel.org>
On Tue, Sep 09, 2025 at 02:10:50AM +0800, Chen-Yu Tsai wrote:
> From: Chen-Yu Tsai <wens@csie.org>
>
> The Allwinner A523 SoC family has a second Ethernet controller, called
> the GMAC200 in the BSP and T527 datasheet, and referred to as GMAC1 for
> numbering. This controller, according to BSP sources, is fully
> compatible with a slightly newer version of the Synopsys DWMAC core.
> The glue layer around the controller is the same as found around older
> DWMAC cores on Allwinner SoCs. The only slight difference is that since
> this is the second controller on the SoC, the register for the clock
> delay controls is at a different offset. Last, the integration includes
> a dedicated clock gate for the memory bus and the whole thing is put in
> a separately controllable power domain.
>
> Add a compatible string entry for it, and work in the requirements for
> a second clock and a power domain.
>
> Signed-off-by: Chen-Yu Tsai <wens@csie.org>
> ---
> Changes since v2:
> - Added "select" to avoid matching against all dwmac entries
> Changes since v1:
> - Switch to generic (tx|rx)-internal-delay-ps properties
> ---
> .../net/allwinner,sun8i-a83t-emac.yaml | 96 ++++++++++++++++++-
> 1 file changed, 94 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/net/allwinner,sun8i-a83t-emac.yaml b/Documentation/devicetree/bindings/net/allwinner,sun8i-a83t-emac.yaml
> index 2ac709a4c472..9d205c5d93ca 100644
> --- a/Documentation/devicetree/bindings/net/allwinner,sun8i-a83t-emac.yaml
> +++ b/Documentation/devicetree/bindings/net/allwinner,sun8i-a83t-emac.yaml
> @@ -10,6 +10,21 @@ maintainers:
> - Chen-Yu Tsai <wens@csie.org>
> - Maxime Ripard <mripard@kernel.org>
>
> +# We need a select here so we don't match all nodes with 'snps,dwmac'
> +select:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - allwinner,sun8i-a83t-emac
> + - allwinner,sun8i-h3-emac
> + - allwinner,sun8i-r40-gmac
> + - allwinner,sun8i-v3s-emac
> + - allwinner,sun50i-a64-emac
> + - allwinner,sun55i-a523-gmac200
> + required:
> + - compatible
> +
> properties:
> compatible:
> oneOf:
> @@ -26,6 +41,9 @@ properties:
> - allwinner,sun50i-h616-emac0
> - allwinner,sun55i-a523-gmac0
> - const: allwinner,sun50i-a64-emac
> + - items:
> + - const: allwinner,sun55i-a523-gmac200
> + - const: snps,dwmac-4.20a
>
> reg:
> maxItems: 1
> @@ -37,14 +55,19 @@ properties:
> const: macirq
>
> clocks:
> - maxItems: 1
> + minItems: 1
> + maxItems: 2
>
> clock-names:
> - const: stmmaceth
> + minItems: 1
> + maxItems: 2
minItems: 1
items:
- const: stmmaceth
- const: mbus
>
> phy-supply:
> description: PHY regulator
>
> + power-domains:
> + maxItems: 1
> +
> syscon:
> $ref: /schemas/types.yaml#/definitions/phandle
> description:
> @@ -191,6 +214,45 @@ allOf:
> - mdio-parent-bus
> - mdio@1
>
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: allwinner,sun55i-a523-gmac200
> + then:
> + properties:
> + clocks:
> + minItems: 2
> + clock-names:
> + items:
> + - const: stmmaceth
> + - const: mbus
Just 'minItems: 2' here.
> + tx-internal-delay-ps:
> + default: 0
> + minimum: 0
> + maximum: 700
> + multipleOf: 100
> + description:
> + External RGMII PHY TX clock delay chain value in ps.
> + rx-internal-delay-ps:
> + default: 0
> + minimum: 0
> + maximum: 3100
> + multipleOf: 100
> + description:
> + External RGMII PHY TX clock delay chain value in ps.
> + required:
> + - power-domains
> + else:
> + properties:
> + clocks:
> + maxItems: 1
> + clock-names:
> + items:
> + - const: stmmaceth
maxItems: 1
> + power-domains: false
> +
> +
> unevaluatedProperties: false
>
> examples:
> @@ -323,4 +385,34 @@ examples:
> };
> };
>
> + - |
> + ethernet@4510000 {
> + compatible = "allwinner,sun55i-a523-gmac200",
> + "snps,dwmac-4.20a";
> + reg = <0x04510000 0x10000>;
> + clocks = <&ccu 117>, <&ccu 79>;
> + clock-names = "stmmaceth", "mbus";
> + resets = <&ccu 43>;
> + reset-names = "stmmaceth";
> + interrupts = <0 47 4>;
> + interrupt-names = "macirq";
> + pinctrl-names = "default";
> + pinctrl-0 = <&rgmii1_pins>;
> + power-domains = <&pck600 4>;
> + syscon = <&syscon>;
> + phy-handle = <&ext_rgmii_phy_1>;
> + phy-mode = "rgmii-id";
> + snps,fixed-burst;
> + snps,axi-config = <&gmac1_stmmac_axi_setup>;
> +
> + mdio {
> + compatible = "snps,dwmac-mdio";
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + ext_rgmii_phy_1: ethernet-phy@1 {
> + reg = <1>;
> + };
> + };
> + };
> ...
> --
> 2.39.5
>
next prev parent reply other threads:[~2025-09-10 2:22 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-08 18:10 [PATCH net-next v4 00/10] net: stmmac: Add support for Allwinner A523 GMAC200 Chen-Yu Tsai
2025-09-08 18:10 ` [PATCH net-next v4 01/10] dt-bindings: net: sun8i-emac: Add A523 GMAC200 compatible Chen-Yu Tsai
2025-09-10 2:22 ` Rob Herring [this message]
2025-09-08 18:10 ` [PATCH net-next v4 02/10] net: stmmac: Add support for Allwinner A523 GMAC200 Chen-Yu Tsai
2025-09-11 18:09 ` Russell King (Oracle)
2025-09-11 18:17 ` Chen-Yu Tsai
2025-09-12 4:09 ` Muhammed Subair
2025-09-12 4:22 ` Chen-Yu Tsai
2025-09-08 18:10 ` [PATCH net-next v4 03/10] soc: sunxi: sram: add entry for a523 Chen-Yu Tsai
2025-09-08 18:10 ` [PATCH net-next v4 04/10] soc: sunxi: sram: register regmap as syscon Chen-Yu Tsai
2025-09-08 18:10 ` [PATCH net-next v4 05/10] arm64: dts: allwinner: a523: Add GMAC200 ethernet controller Chen-Yu Tsai
2025-09-08 18:10 ` [PATCH net-next v4 06/10] arm64: dts: allwinner: a527: cubie-a5e: Add ethernet PHY reset setting Chen-Yu Tsai
2025-09-08 18:10 ` [PATCH net-next v4 07/10] arm64: dts: allwinner: a527: cubie-a5e: Enable second Ethernet port Chen-Yu Tsai
2025-09-08 18:10 ` [PATCH net-next v4 08/10] arm64: dts: allwinner: t527: avaota-a1: Add ethernet PHY reset setting Chen-Yu Tsai
2025-09-08 18:10 ` [PATCH net-next v4 09/10] arm64: dts: allwinner: t527: avaota-a1: enable second Ethernet port Chen-Yu Tsai
2025-09-08 18:10 ` [PATCH net-next v4 10/10] arm64: dts: allwinner: t527: orangepi-4a: Enable " Chen-Yu Tsai
2025-09-10 12:52 ` (subset) [PATCH net-next v4 00/10] net: stmmac: Add support for Allwinner A523 GMAC200 Chen-Yu Tsai
2025-09-10 15:50 ` Chen-Yu Tsai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250910022230.GA3646514-robh@kernel.org \
--to=robh@kernel.org \
--cc=andre.przywara@arm.com \
--cc=andrew+netdev@lunn.ch \
--cc=conor+dt@kernel.org \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.com \
--cc=jernej@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sunxi@lists.linux.dev \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=samuel@sholland.org \
--cc=wens@csie.org \
--cc=wens@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.