* [PATCH ath-devel] wifi: ath: split 5150-5350 regulatory rule
@ 2026-09-04 2:25 Rosen Penev
2026-09-11 19:04 ` Jeff Johnson
0 siblings, 1 reply; 2+ messages in thread
From: Rosen Penev @ 2026-09-04 2:25 UTC (permalink / raw)
To: linux-wireless; +Cc: Jeff Johnson, open list
Allow initiation in the 5150-5240 MHz portion of the world
regulatory rule while retaining NO_IR for 5260-5350 MHz, where
radar detection is required.
The previous single rule marked both ranges NO_IR and unnecessarily
restricted channels 36-48. Update the rule counts for the expanded
rule list.
Assisted-by: Codex:gpt-5.6-luna
Signed-off-by: Rosen Penev <rosenp@gmail.com>
---
drivers/net/wireless/ath/regd.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/drivers/net/wireless/ath/regd.c b/drivers/net/wireless/ath/regd.c
index f15e7bd690b5..b129af0eed88 100644
--- a/drivers/net/wireless/ath/regd.c
+++ b/drivers/net/wireless/ath/regd.c
@@ -43,7 +43,8 @@ static int __ath_regd_init(struct ath_regulatory *reg);
NL80211_RRF_NO_OFDM)
/* We allow IBSS on these on a case by case basis by regulatory domain */
-#define ATH_5GHZ_5150_5350 REG_RULE(5150-10, 5350+10, 80, 0, 30,\
+#define ATH_5GHZ_5150_5350 REG_RULE(5150-10, 5240+10, 80, 0, 30, 0),\
+ REG_RULE(5260-10, 5350+10, 80, 0, 30,\
NL80211_RRF_NO_IR)
#define ATH_5GHZ_5470_5850 REG_RULE(5470-10, 5850+10, 80, 0, 30,\
NL80211_RRF_NO_IR)
@@ -64,7 +65,7 @@ static int __ath_regd_init(struct ath_regulatory *reg);
/* Can be used for:
* 0x60, 0x61, 0x62 */
static const struct ieee80211_regdomain ath_world_regdom_60_61_62 = {
- .n_reg_rules = 5,
+ .n_reg_rules = 6,
.alpha2 = "99",
.reg_rules = {
ATH_2GHZ_ALL,
@@ -74,7 +75,7 @@ static const struct ieee80211_regdomain ath_world_regdom_60_61_62 = {
/* Can be used by 0x63 and 0x65 */
static const struct ieee80211_regdomain ath_world_regdom_63_65 = {
- .n_reg_rules = 4,
+ .n_reg_rules = 5,
.alpha2 = "99",
.reg_rules = {
ATH_2GHZ_CH01_11,
@@ -85,7 +86,7 @@ static const struct ieee80211_regdomain ath_world_regdom_63_65 = {
/* Can be used by 0x64 only */
static const struct ieee80211_regdomain ath_world_regdom_64 = {
- .n_reg_rules = 3,
+ .n_reg_rules = 4,
.alpha2 = "99",
.reg_rules = {
ATH_2GHZ_CH01_11,
@@ -95,7 +96,7 @@ static const struct ieee80211_regdomain ath_world_regdom_64 = {
/* Can be used by 0x66 and 0x69 */
static const struct ieee80211_regdomain ath_world_regdom_66_69 = {
- .n_reg_rules = 3,
+ .n_reg_rules = 4,
.alpha2 = "99",
.reg_rules = {
ATH_2GHZ_CH01_11,
@@ -105,7 +106,7 @@ static const struct ieee80211_regdomain ath_world_regdom_66_69 = {
/* Can be used by 0x67, 0x68, 0x6A and 0x6C */
static const struct ieee80211_regdomain ath_world_regdom_67_68_6A_6C = {
- .n_reg_rules = 4,
+ .n_reg_rules = 5,
.alpha2 = "99",
.reg_rules = {
ATH_2GHZ_CH01_11,
--
2.55.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH ath-devel] wifi: ath: split 5150-5350 regulatory rule
2026-09-04 2:25 [PATCH ath-devel] wifi: ath: split 5150-5350 regulatory rule Rosen Penev
@ 2026-09-11 19:04 ` Jeff Johnson
0 siblings, 0 replies; 2+ messages in thread
From: Jeff Johnson @ 2026-09-11 19:04 UTC (permalink / raw)
To: Rosen Penev, linux-wireless; +Cc: Jeff Johnson, open list
On 9/3/2026 7:25 PM, Rosen Penev wrote:
> Allow initiation in the 5150-5240 MHz portion of the world
> regulatory rule while retaining NO_IR for 5260-5350 MHz, where
> radar detection is required.
>
> The previous single rule marked both ranges NO_IR and unnecessarily
> restricted channels 36-48. Update the rule counts for the expanded
> rule list.
My understanding is that this is not correct. In world mode the entire 5 GHz
band is restricted since some countries do not allow any transmission in that
band. You must establish that you are in a supported regulatory domain via
802.11d or other mechanisms before transmission.
So I'm dropping this patch from patchwork
>
> Assisted-by: Codex:gpt-5.6-luna
> Signed-off-by: Rosen Penev <rosenp@gmail.com>
> ---
> drivers/net/wireless/ath/regd.c | 13 +++++++------
> 1 file changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/regd.c b/drivers/net/wireless/ath/regd.c
> index f15e7bd690b5..b129af0eed88 100644
> --- a/drivers/net/wireless/ath/regd.c
> +++ b/drivers/net/wireless/ath/regd.c
> @@ -43,7 +43,8 @@ static int __ath_regd_init(struct ath_regulatory *reg);
> NL80211_RRF_NO_OFDM)
>
> /* We allow IBSS on these on a case by case basis by regulatory domain */
> -#define ATH_5GHZ_5150_5350 REG_RULE(5150-10, 5350+10, 80, 0, 30,\
> +#define ATH_5GHZ_5150_5350 REG_RULE(5150-10, 5240+10, 80, 0, 30, 0),\
> + REG_RULE(5260-10, 5350+10, 80, 0, 30,\
> NL80211_RRF_NO_IR)
> #define ATH_5GHZ_5470_5850 REG_RULE(5470-10, 5850+10, 80, 0, 30,\
> NL80211_RRF_NO_IR)
> @@ -64,7 +65,7 @@ static int __ath_regd_init(struct ath_regulatory *reg);
> /* Can be used for:
> * 0x60, 0x61, 0x62 */
> static const struct ieee80211_regdomain ath_world_regdom_60_61_62 = {
> - .n_reg_rules = 5,
> + .n_reg_rules = 6,
> .alpha2 = "99",
> .reg_rules = {
> ATH_2GHZ_ALL,
> @@ -74,7 +75,7 @@ static const struct ieee80211_regdomain ath_world_regdom_60_61_62 = {
>
> /* Can be used by 0x63 and 0x65 */
> static const struct ieee80211_regdomain ath_world_regdom_63_65 = {
> - .n_reg_rules = 4,
> + .n_reg_rules = 5,
> .alpha2 = "99",
> .reg_rules = {
> ATH_2GHZ_CH01_11,
> @@ -85,7 +86,7 @@ static const struct ieee80211_regdomain ath_world_regdom_63_65 = {
>
> /* Can be used by 0x64 only */
> static const struct ieee80211_regdomain ath_world_regdom_64 = {
> - .n_reg_rules = 3,
> + .n_reg_rules = 4,
> .alpha2 = "99",
> .reg_rules = {
> ATH_2GHZ_CH01_11,
> @@ -95,7 +96,7 @@ static const struct ieee80211_regdomain ath_world_regdom_64 = {
>
> /* Can be used by 0x66 and 0x69 */
> static const struct ieee80211_regdomain ath_world_regdom_66_69 = {
> - .n_reg_rules = 3,
> + .n_reg_rules = 4,
> .alpha2 = "99",
> .reg_rules = {
> ATH_2GHZ_CH01_11,
> @@ -105,7 +106,7 @@ static const struct ieee80211_regdomain ath_world_regdom_66_69 = {
>
> /* Can be used by 0x67, 0x68, 0x6A and 0x6C */
> static const struct ieee80211_regdomain ath_world_regdom_67_68_6A_6C = {
> - .n_reg_rules = 4,
> + .n_reg_rules = 5,
> .alpha2 = "99",
> .reg_rules = {
> ATH_2GHZ_CH01_11,
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-09-11 19:04 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-04 2:25 [PATCH ath-devel] wifi: ath: split 5150-5350 regulatory rule Rosen Penev
2026-09-11 19:04 ` Jeff Johnson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox