From 674ec7b64ae8a2f5b55ddf23459a132104fa8cec Mon Sep 17 00:00:00 2001
From: Matthias Schiffer <mschiffer@universe-factory.net>
Date: Thu, 26 May 2022 23:35:18 +0200
Subject: [PATCH] ath79-generic: re-add support for Ubiquiti UniFi AP Outdoor+
 (#2440)

Removed in 45c84a117bf8 ("ar71xx: drop target").
---
 docs/user/supported_devices.rst                            | 1 +
 package/gluon-core/luasrc/lib/gluon/upgrade/020-interfaces | 5 +++++
 package/gluon-core/luasrc/usr/lib/lua/gluon/platform.lua   | 1 +
 targets/ath79-generic                                      | 6 ++++++
 4 files changed, 13 insertions(+)

diff --git a/docs/user/supported_devices.rst b/docs/user/supported_devices.rst
index 2ab6abe2a..3cab04696 100644
--- a/docs/user/supported_devices.rst
+++ b/docs/user/supported_devices.rst
@@ -108,6 +108,7 @@ ath79-generic
   - UniFi AC Pro
   - UniFi AP
   - UniFi AP LR
+  - UniFi AP Outdoor+
   - UniFi AP PRO
 
 ath79-nand
diff --git a/package/gluon-core/luasrc/lib/gluon/upgrade/020-interfaces b/package/gluon-core/luasrc/lib/gluon/upgrade/020-interfaces
index f37e06929..164e996ae 100755
--- a/package/gluon-core/luasrc/lib/gluon/upgrade/020-interfaces
+++ b/package/gluon-core/luasrc/lib/gluon/upgrade/020-interfaces
@@ -52,6 +52,11 @@ if platform.match('ath79', 'generic', {
 	'ubnt,unifi-ap-pro',
 }) then
 	lan_ifname, wan_ifname = wan_ifname, lan_ifname
+elseif platform.match('ath79', 'generic', {
+	'ubnt,unifi-ap-outdoor-plus',
+}) then
+	-- Temporary solution to separate interfaces in bridged default setup
+	lan_ifname, wan_ifname = 'eth0', 'eth1'
 elseif platform.match('lantiq') then
 	local switch_data = board_data.switch or {}
 	local switch0_data = switch_data.switch0 or {}
diff --git a/package/gluon-core/luasrc/usr/lib/lua/gluon/platform.lua b/package/gluon-core/luasrc/usr/lib/lua/gluon/platform.lua
index 96b4eeee3..ed3ca35a8 100644
--- a/package/gluon-core/luasrc/usr/lib/lua/gluon/platform.lua
+++ b/package/gluon-core/luasrc/usr/lib/lua/gluon/platform.lua
@@ -38,6 +38,7 @@ function M.is_outdoor_device()
 		'tplink,wbs210-v1',
 		'tplink,wbs210-v2',
 		'ubnt,nanostation-m-xw',
+		'ubnt,unifi-ap-outdoor-plus',
 		'ubnt,unifiac-mesh',
 	}) then
 		return true
diff --git a/targets/ath79-generic b/targets/ath79-generic
index 5d53a3e77..0e6c49cee 100644
--- a/targets/ath79-generic
+++ b/targets/ath79-generic
@@ -449,4 +449,10 @@ device('ubiquiti-unifi-ap', 'ubnt_unifi', {
 	},
 })
 
+device('ubiquiti-unifi-ap-outdoor+', 'ubnt_unifi-ap-outdoor-plus', {
+	manifest_aliases = {
+		'ubiquiti-unifiap-outdoor+', -- upgrade from OpenWrt 19.07
+	},
+})
+
 device('ubiquiti-unifi-ap-pro', 'ubnt_unifi-ap-pro')
-- 
GitLab