/dts-v1/;
#include "mt7986a.dtsi"
/ {
	model = "MediaTek MT7986a RFB";
	compatible = "mediatek,mt7986a-rfb";
	chosen {
		bootargs = "console=ttyS0,115200n1 loglevel=8  \
				earlycon=uart8250,mmio32,0x11002000";
	};

	memory {
		reg = <0 0x40000000 0 0x10000000>;
	};

	nmbm_snfi {
		compatible = "generic,nmbm";

		#address-cells = <1>;
		#size-cells = <1>;

		lower-mtd-device = <&snand>;
		forced-create;
		empty-page-ecc-protected;

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

			partition@0 {
				label = "BL2";
				reg = <0x00000 0x0100000>;
				read-only;
			};

			partition@100000 {
				label = "u-boot-env";
				reg = <0x0100000 0x0080000>;
			};

			partition@180000 {
				label = "Factory";
				reg = <0x180000 0x0200000>;
			};

			partition@380000 {
				label = "FIP";
				reg = <0x380000 0x0200000>;
			};

			partition@580000 {
				label = "ubi";
				reg = <0x580000 0x4000000>;
			};
		};
	};

	nmbm_spim_nand {
		compatible = "generic,nmbm";

		#address-cells = <1>;
		#size-cells = <1>;

		lower-mtd-device = <&spi_nand>;
		forced-create;

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

			partition@0 {
				label = "BL2";
				reg = <0x00000 0x0100000>;
				read-only;
			};

			partition@100000 {
				label = "u-boot-env";
				reg = <0x0100000 0x0080000>;
			};

			partition@180000 {
				label = "Factory";
				reg = <0x180000 0x0200000>;
			};

			partition@380000 {
				label = "FIP";
				reg = <0x380000 0x0200000>;
			};

			partition@580000 {
				label = "ubi";
				reg = <0x580000 0x4000000>;
			};
		};
	};

	reg_1p8v: regulator-1p8v {
		compatible = "regulator-fixed";
		regulator-name = "fixed-1.8V";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
		regulator-boot-on;
		regulator-always-on;
	};

	reg_3p3v: regulator-3p3v {
		compatible = "regulator-fixed";
		regulator-name = "fixed-3.3V";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-boot-on;
		regulator-always-on;
	};

	sound {
		compatible = "mediatek,mt7986-wm8960-machine";
		mediatek,platform = <&afe>;
		audio-routing = "Headphone", "HP_L",
				"Headphone", "HP_R",
				"LINPUT1", "AMIC",
				"RINPUT1", "AMIC";
		mediatek,audio-codec = <&wm8960>;
		status = "okay";
	};
};

&pwm {
        pinctrl-names = "default";
        pinctrl-0 = <&pwm0_pin &pwm1_pin_g1>;
	status = "okay";
};

&uart0 {
	status = "okay";
};

&uart1 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart1_pins>;
	status = "okay";
};

&uart2 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart2_pins>;
	status = "okay";
};

&i2c0 {
        pinctrl-names = "default";
        pinctrl-0 = <&i2c_pins>;
        status = "okay";

	wm8960: wm8960@1a {
		compatible = "wlf,wm8960";
		reg = <0x1a>;
	};
};

&auxadc {
        status = "okay";
};

&watchdog {
	status = "okay";
};

&eth {
        status = "okay";

        gmac0: mac@0 {
                compatible = "mediatek,eth-mac";
                reg = <0>;
                phy-mode = "2500base-x";

                fixed-link {
                        speed = <2500>;
                        full-duplex;
                        pause;
                };
        };

        gmac1: mac@1 {
                compatible = "mediatek,eth-mac";
                reg = <1>;
                phy-mode = "2500base-x";

                fixed-link {
                        speed = <2500>;
                        full-duplex;
                        pause;
                };
        };

        mdio: mdio-bus {
                #address-cells = <1>;
                #size-cells = <0>;

		phy5: phy@5 {
			compatible = "ethernet-phy-id67c9.de0a";
			reg = <5>;
			reset-gpios = <&pio 6 1>;
			reset-deassert-us = <20000>;
			phy-mode = "2500base-x";
		};

		phy6: phy@6 {
			compatible = "ethernet-phy-id67c9.de0a";
			reg = <6>;
			phy-mode = "2500base-x";
		};

                switch@0 {
                        compatible = "mediatek,mt7531";
                        reg = <31>;
                        reset-gpios = <&pio 5 0>;

                        ports {
                                #address-cells = <1>;
                                #size-cells = <0>;

                                port@0 {
                                        reg = <0>;
                                        label = "lan0";
                                };

                                port@1 {
                                        reg = <1>;
                                        label = "lan1";
                                };

                                port@2 {
                                        reg = <2>;
                                        label = "lan2";
                                };

                                port@3 {
                                        reg = <3>;
                                        label = "lan3";
                                };

                                port@6 {
                                        reg = <6>;
                                        label = "cpu";
                                        ethernet = <&gmac0>;
                                        phy-mode = "2500base-x";

                                        fixed-link {
                                                speed = <2500>;
                                                full-duplex;
                                                pause;
                                        };
                                };
                        };
                };
        };
};

&hnat {
	mtketh-wan = "eth1";
	mtketh-lan = "lan";
	mtketh-max-gmac = <2>;
	status = "okay";
};

&spi0 {
	pinctrl-names = "default";
	pinctrl-0 = <&spi_flash_pins>;
	cs-gpios = <0>, <0>;		
	status = "okay";
	spi_nor@0 {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "jedec,spi-nor";
		reg = <0>;
		spi-max-frequency = <20000000>;
		spi-tx-buswidth = <4>;
		spi-rx-buswidth = <4>;

		partition@00000 {
			label = "BL2";
			reg = <0x00000 0x0040000>;
		};
		partition@40000 {
			label = "u-boot-env";
			reg = <0x40000 0x0010000>;
		};
		factory: partition@50000 {
			label = "Factory";
			reg = <0x50000 0x00B0000>;
		};
		partition@100000 {
			label = "FIP";
			reg = <0x100000 0x0080000>;
		};
		partition@180000 {
			label = "firmware";
			reg = <0x180000 0xE00000>;
		};
	};
	spi_nand: spi_nand@1 {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "spi-nand";
		reg = <1>;
		spi-max-frequency = <20000000>;
		spi-tx-buswidth = <4>;
		spi-rx-buswidth = <4>;
	};
};

&snand {
	pinctrl-names = "default";
	pinctrl-0 = <&snfi_pins>;
	status = "okay";
	mediatek,quad-spi;

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

&spi1 {
	pinctrl-names = "default";
	pinctrl-0 = <&spic_pins_g2>;
	status = "okay";
};

&mmc0 {
	pinctrl-names = "default", "state_uhs";
	pinctrl-0 = <&mmc0_pins_default>;
	pinctrl-1 = <&mmc0_pins_uhs>;
	bus-width = <8>;
	max-frequency = <200000000>;
	cap-mmc-highspeed;
	mmc-hs200-1_8v;
	mmc-hs400-1_8v;
	hs400-ds-delay = <0x14014>;
	vmmc-supply = <&reg_3p3v>;
	vqmmc-supply = <&reg_1p8v>;
	non-removable;
	no-sd;
	no-sdio;
	status = "okay";
};

&pcie0 {
	pinctrl-names = "default";
	pinctrl-0 = <&pcie0_pins>;
	status = "okay";
};

&pio {
	wifi_led_pins: wifi_led-pins-1-2 {
		mux {
			function = "led";
			groups = "wifi_led";
		};
	};

	i2c_pins: i2c-pins-3-4 {
		mux {
			function = "i2c";
			groups = "i2c";
		};
	};

	uart1_pins_g0: uart1-pins-7-to-10 {
		mux {
			function = "uart";
			groups = "uart1_0";
		};
	};

	pcie0_pins: pcie0-pins-9-10-41 {
		mux {
			function = "pcie";
			groups = "pcie_clk", "pcie_wake", "pcie_pereset";
		};
	};

	jtag_pins: jtag-pins-11-to-14 {
		mux {
			function = "jtag";
			groups = "jtag";
		};
	};

	spic_pins_g0: spic-pins-11-to-14 {
		mux {
			function = "spi";
			groups = "spi1_0";
		};
	};

	pwm1_pin_g0: pwm1-pin-20 {
		mux {
			function = "pwm";
			groups = "pwm1_1";
		};
	};

	pwm0_pin: pwm0-pin-21 {
		mux {
			function = "pwm";
			groups = "pwm0";
		};
	};

	pwm1_pin_g1: pwm1-pin-22 {
		mux {
			function = "pwm";
			groups = "pwm1_0";
		};
	};

	spic_pins_g1: spic-pins-23-to-26 {
		mux {
			function = "spi";
			groups = "spi1_1";
		};
	};

	uart1_pins_g1: uart1-pins-23-to-26 {
		mux {
			function = "uart";
			groups = "uart1_1";
		};
	};

	snfi_pins: snfi-pins-23-to-28 {
		mux {
			function = "flash";
			groups = "snfi";
		};
		conf-clk {
			pins = "SPI0_CLK";
			drive-strength = <MTK_DRIVE_8mA>;
			mediatek,pull-down-adv = <0>;	/* bias-disable */
		};
		conf-pu {
			pins = "SPI0_CS", "SPI0_HOLD", "SPI0_WP";
			drive-strength = <MTK_DRIVE_6mA>;
			mediatek,pull-up-adv = <0>;	/* bias-disable */
		};
		conf-pd {
			pins = "SPI0_MOSI", "SPI0_MISO";
			drive-strength = <MTK_DRIVE_6mA>;
			mediatek,pull-down-adv = <0>;	/* bias-disable */
		};
	};

	spic_pins_g2: spic-pins-29-to-32 {
		mux {
			function = "spi";
			groups = "spi1_2";
		};
	};

	uart1_pins_g2: uart1-pins-29-to-32 {
		mux {
			function = "uart";
			groups = "uart1_2";
		};
	};

	uart2_pins_g0: uart1-pins-29-to-32 {
		mux {
			function = "uart";
			groups = "uart1_2";
		};
	};

	uart2_pins_g1: uart1-pins-23-to-36 {
		mux {
			function = "uart";
			groups = "uart2_1";
		};
	};

	spic_pins_g3: spic-pins-33-to-36 {
		mux {
			function = "spi";
			groups = "spi1_3";
		};
	};

	uart1_pins_g3: uart1-pins-35-to-38 {
		mux {
			function = "uart";
			groups = "uart1_3_rx_tx", "uart1_3_cts_rts";
		};
	};

	spi_flash_pins: spi-flash-pins-33-to-38 {
		mux {
			function = "flash";
			groups = "spi0", "spi0_wp_hold";
		};
		conf-pu {
			pins = "SPI2_CS", "SPI2_HOLD", "SPI2_WP";
			drive-strength = <MTK_DRIVE_8mA>;
			mediatek,pull-up-adv = <0>;	/* bias-disable */
		};
		conf-pd {
			pins = "SPI2_CLK", "SPI2_MOSI", "SPI2_MISO";
			drive-strength = <MTK_DRIVE_8mA>;
			mediatek,pull-down-adv = <0>;	/* bias-disable */
		};
	};

	uart1_pins: uart1-pins-42-to-45 {
		mux {
			function = "uart";
			groups = "uart1";
		};
	};

	uart2_pins: uart1-pins-46-to-49 {
		mux {
			function = "uart";
			groups = "uart2";
		};
	};

	mmc0_pins_default: mmc0-pins-50-to-61-default {
		mux {
			function = "flash";
			groups = "emmc_51";
		};
		conf-cmd-dat {
			pins = "EMMC_DATA_0", "EMMC_DATA_1", "EMMC_DATA_2",
			       "EMMC_DATA_3", "EMMC_DATA_4", "EMMC_DATA_5",
			       "EMMC_DATA_6", "EMMC_DATA_7", "EMMC_CMD";
			input-enable;
			drive-strength = <MTK_DRIVE_4mA>;
			mediatek,pull-up-adv = <1>;	/* pull-up 10K */
		};
		conf-clk {
			pins = "EMMC_CK";
			drive-strength = <MTK_DRIVE_6mA>;
			mediatek,pull-down-adv = <2>;	/* pull-down 50K */
		};
		conf-ds {
			pins = "EMMC_DSL";
			mediatek,pull-down-adv = <2>;	/* pull-down 50K */
		};
		conf-rst {
			pins = "EMMC_RSTB";
			drive-strength = <MTK_DRIVE_4mA>;
			mediatek,pull-up-adv = <1>;	/* pull-up 10K */
		};
	};

	mmc0_pins_uhs: mmc0-pins-50-to-61-uhs {
		mux {
			function = "flash";
			groups = "emmc_51";
		};
		conf-cmd-dat {
			pins = "EMMC_DATA_0", "EMMC_DATA_1", "EMMC_DATA_2",
			       "EMMC_DATA_3", "EMMC_DATA_4", "EMMC_DATA_5",
			       "EMMC_DATA_6", "EMMC_DATA_7", "EMMC_CMD";
			input-enable;
			drive-strength = <MTK_DRIVE_4mA>;
			mediatek,pull-up-adv = <1>;	/* pull-up 10K */
		};
		conf-clk {
			pins = "EMMC_CK";
			drive-strength = <MTK_DRIVE_6mA>;
			mediatek,pull-down-adv = <2>;	/* pull-down 50K */
		};
		conf-ds {
			pins = "EMMC_DSL";
			mediatek,pull-down-adv = <2>;	/* pull-down 50K */
		};
		conf-rst {
			pins = "EMMC_RSTB";
			drive-strength = <MTK_DRIVE_4mA>;
			mediatek,pull-up-adv = <1>;	/* pull-up 10K */
		};
	};

	pcm_pins: pcm-pins-62-to-65 {
		mux {
			function = "pcm";
			groups = "pcm";
		};
	};
};
