* [PATCH 0/3] riscv: dts: sophgo: Add ethernet support for cv18xx
@ 2025-07-03 2:15 Inochi Amaoto
2025-07-03 2:15 ` [PATCH 1/3] riscv: dts: sophgo: Add ethernet device " Inochi Amaoto
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: Inochi Amaoto @ 2025-07-03 2:15 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Chen Wang,
Inochi Amaoto, Richard Cochran, Alexander Sverdlin, Yixun Lan,
Ze Huang, Thomas Bonnefille
Cc: devicetree, linux-riscv, sophgo, linux-kernel, netdev, Longbin Li
Add device binding and dts for CV18XX series SoC.
Change from RFC v4:
- https://lore.kernel.org/all/20250701011730.136002-1-inochiama@gmail.com
1. split the binding patch as a standalone series.
Change from RFC v3:
- https://lore.kernel.org/all/20250626080056.325496-1-inochiama@gmail.com
1. patch 3: change internal phy id from 0 to 1
Change from RFC v2:
- https://lore.kernel.org/all/20250623003049.574821-1-inochiama@gmail.com
1. patch 1: fix wrong binding title
2. patch 3: fix unmatched mdio bus number
3. patch 4: remove setting phy-mode and phy-handle in board dts and move
them into patch 3.
Change from RFC v1:
- https://lore.kernel.org/all/20250611080709.1182183-1-inochiama@gmail.com
1. patch 3: switch to mdio-mux-mmioreg
2. patch 4: add configuration for Huashan Pi
Inochi Amaoto (3):
riscv: dts: sophgo: Add ethernet device for cv18xx
riscv: dts: sophgo: Add mdio multiplexer device for cv18xx
riscv: dts: sophgo: Enable ethernet device for Huashan Pi
arch/riscv/boot/dts/sophgo/cv180x.dtsi | 73 +++++++++++++++++++
.../boot/dts/sophgo/cv1812h-huashan-pi.dts | 8 ++
2 files changed, 81 insertions(+)
base-commit: a3d69a2aa44f50fb09f513bd2b8d8c91fb175207
prerequisite-patch-id: ab3ca8c9cda888f429945fb0283145122975b734
prerequisite-patch-id: bd94f8bd3d4ce4f3b153cbb36a3896c5dc143c17
prerequisite-patch-id: 52a475a6d4f8743011963384316d9907ed16d5a7
--
2.50.0
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 1/3] riscv: dts: sophgo: Add ethernet device for cv18xx
2025-07-03 2:15 [PATCH 0/3] riscv: dts: sophgo: Add ethernet support for cv18xx Inochi Amaoto
@ 2025-07-03 2:15 ` Inochi Amaoto
2025-07-03 2:15 ` [PATCH 2/3] riscv: dts: sophgo: Add mdio multiplexer " Inochi Amaoto
` (2 subsequent siblings)
3 siblings, 0 replies; 7+ messages in thread
From: Inochi Amaoto @ 2025-07-03 2:15 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Chen Wang,
Inochi Amaoto, Richard Cochran, Alexander Sverdlin, Yixun Lan,
Ze Huang, Thomas Bonnefille
Cc: devicetree, linux-riscv, sophgo, linux-kernel, netdev, Longbin Li
Add ethernet controller device node for cv18xx SoC.
Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
---
arch/riscv/boot/dts/sophgo/cv180x.dtsi | 44 ++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
diff --git a/arch/riscv/boot/dts/sophgo/cv180x.dtsi b/arch/riscv/boot/dts/sophgo/cv180x.dtsi
index e91bb512b099..7eecc67f896e 100644
--- a/arch/riscv/boot/dts/sophgo/cv180x.dtsi
+++ b/arch/riscv/boot/dts/sophgo/cv180x.dtsi
@@ -189,6 +189,50 @@ i2c4: i2c@4040000 {
status = "disabled";
};
+ gmac0: ethernet@4070000 {
+ compatible = "sophgo,cv1800b-dwmac", "snps,dwmac-3.70a";
+ reg = <0x04070000 0x10000>;
+ clocks = <&clk CLK_AXI4_ETH0>, <&clk CLK_ETH0_500M>;
+ clock-names = "stmmaceth", "ptp_ref";
+ interrupts = <SOC_PERIPHERAL_IRQ(15) IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "macirq";
+ resets = <&rst RST_ETH0>;
+ reset-names = "stmmaceth";
+ rx-fifo-depth = <8192>;
+ tx-fifo-depth = <8192>;
+ snps,multicast-filter-bins = <0>;
+ snps,perfect-filter-entries = <1>;
+ snps,aal;
+ snps,txpbl = <8>;
+ snps,rxpbl = <8>;
+ snps,mtl-rx-config = <&gmac0_mtl_rx_setup>;
+ snps,mtl-tx-config = <&gmac0_mtl_tx_setup>;
+ snps,axi-config = <&gmac0_stmmac_axi_setup>;
+ status = "disabled";
+
+ gmac0_mdio: mdio {
+ compatible = "snps,dwmac-mdio";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ gmac0_mtl_rx_setup: rx-queues-config {
+ snps,rx-queues-to-use = <1>;
+ queue0 {};
+ };
+
+ gmac0_mtl_tx_setup: tx-queues-config {
+ snps,tx-queues-to-use = <1>;
+ queue0 {};
+ };
+
+ gmac0_stmmac_axi_setup: stmmac-axi-config {
+ snps,blen = <16 8 4 0 0 0 0>;
+ snps,rd_osr_lmt = <2>;
+ snps,wr_osr_lmt = <1>;
+ };
+ };
+
uart0: serial@4140000 {
compatible = "snps,dw-apb-uart";
reg = <0x04140000 0x100>;
--
2.50.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 2/3] riscv: dts: sophgo: Add mdio multiplexer device for cv18xx
2025-07-03 2:15 [PATCH 0/3] riscv: dts: sophgo: Add ethernet support for cv18xx Inochi Amaoto
2025-07-03 2:15 ` [PATCH 1/3] riscv: dts: sophgo: Add ethernet device " Inochi Amaoto
@ 2025-07-03 2:15 ` Inochi Amaoto
2025-07-15 17:43 ` Rob Herring
2025-07-03 2:15 ` [PATCH 3/3] riscv: dts: sophgo: Enable ethernet device for Huashan Pi Inochi Amaoto
2025-07-10 4:49 ` [PATCH 0/3] riscv: dts: sophgo: Add ethernet support for cv18xx Inochi Amaoto
3 siblings, 1 reply; 7+ messages in thread
From: Inochi Amaoto @ 2025-07-03 2:15 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Chen Wang,
Inochi Amaoto, Richard Cochran, Alexander Sverdlin, Yixun Lan,
Ze Huang, Thomas Bonnefille
Cc: devicetree, linux-riscv, sophgo, linux-kernel, netdev, Longbin Li
Add DT device node of mdio multiplexer device for cv18xx SoC.
Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
---
arch/riscv/boot/dts/sophgo/cv180x.dtsi | 29 ++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/arch/riscv/boot/dts/sophgo/cv180x.dtsi b/arch/riscv/boot/dts/sophgo/cv180x.dtsi
index 7eecc67f896e..3a82cc40ea1a 100644
--- a/arch/riscv/boot/dts/sophgo/cv180x.dtsi
+++ b/arch/riscv/boot/dts/sophgo/cv180x.dtsi
@@ -31,6 +31,33 @@ rst: reset-controller@3003000 {
#reset-cells = <1>;
};
+ mdio: mdio@3009800 {
+ compatible = "mdio-mux-mmioreg", "mdio-mux";
+ reg = <0x3009800 0x4>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ mdio-parent-bus = <&gmac0_mdio>;
+ mux-mask = <0x80>;
+ status = "disabled";
+
+ internal_mdio: mdio@0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0>;
+
+ internal_ephy: phy@0 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <1>;
+ };
+ };
+
+ external_mdio: mdio@80 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x80>;
+ };
+ };
+
gpio0: gpio@3020000 {
compatible = "snps,dw-apb-gpio";
reg = <0x3020000 0x1000>;
@@ -196,6 +223,8 @@ gmac0: ethernet@4070000 {
clock-names = "stmmaceth", "ptp_ref";
interrupts = <SOC_PERIPHERAL_IRQ(15) IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "macirq";
+ phy-handle = <&internal_ephy>;
+ phy-mode = "internal";
resets = <&rst RST_ETH0>;
reset-names = "stmmaceth";
rx-fifo-depth = <8192>;
--
2.50.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 3/3] riscv: dts: sophgo: Enable ethernet device for Huashan Pi
2025-07-03 2:15 [PATCH 0/3] riscv: dts: sophgo: Add ethernet support for cv18xx Inochi Amaoto
2025-07-03 2:15 ` [PATCH 1/3] riscv: dts: sophgo: Add ethernet device " Inochi Amaoto
2025-07-03 2:15 ` [PATCH 2/3] riscv: dts: sophgo: Add mdio multiplexer " Inochi Amaoto
@ 2025-07-03 2:15 ` Inochi Amaoto
2025-07-10 4:49 ` [PATCH 0/3] riscv: dts: sophgo: Add ethernet support for cv18xx Inochi Amaoto
3 siblings, 0 replies; 7+ messages in thread
From: Inochi Amaoto @ 2025-07-03 2:15 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Chen Wang,
Inochi Amaoto, Richard Cochran, Alexander Sverdlin, Yixun Lan,
Ze Huang, Thomas Bonnefille
Cc: devicetree, linux-riscv, sophgo, linux-kernel, netdev, Longbin Li
Enable ethernet controller and mdio multiplexer device on Huashan Pi.
Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
---
arch/riscv/boot/dts/sophgo/cv1812h-huashan-pi.dts | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/riscv/boot/dts/sophgo/cv1812h-huashan-pi.dts b/arch/riscv/boot/dts/sophgo/cv1812h-huashan-pi.dts
index 26b57e15adc1..4a5835fa9e96 100644
--- a/arch/riscv/boot/dts/sophgo/cv1812h-huashan-pi.dts
+++ b/arch/riscv/boot/dts/sophgo/cv1812h-huashan-pi.dts
@@ -55,6 +55,14 @@ &emmc {
non-removable;
};
+&gmac0 {
+ status = "okay";
+};
+
+&mdio {
+ status = "okay";
+};
+
&sdhci0 {
status = "okay";
bus-width = <4>;
--
2.50.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 0/3] riscv: dts: sophgo: Add ethernet support for cv18xx
2025-07-03 2:15 [PATCH 0/3] riscv: dts: sophgo: Add ethernet support for cv18xx Inochi Amaoto
` (2 preceding siblings ...)
2025-07-03 2:15 ` [PATCH 3/3] riscv: dts: sophgo: Enable ethernet device for Huashan Pi Inochi Amaoto
@ 2025-07-10 4:49 ` Inochi Amaoto
3 siblings, 0 replies; 7+ messages in thread
From: Inochi Amaoto @ 2025-07-10 4:49 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Chen Wang,
Richard Cochran, Alexander Sverdlin, Yixun Lan, Ze Huang,
Thomas Bonnefille, Inochi Amaoto
Cc: devicetree, linux-riscv, sophgo, linux-kernel, netdev, Longbin Li
On Thu, 03 Jul 2025 10:15:55 +0800, Inochi Amaoto wrote:
> Add device binding and dts for CV18XX series SoC.
>
> Change from RFC v4:
> - https://lore.kernel.org/all/20250701011730.136002-1-inochiama@gmail.com
> 1. split the binding patch as a standalone series.
>
> Change from RFC v3:
> - https://lore.kernel.org/all/20250626080056.325496-1-inochiama@gmail.com
> 1. patch 3: change internal phy id from 0 to 1
>
> [...]
Applied to for-next, thanks!
[1/3] riscv: dts: sophgo: Add ethernet device for cv18xx
https://github.com/sophgo/linux/commit/0100910f6ae2659c1178b3ece064c2f2e7eefbae
[2/3] riscv: dts: sophgo: Add mdio multiplexer device for cv18xx
https://github.com/sophgo/linux/commit/a4fb40b240fecc3cf84e12277e5b66818a80e3ad
[3/3] riscv: dts: sophgo: Enable ethernet device for Huashan Pi
https://github.com/sophgo/linux/commit/8f8de50d4bddf155b5e5c70072c3048829a90a98
Thanks,
Inochi
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/3] riscv: dts: sophgo: Add mdio multiplexer device for cv18xx
2025-07-03 2:15 ` [PATCH 2/3] riscv: dts: sophgo: Add mdio multiplexer " Inochi Amaoto
@ 2025-07-15 17:43 ` Rob Herring
2025-07-15 22:06 ` Inochi Amaoto
0 siblings, 1 reply; 7+ messages in thread
From: Rob Herring @ 2025-07-15 17:43 UTC (permalink / raw)
To: Inochi Amaoto
Cc: Krzysztof Kozlowski, Conor Dooley, Paul Walmsley, Palmer Dabbelt,
Albert Ou, Alexandre Ghiti, Chen Wang, Richard Cochran,
Alexander Sverdlin, Yixun Lan, Ze Huang, Thomas Bonnefille,
devicetree, linux-riscv, sophgo, linux-kernel, netdev, Longbin Li
On Wed, Jul 2, 2025 at 9:16 PM Inochi Amaoto <inochiama@gmail.com> wrote:
>
> Add DT device node of mdio multiplexer device for cv18xx SoC.
This adds a dtbs_check warning:
mdio@3009800 (mdio-mux-mmioreg): mdio@80:reg:0:0: 128 is greater than
the maximum of 31
>
> Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
> ---
> arch/riscv/boot/dts/sophgo/cv180x.dtsi | 29 ++++++++++++++++++++++++++
> 1 file changed, 29 insertions(+)
>
> diff --git a/arch/riscv/boot/dts/sophgo/cv180x.dtsi b/arch/riscv/boot/dts/sophgo/cv180x.dtsi
> index 7eecc67f896e..3a82cc40ea1a 100644
> --- a/arch/riscv/boot/dts/sophgo/cv180x.dtsi
> +++ b/arch/riscv/boot/dts/sophgo/cv180x.dtsi
> @@ -31,6 +31,33 @@ rst: reset-controller@3003000 {
> #reset-cells = <1>;
> };
>
> + mdio: mdio@3009800 {
The nodename is wrong here because this is not an MDIO bus. It is a
mux. So "mdio-mux@..." for the node name.
> + compatible = "mdio-mux-mmioreg", "mdio-mux";
> + reg = <0x3009800 0x4>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + mdio-parent-bus = <&gmac0_mdio>;
> + mux-mask = <0x80>;
> + status = "disabled";
> +
> + internal_mdio: mdio@0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> +
> + internal_ephy: phy@0 {
> + compatible = "ethernet-phy-ieee802.3-c22";
> + reg = <1>;
> + };
> + };
> +
> + external_mdio: mdio@80 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0x80>;
> + };
> + };
> +
> gpio0: gpio@3020000 {
> compatible = "snps,dw-apb-gpio";
> reg = <0x3020000 0x1000>;
> @@ -196,6 +223,8 @@ gmac0: ethernet@4070000 {
> clock-names = "stmmaceth", "ptp_ref";
> interrupts = <SOC_PERIPHERAL_IRQ(15) IRQ_TYPE_LEVEL_HIGH>;
> interrupt-names = "macirq";
> + phy-handle = <&internal_ephy>;
> + phy-mode = "internal";
> resets = <&rst RST_ETH0>;
> reset-names = "stmmaceth";
> rx-fifo-depth = <8192>;
> --
> 2.50.0
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/3] riscv: dts: sophgo: Add mdio multiplexer device for cv18xx
2025-07-15 17:43 ` Rob Herring
@ 2025-07-15 22:06 ` Inochi Amaoto
0 siblings, 0 replies; 7+ messages in thread
From: Inochi Amaoto @ 2025-07-15 22:06 UTC (permalink / raw)
To: Rob Herring, Inochi Amaoto
Cc: Krzysztof Kozlowski, Conor Dooley, Paul Walmsley, Palmer Dabbelt,
Albert Ou, Alexandre Ghiti, Chen Wang, Richard Cochran,
Alexander Sverdlin, Yixun Lan, Ze Huang, Thomas Bonnefille,
devicetree, linux-riscv, sophgo, linux-kernel, netdev, Longbin Li
On Tue, Jul 15, 2025 at 12:43:35PM -0500, Rob Herring wrote:
> On Wed, Jul 2, 2025 at 9:16 PM Inochi Amaoto <inochiama@gmail.com> wrote:
> >
> > Add DT device node of mdio multiplexer device for cv18xx SoC.
>
> This adds a dtbs_check warning:
>
> mdio@3009800 (mdio-mux-mmioreg): mdio@80:reg:0:0: 128 is greater than
> the maximum of 31
>
> >
> > Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
> > ---
> > arch/riscv/boot/dts/sophgo/cv180x.dtsi | 29 ++++++++++++++++++++++++++
> > 1 file changed, 29 insertions(+)
> >
> > diff --git a/arch/riscv/boot/dts/sophgo/cv180x.dtsi b/arch/riscv/boot/dts/sophgo/cv180x.dtsi
> > index 7eecc67f896e..3a82cc40ea1a 100644
> > --- a/arch/riscv/boot/dts/sophgo/cv180x.dtsi
> > +++ b/arch/riscv/boot/dts/sophgo/cv180x.dtsi
> > @@ -31,6 +31,33 @@ rst: reset-controller@3003000 {
> > #reset-cells = <1>;
> > };
> >
> > + mdio: mdio@3009800 {
>
> The nodename is wrong here because this is not an MDIO bus. It is a
> mux. So "mdio-mux@..." for the node name.
>
Thanks, I will send a fix for this.
Regards,
Inochi
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2025-07-15 22:06 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-03 2:15 [PATCH 0/3] riscv: dts: sophgo: Add ethernet support for cv18xx Inochi Amaoto
2025-07-03 2:15 ` [PATCH 1/3] riscv: dts: sophgo: Add ethernet device " Inochi Amaoto
2025-07-03 2:15 ` [PATCH 2/3] riscv: dts: sophgo: Add mdio multiplexer " Inochi Amaoto
2025-07-15 17:43 ` Rob Herring
2025-07-15 22:06 ` Inochi Amaoto
2025-07-03 2:15 ` [PATCH 3/3] riscv: dts: sophgo: Enable ethernet device for Huashan Pi Inochi Amaoto
2025-07-10 4:49 ` [PATCH 0/3] riscv: dts: sophgo: Add ethernet support for cv18xx Inochi Amaoto
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).