162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Device Tree common file for kirkwood-6282 based Buffalo Linkstation 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright (C) 2015, 2016 662306a36Sopenharmony_ci * Roger Shimizu <rogershimizu@gmail.com> 762306a36Sopenharmony_ci */ 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci#include "kirkwood.dtsi" 1062306a36Sopenharmony_ci#include "kirkwood-6282.dtsi" 1162306a36Sopenharmony_ci#include "kirkwood-linkstation.dtsi" 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/ { 1462306a36Sopenharmony_ci ocp@f1000000 { 1562306a36Sopenharmony_ci pinctrl: pin-controller@10000 { 1662306a36Sopenharmony_ci pmx_power_hdd0: pmx-power-hdd0 { 1762306a36Sopenharmony_ci marvell,pins = "mpp8"; 1862306a36Sopenharmony_ci marvell,function = "gpio"; 1962306a36Sopenharmony_ci }; 2062306a36Sopenharmony_ci pmx_usb_vbus: pmx-usb-vbus { 2162306a36Sopenharmony_ci marvell,pins = "mpp12"; 2262306a36Sopenharmony_ci marvell,function = "gpio"; 2362306a36Sopenharmony_ci }; 2462306a36Sopenharmony_ci pmx_fan_high: pmx-fan-high { 2562306a36Sopenharmony_ci marvell,pins = "mpp16"; 2662306a36Sopenharmony_ci marvell,function = "gpio"; 2762306a36Sopenharmony_ci }; 2862306a36Sopenharmony_ci pmx_fan_low: pmx-fan-low { 2962306a36Sopenharmony_ci marvell,pins = "mpp17"; 3062306a36Sopenharmony_ci marvell,function = "gpio"; 3162306a36Sopenharmony_ci }; 3262306a36Sopenharmony_ci pmx_led_alarm: pmx-led-alarm { 3362306a36Sopenharmony_ci marvell,pins = "mpp36"; 3462306a36Sopenharmony_ci marvell,function = "gpio"; 3562306a36Sopenharmony_ci }; 3662306a36Sopenharmony_ci pmx_led_function_red: pmx-led-function-red { 3762306a36Sopenharmony_ci marvell,pins = "mpp37"; 3862306a36Sopenharmony_ci marvell,function = "gpio"; 3962306a36Sopenharmony_ci }; 4062306a36Sopenharmony_ci pmx_led_info: pmx-led-info { 4162306a36Sopenharmony_ci marvell,pins = "mpp38"; 4262306a36Sopenharmony_ci marvell,function = "gpio"; 4362306a36Sopenharmony_ci }; 4462306a36Sopenharmony_ci pmx_led_function_blue: pmx-led-function-blue { 4562306a36Sopenharmony_ci marvell,pins = "mpp39"; 4662306a36Sopenharmony_ci marvell,function = "gpio"; 4762306a36Sopenharmony_ci }; 4862306a36Sopenharmony_ci pmx_led_power: pmx-led-power { 4962306a36Sopenharmony_ci marvell,pins = "mpp40"; 5062306a36Sopenharmony_ci marvell,function = "gpio"; 5162306a36Sopenharmony_ci }; 5262306a36Sopenharmony_ci pmx_fan_lock: pmx-fan-lock { 5362306a36Sopenharmony_ci marvell,pins = "mpp43"; 5462306a36Sopenharmony_ci marvell,function = "gpio"; 5562306a36Sopenharmony_ci }; 5662306a36Sopenharmony_ci pmx_button_function: pmx-button-function { 5762306a36Sopenharmony_ci marvell,pins = "mpp45"; 5862306a36Sopenharmony_ci marvell,function = "gpio"; 5962306a36Sopenharmony_ci }; 6062306a36Sopenharmony_ci pmx_power_switch: pmx-power-switch { 6162306a36Sopenharmony_ci marvell,pins = "mpp46"; 6262306a36Sopenharmony_ci marvell,function = "gpio"; 6362306a36Sopenharmony_ci }; 6462306a36Sopenharmony_ci pmx_power_auto_switch: pmx-power-auto-switch { 6562306a36Sopenharmony_ci marvell,pins = "mpp47"; 6662306a36Sopenharmony_ci marvell,function = "gpio"; 6762306a36Sopenharmony_ci }; 6862306a36Sopenharmony_ci }; 6962306a36Sopenharmony_ci }; 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci gpio_keys { 7262306a36Sopenharmony_ci function-button { 7362306a36Sopenharmony_ci gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; 7462306a36Sopenharmony_ci }; 7562306a36Sopenharmony_ci 7662306a36Sopenharmony_ci power-on-switch { 7762306a36Sopenharmony_ci gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; 7862306a36Sopenharmony_ci }; 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ci power-auto-switch { 8162306a36Sopenharmony_ci gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; 8262306a36Sopenharmony_ci }; 8362306a36Sopenharmony_ci }; 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ci gpio_leds { 8662306a36Sopenharmony_ci red-alarm-led { 8762306a36Sopenharmony_ci label = "linkstation:red:alarm"; 8862306a36Sopenharmony_ci gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>; 8962306a36Sopenharmony_ci }; 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_ci red-function-led { 9262306a36Sopenharmony_ci label = "linkstation:red:function"; 9362306a36Sopenharmony_ci gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>; 9462306a36Sopenharmony_ci }; 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci amber-info-led { 9762306a36Sopenharmony_ci label = "linkstation:amber:info"; 9862306a36Sopenharmony_ci gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>; 9962306a36Sopenharmony_ci }; 10062306a36Sopenharmony_ci 10162306a36Sopenharmony_ci blue-function-led { 10262306a36Sopenharmony_ci label = "linkstation:blue:function"; 10362306a36Sopenharmony_ci gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; 10462306a36Sopenharmony_ci }; 10562306a36Sopenharmony_ci 10662306a36Sopenharmony_ci blue-power-led { 10762306a36Sopenharmony_ci label = "linkstation:blue:power"; 10862306a36Sopenharmony_ci gpios = <&gpio1 8 GPIO_ACTIVE_LOW>; 10962306a36Sopenharmony_ci default-state = "keep"; 11062306a36Sopenharmony_ci }; 11162306a36Sopenharmony_ci }; 11262306a36Sopenharmony_ci 11362306a36Sopenharmony_ci gpio_fan { 11462306a36Sopenharmony_ci compatible = "gpio-fan"; 11562306a36Sopenharmony_ci pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>; 11662306a36Sopenharmony_ci pinctrl-names = "default"; 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_ci gpios = <&gpio0 17 GPIO_ACTIVE_LOW 11962306a36Sopenharmony_ci &gpio0 16 GPIO_ACTIVE_LOW>; 12062306a36Sopenharmony_ci 12162306a36Sopenharmony_ci gpio-fan,speed-map = <0 3 12262306a36Sopenharmony_ci 1500 2 12362306a36Sopenharmony_ci 3250 1 12462306a36Sopenharmony_ci 5000 0>; 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_ci alarm-gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; 12762306a36Sopenharmony_ci }; 12862306a36Sopenharmony_ci 12962306a36Sopenharmony_ci regulators { 13062306a36Sopenharmony_ci usb_power: regulator@1 { 13162306a36Sopenharmony_ci gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>; 13262306a36Sopenharmony_ci }; 13362306a36Sopenharmony_ci 13462306a36Sopenharmony_ci hdd_power0: regulator@2 { 13562306a36Sopenharmony_ci gpio = <&gpio0 8 GPIO_ACTIVE_HIGH>; 13662306a36Sopenharmony_ci }; 13762306a36Sopenharmony_ci }; 13862306a36Sopenharmony_ci}; 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_ci&mdio { 14162306a36Sopenharmony_ci status = "okay"; 14262306a36Sopenharmony_ci 14362306a36Sopenharmony_ci ethphy0: ethernet-phy@0 { 14462306a36Sopenharmony_ci device_type = "ethernet-phy"; 14562306a36Sopenharmony_ci reg = <0>; 14662306a36Sopenharmony_ci }; 14762306a36Sopenharmony_ci}; 14862306a36Sopenharmony_ci 14962306a36Sopenharmony_cið0 { 15062306a36Sopenharmony_ci status = "okay"; 15162306a36Sopenharmony_ci 15262306a36Sopenharmony_ci ethernet0-port@0 { 15362306a36Sopenharmony_ci phy-handle = <ðphy0>; 15462306a36Sopenharmony_ci }; 15562306a36Sopenharmony_ci}; 156