1*4882a593Smuzhiyun/* 2*4882a593Smuzhiyun * Device Tree file for Buffalo Linkstation LS-CHLv3 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * Copyright (C) 2016 Ash Hughes <ashley.hughes@blueyonder.co.uk> 5*4882a593Smuzhiyun * Copyright (C) 2015-2017 6*4882a593Smuzhiyun * Roger Shimizu <rogershimizu@gmail.com> 7*4882a593Smuzhiyun * 8*4882a593Smuzhiyun * This file is dual-licensed: you can use it either under the terms 9*4882a593Smuzhiyun * of the GPL or the X11 license, at your option. Note that this dual 10*4882a593Smuzhiyun * licensing only applies to this file, and not this project as a 11*4882a593Smuzhiyun * whole. 12*4882a593Smuzhiyun * 13*4882a593Smuzhiyun * a) This file is free software; you can redistribute it and/or 14*4882a593Smuzhiyun * modify it under the terms of the GNU General Public License as 15*4882a593Smuzhiyun * published by the Free Software Foundation; either version 2 of the 16*4882a593Smuzhiyun * License, or (at your option) any later version. 17*4882a593Smuzhiyun * 18*4882a593Smuzhiyun * This file is distributed in the hope that it will be useful, 19*4882a593Smuzhiyun * but WITHOUT ANY WARRANTY; without even the implied warranty of 20*4882a593Smuzhiyun * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21*4882a593Smuzhiyun * GNU General Public License for more details. 22*4882a593Smuzhiyun * 23*4882a593Smuzhiyun * Or, alternatively, 24*4882a593Smuzhiyun * 25*4882a593Smuzhiyun * b) Permission is hereby granted, free of charge, to any person 26*4882a593Smuzhiyun * obtaining a copy of this software and associated documentation 27*4882a593Smuzhiyun * files (the "Software"), to deal in the Software without 28*4882a593Smuzhiyun * restriction, including without limitation the rights to use, 29*4882a593Smuzhiyun * copy, modify, merge, publish, distribute, sublicense, and/or 30*4882a593Smuzhiyun * sell copies of the Software, and to permit persons to whom the 31*4882a593Smuzhiyun * Software is furnished to do so, subject to the following 32*4882a593Smuzhiyun * conditions: 33*4882a593Smuzhiyun * 34*4882a593Smuzhiyun * The above copyright notice and this permission notice shall be 35*4882a593Smuzhiyun * included in all copies or substantial portions of the Software. 36*4882a593Smuzhiyun * 37*4882a593Smuzhiyun * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 38*4882a593Smuzhiyun * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 39*4882a593Smuzhiyun * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 40*4882a593Smuzhiyun * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 41*4882a593Smuzhiyun * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 42*4882a593Smuzhiyun * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 43*4882a593Smuzhiyun * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 44*4882a593Smuzhiyun * OTHER DEALINGS IN THE SOFTWARE. 45*4882a593Smuzhiyun */ 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun/dts-v1/; 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun#include "orion5x-linkstation.dtsi" 50*4882a593Smuzhiyun#include "mvebu-linkstation-gpio-simple.dtsi" 51*4882a593Smuzhiyun#include "mvebu-linkstation-fan.dtsi" 52*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h> 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun/ { 55*4882a593Smuzhiyun model = "Buffalo Linkstation LiveV3 (LS-CHL)"; 56*4882a593Smuzhiyun compatible = "buffalo,lschl", "marvell,orion5x-88f5182", "marvell,orion5x"; 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun memory { /* 128 MB */ 59*4882a593Smuzhiyun device_type = "memory"; 60*4882a593Smuzhiyun reg = <0x00000000 0x8000000>; 61*4882a593Smuzhiyun }; 62*4882a593Smuzhiyun 63*4882a593Smuzhiyun gpio_keys { 64*4882a593Smuzhiyun func { 65*4882a593Smuzhiyun label = "Function Button"; 66*4882a593Smuzhiyun linux,code = <KEY_OPTION>; 67*4882a593Smuzhiyun gpios = <&gpio0 15 GPIO_ACTIVE_LOW>; 68*4882a593Smuzhiyun }; 69*4882a593Smuzhiyun 70*4882a593Smuzhiyun power-on-switch { 71*4882a593Smuzhiyun gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; 72*4882a593Smuzhiyun }; 73*4882a593Smuzhiyun 74*4882a593Smuzhiyun power-auto-switch { 75*4882a593Smuzhiyun gpios = <&gpio0 10 GPIO_ACTIVE_LOW>; 76*4882a593Smuzhiyun }; 77*4882a593Smuzhiyun }; 78*4882a593Smuzhiyun 79*4882a593Smuzhiyun gpio_leds { 80*4882a593Smuzhiyun pinctrl-0 = <&pmx_led_power &pmx_led_alarm &pmx_led_info &pmx_led_func>; 81*4882a593Smuzhiyun blue-power-led { 82*4882a593Smuzhiyun gpios = <&gpio0 0 GPIO_ACTIVE_LOW>; 83*4882a593Smuzhiyun }; 84*4882a593Smuzhiyun 85*4882a593Smuzhiyun red-alarm-led { 86*4882a593Smuzhiyun gpios = <&gpio0 2 GPIO_ACTIVE_LOW>; 87*4882a593Smuzhiyun }; 88*4882a593Smuzhiyun 89*4882a593Smuzhiyun amber-info-led { 90*4882a593Smuzhiyun gpios = <&gpio0 3 GPIO_ACTIVE_LOW>; 91*4882a593Smuzhiyun }; 92*4882a593Smuzhiyun 93*4882a593Smuzhiyun func { 94*4882a593Smuzhiyun label = "lschl:func:blue:top"; 95*4882a593Smuzhiyun gpios = <&gpio0 17 GPIO_ACTIVE_LOW>; 96*4882a593Smuzhiyun }; 97*4882a593Smuzhiyun }; 98*4882a593Smuzhiyun 99*4882a593Smuzhiyun gpio_fan { 100*4882a593Smuzhiyun gpios = <&gpio0 14 GPIO_ACTIVE_LOW 101*4882a593Smuzhiyun &gpio0 16 GPIO_ACTIVE_LOW>; 102*4882a593Smuzhiyun 103*4882a593Smuzhiyun alarm-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>; 104*4882a593Smuzhiyun }; 105*4882a593Smuzhiyun}; 106*4882a593Smuzhiyun 107*4882a593Smuzhiyun&pinctrl { 108*4882a593Smuzhiyun pmx_led_power: pmx-leds { 109*4882a593Smuzhiyun marvell,pins = "mpp0"; 110*4882a593Smuzhiyun marvell,function = "gpio"; 111*4882a593Smuzhiyun }; 112*4882a593Smuzhiyun 113*4882a593Smuzhiyun pmx_power_hdd: pmx-power-hdd { 114*4882a593Smuzhiyun marvell,pins = "mpp1"; 115*4882a593Smuzhiyun marvell,function = "gpio"; 116*4882a593Smuzhiyun }; 117*4882a593Smuzhiyun 118*4882a593Smuzhiyun pmx_led_alarm: pmx-leds { 119*4882a593Smuzhiyun marvell,pins = "mpp2"; 120*4882a593Smuzhiyun marvell,function = "gpio"; 121*4882a593Smuzhiyun }; 122*4882a593Smuzhiyun 123*4882a593Smuzhiyun pmx_led_info: pmx-leds { 124*4882a593Smuzhiyun marvell,pins = "mpp3"; 125*4882a593Smuzhiyun marvell,function = "gpio"; 126*4882a593Smuzhiyun }; 127*4882a593Smuzhiyun 128*4882a593Smuzhiyun pmx_fan_lock: pmx-fan-lock { 129*4882a593Smuzhiyun marvell,pins = "mpp6"; 130*4882a593Smuzhiyun marvell,function = "gpio"; 131*4882a593Smuzhiyun }; 132*4882a593Smuzhiyun 133*4882a593Smuzhiyun pmx_power_switch: pmx-power-switch { 134*4882a593Smuzhiyun marvell,pins = "mpp8", "mpp10", "mpp15"; 135*4882a593Smuzhiyun marvell,function = "gpio"; 136*4882a593Smuzhiyun }; 137*4882a593Smuzhiyun 138*4882a593Smuzhiyun pmx_power_usb: pmx-power-usb { 139*4882a593Smuzhiyun marvell,pins = "mpp9"; 140*4882a593Smuzhiyun marvell,function = "gpio"; 141*4882a593Smuzhiyun }; 142*4882a593Smuzhiyun 143*4882a593Smuzhiyun pmx_fan_high: pmx-fan-high { 144*4882a593Smuzhiyun marvell,pins = "mpp14"; 145*4882a593Smuzhiyun marvell,function = "gpio"; 146*4882a593Smuzhiyun }; 147*4882a593Smuzhiyun 148*4882a593Smuzhiyun pmx_fan_low: pmx-fan-low { 149*4882a593Smuzhiyun marvell,pins = "mpp16"; 150*4882a593Smuzhiyun marvell,function = "gpio"; 151*4882a593Smuzhiyun }; 152*4882a593Smuzhiyun 153*4882a593Smuzhiyun pmx_led_func: pmx-leds { 154*4882a593Smuzhiyun marvell,pins = "mpp17"; 155*4882a593Smuzhiyun marvell,function = "gpio"; 156*4882a593Smuzhiyun }; 157*4882a593Smuzhiyun 158*4882a593Smuzhiyun pmx_sw_init: pmx-sw-init { 159*4882a593Smuzhiyun marvell,pins = "mpp7"; 160*4882a593Smuzhiyun marvell,function = "gpio"; 161*4882a593Smuzhiyun }; 162*4882a593Smuzhiyun}; 163*4882a593Smuzhiyun 164*4882a593Smuzhiyun&hdd_power { 165*4882a593Smuzhiyun gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>; 166*4882a593Smuzhiyun}; 167*4882a593Smuzhiyun 168*4882a593Smuzhiyun&usb_power { 169*4882a593Smuzhiyun gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>; 170*4882a593Smuzhiyun}; 171*4882a593Smuzhiyun 172