// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Device Tree file for Buffalo Linkstation LS-WXL
 *
 * Copyright (C) 2015, 2016
 * Roger Shimizu <rogershimizu@gmail.com>
 */

/dts-v1/;
#include "kirkwood-linkstation-duo-6281.dtsi"

/ {
	model = "Buffalo Linkstation LS-WXL";
	compatible = "buffalo,lswxl", "marvell,kirkwood-88f6281", "marvell,kirkwood";

	memory { /* 128 MB */
		device_type = "memory";
		reg = <0x00000000 0x8000000>;
	};

	ocp@f1000000 {
		pinctrl: pin-controller@10000 {
			pmx_led_hdderr0: pmx-led-hdderr0 {
				marvell,pins = "mpp8";
				marvell,function = "gpio";
			};
			pmx_led_hdderr1: pmx-led-hdderr1 {
				marvell,pins = "mpp46";
				marvell,function = "gpio";
			};
			pmx_fan_lock: pmx-fan-lock {
				marvell,pins = "mpp40";
				marvell,function = "gpio";
			};
			pmx_fan_high: pmx-fan-high {
				marvell,pins = "mpp47";
				marvell,function = "gpio";
			};
			pmx_fan_low: pmx-fan-low {
				marvell,pins = "mpp48";
				marvell,function = "gpio";
			};
		};
	};

	gpio_leds {
		pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm
			     &pmx_led_info &pmx_led_power
			     &pmx_led_function_blue
			     &pmx_led_hdderr0
			     &pmx_led_hdderr1>;

		red-hdderr0-led {
			label = "linkstation:red:hdderr0";
			gpios = <&gpio0 8 GPIO_ACTIVE_HIGH>;
		};

		red-hdderr1-led {
			label = "linkstation:red:hdderr1";
			gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
		};
	};

	gpio_fan {
		compatible = "gpio-fan";
		pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>;
		pinctrl-names = "default";

		gpios = <&gpio1 16 GPIO_ACTIVE_LOW
			 &gpio1 15 GPIO_ACTIVE_LOW>;

		gpio-fan,speed-map = <0 3
				1500 2
				3250 1
				5000 0>;

		alarm-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
	};
};
