Commit 60775f28 authored by Vivian Wang's avatar Vivian Wang Committed by Paolo Abeni
Browse files

riscv: dts: spacemit: Add Ethernet support for K1



Add nodes for each of the two Ethernet MACs on K1 with generic
properties. Also add "gmac" pins to pinctrl config.

Signed-off-by: default avatarVivian Wang <wangruikang@iscas.ac.cn>
Reviewed-by: default avatarYixun Lan <dlan@gentoo.org>
Link: https://patch.msgid.link/20250914-net-k1-emac-v12-3-65b31b398f44@iscas.ac.cn


Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
parent bfec6d7f
Loading
Loading
Loading
Loading
+48 −0
Original line number Diff line number Diff line
@@ -11,6 +11,54 @@
#define K1_GPIO(x)	(x / 32) (x % 32)

&pinctrl {
	gmac0_cfg: gmac0-cfg {
		gmac0-pins {
			pinmux = <K1_PADCONF(0, 1)>,	/* gmac0_rxdv */
				 <K1_PADCONF(1, 1)>,	/* gmac0_rx_d0 */
				 <K1_PADCONF(2, 1)>,	/* gmac0_rx_d1 */
				 <K1_PADCONF(3, 1)>,	/* gmac0_rx_clk */
				 <K1_PADCONF(4, 1)>,	/* gmac0_rx_d2 */
				 <K1_PADCONF(5, 1)>,	/* gmac0_rx_d3 */
				 <K1_PADCONF(6, 1)>,	/* gmac0_tx_d0 */
				 <K1_PADCONF(7, 1)>,	/* gmac0_tx_d1 */
				 <K1_PADCONF(8, 1)>,	/* gmac0_tx */
				 <K1_PADCONF(9, 1)>,	/* gmac0_tx_d2 */
				 <K1_PADCONF(10, 1)>,	/* gmac0_tx_d3 */
				 <K1_PADCONF(11, 1)>,	/* gmac0_tx_en */
				 <K1_PADCONF(12, 1)>,	/* gmac0_mdc */
				 <K1_PADCONF(13, 1)>,	/* gmac0_mdio */
				 <K1_PADCONF(14, 1)>,	/* gmac0_int_n */
				 <K1_PADCONF(45, 1)>;	/* gmac0_clk_ref */

			bias-pull-up = <0>;
			drive-strength = <21>;
		};
	};

	gmac1_cfg: gmac1-cfg {
		gmac1-pins {
			pinmux = <K1_PADCONF(29, 1)>,	/* gmac1_rxdv */
				 <K1_PADCONF(30, 1)>,	/* gmac1_rx_d0 */
				 <K1_PADCONF(31, 1)>,	/* gmac1_rx_d1 */
				 <K1_PADCONF(32, 1)>,	/* gmac1_rx_clk */
				 <K1_PADCONF(33, 1)>,	/* gmac1_rx_d2 */
				 <K1_PADCONF(34, 1)>,	/* gmac1_rx_d3 */
				 <K1_PADCONF(35, 1)>,	/* gmac1_tx_d0 */
				 <K1_PADCONF(36, 1)>,	/* gmac1_tx_d1 */
				 <K1_PADCONF(37, 1)>,	/* gmac1_tx */
				 <K1_PADCONF(38, 1)>,	/* gmac1_tx_d2 */
				 <K1_PADCONF(39, 1)>,	/* gmac1_tx_d3 */
				 <K1_PADCONF(40, 1)>,	/* gmac1_tx_en */
				 <K1_PADCONF(41, 1)>,	/* gmac1_mdc */
				 <K1_PADCONF(42, 1)>,	/* gmac1_mdio */
				 <K1_PADCONF(43, 1)>,	/* gmac1_int_n */
				 <K1_PADCONF(46, 1)>;	/* gmac1_clk_ref */

			bias-pull-up = <0>;
			drive-strength = <21>;
		};
	};

	uart0_2_cfg: uart0-2-cfg {
		uart0-2-pins {
			pinmux = <K1_PADCONF(68, 2)>,
+22 −0
Original line number Diff line number Diff line
@@ -805,6 +805,28 @@ network-bus {
			#size-cells = <2>;
			dma-ranges = <0x0 0x00000000 0x0 0x00000000 0x0 0x80000000>,
				     <0x0 0x80000000 0x1 0x00000000 0x0 0x80000000>;

			eth0: ethernet@cac80000 {
				compatible = "spacemit,k1-emac";
				reg = <0x0 0xcac80000 0x0 0x420>;
				clocks = <&syscon_apmu CLK_EMAC0_BUS>;
				interrupts = <131>;
				mac-address = [ 00 00 00 00 00 00 ];
				resets = <&syscon_apmu RESET_EMAC0>;
				spacemit,apmu = <&syscon_apmu 0x3e4>;
				status = "disabled";
			};

			eth1: ethernet@cac81000 {
				compatible = "spacemit,k1-emac";
				reg = <0x0 0xcac81000 0x0 0x420>;
				clocks = <&syscon_apmu CLK_EMAC1_BUS>;
				interrupts = <133>;
				mac-address = [ 00 00 00 00 00 00 ];
				resets = <&syscon_apmu RESET_EMAC1>;
				spacemit,apmu = <&syscon_apmu 0x3ec>;
				status = "disabled";
			};
		};

		pcie-bus {