// SPDX-License-Identifier: GPL-2.0
#include "kirkwood.dtsi"
#include "kirkwood-6281.dtsi"

/ {
	model = "ZyXEL NSA310";

	ocp@f1000000 {
		pinctrl: pin-controller@10000 {

			pmx_usb_power: pmx-usb-power {
				marvell,pins = "mpp21";
				marvell,function = "gpio";
			};

			pmx_pwr_off: pmx-pwr-off {
				marvell,pins = "mpp48";
				marvell,function = "gpio";
			};

			pmx_btn_reset: pmx-btn-reset {
				marvell,pins = "mpp36";
				marvell,function = "gpio";
			};

			pmx_btn_copy: pmx-btn-copy {
				marvell,pins = "mpp37";
				marvell,function = "gpio";
			};

			pmx_btn_power: pmx-btn-power {
				marvell,pins = "mpp46";
				marvell,function = "gpio";
			};

			pmx_led_copy_green: pmx-led-copy-green {
				marvell,pins = "mpp39";
				marvell,function = "gpio";
			};

			pmx_led_copy_red: pmx-led-copy-red {
				marvell,pins = "mpp40";
				marvell,function = "gpio";
			};
		};

		serial@12000 {
			status = "okay";
		};

		sata@80000 {
			status = "okay";
			nr-ports = <2>;
		};
	};

	gpio_poweroff {
		compatible = "gpio-poweroff";
		pinctrl-0 = <&pmx_pwr_off>;
		pinctrl-names = "default";
		gpios = <&gpio1 16 GPIO_ACTIVE_HIGH>;
	};

	gpio_keys {
		compatible = "gpio-keys";
		#address-cells = <1>;
		#size-cells = <0>;
		pinctrl-0 = <&pmx_btn_reset &pmx_btn_copy &pmx_btn_power>;
		pinctrl-names = "default";

		power {
			label = "Power Button";
			linux,code = <KEY_POWER>;
			gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
		};
		copy {
			label = "Copy Button";
			linux,code = <KEY_COPY>;
			gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
		};
		reset {
			label = "Reset Button";
			linux,code = <KEY_RESTART>;
			gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
		};
	};


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

		usb0_power: regulator@1 {
			compatible = "regulator-fixed";
			reg = <1>;
			regulator-name = "USB Power";
			regulator-min-microvolt = <5000000>;
			regulator-max-microvolt = <5000000>;
			regulator-always-on;
			regulator-boot-on;
			gpio = <&gpio0 21 GPIO_ACTIVE_HIGH>;
		};
	};
};

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

	partition@0 {
		label = "uboot";
		reg = <0x0000000 0x0100000>;
		read-only;
	};
	partition@100000 {
		label = "uboot_env";
		reg = <0x0100000 0x0080000>;
	};
	partition@180000 {
		label = "key_store";
		reg = <0x0180000 0x0080000>;
	};
	partition@200000 {
		label = "info";
		reg = <0x0200000 0x0080000>;
	};
	partition@280000 {
		label = "etc";
		reg = <0x0280000 0x0a00000>;
	};
	partition@c80000 {
		label = "kernel_1";
		reg = <0x0c80000 0x0a00000>;
	};
	partition@1680000 {
		label = "rootfs1";
		reg = <0x1680000 0x2fc0000>;
	};
	partition@4640000 {
		label = "kernel_2";
		reg = <0x4640000 0x0a00000>;
	};
	partition@5040000 {
		label = "rootfs2";
		reg = <0x5040000 0x2fc0000>;
	};
};

&pciec {
        status = "okay";
};

&pcie0 {
	status = "okay";
};
