diff --git a/target/linux/ramips/dts/mt7621_netgear_wac124.dts b/target/linux/ramips/dts/mt7621_netgear_wac124.dts
new file mode 100644
index 0000000000000000000000000000000000000000..b081581a3174a88e2dab714f3e54550440149373
--- /dev/null
+++ b/target/linux/ramips/dts/mt7621_netgear_wac124.dts
@@ -0,0 +1,25 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/dts-v1/;
+
+#include "mt7621_netgear_sercomm_chj.dtsi"
+
+/ {
+	compatible = "netgear,wac124", "mediatek,mt7621-soc";
+	model = "Netgear WAC124";
+};
+
+&led_power {
+	label = "wac124:green:power";
+};
+
+&led_usb {
+	label = "wac124:green:usb";
+};
+
+&led_internet {
+	label = "wac124:green:wan";
+};
+
+&led_wifi {
+	label = "wac124:green:wifi";
+};
diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk
index d6423f81d9eea18904221ee873858c074fe8537b..de20934598ec55fbad8997ad9acf97e60d04deaa 100644
--- a/target/linux/ramips/image/mt7621.mk
+++ b/target/linux/ramips/image/mt7621.mk
@@ -702,6 +702,18 @@ define Device/netgear_wac104
 endef
 TARGET_DEVICES += netgear_wac104
 
+define Device/netgear_wac124
+  $(Device/netgear_sercomm_nand)
+  DEVICE_MODEL := WAC124
+  SERCOMM_HWNAME := WAC124
+  SERCOMM_HWID := CTL
+  SERCOMM_HWVER := A003
+  SERCOMM_SWVER := 0x0402
+  IMAGE_SIZE := 40960k
+  DEVICE_PACKAGES += kmod-mt7615e kmod-mt7615-firmware
+endef
+TARGET_DEVICES += netgear_wac124
+
 define Device/netgear_wndr3700-v5
   $(Device/uimage-lzma-loader)
   BLOCKSIZE := 64k
diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds b/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
index fdfd29d011b9b0b00bbfa3fa9c29cbf10751b90c..716bc6e462c813b2cf1947d7e7b89a3d3ef6f51e 100755
--- a/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
+++ b/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
@@ -56,6 +56,7 @@ netgear,r6220|\
 netgear,r6260|\
 netgear,r6350|\
 netgear,r6850|\
+netgear,wac124|\
 netgear,wndr3700-v5)
 	ucidef_set_led_netdev "wan" "wan" "$boardname:green:wan" "wan"
 	;;
diff --git a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh
index cb26b7745bda69823dcef92c07763d8753af56a1..233ed80b4e5b999c75978f49afe0f387142c537c 100755
--- a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh
@@ -53,6 +53,7 @@ platform_do_upgrade() {
 	netgear,r6800|\
 	netgear,r6850|\
 	netgear,wac104|\
+	netgear,wac124|\
 	netis,wf2881|\
 	xiaomi,mir3g|\
 	xiaomi,mir3p|\