// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/*
 * Author: Tom Brautaset <tbrautaset@gmail.com>
 */

/dts-v1/;

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

#include <dt-bindings/leds/common.h>

/ {
	compatible = "asus,rt-ac5300", "brcm,bcm47094", "brcm,bcm4708";
	model = "ASUS RT-AC5300";

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

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

		et1macaddr: et1macaddr {
			#nvmem-cell-cells = <1>;
		};
	};

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

		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 20 GPIO_ACTIVE_LOW>;
		};

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

	leds {
		compatible = "gpio-leds";

		led-lan {
			color = <LED_COLOR_ID_WHITE>;
			function = LED_FUNCTION_LAN;
			gpios = <&chipcommon 21 GPIO_ACTIVE_LOW>;
		};

		led-power {
			color = <LED_COLOR_ID_WHITE>;
			function = LED_FUNCTION_POWER;
			gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
			linux,default-trigger = "default-on";
		};

		led-wan-red {
			color = <LED_COLOR_ID_RED>;
			function = LED_FUNCTION_WAN;
			gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>;
		};

		led-wps {
			color = <LED_COLOR_ID_WHITE>;
			function = LED_FUNCTION_WPS;
			gpios = <&chipcommon 19 GPIO_ACTIVE_LOW>;
		};
	};
};

&gmac0 {
	nvmem-cells = <&et1macaddr 0>;
	nvmem-cell-names = "mac-address";
};

&gmac1 {
	nvmem-cells = <&et1macaddr 1>;
	nvmem-cell-names = "mac-address";
};

&gmac2 {
	nvmem-cells = <&et1macaddr 2>;
	nvmem-cell-names = "mac-address";
};

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

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

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

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

&srab {
	status = "okay";

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

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

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

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

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

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

&usb3_phy {
	status = "okay";
};
