2 Gbps WAN/LAN NAT Routing on ramips MT7621 devices

Yeah, you can disable the button in the devicetree in favor of using gmac1. I can send you a test build if you'd like.

If you can build yourself, you can apply this diff.

diff --git a/target/linux/ramips/dts/mt7621_tplink_archer-x6-v3.dtsi b/target/linux/ramips/dts/mt7621_tplink_archer-x6-v3.dtsi
index 217c1b60fe..2b2f6cfbf4 100644
--- a/target/linux/ramips/dts/mt7621_tplink_archer-x6-v3.dtsi
+++ b/target/linux/ramips/dts/mt7621_tplink_archer-x6-v3.dtsi
@@ -21,13 +21,6 @@
 	keys {
 		compatible = "gpio-keys";
 
-		wps {
-			label = "wps";
-			gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
-			debounce-interval = <60>;
-			linux,code = <KEY_WPS_BUTTON>;
-		};
-
 		reset {
 			label = "reset";
 			gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
@@ -115,7 +108,7 @@
 
 &state_default {
 	gpio {
-		groups =  "i2c", "rgmii2", "uart2", "uart3", "jtag", "wdt";
+		groups =  "i2c", "uart2", "uart3", "jtag", "wdt";
 		function = "gpio";
 	};
 };
@@ -148,22 +141,29 @@
 	};
 };
 
-&ethernet {
-	pinctrl-0 = <&mdio_pins>, <&rgmii1_pins>;
+&gmac0 {
+	nvmem-cells = <&macaddr_config_8>;
+	nvmem-cell-names = "mac-address";
 };
 
-&gmac0 {
+&gmac1 {
+	status = "okay";
+	label = "wan";
+	phy-handle = <&ethphy0>;
+
 	nvmem-cells = <&macaddr_config_8>;
 	nvmem-cell-names = "mac-address";
 };
 
+
+&mdio {
+	ethphy0: ethernet-phy@0 {
+		reg = <0>;
+	};
+};
+
 &switch0 {
 	ports {
-		port@0 {
-			status = "okay";
-			label = "wan";
-		};
-
 		port@1 {
 			status = "okay";
 			label = "lan1";
3 Likes