blob: f0786a5f2ce6aed4f01fdfab5406203ef457d5a8 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// 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
Tom Rini6b642ac2024-10-01 12:20:28 -0600165 led-green-sys {
Tom Rini53633a82024-02-29 12:33:36 -0500166 label = "nsa325:green:sys";
167 gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>;
168 };
Tom Rini6b642ac2024-10-01 12:20:28 -0600169 led-orange-sys {
Tom Rini53633a82024-02-29 12:33:36 -0500170 label = "nsa325:orange:sys";
171 gpios = <&gpio0 29 GPIO_ACTIVE_HIGH>;
172 };
Tom Rini6b642ac2024-10-01 12:20:28 -0600173 led-green-hdd1 {
Tom Rini53633a82024-02-29 12:33:36 -0500174 label = "nsa325:green:hdd1";
175 gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
176 };
Tom Rini6b642ac2024-10-01 12:20:28 -0600177 led-red-hdd1 {
Tom Rini53633a82024-02-29 12:33:36 -0500178 label = "nsa325:red:hdd1";
179 gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
180 };
Tom Rini6b642ac2024-10-01 12:20:28 -0600181 led-green-hdd2 {
Tom Rini53633a82024-02-29 12:33:36 -0500182 label = "nsa325:green:hdd2";
183 gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
184 };
Tom Rini6b642ac2024-10-01 12:20:28 -0600185 led-red-hdd2 {
Tom Rini53633a82024-02-29 12:33:36 -0500186 label = "nsa325:red:hdd2";
187 gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
188 };
Tom Rini6b642ac2024-10-01 12:20:28 -0600189 led-green-usb {
Tom Rini53633a82024-02-29 12:33:36 -0500190 label = "nsa325:green:usb";
191 gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>;
192 };
Tom Rini6b642ac2024-10-01 12:20:28 -0600193 led-green-copy {
Tom Rini53633a82024-02-29 12:33:36 -0500194 label = "nsa325:green:copy";
195 gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
196 };
Tom Rini6b642ac2024-10-01 12:20:28 -0600197 led-red-copy {
Tom Rini53633a82024-02-29 12:33:36 -0500198 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
212&mdio {
213 status = "okay";
214 ethphy0: ethernet-phy@1 {
215 reg = <1>;
216 };
217};
218
219&eth0 {
220 status = "okay";
221 ethernet0-port@0 {
222 phy-handle = <&ethphy0>;
223 };
224};
225
226&pciec {
227 status = "okay";
228};
229
230&pcie0 {
231 status = "okay";
232};