From patchwork Wed Sep 16 04:41:15 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alastair D'Silva X-Patchwork-Id: 388 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10]) by mxe881.netcup.net (Postfix) with ESMTPS id E15E81C1FF4 for ; Wed, 16 Sep 2026 06:41:53 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=d-silva.org; spf=pass (sender IP is 172.234.253.10) smtp.mailfrom=linux-sunxi+bounces-25973-noreply=patchwork.local@lists.linux.dev smtp.helo=sea.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.234.253.10 as permitted sender) client-ip=172.234.253.10; envelope-from=linux-sunxi+bounces-25973-noreply=patchwork.local@lists.linux.dev; helo=sea.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by sea.lore.kernel.org (Postfix) with ESMTP id E007F277E4 for ; Wed, 16 Sep 2026 04:41:32 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 6A85F1A9F90; Wed, 16 Sep 2026 04:41:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=d-silva.org header.i=@d-silva.org header.b="UlWnZZ+U" X-Original-To: linux-sunxi@lists.linux.dev Received: from www.nmnhosting.com (watt.d-silva.org [119.15.109.137]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 824A23AF64D for ; Wed, 16 Sep 2026 04:41:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=119.15.109.137 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789533692; cv=none; b=fBELkw0y5NXKpMcbQZhSb/TBMLCOamAuhYhm3SNL1xm15bVFE8p8iLukpviNELnNsB/tI8L4RIhU2iKe82BnKeezOgVQQGadsyTbRkVDpttyvH5liVEae2xcbJiVpRlpSU4hxYuxl/TToeqhBUFP2u06x74Nbt6GD9k/a3HkO60= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789533692; c=relaxed/simple; bh=uZjsORFcCwvkT2AAbXO2aZSM8USV3slRXFzd5UB31wU=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=ChzTmx4odY9YjZcCr2qHZs21ilOlALm0u8qHmFMDM1TYfQ5J+6CBb8vb4KJEAvSbJVIUioPNwwh8z6bm05XPB7Z0iPQwGJqi5dQjCcajRJWrXNfUI/qOWrwvThIhL8kxMrIh4PEKA+Au7xHxVsqRBAxIU80lDPeOOxIKrvS5x3U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=d-silva.org; spf=pass smtp.mailfrom=d-silva.org; dkim=pass (2048-bit key) header.d=d-silva.org header.i=@d-silva.org header.b=UlWnZZ+U; arc=none smtp.client-ip=119.15.109.137 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=d-silva.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=d-silva.org Received: from Hawking.lan (hawking.lan [10.0.1.4]) by www.nmnhosting.com (Postfix) with ESMTP id B042B40B5A; Wed, 16 Sep 2026 14:41:19 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=d-silva.org; s=2025a; t=1789533679; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=xTOSXHHE0Mp7WmhyDX8b5V5DuyvbmNcf+A+5A/N8sLo=; b=UlWnZZ+UVMEPdKCU7xcAFSbFO3th1cLIUDQAVgxHnxVx1R+lEdIoyMk1vV0Zvwe2nSIpwL ZFyTQtYBEJxngpet4wEa3OPi+HSxb4lNcF1PXZITorzVYPJT4u3LOS8vxeo3DLrUmsfe6B TewlUlT2TQQ1Jy3bYF7TtfNh9XyrThGWCMlvR+GJSfOutXpYKeisnXx9dwWGRF8qlWMsEG auLx73Cc4M2pirx+S2/HIHW1devcpDo59O9lqW8cz8l750238DpVNnbKOBNHEZyWKcO5j5 Zhfw65agxQeObJuk7lgCCccPAoV2TQR2qaioEusCk4c4fTDd7nGlets9PDlnOQ== X-GPT-Reason: legitimate; the email is a technical software patch submission for the Linux kernel (net-next) regarding Allwinner SoC hardware support. The sender (alastair@d-silva.org) matches the personal mailbox list provided in the environment context (alastair@d-silva.org), and the content is highly specific technical documentation with no marketing, phishing, or scam indicators. There are no URLs, no requests for sensitive information, and the subject line directly corresponds to the technical body describing driver and device tree updates. From: Alastair D'Silva To: Andrew Lunn , Heiner Kallweit , Russell King , Alexandre Torgue , Maxime Chevallier , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-sunxi@lists.linux.dev, linux-arm-kernel@lists.infradead.org, Chen-Yu Tsai , Jernej Skrabec , Samuel Holland , Alastair D'Silva Subject: [PATCH net-next 0/4] net: Add Allwinner H616/H618 EMAC1 and AC300 EPHY support Date: Wed, 16 Sep 2026 14:41:15 +1000 Message-ID: <20260916044119.475666-1-alastair@d-silva.org> X-Mailer: git-send-email 2.53.0 Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Rspamd-Server: rspamd-worker-8404 X-Spamd-Result: default: False [4.84 / 15.00]; RBL_SENDERSCORE(2.00)[172.234.253.10:from]; SUSPICIOUS_RECIPS(1.50)[]; MID_CONTAINS_FROM(1.00)[]; R_MISSING_CHARSET(0.50)[]; MAILLIST(-0.15)[generic]; BAD_REP_POLICIES(0.10)[]; MIME_GOOD(-0.10)[text/plain]; HAS_LIST_UNSUB(-0.01)[]; TAGGED_RCPT(0.00)[netdev,dt]; FROM_HAS_DN(0.00)[]; PRECEDENCE_BULK(0.00)[]; RECEIVED_SPAMHAUS_BLOCKED_OPENRESOLVER(0.00)[119.15.109.137:received,100.90.174.1:received]; RCPT_COUNT_TWELVE(0.00)[21]; FREEMAIL_CC(0.00)[vger.kernel.org,lists.linux.dev,lists.infradead.org,kernel.org,gmail.com,sholland.org,d-silva.org]; DBL_BLOCKED_OPENRESOLVER(0.00)[d-silva.org:dkim,sea.lore.kernel.org:rdns,sea.lore.kernel.org:helo]; FORGED_SENDER_MAILLIST(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; R_DKIM_ALLOW(0.00)[d-silva.org:s=2025a]; ARC_ALLOW(0.00)[subspace.kernel.org:s=arc-20240116:i=1]; DKIM_TRACE(0.00)[d-silva.org:+]; DMARC_POLICY_ALLOW(0.00)[d-silva.org,reject]; R_SPF_ALLOW(0.00)[+ip4:172.234.253.10]; TO_DN_SOME(0.00)[]; FROM_NEQ_ENVFROM(0.00)[alastair@d-silva.org,linux-sunxi@lists.linux.dev]; FREEMAIL_TO(0.00)[lunn.ch,gmail.com,armlinux.org.uk,foss.st.com,bootlin.com,davemloft.net,google.com,kernel.org,redhat.com]; MIME_TRACE(0.00)[0:+]; TAGGED_FROM(0.00)[bounces-25973-noreply=patchwork.local]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; ASN(0.00)[asn:63949, ipnet:172.234.224.0/19, country:SG]; RCVD_TLS_LAST(0.00)[]; RBL_SPAMHAUS_BLOCKED_OPENRESOLVER(0.00)[172.234.253.10:from] X-Rspamd-Queue-Id: E15E81C1FF4 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= This series adds support for the secondary Ethernet MAC controller (EMAC1) and the co-packaged AC300 Fast Ethernet Physical Layer (EPHY) found on Allwinner H616 and H618 SoCs. The Allwinner H616/H618 SoCs feature two EMAC instances: EMAC0 (typically used with an external RGMII Gigabit PHY) and EMAC1 (Fast Ethernet, connected internally to the co-packaged AC300 EPHY). EMAC1 uses a dedicated clock control register in the syscon register space, which is accessed via an offset index in the DT syscon property. The AC300 is an integrated 10/100M (100BASE-TX / 10BASE-T) Fast Ethernet PHY communicating over MDIO at address 16 + phy_addr. It requires retrieving factory bandgap calibration data from the SID nvmem controller, managing internal power rails and clocks, and optimizing transceiver signal parameters. To ensure reliable link establishment and MAC software reset with the internal PHY, dwmac-sun8i is updated to defer MAC software reset until sun8i_dwmac_init() after the internal PHY has powered on and begun clock generation. The series is structured as follows: - Patch 1: DT binding for Allwinner AC300 EPHY. - Patch 2: PHY driver for Allwinner AC300 EPHY. - Patch 3: DT binding update for Allwinner H616 EMAC1 and syscon index. - Patch 4: dwmac-sun8i driver support for H616 EMAC1 clock index and internal PHY deferred reset. Testing: - Tested on physical Mellow Fly-C5 hardware (Allwinner H618) running Armbian with sustained 100Mbps full-duplex network traffic (DHCP, iperf3, NFS rootfs). - Device tree bindings validated with dt_binding_check. - Separate SoC and board DTS additions will be submitted via the linux-sunxi tree. Alastair D'Silva (4): dt-bindings: net: phy: Add Allwinner AC300 EPHY binding net: phy: Add Allwinner AC300 EPHY driver dt-bindings: net: allwinner,sun8i-a83t-emac: Add Allwinner H616 EMAC1 and syscon index net: stmmac: dwmac-sun8i: Add Allwinner H616 EMAC clock index and internal PHY support .../net/allwinner,sun50i-h618-ac300-ephy.yaml | 79 +++++ .../net/allwinner,sun8i-a83t-emac.yaml | 14 +- .../net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 65 +++- drivers/net/phy/Kconfig | 9 + drivers/net/phy/Makefile | 1 + drivers/net/phy/ac300-phy.c | 331 ++++++++++++++++++ 6 files changed, 486 insertions(+), 13 deletions(-) create mode 100644 Documentation/devicetree/bindings/net/allwinner,sun50i-h618-ac300-ephy.yaml create mode 100644 drivers/net/phy/ac300-phy.c