/*
 * Andrew Lunn <andrew@lunn.ch>
 * Ben Peddell <klightspeed@killerwolves.net>
 *
 * This file is licensed under the terms of the GNU General Public
 * License version 2.  This program is licensed "as is" without any
 * warranty of any kind, whether express or implied.
 */

/dts-v1/;

#include "kirkwood.dtsi"
#include "kirkwood-6281.dtsi"
#include "kirkwood-synology.dtsi"

/ {
	model = "Synology DS109, DS110, DS110jv20";
	compatible = "synology,ds109", "synology,ds110jv20",
		     "synology,ds110", "marvell,kirkwood";

	memory {
		device_type = "memory";
		reg = <0x00000000 0x8000000>;
	};

	chosen {
		bootargs = "console=ttyS0,115200n8";
		stdout-path = &uart0;
	};

	gpio-fan-150-32-35 {
		status = "okay";
	};

	gpio-leds-hdd-21-1 {
		status = "okay";
	};
};

&rs5c372 {
	status = "okay";
};
