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