// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/*
 * Author: Arınç ÜNAL <arinc.unal@arinc9.com>
 */

#include "bcm47094.dtsi"
#include "bcm5301x-nand-cs0-bch8.dtsi"

/ {
	chosen {
		bootargs = "earlycon";
	};

	memory@0 {
		device_type = "memory";
		reg = <0x00000000 0x08000000>,
		      <0x88000000 0x18000000>;
	};

	nvram@1c080000 {
		compatible = "brcm,nvram";
		reg = <0x1c080000 0x00180000>;
	};

	leds {
		compatible = "gpio-leds";

		led-power {
			label = "white:power";
			gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
			linux,default-trigger = "default-on";
		};

		led-wan-red {
			label = "red:wan";
			gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>;
		};

		led-lan {
			label = "white:lan";
			gpios = <&chipcommon 21 GPIO_ACTIVE_LOW>;
		};

		led-usb2 {
			label = "white:usb2";
			gpios = <&chipcommon 16 GPIO_ACTIVE_LOW>;
			trigger-sources = <&ehci_port2>;
			linux,default-trigger = "usbport";
		};

		led-usb3 {
			label = "white:usb3";
			gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
			trigger-sources = <&ehci_port1>, <&xhci_port1>;
			linux,default-trigger = "usbport";
		};

		led-wps {
			label = "white:wps";
			gpios = <&chipcommon 19 GPIO_ACTIVE_LOW>;
		};
	};

	gpio-keys {
		compatible = "gpio-keys";

		button-wps {
			label = "WPS";
			linux,code = <KEY_WPS_BUTTON>;
			gpios = <&chipcommon 20 GPIO_ACTIVE_LOW>;
		};

		button-reset {
			label = "Reset";
			linux,code = <KEY_RESTART>;
			gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>;
		};

		button-wifi {
			label = "Wi-Fi";
			linux,code = <KEY_RFKILL>;
			gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>;
		};

		button-led {
			label = "Backlight";
			linux,code = <KEY_BRIGHTNESS_ZERO>;
			gpios = <&chipcommon 4 GPIO_ACTIVE_LOW>;
		};
	};
};

&srab {
	compatible = "brcm,bcm53012-srab", "brcm,bcm5301x-srab";
	status = "okay";

	ports {
		port@0 {
			label = "lan4";
		};

		port@1 {
			label = "lan3";
		};

		port@2 {
			label = "lan2";
		};

		port@3 {
			label = "lan1";
		};

		port@4 {
			label = "wan";
		};

		port@5 {
			label = "cpu";
		};

		port@7 {
			label = "cpu";
		};

		port@8 {
			label = "cpu";
		};
	};
};

&usb2 {
	vcc-gpio = <&chipcommon 9 GPIO_ACTIVE_HIGH>;
};

&usb3_phy {
	status = "okay";
};

&nandcs {
	partitions {
		compatible = "fixed-partitions";
		#address-cells = <1>;
		#size-cells = <1>;

		partition@0 {
			label = "boot";
			reg = <0x00000000 0x00080000>;
			read-only;
		};

		partition@80000 {
			label = "nvram";
			reg = <0x00080000 0x00180000>;
		};

		partition@200000 {
			label = "firmware";
			reg = <0x00200000 0x07e00000>;
			compatible = "brcm,trx";
		};
	};
};
