Hello everyone, This is version seven of my series that adds support for a Gigabit Ethernet controller featured in the Renesas r9a06g032 SoC, of the RZ/N1 family. This GMAC device is based on a Synopsys IP and is compatible with the stmmac driver. My former colleague Clément Léger originally sent a series for this driver, but an issue in bringing up the PCS clock had blocked the upstreaming process. This issue has since been resolved by the following series: https://lore.kernel.org/all/20240326-rxc_bugfix-v6-0-24a74e5c761f@xxxxxxxxxxx/ This series consists of a devicetree binding describing the RZN1 GMAC controller IP, a node for the GMAC1 device in the r9a06g032 SoC device tree, and the GMAC driver itself which is a glue layer in stmmac. There are also two patches by Russell that improve pcs initialization handling in stmmac. Best Regards, Romain Gantois --- Changes in v7: - Fixed potential uninitialized use in stmmac_pcs_setup() - Link to v6: https://lore.kernel.org/r/20240510-rzn1-gmac1-v6-0-b63942be334c@xxxxxxxxxxx Changes in v6: - Changed stmmac_pcs_clean() prototype to match stmmac_pcs_setup() - Link to v5: https://lore.kernel.org/r/20240430-rzn1-gmac1-v5-0-62f65a84f418@xxxxxxxxxxx Changes in v5: - Refactored the stmmac_xpcs_setup() function to group together XPCS and PCS setup logic. - Added a stmmac_pcs_clean() function as a counterpart to stmmac_pcs_setup() - Link to v4: https://lore.kernel.org/r/20240424-rzn1-gmac1-v4-0-852a5f2ce0c0@xxxxxxxxxxx Changes in v4: - Removed the second parameters of the new pcs_init/exit() callbacks - Removed unnecessary interrupt-parent reference in gmac1 device node - Link to v3: https://lore.kernel.org/r/20240415-rzn1-gmac1-v3-0-ab12f2c4401d@xxxxxxxxxxx Changes in v3: - Fixed a typo in the socfpga patch - Link to v2: https://lore.kernel.org/r/20240409-rzn1-gmac1-v2-0-79ca45f2fc79@xxxxxxxxxxx Changes in v2: - Add pcs_init/exit callbacks in stmmac to solve race condition - Use pcs_init/exit callbacks in dwmac_socfpga glue layer - Miscellaneous device tree binding corrections - Link to v1: https://lore.kernel.org/r/20240402-rzn1-gmac1-v1-0-5be2b2894d8c@xxxxxxxxxxx --- Clément Léger (3): dt-bindings: net: renesas,rzn1-gmac: Document RZ/N1 GMAC support net: stmmac: add support for RZ/N1 GMAC ARM: dts: r9a06g032: describe GMAC1 Russell King (Oracle) (2): net: stmmac: introduce pcs_init/pcs_exit stmmac operations net: stmmac: dwmac-socfpga: use pcs_init/pcs_exit Serge Semin (2): net: stmmac: Add dedicated XPCS cleanup method net: stmmac: Make stmmac_xpcs_setup() generic to all PCS devices .../devicetree/bindings/net/renesas,rzn1-gmac.yaml | 66 +++++++++++++ MAINTAINERS | 6 ++ arch/arm/boot/dts/renesas/r9a06g032.dtsi | 18 ++++ drivers/net/ethernet/stmicro/stmmac/Kconfig | 12 +++ drivers/net/ethernet/stmicro/stmmac/Makefile | 1 + drivers/net/ethernet/stmicro/stmmac/dwmac-rzn1.c | 86 +++++++++++++++++ .../net/ethernet/stmicro/stmmac/dwmac-socfpga.c | 107 ++++++++++----------- drivers/net/ethernet/stmicro/stmmac/stmmac.h | 3 +- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 14 +-- drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.c | 52 +++++++--- include/linux/stmmac.h | 2 + 11 files changed, 290 insertions(+), 77 deletions(-) --- base-commit: cddd2dc6390b90e62cec2768424d1d90f6d04161 change-id: 20240402-rzn1-gmac1-685cf8793d0e Best regards, -- Romain Gantois <romain.gantois@xxxxxxxxxxx>