[PATCH net-next v7 0/6] net: stmmac: Add support for Allwinner A523 GMAC200
From: Chen-Yu Tsai <wens@kernel.org>
Date: 2025-09-23 14:02:50
Also in:
linux-arm-kernel, linux-devicetree, linux-sunxi, lkml
From: Chen-Yu Tsai <redacted> Hi everyone, This is v7 of my Allwinner A523 GMAC200 support series. This is based on next-20250922. Changes since v6: - Collected acks for DT binding patch - Rebased onto next-20250922 Changes since v5: - Use plat->phy_interface instead of plat->mac_interface (Russell) - Link to v5 https://lore.kernel.org/all/20250911174032.3147192-1-wens@kernel.org/ (local) Changes since v4: - Moved clock-names list to main schema in DT binding (Rob) - Dropped 4 patches that are already merged - Link to v4 https://lore.kernel.org/all/20250908181059.1785605-1-wens@kernel.org/ (local) Changes since v3: - driver - Fixed printf format specifier warning - Link to v3 https://lore.kernel.org/all/20250906041333.642483-1-wens@kernel.org/ (local) Changes since v2: - DT binding - Added "select" to avoid matching against all dwmac entries - driver - Include "ps" unit in "... must be multiple of ..." error message - Use FIELD_FIT to check if delay value is in range and FIELD_MAX to get the maximum value - Reword error message for delay value exceeding maximum - Drop MASK_TO_VAL - Link to v2: https://lore.kernel.org/all/20250813145540.2577789-1-wens@kernel.org/ (local) Changes since v1: - Dropped RFT tag - Switched to generic (tx|rx)-internal-delay-ps - dwmac-sun55i driver bits - Changed dev_err() + return to dev_err_probe() - Added check of return value from syscon regmap write - Changed driver name to match file name - sram driver bits - Fixed check on return value - Expanded commit message - dtsi - Fixed typo in tx-queues-config - cubie a5e - Add PHY regulator delay - Link to v1: https://lore.kernel.org/all/20250701165756.258356-1-wens@kernel.org/ (local) This series adds support for the second Ethernet controller found on the Allwinner A523 SoC family. This controller, dubbed GMAC200, is a DWMAC4 core with an integration layer around it. The integration layer is similar to older Allwinner generations, but with an extra memory bus gate and separate power domain. Patch 1 adds a new compatible string combo to the existing Allwinner EMAC binding. Patch 2 adds a new driver for this core and integration combo. Patch 3 adds a device node and pinmux settings for the GMAC200. Patches 4, 5, and 6 enable the GMAC200 on three boards. I only tested the Orangepi 4A and Radxa Cubie A5E. Please have a look and help test on the Avaota A1. I don't expect any issues there though, since the PHY is always on, unlike on the Cubie A5E. Patches 1 and 2 should go through net-next, and I will take all the other patches through the sunxi tree. Hopefully we can get this merged for v6.18. Thanks ChenYu Chen-Yu Tsai (6): dt-bindings: net: sun8i-emac: Add A523 GMAC200 compatible net: stmmac: Add support for Allwinner A523 GMAC200 arm64: dts: allwinner: a523: Add GMAC200 ethernet controller arm64: dts: allwinner: a527: cubie-a5e: Enable second Ethernet port arm64: dts: allwinner: t527: avaota-a1: enable second Ethernet port arm64: dts: allwinner: t527: orangepi-4a: Enable Ethernet port .../net/allwinner,sun8i-a83t-emac.yaml | 95 ++++++++++- .../arm64/boot/dts/allwinner/sun55i-a523.dtsi | 55 ++++++ .../dts/allwinner/sun55i-a527-cubie-a5e.dts | 28 ++- .../dts/allwinner/sun55i-t527-avaota-a1.dts | 26 ++- .../dts/allwinner/sun55i-t527-orangepi-4a.dts | 23 +++ drivers/net/ethernet/stmicro/stmmac/Kconfig | 12 ++ drivers/net/ethernet/stmicro/stmmac/Makefile | 1 + .../ethernet/stmicro/stmmac/dwmac-sun55i.c | 159 ++++++++++++++++++ 8 files changed, 393 insertions(+), 6 deletions(-) create mode 100644 drivers/net/ethernet/stmicro/stmmac/dwmac-sun55i.c -- 2.47.3