From cc4db7ad22853f72f43128f96e5d4edcb7c245a1 Mon Sep 17 00:00:00 2001
From: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
Date: Wed, 5 Jul 2023 10:44:15 +0800
Subject: [PATCH 054/104] mtk: hostapd: Fix background channel overlapping
 operating channel issue

Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
---
 src/ap/dfs.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/src/ap/dfs.c b/src/ap/dfs.c
index f5794753e..8be953287 100644
--- a/src/ap/dfs.c
+++ b/src/ap/dfs.c
@@ -814,6 +814,20 @@ static int dfs_are_channels_overlapped(struct hostapd_iface *iface, int freq,
 }
 
 
+static void dfs_check_background_overlapped(struct hostapd_iface *iface)
+{
+	int width = hostapd_get_oper_chwidth(iface->conf);
+
+	if (!dfs_use_radar_background(iface))
+		return;
+
+	if (dfs_are_channels_overlapped(iface, iface->radar_background.freq,
+					width, iface->radar_background.centr_freq_seg0_idx,
+					iface->radar_background.centr_freq_seg1_idx))
+		iface->radar_background.channel = -1;
+}
+
+
 static unsigned int dfs_get_cac_time(struct hostapd_iface *iface,
 				     int start_chan_idx, int n_chans)
 {
@@ -1141,6 +1155,8 @@ static void hostapd_dfs_update_background_chain(struct hostapd_iface *iface)
 						  &oper_centr_freq_seg1_idx,
 						  &channel_type);
 	if (!channel ||
+	    channel->chan == iface->conf->channel ||
+	    channel->chan == iface->radar_background.channel ||
 	    hostapd_start_dfs_cac(iface, iface->conf->hw_mode,
 				  channel->freq, channel->chan,
 				  iface->conf->ieee80211n,
@@ -1375,6 +1391,7 @@ static int hostapd_dfs_start_channel_switch_cac(struct hostapd_iface *iface)
 	hostapd_set_oper_centr_freq_seg1_idx(iface->conf,
 					     oper_centr_freq_seg1_idx);
 	err = 0;
+	dfs_check_background_overlapped(iface);
 
 	hostapd_setup_interface_complete(iface, err);
 	return err;
@@ -1502,6 +1519,7 @@ static int hostapd_dfs_start_channel_switch(struct hostapd_iface *iface)
 			hostapd_set_oper_centr_freq_seg1_idx(
 				iface->conf, oper_centr_freq_seg1_idx);
 
+			dfs_check_background_overlapped(iface);
 			hostapd_disable_iface(iface);
 			hostapd_enable_iface(iface);
 			return 0;
-- 
2.39.2

