Skip to contentSkip to conversation

wireless-regdb: assert and correct maximum bandwidth within frequency difference

PATCH Superseded Ping-Ke Shih 2 participants 5 messages Nov 16, 2024

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 wireless-regdb: assert and correct maximum bandwidth within frequency difference

From: Ping-Ke Shih <[email protected]>

Since kernel will reject max bandwidth being larger than freq_diff in is_valid_reg_rule(), as well reject it ahead.

---
 db.txt     | 8 ++++----
 dbparse.py | 3 +++
 2 files changed, 7 insertions(+), 4 deletions(-)
db.txt +4 -4
index 32b533e800f5..a12f931ef4b2 100644
@@ -787,11 +787,11 @@ country GT:
 	(2400 - 2483.5 @ 40), (500 mW)
 	(5150 - 5350 @ 80), (200 mW), NO-OUTDOOR
 	(5470 - 5725 @ 160), (250 mW), NO-OUTDOOR
-	(5725 - 5850 @ 160), (500 mW), NO-OUTDOOR
+	(5725 - 5850 @ 80), (500 mW), NO-OUTDOOR
 	(5925 - 6425 @ 320), (200 mW), NO-OUTDOOR, AUTO-BW
-	(6425 - 6525 @ 320), (200 mW), NO-OUTDOOR, AUTO-BW
+	(6425 - 6525 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW
 	(6525 - 6875 @ 320), (150 mW), NO-OUTDOOR, AUTO-BW
-	(6875 - 7125 @ 320), (150 mW), NO-OUTDOOR, AUTO-BW
+	(6875 - 7125 @ 160), (150 mW), NO-OUTDOOR, AUTO-BW
 	(57000 - 66000 @ 2160), (20 mW), NO-OUTDOOR
 
 country GU: DFS-FCC
@@ -1646,7 +1646,7 @@ country RS: DFS-ETSI
 	(5250 - 5350 @ 80), (23), DFS, AUTO-BW
 	(5470 - 5725 @ 160), (27), DFS
 	(5725 - 5850 @ 80), (24), DFS, AUTO-BW
-	(5850 - 5875 @ 80), (24), AUTO-BW
+	(5850 - 5875 @ 20), (24), AUTO-BW
 	(5925 - 6425 @ 320), (23), NO-OUTDOOR
 	# 60 GHz band channels 1-4, ref: Etsi En 302 567
 	(57000 - 66000 @ 2160), (40)
dbparse.py +3 -0
index 5f7e08200fa0..b27690166427 100755
@@ -218,6 +218,9 @@ class DBParser(object):
                 self._syntax_error("Inverted freq range (%d - %d)" % (start, end))
             if start == end:
                 self._syntax_error("Start and end freqs are equal (%d)" % start)
+            if bw > end - start:
+                self._syntax_error("BW is smaller than freq_diff (%d - %d) (%d)"
+                                      % (start, end, bw))
         except ValueError:
             self._syntax_error("band must have frequency range")
 
Signature · 1 line
2.25.1
#1 lore raw
Quoted 4 lines · Ping-Ke Shih

From: Ping-Ke Shih <[email protected]>

Since kernel will reject max bandwidth being larger than freq_diff in is_valid_reg_rule(), as well reject it ahead.

Not sure that's generally true, if you have AUTO-BW I think it should be OK?

johannes

#2 lore raw
Quoted 9 lines · Johannes Berg
Quoted 4 lines · Ping-Ke Shih

From: Ping-Ke Shih <[email protected]>

Since kernel will reject max bandwidth being larger than freq_diff in is_valid_reg_rule(), as well reject it ahead.

Not sure that's generally true, if you have AUTO-BW I think it should be OK?

Sorry, no, I guess AUTO-BW just lets it expand the bandwidth beyond the listed, if there are adjacent ranges. Been ages since I looked at this.

Anyway this probably doesn't fix the user's problem, it just makes it rejected when compiling already ;-)

johannes

#3 lore raw
Quoted 8 lines · Johannes Berg
Quoted 6 lines · Johannes Berg
Quoted 4 lines · Ping-Ke Shih

From: Ping-Ke Shih <[email protected]>

Since kernel will reject max bandwidth being larger than freq_diff in is_valid_reg_rule(), as well reject it ahead.

Quoted 7 lines
Quoted 3 lines

Not sure that's generally true, if you have AUTO-BW I think it should be OK?

Sorry, no, I guess AUTO-BW just lets it expand the bandwidth beyond the listed, if there are adjacent ranges. Been ages since I looked at this.

I have similar thought as you, but I should admit I have not yet looked into reg.c
to know the detail.

I quickly check the warning reported by user "kernel: cfg80211:
Invalid regulatory domain detected: RS.",
and lookup possible cause could be is_valid_reg_rule() to make this patch.

I hope original reporter can help to test this, or I will try it when I have free time.

Quoted 2 lines

Anyway this probably doesn't fix the user's problem, it just makes it rejected when compiling already ;-)

Honestly these mistakes were made by me. I should fix them. Since rtw89 still use wireless-regdb, I will keep updating the regulatory especially
lack of 6GHz frequencies.

#4 lore raw
Quoted 8 lines · Ping-Ke Shih
Quoted 3 lines

Anyway this probably doesn't fix the user's problem, it just makes it rejected when compiling already ;-)

Honestly these mistakes were made by me. I should fix them. Since rtw89 still use wireless-regdb, I will keep updating the regulatory especially lack of 6GHz frequencies.

It's nice that 6 GHz is reaching more users :)

Sorry about my earlier comment, I somehow managed to misread the patch. Of course this fixes it, and I see they already tested :)

johannes