blob: dfac2045a1ebbbd2a58e1a58ddd5bc36f5f90b8e [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Device Tree common file for kirkwood-6282 based Buffalo Linkstation
4 *
5 * Copyright (C) 2015, 2016
6 * Roger Shimizu <rogershimizu@gmail.com>
7 */
8
9#include "kirkwood.dtsi"
10#include "kirkwood-6282.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 = "mpp8";
18 marvell,function = "gpio";
19 };
20 pmx_usb_vbus: pmx-usb-vbus {
21 marvell,pins = "mpp12";
22 marvell,function = "gpio";
23 };
24 pmx_fan_high: pmx-fan-high {
25 marvell,pins = "mpp16";
26 marvell,function = "gpio";
27 };
28 pmx_fan_low: pmx-fan-low {
29 marvell,pins = "mpp17";
30 marvell,function = "gpio";
31 };
32 pmx_led_alarm: pmx-led-alarm {
33 marvell,pins = "mpp36";
34 marvell,function = "gpio";
35 };
36 pmx_led_function_red: pmx-led-function-red {
37 marvell,pins = "mpp37";
38 marvell,function = "gpio";
39 };
40 pmx_led_info: pmx-led-info {
41 marvell,pins = "mpp38";
42 marvell,function = "gpio";
43 };
44 pmx_led_function_blue: pmx-led-function-blue {
45 marvell,pins = "mpp39";
46 marvell,function = "gpio";
47 };
48 pmx_led_power: pmx-led-power {
49 marvell,pins = "mpp40";
50 marvell,function = "gpio";
51 };
52 pmx_fan_lock: pmx-fan-lock {
53 marvell,pins = "mpp43";
54 marvell,function = "gpio";
55 };
56 pmx_button_function: pmx-button-function {
57 marvell,pins = "mpp45";
58 marvell,function = "gpio";
59 };
60 pmx_power_switch: pmx-power-switch {
61 marvell,pins = "mpp46";
62 marvell,function = "gpio";
63 };
64 pmx_power_auto_switch: pmx-power-auto-switch {
65 marvell,pins = "mpp47";
66 marvell,function = "gpio";
67 };
68 };
69 };
70
71 gpio_keys {
72 function-button {
73 gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
74 };
75
76 power-on-switch {
77 gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
78 };
79
80 power-auto-switch {
81 gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
82 };
83 };
84
85 gpio_leds {
86 red-alarm-led {
87 label = "linkstation:red:alarm";
88 gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
89 };
90
91 red-function-led {
92 label = "linkstation:red:function";
93 gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;
94 };
95
96 amber-info-led {
97 label = "linkstation:amber:info";
98 gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
99 };
100
101 blue-function-led {
102 label = "linkstation:blue:function";
103 gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
104 };
105
106 blue-power-led {
107 label = "linkstation:blue:power";
108 gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
109 default-state = "keep";
110 };
111 };
112
113 gpio_fan {
114 compatible = "gpio-fan";
115 pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>;
116 pinctrl-names = "default";
117
118 gpios = <&gpio0 17 GPIO_ACTIVE_LOW
119 &gpio0 16 GPIO_ACTIVE_LOW>;
120
Tom Rini93743d22024-04-01 09:08:13 -0400121 gpio-fan,speed-map =
122 < 0 3>,
123 <1500 2>,
124 <3250 1>,
125 <5000 0>;
Tom Rini53633a82024-02-29 12:33:36 -0500126
127 alarm-gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>;
128 };
129
130 regulators {
131 usb_power: regulator@1 {
132 gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>;
133 };
134
135 hdd_power0: regulator@2 {
136 gpio = <&gpio0 8 GPIO_ACTIVE_HIGH>;
137 };
138 };
139};
140
141&mdio {
142 status = "okay";
143
144 ethphy0: ethernet-phy@0 {
145 device_type = "ethernet-phy";
146 reg = <0>;
147 };
148};
149
150&eth0 {
151 status = "okay";
152
153 ethernet0-port@0 {
154 phy-handle = <&ethphy0>;
155 };
156};