diff --git a/.github/filters.yml b/.github/filters.yml
index 4ef57a1b695f7491f3e7eba6fb28fd1a22cd531f..83ee2474bc4a8fdf8da00b483b9833f9df81365b 100644
--- a/.github/filters.yml
+++ b/.github/filters.yml
@@ -17,6 +17,16 @@
     "targets/generic",
     "targets/targets.mk"
   ],
+  "ath79-mikrotik": [
+    "targets/ath79-mikrotik",
+    "modules",
+    "Makefile",
+    "patches/**",
+    "scripts/**",
+    "targets/generic",
+    "targets/targets.mk",
+    "targets/mikrotik.inc"
+  ],
   "bcm27xx-bcm2708": [
     "targets/bcm27xx-bcm2708",
     "modules",
diff --git a/docs/user/supported_devices.rst b/docs/user/supported_devices.rst
index c87ecdfbf610078f01b4a578f785d4dc67069a89..2ab6abe2ac9d6a69d70dde79441bf06142f9c308 100644
--- a/docs/user/supported_devices.rst
+++ b/docs/user/supported_devices.rst
@@ -118,6 +118,13 @@ ath79-nand
   - GL-AR300M
   - GL-AR750S
 
+ath79-mikrotik
+--------------
+
+* Mikrotik
+
+  - RB951Ui-2nD (hAP)
+
 brcm2708-bcm2708
 ----------------
 
diff --git a/targets/ath79-mikrotik b/targets/ath79-mikrotik
new file mode 100644
index 0000000000000000000000000000000000000000..c200298763769dd6a273d933fcb12f81476bb30f
--- /dev/null
+++ b/targets/ath79-mikrotik
@@ -0,0 +1,3 @@
+include 'mikrotik.inc'
+
+device('mikrotik-routerboard-951ui-2nd-hap', 'mikrotik_routerboard-951ui-2nd')
diff --git a/targets/mikrotik.inc b/targets/mikrotik.inc
new file mode 100644
index 0000000000000000000000000000000000000000..92c0fa3f4b2d60fd6f5efc54f559131d8aa328f0
--- /dev/null
+++ b/targets/mikrotik.inc
@@ -0,0 +1,7 @@
+-- Mikrotik images are netbooted via TFTP, then persisted with sysupgrade
+defaults {
+	factory = '-initramfs-kernel'
+}
+
+config('TARGET_ROOTFS_INITRAMFS', true)
+config('TARGET_INITRAMFS_COMPRESSION_LZMA', true)
diff --git a/targets/targets.mk b/targets/targets.mk
index 92b58ab8899f4a78e5088f07136b64b59a293da2..5abd5720c672fe77b9d83267c16fc7573166765f 100644
--- a/targets/targets.mk
+++ b/targets/targets.mk
@@ -1,5 +1,6 @@
 $(eval $(call GluonTarget,ath79,generic))
 $(eval $(call GluonTarget,ath79,nand))
+$(eval $(call GluonTarget,ath79,mikrotik))
 $(eval $(call GluonTarget,bcm27xx,bcm2708))
 $(eval $(call GluonTarget,bcm27xx,bcm2709))
 $(eval $(call GluonTarget,ipq40xx,generic))