Merge tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / kirkwood-linkstation-duo-6281.dtsi
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * Device Tree common file for kirkwood-6281 based 2-Bay Buffalo Linkstation
4  *
5  * Copyright (C) 2015, 2016
6  * Roger Shimizu <rogershimizu@gmail.com>
7  */
8
9 #include "kirkwood.dtsi"
10 #include "kirkwood-6281.dtsi"
11 #include "kirkwood-linkstation.dtsi"
12
13 / {
14         ocp@f1000000 {
15                 pinctrl: pin-controller@10000 {
16                         pmx_power_hdd0: pmx-power-hdd0 {
17                                 marvell,pins = "mpp28";
18                                 marvell,function = "gpio";
19                         };
20                         pmx_power_hdd1: pmx-power-hdd1 {
21                                 marvell,pins = "mpp29";
22                                 marvell,function = "gpio";
23                         };
24                         pmx_usb_vbus: pmx-usb-vbus {
25                                 marvell,pins = "mpp37";
26                                 marvell,function = "gpio";
27                         };
28                         pmx_led_alarm: pmx-led-alarm {
29                                 marvell,pins = "mpp49";
30                                 marvell,function = "gpio";
31                         };
32                         pmx_led_function_red: pmx-led-function-red {
33                                 marvell,pins = "mpp34";
34                                 marvell,function = "gpio";
35                         };
36                         pmx_led_function_blue: pmx-led-function-blue {
37                                 marvell,pins = "mpp36";
38                                 marvell,function = "gpio";
39                         };
40                         pmx_led_info: pmx-led-info {
41                                 marvell,pins = "mpp38";
42                                 marvell,function = "gpio";
43                         };
44                         pmx_led_power: pmx-led-power {
45                                 marvell,pins = "mpp39";
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                 };
61
62                 sata@80000 {
63                         nr-ports = <2>;
64                 };
65         };
66
67         gpio_keys {
68                 function-button {
69                         gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
70                 };
71
72                 power-on-switch {
73                         gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;
74                 };
75
76                 power-auto-switch {
77                         gpios = <&gpio1 11 GPIO_ACTIVE_LOW>;
78                 };
79         };
80
81         gpio_leds {
82                 red-alarm-led {
83                         label = "linkstation:red:alarm";
84                         gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
85                 };
86
87                 red-function-led {
88                         label = "linkstation:red:function";
89                         gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
90                 };
91
92                 amber-info-led {
93                         label = "linkstation:amber:info";
94                         gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
95                 };
96
97                 blue-function-led {
98                         label = "linkstation:blue:function";
99                         gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
100                 };
101
102                 blue-power-led {
103                         label = "linkstation:blue:power";
104                         gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
105                         default-state = "keep";
106                 };
107         };
108
109         regulators {
110                 pinctrl-0 = <&pmx_power_hdd0 &pmx_power_hdd1 &pmx_usb_vbus>;
111
112                 usb_power: regulator@1 {
113                         gpio = <&gpio1 5 GPIO_ACTIVE_HIGH>;
114                 };
115
116                 hdd_power0: regulator@2 {
117                         gpio = <&gpio0 28 GPIO_ACTIVE_HIGH>;
118                 };
119
120                 hdd_power1: regulator@3 {
121                         compatible = "regulator-fixed";
122                         reg = <3>;
123                         regulator-name = "HDD1 Power";
124                         regulator-min-microvolt = <5000000>;
125                         regulator-max-microvolt = <5000000>;
126                         enable-active-high;
127                         regulator-always-on;
128                         regulator-boot-on;
129                         gpio = <&gpio0 29 GPIO_ACTIVE_HIGH>;
130                 };
131         };
132 };
133
134 &mdio {
135         status = "okay";
136
137         ethphy1: ethernet-phy@8 {
138                 device_type = "ethernet-phy";
139                 reg = <8>;
140         };
141 };
142
143 &eth1 {
144         status = "okay";
145
146         ethernet1-port@0 {
147                 phy-handle = <&ethphy1>;
148         };
149 };