blob: efc57cfa41e5388180606786040928c63b8a29bc [file] [log] [blame]
Tony Dinhb3f559a2023-08-25 20:33:29 -07001// SPDX-License-Identifier: GPL-2.0+
2/* Device tree file for the Zyxel NSA 325 NAS box.
3 *
4 * Copyright (c) 2015, Hans Ulli Kroll <ulli.kroll@googlemail.com>
5 *
6 *
7 * Based upon the board setup file created by Peter Schildmann
8 */
9
10/dts-v1/;
11
12#include "kirkwood-nsa3x0-common.dtsi"
13
14/ {
15 model = "ZyXEL NSA325";
16 compatible = "zyxel,nsa325", "marvell,kirkwood-88f6282", "marvell,kirkwood";
17
18 memory {
19 device_type = "memory";
20 reg = <0x00000000 0x20000000>;
21 };
22
23 chosen {
24 bootargs = "console=ttyS0,115200";
25 stdout-path = &uart0;
26 };
27
28 ocp@f1000000 {
29 pinctrl: pin-controller@10000 {
30 pinctrl-names = "default";
31
32 pmx_led_hdd2_green: pmx-led-hdd2-green {
33 marvell,pins = "mpp12";
34 marvell,function = "gpio";
35 };
36
37 pmx_led_hdd2_red: pmx-led-hdd2-red {
38 marvell,pins = "mpp13";
39 marvell,function = "gpio";
40 };
41
42 pmx_mcu_data: pmx-mcu-data {
43 marvell,pins = "mpp14";
44 marvell,function = "gpio";
45 };
46
47 pmx_led_usb_green: pmx-led-usb-green {
48 marvell,pins = "mpp15";
49 marvell,function = "gpio";
50 };
51
52 pmx_mcu_clk: pmx-mcu-clk {
53 marvell,pins = "mpp16";
54 marvell,function = "gpio";
55 };
56
57 pmx_mcu_act: pmx-mcu-act {
58 marvell,pins = "mpp17";
59 marvell,function = "gpio";
60 };
61
62 pmx_led_sys_green: pmx-led-sys-green {
63 marvell,pins = "mpp28";
64 marvell,function = "gpio";
65 };
66
67 pmx_led_sys_orange: pmx-led-sys-orange {
68 marvell,pins = "mpp29";
69 marvell,function = "gpio";
70 };
71
72 pmx_led_hdd1_green: pmx-led-hdd1-green {
73 marvell,pins = "mpp41";
74 marvell,function = "gpio";
75 };
76
77 pmx_led_hdd1_red: pmx-led-hdd1-red {
78 marvell,pins = "mpp42";
79 marvell,function = "gpio";
80 };
81
82 pmx_htp: pmx-htp {
83 marvell,pins = "mpp43";
84 marvell,function = "gpio";
85 };
86
87 /*
88 * Buzzer needs to be switched at around 1kHz so is
89 * not compatible with the gpio-beeper driver.
90 */
91 pmx_buzzer: pmx-buzzer {
92 marvell,pins = "mpp44";
93 marvell,function = "gpio";
94 };
95
96 pmx_vid_b1: pmx-vid-b1 {
97 marvell,pins = "mpp45";
98 marvell,function = "gpio";
99 };
100
101 pmx_power_resume_data: pmx-power-resume-data {
102 marvell,pins = "mpp47";
103 marvell,function = "gpio";
104 };
105
106 pmx_power_resume_clk: pmx-power-resume-clk {
107 marvell,pins = "mpp49";
108 marvell,function = "gpio";
109 };
110
111 pmx_pwr_sata1: pmx-pwr-sata1 {
112 marvell,pins = "mpp47";
113 marvell,function = "gpio";
114 };
115 };
116
117 /* This board uses the pcf8563 RTC instead of the SoC RTC */
118 rtc@10300 {
119 status = "disabled";
120 };
121
122 i2c@11000 {
123 status = "okay";
124
125 pcf8563: pcf8563@51 {
126 compatible = "nxp,pcf8563";
127 reg = <0x51>;
128 };
129 };
130 };
131
132 regulators {
133 compatible = "simple-bus";
134 #address-cells = <1>;
135 #size-cells = <0>;
136 pinctrl-0 = <&pmx_pwr_sata1>;
137 pinctrl-names = "default";
138
139 usb0_power: regulator@1 {
140 enable-active-high;
141 };
142
143 sata1_power: regulator@2 {
144 compatible = "regulator-fixed";
145 reg = <2>;
146 regulator-name = "SATA1 Power";
147 regulator-min-microvolt = <5000000>;
148 regulator-max-microvolt = <5000000>;
149 regulator-always-on;
150 regulator-boot-on;
151 enable-active-high;
152 gpio = <&gpio1 15 GPIO_ACTIVE_HIGH>;
153 };
154 };
155
156 gpio-leds {
157 compatible = "gpio-leds";
158 pinctrl-0 = <&pmx_led_hdd2_green &pmx_led_hdd2_red
159 &pmx_led_usb_green
160 &pmx_led_sys_green &pmx_led_sys_orange
161 &pmx_led_copy_green &pmx_led_copy_red
162 &pmx_led_hdd1_green &pmx_led_hdd1_red>;
163 pinctrl-names = "default";
164
165 green-sys {
166 label = "nsa325:green:sys";
167 gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>;
168 };
169 orange-sys {
170 label = "nsa325:orange:sys";
171 gpios = <&gpio0 29 GPIO_ACTIVE_HIGH>;
172 };
173 green-hdd1 {
174 label = "nsa325:green:hdd1";
175 gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
176 };
177 red-hdd1 {
178 label = "nsa325:red:hdd1";
179 gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
180 };
181 green-hdd2 {
182 label = "nsa325:green:hdd2";
183 gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
184 };
185 red-hdd2 {
186 label = "nsa325:red:hdd2";
187 gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
188 };
189 green-usb {
190 label = "nsa325:green:usb";
191 gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>;
192 };
193 green-copy {
194 label = "nsa325:green:copy";
195 gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
196 };
197 red-copy {
198 label = "nsa325:red:copy";
199 gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
200 };
201
202 /* The following pins are currently not assigned to a driver,
203 some of them should be configured as inputs.
204 pinctrl-0 = <&pmx_mcu_data &pmx_mcu_clk &pmx_mcu_act
205 &pmx_htp &pmx_vid_b1
206 &pmx_power_resume_data &pmx_power_resume_clk>; */
207 };
208
209};
210
211&mdio {
212 status = "okay";
213 ethphy0: ethernet-phy@1 {
214 reg = <1>;
215 };
216};
217
218&eth0 {
219 status = "okay";
220 ethernet0-port@0 {
221 phy-handle = <&ethphy0>;
222 };
223};
224
225&pciec {
226 status = "okay";
227};
228
229&pcie0 {
230 status = "okay";
231};