diff --git a/autobuild_mac80211_release/package/network/services/hostapd/patches/mtk-0042-hostapd-mtk-Not-to-update-beacon-for-6-GHz-co-locati.patch b/autobuild_mac80211_release/package/network/services/hostapd/patches/mtk-0042-hostapd-mtk-avoid-unnecessary-beacon-update-for-6-GH.patch
similarity index 60%
rename from autobuild_mac80211_release/package/network/services/hostapd/patches/mtk-0042-hostapd-mtk-Not-to-update-beacon-for-6-GHz-co-locati.patch
rename to autobuild_mac80211_release/package/network/services/hostapd/patches/mtk-0042-hostapd-mtk-avoid-unnecessary-beacon-update-for-6-GH.patch
index 66b180b..277f5fa 100644
--- a/autobuild_mac80211_release/package/network/services/hostapd/patches/mtk-0042-hostapd-mtk-Not-to-update-beacon-for-6-GHz-co-locati.patch
+++ b/autobuild_mac80211_release/package/network/services/hostapd/patches/mtk-0042-hostapd-mtk-avoid-unnecessary-beacon-update-for-6-GH.patch
@@ -1,30 +1,36 @@
-From 1babd386dbe11d337a263843caed2faeb85f3b6b Mon Sep 17 00:00:00 2001
+From 401cb8a661c5e7d796a17bb289209663a6c42741 Mon Sep 17 00:00:00 2001
 From: Michael-CY Lee <michael-cy.lee@mediatek.com>
 Date: Wed, 4 Oct 2023 11:12:52 +0800
-Subject: [PATCH] hostapd: mtk: Not to update beacon for 6 GHz co-location when
- BSS load update
+Subject: [PATCH] hostapd: mtk: avoid unnecessary beacon update for 6 GHz
+ co-location
 
-There are two reason to update beacon for 6 GHz co-location:
+There are two reasons to update beacon for 6 GHz co-location:
 1. 6 GHz out-of-band discovery
 2. MLD operational parameters update
 
-BSS load update is unrelated with the above two reasons, so it is
-unnecessary to update beacon for 6 GHz co-location.
+BSS load update is unrelated with the above two reasons, and therefore is
+not a case to update beacon for 6 GHz co-location.
 Moreover, updating beacon for 6 GHz co-location when BSS load update
 makes hostapd set beacon too frequently in a multiple BSSes case.
 
-This patch adds a new function to update beacon only for current BSS,
+Besides, it is also not necessary to update beacon for 6 GHz BSS when
+setting 2/5 GHz beacon. (i.e., no need for 2/5 GHz co-location)
+
+This patch adds an new function to update beacon only for current BSS,
 and uses the function duriong BSS load update.
+Also it changes the condition check to make beacon update only for 6 GHz
+co-location.
 
 Signed-off-by: Michael Lee <michael-cy.lee@mediatek.com>
+Signed-off-by: Money Wang <money.wang@mediatek.com>
 ---
- src/ap/beacon.c   | 6 ++++++
+ src/ap/beacon.c   | 8 +++++++-
  src/ap/beacon.h   | 1 +
  src/ap/bss_load.c | 2 +-
- 3 files changed, 8 insertions(+), 1 deletion(-)
+ 3 files changed, 9 insertions(+), 2 deletions(-)
 
 diff --git a/src/ap/beacon.c b/src/ap/beacon.c
-index c67d08b..699f0bd 100644
+index c67d08b..02f4f87 100644
 --- a/src/ap/beacon.c
 +++ b/src/ap/beacon.c
 @@ -2098,6 +2098,12 @@ fail:
@@ -40,6 +46,15 @@
  int ieee802_11_set_beacon(struct hostapd_data *hapd)
  {
  	struct hostapd_iface *iface = hapd->iface;
+@@ -2121,7 +2127,7 @@ int ieee802_11_set_beacon(struct hostapd_data *hapd)
+ 		if (colocated == iface || !colocated || !colocated->conf)
+ 			continue;
+ 
+-		if (is_6g == is_6ghz_op_class(colocated->conf->op_class))
++		if (!is_6g || is_6ghz_op_class(colocated->conf->op_class))
+ 			continue;
+ 
+ 		for (i = 0; i < colocated->num_bss; i++) {
 diff --git a/src/ap/beacon.h b/src/ap/beacon.h
 index c320825..b32b2a7 100644
 --- a/src/ap/beacon.h
diff --git a/autobuild_mac80211_release/package/network/services/hostapd_new/patches/mtk-0042-hostapd-mtk-Not-to-update-beacon-for-6-GHz-co-locati.patch b/autobuild_mac80211_release/package/network/services/hostapd_new/patches/mtk-0042-hostapd-mtk-avoid-unnecessary-beacon-update-for-6-GH.patch
similarity index 61%
rename from autobuild_mac80211_release/package/network/services/hostapd_new/patches/mtk-0042-hostapd-mtk-Not-to-update-beacon-for-6-GHz-co-locati.patch
rename to autobuild_mac80211_release/package/network/services/hostapd_new/patches/mtk-0042-hostapd-mtk-avoid-unnecessary-beacon-update-for-6-GH.patch
index ef5395b..1695996 100644
--- a/autobuild_mac80211_release/package/network/services/hostapd_new/patches/mtk-0042-hostapd-mtk-Not-to-update-beacon-for-6-GHz-co-locati.patch
+++ b/autobuild_mac80211_release/package/network/services/hostapd_new/patches/mtk-0042-hostapd-mtk-avoid-unnecessary-beacon-update-for-6-GH.patch
@@ -1,30 +1,36 @@
-From f5cc0d52ec316c7b0069a209070b6cb78e34b37b Mon Sep 17 00:00:00 2001
+From 53dbf487d72a05ae692d98930852c3b98cc6dad6 Mon Sep 17 00:00:00 2001
 From: Michael-CY Lee <michael-cy.lee@mediatek.com>
 Date: Wed, 4 Oct 2023 11:12:52 +0800
-Subject: [PATCH] hostapd: mtk: Not to update beacon for 6 GHz co-location when
- BSS load update
+Subject: [PATCH] hostapd: mtk: avoid unnecessary beacon update for 6 GHz
+ co-location
 
-There are two reason to update beacon for 6 GHz co-location:
+There are two reasons to update beacon for 6 GHz co-location:
 1. 6 GHz out-of-band discovery
 2. MLD operational parameters update
 
-BSS load update is unrelated with the above two reasons, so it is
-unnecessary to update beacon for 6 GHz co-location.
+BSS load update is unrelated with the above two reasons, and therefore is
+not a case to update beacon for 6 GHz co-location.
 Moreover, updating beacon for 6 GHz co-location when BSS load update
 makes hostapd set beacon too frequently in a multiple BSSes case.
 
-This patch adds a new function to update beacon only for current BSS,
+Besides, it is also not necessary to update beacon for 6 GHz BSS when
+setting 2/5 GHz beacon. (i.e., no need for 2/5 GHz co-location)
+
+This patch adds an new function to update beacon only for current BSS,
 and uses the function duriong BSS load update.
+Also it changes the condition check to make beacon update only for 6 GHz
+co-location.
 
 Signed-off-by: Michael Lee <michael-cy.lee@mediatek.com>
+Signed-off-by: Money Wang <money.wang@mediatek.com>
 ---
- src/ap/beacon.c   | 6 ++++++
+ src/ap/beacon.c   | 8 +++++++-
  src/ap/beacon.h   | 1 +
  src/ap/bss_load.c | 2 +-
- 3 files changed, 8 insertions(+), 1 deletion(-)
+ 3 files changed, 9 insertions(+), 2 deletions(-)
 
 diff --git a/src/ap/beacon.c b/src/ap/beacon.c
-index d160675..b74396a 100644
+index d160675..684bdc0 100644
 --- a/src/ap/beacon.c
 +++ b/src/ap/beacon.c
 @@ -2216,6 +2216,12 @@ fail:
@@ -40,6 +46,15 @@
  int ieee802_11_set_beacon(struct hostapd_data *hapd)
  {
  	struct hostapd_iface *iface = hapd->iface;
+@@ -2246,7 +2252,7 @@ int ieee802_11_set_beacon(struct hostapd_data *hapd)
+ 			mld_ap = true;
+ #endif /* CONFIG_IEEE80211BE */
+ 
+-		if (is_6g == is_6ghz_op_class(other->conf->op_class) &&
++		if ((!is_6g || is_6ghz_op_class(other->conf->op_class)) &&
+ 		    !mld_ap)
+ 			continue;
+ 
 diff --git a/src/ap/beacon.h b/src/ap/beacon.h
 index c320825..b32b2a7 100644
 --- a/src/ap/beacon.h
