From patchwork Sun Sep 20 19:45:32 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Hilliard X-Patchwork-Id: 3395 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 332441C30A1 for ; Sun, 20 Sep 2026 22:00:18 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.234.253.10) smtp.mailfrom=linux-sunxi+bounces-26072-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-26072-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 8C3F065A7F for ; Sun, 20 Sep 2026 19:48:34 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 0CA7548EC83; Sun, 20 Sep 2026 19:45:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Cup1QG+q" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-oa2-f12.google.com (mail-oa2-f12.google.com [74.125.231.76]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5037B471429 for ; Sun, 20 Sep 2026 19:45:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.231.76 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789933552; cv=none; b=pyFQIADYrTJHZSWoYQqYTS/3ZvaZOkmnskYFjsLahrnQ21i7ZIhNX0FGoHOV+CwrybMn+PVnR6Tm6h1wUObiIkkdqx/GLcNi8688m/ytp4/KIEiXry7FkBfEb78Buh5219ph5RmePN6NFEZhwJf9Q3+no+mdcegfGHaB19naBRc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789933552; c=relaxed/simple; bh=e9hk5Tsdquyr+5avHPEA7bcfLf2nOdnHsiLzbvu4On4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=D1AxpbyfLvLR6ZgetGOHZ8ptubasoZedaN2HhXWrqXHSWlu5JwxjRO8+u/+Nn8nkhdbuLSv+53TneMRfYC5Q+akvci1c1yZY12ge4OQf9mr4E2JrgqwCZX3/gZKV5ackw/JzWxg5i+yy7R6lrEpAaGMEh7N2GEns+4vY7f4DitE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Cup1QG+q; arc=none smtp.client-ip=74.125.231.76 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-oa2-f12.google.com with SMTP id 586e51a60fabf-466cc9ab667so2834487fac.0 for ; Sun, 20 Sep 2026 12:45:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1789933550; x=1790538350; darn=lists.linux.dev; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=gFndLx5Yqc+lsDlrSDVoBXxkYOfQ85XX/QivbJQF5Mw=; b=Cup1QG+qSIlc2g7lM/c+34YD+R68samVXDfaPmu1fufKogLE2r/+3JKozI7a0Kjzf3 tWx3jTt29VYcxhIyiyDDsuc1TeyRJYE9nXuHwriveHnoS52ZVWghJlK2Yx3MhlAQQ+Ue PVUFqXgtNnTS8pIsHrZiLwYYjCmKKVprdKrkzIH3f/i/1ko7VPWn2MoBnnGjZu8YM6C7 KJ5KA3hRIKZLY8kkqQIc16iaNT8NOepL08wgSdFo3HpfCoDBIjSP29ANcfZUWpHeNPC8 P0M3TLn2Thvgc31axwunN07gra2VjE2+w9JCPWqhrVrQIAXSdpzY+0x4R9MlP2lXN+IR B8QQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1789933550; x=1790538350; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=gFndLx5Yqc+lsDlrSDVoBXxkYOfQ85XX/QivbJQF5Mw=; b=Rhkr+YmSbvzQrlqs47A2uQoDvtsDSI/Do9zm3JQFOBz8VM+Mqw1wSzpbEcvqAtZEml UsPE90F2N4TjRRRIKvyGWloDJRx5lXE2HJO7BgdbixhMBSL9i2FT3BxR/zAUUu8u4f4o MwuOlb7oBdwonPyc7sUBUxuT8UTYUJgsjkVdirR4bVXkd+EEdyCjgwxJBabMnP/n9Mt9 yJCd/3/6e/vzo0qLsbFrN6Im47DJi1X5D0k8VMw1OrCQTdTuX7ZI33RZ2ijCY9dqt1UA Qystp1xes2agdJwmA+rGMJFi+qsBrnfqeNPOkmWQ6HFSthJ2a5p7UPcnOgh9eHVnVy8K Hrgg== X-Forwarded-Encrypted: i=1; AKwUvBw5t9zMMqiyWPDTkUhoP+Tx1Os4uE3e7Kc2IDscCNO5QSG/uqA4+tfjpNEGcW/U1dhxkU2jqrlhhdF+SQ==@lists.linux.dev X-Gm-Message-State: AFuF++mg5J9Jri0jOKFzQviqvu2jrZBqP3UvCK6s0U/ThYyYhpABjAOS vz15xVup5ymLZxIymQerWsyRFH9p1gnSwrV5lc5beaaXHpEzQ8lu9YL1 X-Gm-Gg: AYBFou1EPYpcjfZW6W7riJI7i0je0HGZUlPAfyAEiFVG+M9og2NZyQ4ib0InZmTbBAD NRdWqGp2DCGAaFC05KfnDqF4gFMgd9RfPJhYDq+5cOq/Yg4pwGdBMIRI89eGqpjQX0Na2rpsNxO Jp6bXR+QUj+e0cLCq3ke3Skp7bAJGzSAIsq8X4QypeZvBErv70Yi4+L5tc82zMkAlBDQxNYuM4w E+8uGh/H9rDnZ6MK5xCIB+ZwNksqN/kdZ8z7jtefGkSIIcwCeOHA9HjQQUGTUKi/M/gFQUwFzh0 B9AeJeAM0ZVtOZqrGNqwGDOjhZflVoy3aQa2r7eUS0+CoANlZTpxUbEIg0Bk28SdOWYb9j/CL31 kVg+IuefViUSrinE4UqYIErJi/qNZYEqHiluf2/63hzxGX589Z50aLO0aM5tYCPhyz9gpf+vn3L Ryuzi8p2wcg+VPB3C4it7ntfK5Ax/v1EEds9M3eew7/fRR9O6JWm5i26fj6Xw41sDNhLdTHApEI /fZsF9gOsffF++g64ibq9JUiERruy3Es7+Gby0uXteanfZsK1GjZ8W08pyo8gq8+Egix2PEExp4 TM0+QYFkhqqRmQznHmgTbvVGnzgCiVVqbE/kJsaDViRwg8oClaQKa69ltuCtUfG79WFZzh6xzY6 MBAvmlvMK7TyGiP6+vjSY X-Received: by 2002:a05:6820:16a6:b0:6bd:af9e:a7f8 with SMTP id 006d021491bc7-6ca9a130336mr7595370eaf.10.1789933550220; Sun, 20 Sep 2026 12:45:50 -0700 (PDT) Received: from [127.0.1.1] (174-29-1-49.hlrn.qwest.net. [174.29.1.49]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-4881f4d7861sm6103834fac.1.2026.09.20.12.45.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 20 Sep 2026 12:45:49 -0700 (PDT) From: James Hilliard Date: Sun, 20 Sep 2026 13:45:32 -0600 Subject: [PATCH net-next v4 6/6] net: stmmac: sun8i: add support for Allwinner H616 EMAC1 Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20260920-submit-h616-emac1-v1-v4-6-8347dfe2eb7d@gmail.com> References: <20260920-submit-h616-emac1-v1-v4-0-8347dfe2eb7d@gmail.com> In-Reply-To: <20260920-submit-h616-emac1-v1-v4-0-8347dfe2eb7d@gmail.com> To: Richard Genoud , Andrew Lunn , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland , Alexandre Torgue , Giuseppe Cavallaro , Jose Abreu , Maxime Chevallier , Maxime Coquelin , Russell King , Christian Marangi , Andrew Lunn , Heiner Kallweit , Tiezhu Yang , Huacai Chen Cc: Maxime Ripard , Alastair D'Silva , netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, James Hilliard , Andre Przywara X-Mailer: b4 0.15.2 X-Rspamd-Server: rspamd-worker-8404 X-Spamd-Result: default: False [4.34 / 15.00]; RBL_SENDERSCORE(2.00)[172.234.253.10:from]; SUSPICIOUS_RECIPS(1.50)[]; DMARC_POLICY_SOFTFAIL(1.00)[gmail.com : SPF not aligned (relaxed), No valid DKIM,none]; MAILLIST(-0.15)[generic]; MIME_GOOD(-0.10)[text/plain]; BAD_REP_POLICIES(0.10)[]; HAS_LIST_UNSUB(-0.01)[]; PRECEDENCE_BULK(0.00)[]; RCPT_COUNT_TWELVE(0.00)[33]; FROM_HAS_DN(0.00)[]; DBL_BLOCKED_OPENRESOLVER(0.00)[sea.lore.kernel.org:rdns,sea.lore.kernel.org:helo,d-silva.org:email,arm.com:email,bootlin.com:email]; TAGGED_RCPT(0.00)[netdev,dt]; FREEMAIL_CC(0.00)[kernel.org,d-silva.org,vger.kernel.org,lists.infradead.org,lists.linux.dev,st-md-mailman.stormreply.com,gmail.com,arm.com]; FORGED_SENDER_MAILLIST(0.00)[]; RCVD_COUNT_FIVE(0.00)[6]; FROM_NEQ_ENVFROM(0.00)[jameshilliard1@gmail.com,linux-sunxi@lists.linux.dev]; TAGGED_FROM(0.00)[bounces-26072-noreply=patchwork.local]; R_SPF_ALLOW(0.00)[+ip4:172.234.253.10]; FREEMAIL_TO(0.00)[bootlin.com,lunn.ch,davemloft.net,google.com,kernel.org,redhat.com,gmail.com,sholland.org,foss.st.com,st.com,synopsys.com,armlinux.org.uk,loongson.cn]; FREEMAIL_FROM(0.00)[gmail.com]; TO_DN_SOME(0.00)[]; ASN(0.00)[asn:63949, ipnet:172.234.224.0/19, country:SG]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; MID_RHS_MATCH_FROM(0.00)[]; ARC_ALLOW(0.00)[subspace.kernel.org:s=arc-20240116:i=1]; RCVD_VIA_SMTP_AUTH(0.00)[] X-Rspamd-Queue-Id: 332441C30A1 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?= The H616 secondary EMAC uses a separate system-control clock register and supports only RMII at 10/100 Mbps. It connects internally to the co-packaged AC200 or AC300 EPHY and has no external PHY pins. Add an EMAC1 variant using the dedicated register and enable only RMII. Leave PHY initialization to the PHY driver instead of using the H3 internal-PHY controls. No RX or TX clock delays are configured for this RMII-only variant. Co-developed-by: Richard Genoud Signed-off-by: Richard Genoud Reviewed-by: Maxime Chevallier Reviewed-by: Andre Przywara Reviewed-by: Alastair D'Silva Tested-by: Alastair D'Silva Signed-off-by: James Hilliard --- drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c index 9598c386bb21..0ea1860cf203 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c @@ -81,6 +81,13 @@ static const struct reg_field sun8i_syscon_reg_field = { .msb = 31, }; +/* EMAC1 clock register @ 0x34 in the "system control" address range */ +static const struct reg_field sun8i_syscon_reg_field_emac1 = { + .reg = 0x34, + .lsb = 0, + .msb = 31, +}; + /* EMAC clock register @ 0x164 in the CCU address range */ static const struct reg_field sun8i_ccu_reg_field = { .reg = 0x164, @@ -143,6 +150,13 @@ static const struct emac_variant emac_variant_h6 = { .tx_delay_max = 7, }; +static const struct emac_variant emac_variant_h616_emac1 = { + .syscon_field = &sun8i_syscon_reg_field_emac1, + /* The co-packaged AC200/AC300 PHY does not use the H3 PHY controls. */ + .soc_has_internal_phy = false, + .support_rmii = true, +}; + #define EMAC_BASIC_CTL0 0x00 #define EMAC_BASIC_CTL1 0x04 #define EMAC_INT_STA 0x08 @@ -1277,6 +1291,8 @@ static const struct of_device_id sun8i_dwmac_match[] = { .data = &emac_variant_a64 }, { .compatible = "allwinner,sun50i-h6-emac", .data = &emac_variant_h6 }, + { .compatible = "allwinner,sun50i-h616-emac1", + .data = &emac_variant_h616_emac1 }, { } }; MODULE_DEVICE_TABLE(of, sun8i_dwmac_match);