diff --git a/docs/index.rst b/docs/index.rst
index 1fa154442453413da0091c586815f535b7aa1a02..2342481f58f640dd0c543e6eafc67152a19b002b 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -189,7 +189,7 @@ ar71xx-generic
 
   - Archer C5 (v1) [#ath10k]_
   - Archer C59 (v1) [#80211s]_
-  - Archer C7 (v2, v4) [#ath10k]_
+  - Archer C7 (v2, v4, v5) [#ath10k]_
   - CPE210 (v1.0, v1.1, v2.0)
   - CPE220 (v1.1)
   - CPE510 (v1.0, v1.1)
diff --git a/package/gluon-core/luasrc/lib/gluon/upgrade/010-primary-mac b/package/gluon-core/luasrc/lib/gluon/upgrade/010-primary-mac
index 01164c87c2ce0119a3e10f65211756a034be76e5..18ae822940c251d34ddc99616105e80ea726aa76 100755
--- a/package/gluon-core/luasrc/lib/gluon/upgrade/010-primary-mac
+++ b/package/gluon-core/luasrc/lib/gluon/upgrade/010-primary-mac
@@ -39,7 +39,7 @@ elseif platform.match('ar71xx', 'generic', {'unifi-outdoor-plus', 'carambola2',
                                             'om2p-lc',
                                             'om5p', 'om5p-an',
                                             'om5p-ac', 'om5p-acv2',
-                                            'archer-c7-v4'}) then
+                                            'archer-c7-v4', 'archer-c7-v5'}) then
   table.insert(try_files, 1, '/sys/class/net/eth0/address')
 elseif platform.match('ar71xx', 'generic', {'archer-c5', 'archer-c58-v1',
                                             'archer-c59-v1', 'archer-c60-v1',
diff --git a/targets/ar71xx-generic b/targets/ar71xx-generic
index d393a82e95ea1144b03cb4a18ab9e367fa965d01..0d0c7c6c67245ea212ce08b7fc069746e1e78683 100644
--- a/targets/ar71xx-generic
+++ b/targets/ar71xx-generic
@@ -213,6 +213,9 @@ factory -squashfs-factory${GLUON_REGION:+-${GLUON_REGION}} .bin
 device tp-link-archer-c7-v4 archer-c7-v4
 packages $ATH10K_PACKAGES
 
+device tp-link-archer-c7-v5 archer-c7-v5
+packages $ATH10K_PACKAGES
+
 if [ "$BROKEN" ]; then
 device tp-link-archer-c25-v1 archer-c25-v1 # BROKEN: OOM with 5GHz enabled in most environments
 packages $ATH10K_PACKAGES_QCA9887