// SPDX-License-Identifier: GPL-2.0
/*
 * Device Tree file for LaCie 2Big NAS
 *
 * Copyright (C) 2015 Seagate
 *
 * Author: Simon Guinot <simon.guinot@sequanux.org>
 *
*/

/dts-v1/;

#include "kirkwood-netxbig.dtsi"

/ {
	model = "LaCie 2Big NAS";
	compatible = "lacie,nas2big", "lacie,netxbig", "marvell,kirkwood-88f6282", "marvell,kirkwood";

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

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

	ocp@f1000000 {
		rtc@10300 {
			/* The on-chip RTC is not powered (no supercap). */
			status = "disabled";
		};
		spi@10600 {
			/*
			 * A NAND flash is used instead of an SPI flash for
			 * the other netxbig-compatible boards.
			 */
			status = "disabled";
		};
	};

	fan {
		/*
		 * An I2C fan controller (GMT G762) is used but alarm is
		 * wired to a separate GPIO.
		 */
		compatible = "gpio-fan";
		alarm-gpios = <&gpio0 25 GPIO_ACTIVE_LOW>;
	};

	regulators: regulators {
		status = "okay";
		compatible = "simple-bus";
		#address-cells = <1>;
		#size-cells = <0>;
		pinctrl-names = "default";

		regulator@2 {
			compatible = "regulator-fixed";
			reg = <2>;
			regulator-name = "hdd1power";
			regulator-min-microvolt = <5000000>;
			regulator-max-microvolt = <5000000>;
			enable-active-high;
			regulator-always-on;
			regulator-boot-on;
			gpio = <&gpio0 17 GPIO_ACTIVE_HIGH>;
		};
		clocks {
			g762_clk: g762-oscillator {
				compatible = "fixed-clock";
				#clock-cells = <0>;
				clock-frequency = <32768>;
			};
		};
	};
};

&mdio {
	status = "okay";

	ethphy0: ethernet-phy@0 {
		reg = <0>;
	};
};

&i2c0 {
	status = "okay";

	/*
	 * An external I2C RTC (Dallas DS1337S+) is used. This allows
	 * to power-up the board on an RTC alarm. The external RTC can
	 * be kept powered, even when the SoC is off.
	 */
	rtc@68 {
		compatible = "dallas,ds1307";
		reg = <0x68>;
		interrupts = <43>;
	};
	g762@3e {
		compatible = "gmt,g762";
		reg = <0x3e>;
		clocks = <&g762_clk>;
	};
};

&nand {
	chip-delay = <50>;
	status = "okay";

	partition@0 {
		label = "U-Boot";
		reg = <0x0 0x100000>;
	};

	partition@100000 {
		label = "uImage";
		reg = <0x100000 0x1000000>;
	};

	partition@1100000 {
		label = "root";
		reg = <0x1100000 0x8000000>;
	};

	partition@9100000 {
		label = "unused";
		reg = <0x9100000 0x6f00000>;
	};
};

&pciec {
        status = "okay";
};

&pcie0 {
	status = "okay";
};
