mirror of
https://github.com/openwrt/openwrt.git
synced 2025-01-31 08:25:29 +00:00
wifi-scripts: add default channel to board.json in wifi-detect.uc
Preparation for avoiding iw calls in /lib/wifi/mac80211.sh Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
parent
33420f039d
commit
31aa61503e
@ -53,6 +53,26 @@ function wiphy_get_entry(phy, path) {
|
|||||||
return wlan[phy];
|
return wlan[phy];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function freq_to_channel(freq) {
|
||||||
|
if (freq < 1000)
|
||||||
|
return 0;
|
||||||
|
if (freq == 2484)
|
||||||
|
return 14;
|
||||||
|
if (freq == 5935)
|
||||||
|
return 2;
|
||||||
|
if (freq < 2484)
|
||||||
|
return (freq - 2407) / 5;
|
||||||
|
if (freq >= 4910 && freq <= 4980)
|
||||||
|
return (freq - 4000) / 5;
|
||||||
|
if (freq < 5950)
|
||||||
|
return (freq - 5000) / 5;
|
||||||
|
if (freq <= 45000)
|
||||||
|
return (freq - 5950) / 5;
|
||||||
|
if (freq >= 58320 && freq <= 70200)
|
||||||
|
return (freq - 56160) / 2160;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
function wiphy_detect() {
|
function wiphy_detect() {
|
||||||
let phys = nl.request(nl.const.NL80211_CMD_GET_WIPHY, nl.const.NLM_F_DUMP, { split_wiphy_dump: true });
|
let phys = nl.request(nl.const.NL80211_CMD_GET_WIPHY, nl.const.NLM_F_DUMP, { split_wiphy_dump: true });
|
||||||
if (!phys)
|
if (!phys)
|
||||||
@ -80,8 +100,10 @@ function wiphy_detect() {
|
|||||||
band_name = "6G";
|
band_name = "6G";
|
||||||
else if (freq > 4000)
|
else if (freq > 4000)
|
||||||
band_name = "5G";
|
band_name = "5G";
|
||||||
else
|
else if (freq > 2000)
|
||||||
band_name = "2G";
|
band_name = "2G";
|
||||||
|
else
|
||||||
|
continue;
|
||||||
bands[band_name] = band_info;
|
bands[band_name] = band_info;
|
||||||
if (band.ht_capa > 0)
|
if (band.ht_capa > 0)
|
||||||
band_info.ht = true;
|
band_info.ht = true;
|
||||||
@ -124,6 +146,16 @@ function wiphy_detect() {
|
|||||||
if (he_phy_cap & 0x2)
|
if (he_phy_cap & 0x2)
|
||||||
push(modes, "HE40");
|
push(modes, "HE40");
|
||||||
|
|
||||||
|
for (let freq in band.freqs) {
|
||||||
|
if (freq.disabled)
|
||||||
|
continue;
|
||||||
|
let chan = freq_to_channel(freq.freq);
|
||||||
|
if (!chan)
|
||||||
|
continue;
|
||||||
|
band_info.default_channel = chan;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
if (band_name == "2G")
|
if (band_name == "2G")
|
||||||
continue;
|
continue;
|
||||||
if (band_info.vht)
|
if (band_info.vht)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user