hostapd: Update DFS status in VHT80+80 mode
Update center frequency and center frequency2's DFS channel status in VHT80+80 mode. Otherwise it will cause AP failed to start on a DFS channel. Tested: qca9984 with firmware ver 10.4-3.10-00047 Signed-off-by: Rick Wu <rwu@codeaurora.org> Signed-off-by: Lei Wang <leiwa@codeaurora.org>
This commit is contained in:
parent
93ba13bcfd
commit
530b8ee3c8
1 changed files with 11 additions and 0 deletions
11
src/ap/dfs.c
11
src/ap/dfs.c
|
@ -515,6 +515,7 @@ static int set_dfs_state(struct hostapd_iface *iface, int freq, int ht_enabled,
|
||||||
int n_chans = 1, i;
|
int n_chans = 1, i;
|
||||||
struct hostapd_hw_modes *mode;
|
struct hostapd_hw_modes *mode;
|
||||||
int frequency = freq;
|
int frequency = freq;
|
||||||
|
int frequency2 = 0;
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
|
||||||
mode = iface->current_mode;
|
mode = iface->current_mode;
|
||||||
|
@ -542,6 +543,11 @@ static int set_dfs_state(struct hostapd_iface *iface, int freq, int ht_enabled,
|
||||||
n_chans = 4;
|
n_chans = 4;
|
||||||
frequency = cf1 - 30;
|
frequency = cf1 - 30;
|
||||||
break;
|
break;
|
||||||
|
case CHAN_WIDTH_80P80:
|
||||||
|
n_chans = 4;
|
||||||
|
frequency = cf1 - 30;
|
||||||
|
frequency2 = cf2 - 30;
|
||||||
|
break;
|
||||||
case CHAN_WIDTH_160:
|
case CHAN_WIDTH_160:
|
||||||
n_chans = 8;
|
n_chans = 8;
|
||||||
frequency = cf1 - 70;
|
frequency = cf1 - 70;
|
||||||
|
@ -557,6 +563,11 @@ static int set_dfs_state(struct hostapd_iface *iface, int freq, int ht_enabled,
|
||||||
for (i = 0; i < n_chans; i++) {
|
for (i = 0; i < n_chans; i++) {
|
||||||
ret += set_dfs_state_freq(iface, frequency, state);
|
ret += set_dfs_state_freq(iface, frequency, state);
|
||||||
frequency = frequency + 20;
|
frequency = frequency + 20;
|
||||||
|
|
||||||
|
if (chan_width == CHAN_WIDTH_80P80) {
|
||||||
|
ret += set_dfs_state_freq(iface, frequency2, state);
|
||||||
|
frequency2 = frequency2 + 20;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
|
Loading…
Reference in a new issue