Sfoglia il codice sorgente

hostapd: fix center frequency calculation for channel 149 and above

Signed-off-by: Felix Fietkau <[email protected]>
Felix Fietkau 2 anni fa
parent
commit
c5988f4c01
1 ha cambiato i file con 6 aggiunte e 1 eliminazioni
  1. 6 1
      package/network/services/hostapd/src/src/utils/ucode.c

+ 6 - 1
package/network/services/hostapd/src/src/utils/ucode.c

@@ -119,7 +119,12 @@ uc_value_t *uc_wpa_freq_info(uc_vm_t *vm, size_t nargs)
 	if (!sec_channel)
 		return ret;
 
-	center_ofs = freq_val >= 5900 ? 0 : 3;
+	if (freq_val >= 5900)
+		center_ofs = 0;
+	else if (freq_val >= 5745)
+		center_ofs = 20;
+	else
+		center_ofs = 35;
 	tmp_channel = channel - center_ofs;
 	tmp_channel &= ~((8 << width) - 1);
 	center_idx = tmp_channel + center_ofs + (4 << width) - 1;