This series adds support for the Ethernet MACs integrated in the SpacemiT K1 SoC, which includes adding a k1_emac driver with MDIO and PHYLIB support for RGMII and RMII operation, enabling it in the k1 defconfig.
The k1_emac driver in series draws upon Vivian Wang's work [1]. To make it simple and working, driver which using small ring-buffers operates primarily on polling and only implements basic functions. Tested on both Banana Pi F3 Ethernet ports with RTL8211F PHYs at 1000 Mbps full duplex, and tested command: dhcp, ping, tftp, etc. [1]: https://lore.kernel.org/all/[email protected]/ Signed-off-by: Zixian Zeng <[email protected]> --- Changes in v2: - Patch 1: Validate the full DMA range, not only the start address, in k1_emac_dma32() (suggested by Dave Klotz) - Patch 1: Add Tested-by from Dave Klotz - Drop the MAINTAINERS patch, as the top-level "RISC-V SPACEMIT" entry already covers the driver via its N:/K: patterns (suggested by Yixun Lan) - Link to v1: https://patch.msgid.link/[email protected] --- Zixian Zeng (2): net: k1: add Ethernet MAC driver configs: k1: enable Ethernet support configs/spacemit_k1_defconfig | 6 + drivers/net/Kconfig | 1 + drivers/net/Makefile | 1 + drivers/net/spacemit/Kconfig | 15 + drivers/net/spacemit/Makefile | 3 + drivers/net/spacemit/k1_emac.c | 957 +++++++++++++++++++++++++++++++++++++++++ 6 files changed, 983 insertions(+) --- base-commit: ed869863c7e2aca50d57a05d843830dd843138c4 change-id: 20260926-b4-k1-emac-fa5f2b146f38 Best regards, -- Zixian Zeng <[email protected]>
