1// SPDX-License-Identifier: GPL-2.0
2/dts-v1/;
3
4#include "kirkwood.dtsi"
5#include "kirkwood-6281.dtsi"
6
7/ {
8	model = "Globalscale Technologies Guruplug Server Plus";
9	compatible = "globalscale,guruplug-server-plus", "globalscale,guruplug", "marvell,kirkwood-88f6281", "marvell,kirkwood";
10
11	memory {
12		device_type = "memory";
13		reg = <0x00000000 0x20000000>;
14	};
15
16	chosen {
17		bootargs = "console=ttyS0,115200n8 earlyprintk";
18		stdout-path = &uart0;
19	};
20
21	ocp@f1000000 {
22		pinctrl: pin-controller@10000 {
23			pmx_led_health_r: pmx-led-health-r {
24				marvell,pins = "mpp46";
25				marvell,function = "gpio";
26			};
27			pmx_led_health_g: pmx-led-health-g {
28				marvell,pins = "mpp47";
29				marvell,function = "gpio";
30			};
31			pmx_led_wmode_r: pmx-led-wmode-r {
32				marvell,pins = "mpp48";
33				marvell,function = "gpio";
34			};
35			pmx_led_wmode_g: pmx-led-wmode-g {
36				marvell,pins = "mpp49";
37				marvell,function = "gpio";
38			};
39		};
40		serial@12000 {
41			status = "okay";
42		};
43
44		sata@80000 {
45			status = "okay";
46			nr-ports = <1>;
47		};
48
49		/* AzureWave AW-GH381 WiFi/BT */
50		mvsdio@90000 {
51			status = "okay";
52			non-removable;
53		};
54	};
55
56	gpio-leds {
57		compatible = "gpio-leds";
58		pinctrl-0 = < &pmx_led_health_r &pmx_led_health_g
59			      &pmx_led_wmode_r &pmx_led_wmode_g >;
60		pinctrl-names = "default";
61
62		health-r {
63			label = "guruplug:red:health";
64			gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
65		};
66		health-g {
67			label = "guruplug:green:health";
68			gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
69		};
70		wmode-r {
71			label = "guruplug:red:wmode";
72			gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
73		};
74		wmode-g {
75			label = "guruplug:green:wmode";
76			gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
77		};
78	};
79};
80
81&nand {
82	status = "okay";
83
84	partition@0 {
85		label = "u-boot";
86		reg = <0x00000000 0x00100000>;
87		read-only;
88	};
89
90	partition@100000 {
91		label = "uImage";
92		reg = <0x00100000 0x00400000>;
93	};
94
95	partition@500000 {
96		label = "data";
97		reg = <0x00500000 0x1fb00000>;
98	};
99};
100
101&mdio {
102	status = "okay";
103
104	ethphy0: ethernet-phy@0 {
105		/* Marvell 88E1121R */
106		compatible = "ethernet-phy-id0141.0cb0",
107		             "ethernet-phy-ieee802.3-c22";
108		reg = <0>;
109	};
110
111	ethphy1: ethernet-phy@1 {
112		/* Marvell 88E1121R */
113		compatible = "ethernet-phy-id0141.0cb0",
114		             "ethernet-phy-ieee802.3-c22";
115		reg = <1>;
116	};
117};
118
119&eth0 {
120	status = "okay";
121	ethernet0-port@0 {
122		phy-handle = <&ethphy0>;
123		phy-connection-type = "rgmii-id";
124	};
125};
126
127&eth1 {
128	status = "okay";
129	ethernet1-port@0 {
130		phy-handle = <&ethphy1>;
131		phy-connection-type = "rgmii-id";
132	};
133};
134