From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f173.google.com (mail-pf1-f173.google.com [209.85.210.173]) (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 1E8EF194A60 for ; Tue, 3 Mar 2026 01:04:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.173 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772499857; cv=none; b=FkvG40ijFMyTAosNKpieSumtLx67/CxYXKNJzHRfpG2IekmVjb6lUMvUbtHyYv9khTY+GF9Gr+7Ko4/2fgtq3npfaX6YzxQrL186zaAkM8ix+Alr9Ccr1f3bVTjQwPFtB/RNecefnVSFIcsXm0PPPFPNa8Op2teou8cYNTU3GoQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772499857; c=relaxed/simple; bh=CoXi3raZ8Hi+U1VVQqdGvWKzGnKswTm8aEYfEf9JBhY=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=EdvLqSicJCzDJgLGilUx8hn7LHJ63SnK5WeOO0u/g4LBnbP7RJFztJBosz3djwgBbikoRkltttEKp55SOXCm0JiS1CBPdeE2j6/o1o9Hd4XVSPvyosAL+UPeHkVeQSjUAH3CQGyNpBo+y/t60VMQWPhHwUli6bEOpp/6EiV/sgM= 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=cNN0XiJa; arc=none smtp.client-ip=209.85.210.173 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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="cNN0XiJa" Received: by mail-pf1-f173.google.com with SMTP id d2e1a72fcca58-82746ed8cdcso3102689b3a.3 for ; Mon, 02 Mar 2026 17:04:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772499855; x=1773104655; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=LJfO34USsvCpv1UH9qU1hYEgkmphxj2R3COc9IPiZ2A=; b=cNN0XiJaDaFlURUq97QblI4lwas+h2r/t7GOYdSc52BQ66+bvcT1tqtKL1Nm2+yZuq yX/tiKyUrTwjmxR9gr5HZW5+gCA2qNIGIJK3gFkqYmSIbyN9uqA9xiGtPK187Vpp0tp8 8tTBIlca2LmfafSz8Q6nR07U7N9o8quhm7p/j0cV7vrPMnV5b9ihxtexUYPqndHpjJQa D/jcyZeSte6d/ABCla8dcO0jgcWimRSGIrYY0Zvk1pj76uqrLIdcjFDUibVzP4dlS3G+ DJD4Q+NXWAbO4dxTWlQA/iDRZ3FGhCM58X265x8kqeZ6nldS+GV7sEnvFoMKXH+PHiDX cxWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772499855; x=1773104655; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LJfO34USsvCpv1UH9qU1hYEgkmphxj2R3COc9IPiZ2A=; b=L0acZLXoGQOJ+v9Asqir0uoq21kirliV825bmUCeJT8oyTopgnsXmD4jCNfDV149nA XSoARff7i7wvpOoORbgYMusjz8A90SMdm9OKozMt804qHqq4b8ZhrjJItPVfXDOJJz/J bJ4fsnv4aujefDgzihZmc0T2MFcTbThUOEZGnHzzp1JNtefEOqS3CK4AFtc3qySZ5edc jZp4HXx3PUJEcHq+PTLx3IHTuuzxSBKARlfQh5VPgFL9uOk14Q/VsP44jxZxnQIsUua7 jSGhEIjehuJBZnyBaHLiiy/dbqPU8F+WRKcjLiLxHWrc1n/v13H8LtlXKpJ4NUz95dtE qCpg== X-Gm-Message-State: AOJu0YxdYnznLhdXkS9I1Z78eTrH9VpsPzoOqvgxpqAiEOmtqCwCWuxm bTlx+Ef6Gi8CHVCh/V58phAb4iikU9EY+3D0cGcNdrh1atwPwIh+tXHw X-Gm-Gg: ATEYQzzppW0w+RBoKsQLyVUYhMG2pLTevxzCtYzNIkUp4W+FQeQmGIKiDNifB/hLmLD s0wXQGBKcEk2gvlZOa6X8/bSiK24Dd//vy8Szt16K26iEiWZh3dGOsza3rHrLPSgETl10ykXTTF oqMBYXv+cT+10/qhcVwgSklWOVsw5gVDi3oz1XJq4y9Xx0t40oRKPbJHPlkHu4HBVnJAOD0GfZO DC9QhTL2qo8x/KlFHIl3Uhb+niA2iebtlplNcnZVSgVQ0F0rHfFIFn+M7x90VkKMvBiCpQihIPx 1mvjPe6op+Tp0toQ1Hq7HbZME+sryN8/V1KZXt9oiHuWURwfMcaOoEwx55/Qz8NLMLqTVjCegeW qG5QLh3y6xOlWcxmVVy/9w5uiJyNC2FBO9a4DQjPyhtBWwIV2yCdsQG5/kCQGdA2cdN9x69uiTg E/4sGOXMtVrb/ahaZMerJJmw== X-Received: by 2002:a17:90b:578d:b0:343:e2ba:e8be with SMTP id 98e67ed59e1d1-35965c3c945mr12250080a91.10.1772499855342; Mon, 02 Mar 2026 17:04:15 -0800 (PST) Received: from localhost ([2001:19f0:ac00:4eb8:5400:5ff:fe30:7df3]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-3599c49eb5bsm361668a91.11.2026.03.02.17.04.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 17:04:14 -0800 (PST) Date: Tue, 3 Mar 2026 09:03:46 +0800 From: Inochi Amaoto To: Emil Renner Berthing , "Russell King (Oracle)" , Albert Ou , Alexandre Ghiti , Alexandre Torgue , Andrew Lunn , Boon Khai Ng , Chen-Yu Tsai , Choong Yong Liang , Conor Dooley , "David S. Miller" , Eric Dumazet , Giuseppe Cavallaro , Inochi Amaoto , Jakub Kicinski , Jose Abreu , Krzysztof Kozlowski , Lad Prabhakar , Maxime Chevallier , Maxime Coquelin , Palmer Dabbelt , Paolo Abeni , Paul Walmsley , Quentin Schulz , Richard Cochran , Rob Herring , Shangjuan Wei , Yanteng Si , Yao Zi , Yixun Lan Cc: netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, spacemit@lists.linux.dev, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, Yixun Lan , Longbin Li Subject: Re: [PATCH net-next v5 0/3] riscv: spacemit: Add ethernet support for K3 Message-ID: References: <20260227075718.2243818-1-inochiama@gmail.com> Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Mon, Mar 02, 2026 at 08:08:59AM -0500, Emil Renner Berthing wrote: > Quoting Inochi Amaoto (2026-02-27 08:57:14) > > Add initial support for ethernet controller of the Spacemit K3 SoC. > > This ethernet controller is almost a standard Synopsys DesignWare > > MAC (version 5.40a). This controller require a syscon device to > > configure some basic features, like interface type and internal delay. > > I don't know how we can accept this when it can't be tested since it still > doesn't come with the device tree nodes. If you don't want it to be part of the > series, just share a tree where this code is working. There are plenty of free > public git hosting sites available. > It seems like you have not read my reply before, I was forbidden from opening other's patch. So some dependency can not be satisfied. For me, the only thing I can open is the ethernet device node. The other things, like clock, pinctrl and gpio devices. You should collect by yourself and I can not provide. Here is the ethernet DTS patch diff --git a/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts b/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts index b691304d4b74..1dfeef564ef3 100644 --- a/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts +++ b/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts @@ -5,6 +5,7 @@ */ #include "k3.dtsi" +#include "k3-pinctrl.dtsi" / { model = "SpacemiT K3 Pico-ITX"; @@ -24,6 +25,25 @@ memory@100000000 { }; }; +ð0 { + pinctrl-names = "default"; + pinctrl-0 = <&gmac0_cfg>; + + phy-mode = "rgmii-id"; + phy-handle = <&phy0>; + status = "okay"; + + mdio { + phy0: phy@1 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <1>; + reset-gpios = <&gpio 0 15 GPIO_ACTIVE_LOW>; + reset-assert-us = <10000>; + reset-deassert-us = <10000>; + }; + }; +}; + &uart0 { status = "okay"; }; diff --git a/arch/riscv/boot/dts/spacemit/k3-pinctrl.dtsi b/arch/riscv/boot/dts/spacemit/k3-pinctrl.dtsi new file mode 100644 index 000000000000..aa8e7cfd7efe --- /dev/null +++ b/arch/riscv/boot/dts/spacemit/k3-pinctrl.dtsi @@ -0,0 +1,56 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) + +#include + +#define K3_PADCONF(pin, func) (((pin) << 16) | (func)) + +&pinctrl { + gmac0_cfg: gmac0-cfg { + /* Base pins: - Used by RMII directly */ + gmac0_base_pins: gmac0-0-pins { + pinmux = , + , + , + , + , + , + , + , + ; + + bias-disable; + drive-strength = <25>; + power-source = <1800>; + }; + + /* RGMII extra pins: add on top of base pins */ + gmac0_rgmii_add_pins: gmac0-1-pins { + pinmux = , + , + , + , + ; + + bias-disable; + drive-strength = <25>; + power-source = <1800>; + }; + + /* Optional int pins */ + gmac0_int_pins: gmac0-3-pins { + pinmux = ; + + bias-disable; + drive-strength = <25>; + power-source = <1800>; + }; + + gmac0-6-pins { + pinmux = ; + + bias-disable; + drive-strength = <25>; + power-source = <1800>; + }; + }; +}; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi index 6cc31e94c13a..066006826e92 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -5,6 +5,7 @@ */ #include +#include #include /dts-v1/; @@ -437,6 +438,112 @@ soc: soc { dma-noncoherent; ranges; + gmac_axi_setup: stmmac-axi-config { + snps,wr_osr_lmt = <0xf>; + snps,rd_osr_lmt = <0xf>; + /* max axi burst len is 256 */ + snps,blen = <256 128 64 32 16 0 0>; + }; + + eth0: ethernet@cac80000 { + compatible = "spacemit,k3-dwmac", "snps,dwmac-5.40a"; + reg = <0x0 0xcac80000 0x0 0x2000>; + clocks = <&syscon_apmu CLK_APMU_EMAC0_BUS>, + <&syscon_apmu CLK_APMU_EMAC0_1588>, + <&syscon_apmu CLK_APMU_EMAC0_RGMII_TX>; + clock-names = "stmmaceth", "ptp_ref", "tx"; + interrupt-parent = <&saplic>; + interrupts = <131 IRQ_TYPE_LEVEL_HIGH>, + <276 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "macirq", "eth_wake_irq"; + resets = <&syscon_apmu RESET_APMU_EMAC0>; + reset-names = "stmmaceth"; + rx-fifo-depth = <8192>; + tx-fifo-depth = <8192>; + snps,multicast-filter-bins = <64>; + snps,perfect-filter-entries = <32>; + snps,aal; + snps,tso; + snps,txpbl = <8>; + snps,rxpbl = <8>; + snps,force_sf_dma_mode; + snps,axi-config = <&gmac_axi_setup>; + spacemit,apmu = <&syscon_apmu 0x3e4 0x3e8>; + status = "disabled"; + + mdio { + compatible = "snps,dwmac-mdio"; + #address-cells = <1>; + #size-cells = <0>; + }; + }; + + eth1: ethernet@cac82000 { + compatible = "spacemit,k3-dwmac", "snps,dwmac-5.40a"; + reg = <0x0 0xcac82000 0x0 0x2000>; + clocks = <&syscon_apmu CLK_APMU_EMAC1_BUS>, + <&syscon_apmu CLK_APMU_EMAC1_1588>, + <&syscon_apmu CLK_APMU_EMAC1_RGMII_TX>; + clock-names = "stmmaceth", "ptp_ref", "tx"; + interrupt-parent = <&saplic>; + interrupts = <133 IRQ_TYPE_LEVEL_HIGH>, + <277 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "macirq", "eth_wake_irq"; + resets = <&syscon_apmu RESET_APMU_EMAC1>; + reset-names = "stmmaceth"; + rx-fifo-depth = <8192>; + tx-fifo-depth = <8192>; + snps,multicast-filter-bins = <64>; + snps,perfect-filter-entries = <32>; + snps,aal; + snps,tso; + snps,txpbl = <8>; + snps,rxpbl = <8>; + snps,force_sf_dma_mode; + snps,axi-config = <&gmac_axi_setup>; + spacemit,apmu = <&syscon_apmu 0x3ec 0x3f0>; + status = "disabled"; + + mdio { + compatible = "snps,dwmac-mdio"; + #address-cells = <1>; + #size-cells = <0>; + }; + }; + + eth2: ethernet@cac8e000 { + compatible = "spacemit,k3-dwmac", "snps,dwmac-5.40a"; + reg = <0x0 0xcac8e000 0x0 0x2000>; + clocks = <&syscon_apmu CLK_APMU_EMAC2_BUS>, + <&syscon_apmu CLK_APMU_EMAC2_1588>, + <&syscon_apmu CLK_APMU_EMAC2_RGMII_TX>; + clock-names = "stmmaceth", "ptp_ref", "tx"; + interrupt-parent = <&saplic>; + interrupts = <130 IRQ_TYPE_LEVEL_HIGH>, + <278 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "macirq", "eth_wake_irq"; + resets = <&syscon_apmu RESET_APMU_EMAC2>; + reset-names = "stmmaceth"; + rx-fifo-depth = <4096>; + tx-fifo-depth = <4096>; + snps,multicast-filter-bins = <64>; + snps,perfect-filter-entries = <32>; + snps,aal; + snps,tso; + snps,txpbl = <8>; + snps,rxpbl = <8>; + snps,force_sf_dma_mode; + snps,axi-config = <&gmac_axi_setup>; + spacemit,apmu = <&syscon_apmu 0x248 0x24c>; + status = "disabled"; + + mdio { + compatible = "snps,dwmac-mdio"; + #address-cells = <1>; + #size-cells = <0>; + }; + }; + syscon_apbc: system-controller@d4015000 { compatible = "spacemit,k3-syscon-apbc"; reg = <0x0 0xd4015000 0x0 0x1000>; -- 2.53.0 Inochi