Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / kirkwood-linkstation.dtsi
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * Device Tree common file for kirkwood based Buffalo Linkstation
4  *
5  * Copyright (C) 2015, 2016
6  * Roger Shimizu <rogershimizu@gmail.com>
7  */
8
9 / {
10         chosen {
11                 bootargs = "console=ttyS0,115200n8 earlyprintk";
12                 stdout-path = &uart0;
13         };
14
15         ocp@f1000000 {
16                 pinctrl: pin-controller@10000 {
17                         pmx_power_hdd0: pmx-power-hdd0 {
18                                 marvell,function = "gpio";
19                         };
20                         pmx_usb_vbus: pmx-usb-vbus {
21                                 marvell,function = "gpio";
22                         };
23                         pmx_led_alarm: pmx-led-alarm {
24                                 marvell,function = "gpio";
25                         };
26                         pmx_led_function_red: pmx-led-function-red {
27                                 marvell,function = "gpio";
28                         };
29                         pmx_led_function_blue: pmx-led-function-blue {
30                                 marvell,function = "gpio";
31                         };
32                         pmx_led_info: pmx-led-info {
33                                 marvell,function = "gpio";
34                         };
35                         pmx_led_power: pmx-led-power {
36                                 marvell,function = "gpio";
37                         };
38                         pmx_button_function: pmx-button-function {
39                                 marvell,function = "gpio";
40                         };
41                         pmx_power_switch: pmx-power-switch {
42                                 marvell,function = "gpio";
43                         };
44                         pmx_power_auto_switch: pmx-power-auto-switch {
45                                 marvell,function = "gpio";
46                         };
47                 };
48
49                 serial@12000 {
50                         status = "okay";
51                 };
52
53                 sata@80000 {
54                         status = "okay";
55                         nr-ports = <1>;
56                 };
57
58                 spi@10600 {
59                         status = "okay";
60
61                         m25p40@0 {
62                                 #address-cells = <1>;
63                                 #size-cells = <1>;
64                                 compatible = "st,m25p40", "jedec,spi-nor";
65                                 reg = <0>;
66                                 spi-max-frequency = <25000000>;
67                                 mode = <0>;
68
69                                 partition@0 {
70                                         reg = <0x0 0x60000>;
71                                         label = "uboot";
72                                         read-only;
73                                 };
74
75                                 partition@60000 {
76                                         reg = <0x60000 0x10000>;
77                                         label = "dtb";
78                                         read-only;
79                                 };
80
81                                 partition@70000 {
82                                         reg = <0x70000 0x10000>;
83                                         label = "uboot_env";
84                                 };
85                         };
86                 };
87         };
88
89         gpio_keys {
90                 compatible = "gpio-keys";
91                 #address-cells = <1>;
92                 #size-cells = <0>;
93                 pinctrl-0 = <&pmx_button_function &pmx_power_switch
94                              &pmx_power_auto_switch>;
95                 pinctrl-names = "default";
96
97                 function-button {
98                         label = "Function Button";
99                         linux,code = <KEY_OPTION>;
100                 };
101
102                 power-on-switch {
103                         label = "Power-on Switch";
104                         linux,code = <KEY_RESERVED>;
105                         linux,input-type = <5>;
106                 };
107
108                 power-auto-switch {
109                         label = "Power-auto Switch";
110                         linux,code = <KEY_ESC>;
111                         linux,input-type = <5>;
112                 };
113         };
114
115         gpio_leds {
116                 compatible = "gpio-leds";
117                 pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm
118                              &pmx_led_info &pmx_led_power
119                              &pmx_led_function_blue>;
120                 pinctrl-names = "default";
121         };
122
123         restart_poweroff {
124                 compatible = "restart-poweroff";
125         };
126
127         regulators {
128                 compatible = "simple-bus";
129                 #address-cells = <1>;
130                 #size-cells = <0>;
131                 pinctrl-0 = <&pmx_power_hdd0 &pmx_usb_vbus>;
132                 pinctrl-names = "default";
133
134                 usb_power: regulator@1 {
135                         compatible = "regulator-fixed";
136                         reg = <1>;
137                         regulator-name = "USB Power";
138                         regulator-min-microvolt = <5000000>;
139                         regulator-max-microvolt = <5000000>;
140                         enable-active-high;
141                         regulator-always-on;
142                         regulator-boot-on;
143                 };
144
145                 hdd_power0: regulator@2 {
146                         compatible = "regulator-fixed";
147                         reg = <2>;
148                         regulator-name = "HDD0 Power";
149                         regulator-min-microvolt = <5000000>;
150                         regulator-max-microvolt = <5000000>;
151                         enable-active-high;
152                         regulator-always-on;
153                         regulator-boot-on;
154                 };
155         };
156 };
157
158 &pciec {
159         status = "okay";
160 };
161
162 &pcie0 {
163         status = "okay";
164 };