mirror of
https://github.com/immortalwrt/immortalwrt
synced 2025-01-08 12:08:13 +08:00
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
commit
2d9efa26e3
@ -333,36 +333,18 @@ uc_hostapd_iface_start(uc_vm_t *vm, size_t nargs)
|
||||
conf->channel = intval;
|
||||
if ((intval = ucv_int64_get(ucv_object_get(info, "sec_channel", NULL))) && !errno)
|
||||
conf->secondary_channel = intval;
|
||||
#ifdef CONFIG_IEEE80211AC
|
||||
if ((intval = ucv_int64_get(ucv_object_get(info, "center_seg0_idx", NULL))) && !errno) {
|
||||
conf->vht_oper_centr_freq_seg0_idx = intval;
|
||||
#ifdef CONFIG_IEEE80211AX
|
||||
conf->he_oper_centr_freq_seg0_idx = intval;
|
||||
#endif
|
||||
#ifdef CONFIG_IEEE80211BE
|
||||
conf->eht_oper_centr_freq_seg0_idx = intval;
|
||||
#endif
|
||||
}
|
||||
if ((intval = ucv_int64_get(ucv_object_get(info, "center_seg1_idx", NULL))) && !errno) {
|
||||
conf->vht_oper_centr_freq_seg1_idx = intval;
|
||||
#ifdef CONFIG_IEEE80211AX
|
||||
conf->he_oper_centr_freq_seg1_idx = intval;
|
||||
#endif
|
||||
#ifdef CONFIG_IEEE80211BE
|
||||
conf->eht_oper_centr_freq_seg1_idx = intval;
|
||||
#endif
|
||||
}
|
||||
|
||||
intval = ucv_int64_get(ucv_object_get(info, "center_seg0_idx", NULL));
|
||||
if (!errno)
|
||||
hostapd_set_oper_centr_freq_seg0_idx(conf, intval);
|
||||
|
||||
intval = ucv_int64_get(ucv_object_get(info, "center_seg1_idx", NULL));
|
||||
if (!errno)
|
||||
hostapd_set_oper_centr_freq_seg1_idx(conf, intval);
|
||||
|
||||
intval = ucv_int64_get(ucv_object_get(info, "oper_chwidth", NULL));
|
||||
if (!errno) {
|
||||
conf->vht_oper_chwidth = intval;
|
||||
#ifdef CONFIG_IEEE80211AX
|
||||
conf->he_oper_chwidth = intval;
|
||||
#endif
|
||||
#ifdef CONFIG_IEEE80211BE
|
||||
conf->eht_oper_chwidth = intval;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
if (!errno)
|
||||
hostapd_set_oper_chwidth(conf, intval);
|
||||
|
||||
out:
|
||||
if (conf->channel)
|
||||
|
@ -129,7 +129,10 @@ uc_value_t *uc_wpa_freq_info(uc_vm_t *vm, size_t nargs)
|
||||
tmp_channel &= ~((8 << width) - 1);
|
||||
center_idx = tmp_channel + center_ofs + (4 << width) - 1;
|
||||
|
||||
ucv_object_add(ret, "center_seg0_idx", ucv_int64_new(center_idx));
|
||||
if (freq_val < 3000)
|
||||
ucv_object_add(ret, "center_seg0_idx", ucv_int64_new(0));
|
||||
else
|
||||
ucv_object_add(ret, "center_seg0_idx", ucv_int64_new(center_idx));
|
||||
center_idx = (center_idx - channel) * 5 + freq_val;
|
||||
ucv_object_add(ret, "center_freq1", ucv_int64_new(center_idx));
|
||||
|
||||
|
@ -211,12 +211,13 @@ uc_wpas_iface_status(uc_vm_t *vm, size_t nargs)
|
||||
ie = wpa_bss_get_ie(bss, WLAN_EID_HT_OPERATION);
|
||||
if (ie && ie[1] >= 2) {
|
||||
const struct ieee80211_ht_operation *ht_oper;
|
||||
int sec;
|
||||
|
||||
ht_oper = (const void *) (ie + 2);
|
||||
if (ht_oper->ht_param & HT_INFO_HT_PARAM_SECONDARY_CHNL_ABOVE)
|
||||
sec = ht_oper->ht_param & HT_INFO_HT_PARAM_SECONDARY_CHNL_OFF_MASK;
|
||||
if (sec == HT_INFO_HT_PARAM_SECONDARY_CHNL_ABOVE)
|
||||
sec_chan = 1;
|
||||
else if (ht_oper->ht_param &
|
||||
HT_INFO_HT_PARAM_SECONDARY_CHNL_BELOW)
|
||||
else if (sec == HT_INFO_HT_PARAM_SECONDARY_CHNL_BELOW)
|
||||
sec_chan = -1;
|
||||
}
|
||||
|
||||
|
@ -152,7 +152,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
||||
+
|
||||
+&pcie3x2 {
|
||||
+ pcie@0,0 {
|
||||
+ reg = <0x00100000 0 0 0 0>;
|
||||
+ reg = <0x00200000 0 0 0 0>;
|
||||
+ #address-cells = <3>;
|
||||
+ #size-cells = <2>;
|
||||
+
|
||||
|
Loading…
Reference in New Issue
Block a user