Loading...
1// SPDX-License-Identifier: GPL-2.0
2#include "kirkwood.dtsi"
3#include "kirkwood-6281.dtsi"
4
5/ {
6 chosen {
7 bootargs = "console=ttyS0,115200n8 earlyprintk";
8 stdout-path = &uart0;
9 };
10
11 ocp@f1000000 {
12 pinctrl: pin-controller@10000 {
13 /* Non-default UART pins */
14 pmx_uart0: pmx-uart0 {
15 marvell,pins = "mpp4", "mpp5";
16 };
17
18 pmx_power_hdd: pmx-power-hdd {
19 marvell,pins = "mpp10";
20 marvell,function = "gpo";
21 };
22 pmx_usb_vbus: pmx-usb-vbus {
23 marvell,pins = "mpp11";
24 marvell,function = "gpio";
25 };
26 pmx_fan_high: pmx-fan-high {
27 marvell,pins = "mpp18";
28 marvell,function = "gpo";
29 };
30 pmx_fan_low: pmx-fan-low {
31 marvell,pins = "mpp19";
32 marvell,function = "gpo";
33 };
34 pmx_led_function_blue: pmx-led-function-blue {
35 marvell,pins = "mpp36";
36 marvell,function = "gpio";
37 };
38 pmx_led_alarm: pmx-led-alarm {
39 marvell,pins = "mpp37";
40 marvell,function = "gpio";
41 };
42 pmx_led_info: pmx-led-info {
43 marvell,pins = "mpp38";
44 marvell,function = "gpio";
45 };
46 pmx_led_power: pmx-led-power {
47 marvell,pins = "mpp39";
48 marvell,function = "gpio";
49 };
50 pmx_fan_lock: pmx-fan-lock {
51 marvell,pins = "mpp40";
52 marvell,function = "gpio";
53 };
54 pmx_button_function: pmx-button-function {
55 marvell,pins = "mpp41";
56 marvell,function = "gpio";
57 };
58 pmx_power_switch: pmx-power-switch {
59 marvell,pins = "mpp42";
60 marvell,function = "gpio";
61 };
62 pmx_power_auto_switch: pmx-power-auto-switch {
63 marvell,pins = "mpp43";
64 marvell,function = "gpio";
65 };
66 pmx_led_function_red: pmx-led-function_red {
67 marvell,pins = "mpp48";
68 marvell,function = "gpio";
69 };
70
71 };
72 sata@80000 {
73 status = "okay";
74 nr-ports = <1>;
75 };
76
77 spi@10600 {
78 status = "okay";
79
80 m25p40@0 {
81 #address-cells = <1>;
82 #size-cells = <1>;
83 compatible = "m25p40", "jedec,spi-nor";
84 reg = <0>;
85 spi-max-frequency = <25000000>;
86 mode = <0>;
87
88 partition@0 {
89 reg = <0x0 0x60000>;
90 label = "uboot";
91 read-only;
92 };
93
94 partition@60000 {
95 reg = <0x60000 0x10000>;
96 label = "dtb";
97 read-only;
98 };
99
100 partition@70000 {
101 reg = <0x70000 0x10000>;
102 label = "uboot_env";
103 };
104 };
105 };
106 };
107
108 gpio_keys {
109 compatible = "gpio-keys";
110 #address-cells = <1>;
111 #size-cells = <0>;
112 pinctrl-0 = <&pmx_button_function &pmx_power_switch
113 &pmx_power_auto_switch>;
114 pinctrl-names = "default";
115
116 option {
117 label = "Function Button";
118 linux,code = <KEY_OPTION>;
119 gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
120 };
121 reserved {
122 label = "Power-on Switch";
123 linux,code = <KEY_RESERVED>;
124 linux,input-type = <5>;
125 gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;
126 };
127 power {
128 label = "Power-auto Switch";
129 linux,code = <KEY_ESC>;
130 linux,input-type = <5>;
131 gpios = <&gpio1 11 GPIO_ACTIVE_LOW>;
132 };
133 };
134
135 gpio_leds {
136 compatible = "gpio-leds";
137 pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm
138 &pmx_led_info &pmx_led_power
139 &pmx_led_function_blue>;
140 pinctrl-names = "default";
141
142 func_blue {
143 label = "lsxl:blue:func";
144 gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
145 };
146
147 alarm {
148 label = "lsxl:red:alarm";
149 gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
150 };
151
152 info {
153 label = "lsxl:amber:info";
154 gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
155 };
156
157 power {
158 label = "lsxl:blue:power";
159 gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
160 default-state = "keep";
161 };
162
163 func_red {
164 label = "lsxl:red:func";
165 gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
166 };
167 };
168
169 gpio_fan {
170 compatible = "gpio-fan";
171 pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>;
172 pinctrl-names = "default";
173 gpios = <&gpio0 19 GPIO_ACTIVE_LOW
174 &gpio0 18 GPIO_ACTIVE_LOW>;
175 gpio-fan,speed-map = <0 3
176 1500 2
177 3250 1
178 5000 0>;
179 alarm-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
180 };
181
182 restart_poweroff {
183 compatible = "restart-poweroff";
184 };
185
186 regulators {
187 compatible = "simple-bus";
188 #address-cells = <1>;
189 #size-cells = <0>;
190 pinctrl-0 = <&pmx_power_hdd &pmx_usb_vbus>;
191 pinctrl-names = "default";
192
193 usb_power: regulator@1 {
194 compatible = "regulator-fixed";
195 reg = <1>;
196 regulator-name = "USB Power";
197 regulator-min-microvolt = <5000000>;
198 regulator-max-microvolt = <5000000>;
199 enable-active-high;
200 regulator-always-on;
201 regulator-boot-on;
202 gpio = <&gpio0 11 0>;
203 };
204 hdd_power: regulator@2 {
205 compatible = "regulator-fixed";
206 reg = <2>;
207 regulator-name = "HDD Power";
208 regulator-min-microvolt = <5000000>;
209 regulator-max-microvolt = <5000000>;
210 enable-active-high;
211 regulator-always-on;
212 regulator-boot-on;
213 gpio = <&gpio0 10 0>;
214 };
215 };
216};
217
218&mdio {
219 status = "okay";
220
221 ethphy1: ethernet-phy@8 {
222 reg = <8>;
223 };
224};
225
226ð1 {
227 status = "okay";
228 ethernet1-port@0 {
229 phy-handle = <ðphy1>;
230 };
231};
1#include "kirkwood.dtsi"
2#include "kirkwood-6281.dtsi"
3
4/ {
5 chosen {
6 bootargs = "console=ttyS0,115200n8 earlyprintk";
7 };
8
9 ocp@f1000000 {
10 pinctrl: pinctrl@10000 {
11 pmx_power_hdd: pmx-power-hdd {
12 marvell,pins = "mpp10";
13 marvell,function = "gpo";
14 };
15 pmx_usb_vbus: pmx-usb-vbus {
16 marvell,pins = "mpp11";
17 marvell,function = "gpio";
18 };
19 pmx_fan_high: pmx-fan-high {
20 marvell,pins = "mpp18";
21 marvell,function = "gpo";
22 };
23 pmx_fan_low: pmx-fan-low {
24 marvell,pins = "mpp19";
25 marvell,function = "gpo";
26 };
27 pmx_led_function_blue: pmx-led-function-blue {
28 marvell,pins = "mpp36";
29 marvell,function = "gpio";
30 };
31 pmx_led_alarm: pmx-led-alarm {
32 marvell,pins = "mpp37";
33 marvell,function = "gpio";
34 };
35 pmx_led_info: pmx-led-info {
36 marvell,pins = "mpp38";
37 marvell,function = "gpio";
38 };
39 pmx_led_power: pmx-led-power {
40 marvell,pins = "mpp39";
41 marvell,function = "gpio";
42 };
43 pmx_fan_lock: pmx-fan-lock {
44 marvell,pins = "mpp40";
45 marvell,function = "gpio";
46 };
47 pmx_button_function: pmx-button-function {
48 marvell,pins = "mpp41";
49 marvell,function = "gpio";
50 };
51 pmx_power_switch: pmx-power-switch {
52 marvell,pins = "mpp42";
53 marvell,function = "gpio";
54 };
55 pmx_power_auto_switch: pmx-power-auto-switch {
56 marvell,pins = "mpp43";
57 marvell,function = "gpio";
58 };
59 pmx_led_function_red: pmx-led-function_red {
60 marvell,pins = "mpp48";
61 marvell,function = "gpio";
62 };
63
64 };
65 sata@80000 {
66 status = "okay";
67 nr-ports = <1>;
68 };
69
70 spi@10600 {
71 status = "okay";
72
73 m25p40@0 {
74 #address-cells = <1>;
75 #size-cells = <1>;
76 compatible = "m25p40";
77 reg = <0>;
78 spi-max-frequency = <25000000>;
79 mode = <0>;
80
81 partition@0 {
82 reg = <0x0 0x60000>;
83 label = "uboot";
84 read-only;
85 };
86
87 partition@60000 {
88 reg = <0x60000 0x10000>;
89 label = "dtb";
90 read-only;
91 };
92
93 partition@70000 {
94 reg = <0x70000 0x10000>;
95 label = "uboot_env";
96 };
97 };
98 };
99 };
100
101 gpio_keys {
102 compatible = "gpio-keys";
103 #address-cells = <1>;
104 #size-cells = <0>;
105 pinctrl-0 = <&pmx_button_function &pmx_power_switch
106 &pmx_power_auto_switch>;
107 pinctrl-names = "default";
108
109 button@1 {
110 label = "Function Button";
111 linux,code = <KEY_OPTION>;
112 gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
113 };
114 button@2 {
115 label = "Power-on Switch";
116 linux,code = <KEY_RESERVED>;
117 linux,input-type = <5>;
118 gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;
119 };
120 button@3 {
121 label = "Power-auto Switch";
122 linux,code = <KEY_ESC>;
123 linux,input-type = <5>;
124 gpios = <&gpio1 11 GPIO_ACTIVE_LOW>;
125 };
126 };
127
128 gpio_leds {
129 compatible = "gpio-leds";
130 pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm
131 &pmx_led_info &pmx_led_power
132 &pmx_led_function_blue>;
133 pinctrl-names = "default";
134
135 led@1 {
136 label = "lsxl:blue:func";
137 gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
138 };
139
140 led@2 {
141 label = "lsxl:red:alarm";
142 gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
143 };
144
145 led@3 {
146 label = "lsxl:amber:info";
147 gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
148 };
149
150 led@4 {
151 label = "lsxl:blue:power";
152 gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
153 default-state = "keep";
154 };
155
156 led@5 {
157 label = "lsxl:red:func";
158 gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
159 };
160 };
161
162 gpio_fan {
163 compatible = "gpio-fan";
164 pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>;
165 pinctrl-names = "default";
166 gpios = <&gpio0 19 GPIO_ACTIVE_LOW
167 &gpio0 18 GPIO_ACTIVE_LOW>;
168 gpio-fan,speed-map = <0 3
169 1500 2
170 3250 1
171 5000 0>;
172 alarm-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
173 };
174
175 restart_poweroff {
176 compatible = "restart-poweroff";
177 };
178
179 regulators {
180 compatible = "simple-bus";
181 #address-cells = <1>;
182 #size-cells = <0>;
183 pinctrl-0 = <&pmx_power_hdd &pmx_usb_vbus>;
184 pinctrl-names = "default";
185
186 usb_power: regulator@1 {
187 compatible = "regulator-fixed";
188 reg = <1>;
189 regulator-name = "USB Power";
190 regulator-min-microvolt = <5000000>;
191 regulator-max-microvolt = <5000000>;
192 enable-active-high;
193 regulator-always-on;
194 regulator-boot-on;
195 gpio = <&gpio0 11 0>;
196 };
197 hdd_power: regulator@2 {
198 compatible = "regulator-fixed";
199 reg = <2>;
200 regulator-name = "HDD Power";
201 regulator-min-microvolt = <5000000>;
202 regulator-max-microvolt = <5000000>;
203 enable-active-high;
204 regulator-always-on;
205 regulator-boot-on;
206 gpio = <&gpio0 10 0>;
207 };
208 };
209};
210
211&mdio {
212 status = "okay";
213
214 ethphy0: ethernet-phy@0 {
215 reg = <0>;
216 };
217
218 ethphy1: ethernet-phy@8 {
219 reg = <8>;
220 };
221};
222
223ð0 {
224 status = "okay";
225 ethernet0-port@0 {
226 phy-handle = <ðphy0>;
227 };
228};
229
230ð1 {
231 status = "okay";
232 ethernet1-port@0 {
233 phy-handle = <ðphy1>;
234 };
235};