diff mbox

[RFC,4/6] mac80211: Allow disabling SGI-20.

Message ID 1355349295-30960-4-git-send-email-greearb@candelatech.com (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Ben Greear Dec. 12, 2012, 9:54 p.m. UTC
From: Ben Greear <greearb@candelatech.com>

This allows user-space (wpa_supplicant) to disable
short guard interval (SGI) for 20Mhz.  The SGI-40
disable option is already handled.

Signed-off-by: Ben Greear <greearb@candelatech.com>
---
 net/mac80211/ht.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

Comments

Johannes Berg Dec. 12, 2012, 10:06 p.m. UTC | #1
On Wed, 2012-12-12 at 13:54 -0800, greearb@candelatech.com wrote:
> From: Ben Greear <greearb@candelatech.com>
> 
> This allows user-space (wpa_supplicant) to disable
> short guard interval (SGI) for 20Mhz.  The SGI-40
> disable option is already handled.
> 
> Signed-off-by: Ben Greear <greearb@candelatech.com>
> ---
>  net/mac80211/ht.c |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
> 
> diff --git a/net/mac80211/ht.c b/net/mac80211/ht.c
> index a71d891..8a6d68f 100644
> --- a/net/mac80211/ht.c
> +++ b/net/mac80211/ht.c
> @@ -62,6 +62,9 @@ void ieee80211_apply_htcap_overrides(struct ieee80211_sub_if_data *sdata,
>  	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SUP_WIDTH_20_40);
>  	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SGI_40);
>  
> +	/* Allow user to disable SGI-20 (SGI-40 is handled above) */
> +	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SGI_20);

And you tested this? And it actually did something, despite
mac80211_ht_capa_mod_mask not including it??

johannes

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Ben Greear Dec. 12, 2012, 10:08 p.m. UTC | #2
On 12/12/2012 02:06 PM, Johannes Berg wrote:
> On Wed, 2012-12-12 at 13:54 -0800, greearb@candelatech.com wrote:
>> From: Ben Greear <greearb@candelatech.com>
>>
>> This allows user-space (wpa_supplicant) to disable
>> short guard interval (SGI) for 20Mhz.  The SGI-40
>> disable option is already handled.
>>
>> Signed-off-by: Ben Greear <greearb@candelatech.com>
>> ---
>>   net/mac80211/ht.c |    3 +++
>>   1 files changed, 3 insertions(+), 0 deletions(-)
>>
>> diff --git a/net/mac80211/ht.c b/net/mac80211/ht.c
>> index a71d891..8a6d68f 100644
>> --- a/net/mac80211/ht.c
>> +++ b/net/mac80211/ht.c
>> @@ -62,6 +62,9 @@ void ieee80211_apply_htcap_overrides(struct ieee80211_sub_if_data *sdata,
>>   	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SUP_WIDTH_20_40);
>>   	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SGI_40);
>>
>> +	/* Allow user to disable SGI-20 (SGI-40 is handled above) */
>> +	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SGI_20);
>
> And you tested this? And it actually did something, despite
> mac80211_ht_capa_mod_mask not including it??

I thought it was working, but perhaps I was wrong.  I will re-test.

Thanks,
Ben

>
> johannes
>
Ben Greear Dec. 13, 2012, 12:58 a.m. UTC | #3
On 12/12/2012 02:06 PM, Johannes Berg wrote:
> On Wed, 2012-12-12 at 13:54 -0800, greearb@candelatech.com wrote:
>> From: Ben Greear <greearb@candelatech.com>
>>
>> This allows user-space (wpa_supplicant) to disable
>> short guard interval (SGI) for 20Mhz.  The SGI-40
>> disable option is already handled.
>>
>> Signed-off-by: Ben Greear <greearb@candelatech.com>
>> ---
>>   net/mac80211/ht.c |    3 +++
>>   1 files changed, 3 insertions(+), 0 deletions(-)
>>
>> diff --git a/net/mac80211/ht.c b/net/mac80211/ht.c
>> index a71d891..8a6d68f 100644
>> --- a/net/mac80211/ht.c
>> +++ b/net/mac80211/ht.c
>> @@ -62,6 +62,9 @@ void ieee80211_apply_htcap_overrides(struct ieee80211_sub_if_data *sdata,
>>   	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SUP_WIDTH_20_40);
>>   	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SGI_40);
>>
>> +	/* Allow user to disable SGI-20 (SGI-40 is handled above) */
>> +	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SGI_20);
>
> And you tested this? And it actually did something, despite
> mac80211_ht_capa_mod_mask not including it??

It was busted...new patch sent, and the new one was freshly tested and
appears to work as desired.

Thanks,
Ben

>
> johannes
>
diff mbox

Patch

diff --git a/net/mac80211/ht.c b/net/mac80211/ht.c
index a71d891..8a6d68f 100644
--- a/net/mac80211/ht.c
+++ b/net/mac80211/ht.c
@@ -62,6 +62,9 @@  void ieee80211_apply_htcap_overrides(struct ieee80211_sub_if_data *sdata,
 	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SUP_WIDTH_20_40);
 	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SGI_40);
 
+	/* Allow user to disable SGI-20 (SGI-40 is handled above) */
+	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_SGI_20);
+
 	/* Allow user to disable the max-AMSDU bit. */
 	__check_htcap_disable(sdata, ht_cap, IEEE80211_HT_CAP_MAX_AMSDU);