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