1/* 2 * Device Tree common file for kirkwood-6282 based Buffalo Linkstation 3 * 4 * Copyright (C) 2015, 2016 5 * Roger Shimizu <rogershimizu@gmail.com> 6 * 7 * This file is dual-licensed: you can use it either under the terms 8 * of the GPL or the X11 license, at your option. Note that this dual 9 * licensing only applies to this file, and not this project as a 10 * whole. 11 * 12 * a) This file is free software; you can redistribute it and/or 13 * modify it under the terms of the GNU General Public License as 14 * published by the Free Software Foundation; either version 2 of the 15 * License, or (at your option) any later version. 16 * 17 * This file is distributed in the hope that it will be useful 18 * but WITHOUT ANY WARRANTY; without even the implied warranty of 19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 * GNU General Public License for more details. 21 * 22 * Or, alternatively 23 * 24 * b) Permission is hereby granted, free of charge, to any person 25 * obtaining a copy of this software and associated documentation 26 * files (the "Software"), to deal in the Software without 27 * restriction, including without limitation the rights to use 28 * copy, modify, merge, publish, distribute, sublicense, and/or 29 * sell copies of the Software, and to permit persons to whom the 30 * Software is furnished to do so, subject to the following 31 * conditions: 32 * 33 * The above copyright notice and this permission notice shall be 34 * included in all copies or substantial portions of the Software. 35 * 36 * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND 37 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 38 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 39 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 40 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY 41 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 42 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 43 * OTHER DEALINGS IN THE SOFTWARE. 44 */ 45 46#include "kirkwood.dtsi" 47#include "kirkwood-6282.dtsi" 48#include "kirkwood-linkstation.dtsi" 49 50/ { 51 ocp@f1000000 { 52 pinctrl: pin-controller@10000 { 53 pmx_power_hdd0: pmx-power-hdd0 { 54 marvell,pins = "mpp8"; 55 marvell,function = "gpio"; 56 }; 57 pmx_usb_vbus: pmx-usb-vbus { 58 marvell,pins = "mpp12"; 59 marvell,function = "gpio"; 60 }; 61 pmx_fan_high: pmx-fan-high { 62 marvell,pins = "mpp16"; 63 marvell,function = "gpio"; 64 }; 65 pmx_fan_low: pmx-fan-low { 66 marvell,pins = "mpp17"; 67 marvell,function = "gpio"; 68 }; 69 pmx_led_alarm: pmx-led-alarm { 70 marvell,pins = "mpp36"; 71 marvell,function = "gpio"; 72 }; 73 pmx_led_function_red: pmx-led-function-red { 74 marvell,pins = "mpp37"; 75 marvell,function = "gpio"; 76 }; 77 pmx_led_info: pmx-led-info { 78 marvell,pins = "mpp38"; 79 marvell,function = "gpio"; 80 }; 81 pmx_led_function_blue: pmx-led-function-blue { 82 marvell,pins = "mpp39"; 83 marvell,function = "gpio"; 84 }; 85 pmx_led_power: pmx-led-power { 86 marvell,pins = "mpp40"; 87 marvell,function = "gpio"; 88 }; 89 pmx_fan_lock: pmx-fan-lock { 90 marvell,pins = "mpp43"; 91 marvell,function = "gpio"; 92 }; 93 pmx_button_function: pmx-button-function { 94 marvell,pins = "mpp45"; 95 marvell,function = "gpio"; 96 }; 97 pmx_power_switch: pmx-power-switch { 98 marvell,pins = "mpp46"; 99 marvell,function = "gpio"; 100 }; 101 pmx_power_auto_switch: pmx-power-auto-switch { 102 marvell,pins = "mpp47"; 103 marvell,function = "gpio"; 104 }; 105 }; 106 }; 107 108 gpio_keys { 109 function-button { 110 gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; 111 }; 112 113 power-on-switch { 114 gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; 115 }; 116 117 power-auto-switch { 118 gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; 119 }; 120 }; 121 122 gpio_leds { 123 red-alarm-led { 124 label = "linkstation:red:alarm"; 125 gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>; 126 }; 127 128 red-function-led { 129 label = "linkstation:red:function"; 130 gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>; 131 }; 132 133 amber-info-led { 134 label = "linkstation:amber:info"; 135 gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>; 136 }; 137 138 blue-function-led { 139 label = "linkstation:blue:function"; 140 gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; 141 }; 142 143 blue-power-led { 144 label = "linkstation:blue:power"; 145 gpios = <&gpio1 8 GPIO_ACTIVE_LOW>; 146 default-state = "keep"; 147 }; 148 }; 149 150 gpio_fan { 151 compatible = "gpio-fan"; 152 pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>; 153 pinctrl-names = "default"; 154 155 gpios = <&gpio0 17 GPIO_ACTIVE_LOW 156 &gpio0 16 GPIO_ACTIVE_LOW>; 157 158 gpio-fan,speed-map = <0 3 159 1500 2 160 3250 1 161 5000 0>; 162 163 alarm-gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; 164 }; 165 166 regulators { 167 usb_power: regulator@1 { 168 gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>; 169 }; 170 171 hdd_power0: regulator@2 { 172 gpio = <&gpio0 8 GPIO_ACTIVE_HIGH>; 173 }; 174 }; 175}; 176 177&mdio { 178 status = "okay"; 179 180 ethphy0: ethernet-phy@0 { 181 device_type = "ethernet-phy"; 182 reg = <0>; 183 }; 184}; 185 186ð0 { 187 status = "okay"; 188 189 ethernet0-port@0 { 190 phy-handle = <ðphy0>; 191 }; 192}; 193