From 3117ad428392992a4a06131fc94e42fa0b4dfd68 Mon Sep 17 00:00:00 2001 From: Johannes Berg Date: Sat, 24 Nov 2012 18:02:29 +0200 Subject: [PATCH] hostapd: Add second VHT frequency segment config Add the configuration option vht_oper_centr_freq_seg1_idx for the second segment of an 80+80 MHz channel and use it when building the VHT operation IE. Signed-hostap: Johannes Berg --- hostapd/config_file.c | 3 +++ hostapd/hostapd.conf | 6 ++++++ src/ap/ap_config.h | 1 + src/ap/ieee802_11_vht.c | 2 ++ 4 files changed, 12 insertions(+) diff --git a/hostapd/config_file.c b/hostapd/config_file.c index 7c9f941c2..8af8157a7 100644 --- a/hostapd/config_file.c +++ b/hostapd/config_file.c @@ -2524,6 +2524,9 @@ static int hostapd_config_fill(struct hostapd_config *conf, } else if (os_strcmp(buf, "vht_oper_centr_freq_seg0_idx") == 0) { conf->vht_oper_centr_freq_seg0_idx = atoi(pos); + } else if (os_strcmp(buf, "vht_oper_centr_freq_seg1_idx") == 0) + { + conf->vht_oper_centr_freq_seg1_idx = atoi(pos); #endif /* CONFIG_IEEE80211AC */ } else if (os_strcmp(buf, "max_listen_interval") == 0) { bss->max_listen_interval = atoi(pos); diff --git a/hostapd/hostapd.conf b/hostapd/hostapd.conf index 5f0eb9666..c839ad0ca 100644 --- a/hostapd/hostapd.conf +++ b/hostapd/hostapd.conf @@ -572,6 +572,12 @@ wmm_ac_vo_acm=0 # which is channel 42 in 5G band # #vht_oper_centr_freq_seg0_idx=42 +# +# center freq = 5 GHz + (5 * index) +# So index 159 gives center freq 5.795 GHz +# which is channel 159 in 5G band +# +#vht_oper_centr_freq_seg1_idx=159 ##### IEEE 802.1X-2004 related configuration ################################## diff --git a/src/ap/ap_config.h b/src/ap/ap_config.h index 0a83856d0..010d21645 100644 --- a/src/ap/ap_config.h +++ b/src/ap/ap_config.h @@ -506,6 +506,7 @@ struct hostapd_config { int require_vht; u8 vht_oper_chwidth; u8 vht_oper_centr_freq_seg0_idx; + u8 vht_oper_centr_freq_seg1_idx; }; diff --git a/src/ap/ieee802_11_vht.c b/src/ap/ieee802_11_vht.c index 7599ef8d7..b21c2b7fb 100644 --- a/src/ap/ieee802_11_vht.c +++ b/src/ap/ieee802_11_vht.c @@ -68,6 +68,8 @@ u8 * hostapd_eid_vht_operation(struct hostapd_data *hapd, u8 *eid) */ oper->vht_op_info_chan_center_freq_seg0_idx = hapd->iconf->vht_oper_centr_freq_seg0_idx; + oper->vht_op_info_chan_center_freq_seg1_idx = + hapd->iconf->vht_oper_centr_freq_seg1_idx; oper->vht_op_info_chwidth = hapd->iconf->vht_oper_chwidth;