diff mbox

minstrel_ht: Use RTS_CTS when STA is in DYNAMIC SMPS mode for frames sent using Nss>1.

Message ID 1390373865-6088-1-git-send-email-chaitanya.mgit@gmail.com (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Krishna Chaitanya Jan. 22, 2014, 6:57 a.m. UTC
When the STA is in Dynamic SMPS mode, tell
minstrel_ht to use RTS_CTS for frames which
are transmitted using more than 1 spatial
streams.

Signed-off-by: Chaitanya T K <chaitanya.mgit@gmail.com>
---
 net/mac80211/rc80211_minstrel_ht.c |   13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

--
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

Comments

Johannes Berg Jan. 22, 2014, 9:27 p.m. UTC | #1
On Wed, 2014-01-22 at 12:27 +0530, Chaitanya T K wrote:

> +		if (sta->smps_mode == IEEE80211_SMPS_DYNAMIC &&
> +			minstrel_mcs_groups[i].streams > 1) {
> +			mi->tx_flags |= IEEE80211_TX_RC_USE_RTS_CTS;
> +		} else if (sta->smps_mode == IEEE80211_SMPS_STATIC &&
> +			minstrel_mcs_groups[i].streams > 1) {

Your indentation is off inside the if statements. I'll have to wait for
nbd to review the patch itself, I guess.

johannes

PS: Your clock/timezone is wrong by approximately 10 hours.

--
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
Krishna Chaitanya Jan. 22, 2014, 9:53 p.m. UTC | #2
On Thu, Jan 23, 2014 at 2:57 AM, Johannes Berg
<johannes@sipsolutions.net> wrote:
> On Wed, 2014-01-22 at 12:27 +0530, Chaitanya T K wrote:
>
>> +             if (sta->smps_mode == IEEE80211_SMPS_DYNAMIC &&
>> +                     minstrel_mcs_groups[i].streams > 1) {
>> +                     mi->tx_flags |= IEEE80211_TX_RC_USE_RTS_CTS;
>> +             } else if (sta->smps_mode == IEEE80211_SMPS_STATIC &&
>> +                     minstrel_mcs_groups[i].streams > 1) {
>
> Your indentation is off inside the if statements. I'll have to wait for
> nbd to review the patch itself, I guess.

Ok, I will fix that. Checkpatch didn't catch that so missed it.

> PS: Your clock/timezone is wrong by approximately 10 hours.

Oh..I have sent this from my virtual-box where time is not properly set :-).
--
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
Krishna Chaitanya Jan. 30, 2014, 6:18 p.m. UTC | #3
On Thu, Jan 23, 2014 at 2:57 AM, Johannes Berg
<johannes@sipsolutions.net> wrote:
>
> On Wed, 2014-01-22 at 12:27 +0530, Chaitanya T K wrote:
>
> > +             if (sta->smps_mode == IEEE80211_SMPS_DYNAMIC &&
> > +                     minstrel_mcs_groups[i].streams > 1) {
> > +                     mi->tx_flags |= IEEE80211_TX_RC_USE_RTS_CTS;
> > +             } else if (sta->smps_mode == IEEE80211_SMPS_STATIC &&
> > +                     minstrel_mcs_groups[i].streams > 1) {
>
> Your indentation is off inside the if statements. I'll have to wait for
> nbd to review the patch itself, I guess.
>
Felix,

 Any comments other than the indentation? If no, will send in the
v2 with indentation fixed.
--
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
Krishna Chaitanya June 1, 2015, 6:19 p.m. UTC | #4
On Thu, Jan 30, 2014 at 11:48 PM, Krishna Chaitanya
<chaitanya.mgit@gmail.com> wrote:
> On Thu, Jan 23, 2014 at 2:57 AM, Johannes Berg
> <johannes@sipsolutions.net> wrote:
>>
>> On Wed, 2014-01-22 at 12:27 +0530, Chaitanya T K wrote:
>>
>> > +             if (sta->smps_mode == IEEE80211_SMPS_DYNAMIC &&
>> > +                     minstrel_mcs_groups[i].streams > 1) {
>> > +                     mi->tx_flags |= IEEE80211_TX_RC_USE_RTS_CTS;
>> > +             } else if (sta->smps_mode == IEEE80211_SMPS_STATIC &&
>> > +                     minstrel_mcs_groups[i].streams > 1) {
>>
>> Your indentation is off inside the if statements. I'll have to wait for
>> nbd to review the patch itself, I guess.
>>
> Felix,
>
>  Any comments other than the indentation? If no, will send in the
> v2 with indentation fixed.

Was checking my old submissions. This was marked as "Not Applicable" in
patchwork.

Felix/Johannes,

Can you please explain to me the meaning of the status "Not Applicable"?

Regards,
Chaitanya T K.
Johannes Berg June 1, 2015, 8:36 p.m. UTC | #5
On Mon, 2015-06-01 at 23:49 +0530, Krishna Chaitanya wrote:
> On Thu, Jan 30, 2014 at 11:48 PM, Krishna Chaitanya
> <chaitanya.mgit@gmail.com> wrote:
> > On Thu, Jan 23, 2014 at 2:57 AM, Johannes Berg
> > <johannes@sipsolutions.net> wrote:
> >>
> >> On Wed, 2014-01-22 at 12:27 +0530, Chaitanya T K wrote:
> >>
> >> > +             if (sta->smps_mode == IEEE80211_SMPS_DYNAMIC &&
> >> > +                     minstrel_mcs_groups[i].streams > 1) {
> >> > +                     mi->tx_flags |= IEEE80211_TX_RC_USE_RTS_CTS;
> >> > +             } else if (sta->smps_mode == IEEE80211_SMPS_STATIC &&
> >> > +                     minstrel_mcs_groups[i].streams > 1) {
> >>
> >> Your indentation is off inside the if statements. I'll have to wait for
> >> nbd to review the patch itself, I guess.
> >>
> > Felix,
> >
> >  Any comments other than the indentation? If no, will send in the
> > v2 with indentation fixed.
> 
> Was checking my old submissions. This was marked as "Not Applicable" in
> patchwork.
> 
> Felix/Johannes,
> 
> Can you please explain to me the meaning of the status "Not Applicable"?

This patch is *ancient*, before we actually used patchwork properly ...

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
Krishna Chaitanya June 1, 2015, 9:33 p.m. UTC | #6
On Tue, Jun 2, 2015 at 2:06 AM, Johannes Berg <johannes@sipsolutions.net> wrote:
> On Mon, 2015-06-01 at 23:49 +0530, Krishna Chaitanya wrote:
>> On Thu, Jan 30, 2014 at 11:48 PM, Krishna Chaitanya
>> <chaitanya.mgit@gmail.com> wrote:
>> > On Thu, Jan 23, 2014 at 2:57 AM, Johannes Berg
>> > <johannes@sipsolutions.net> wrote:
>> >>
>> >> On Wed, 2014-01-22 at 12:27 +0530, Chaitanya T K wrote:
>> >>
>> >> > +             if (sta->smps_mode == IEEE80211_SMPS_DYNAMIC &&
>> >> > +                     minstrel_mcs_groups[i].streams > 1) {
>> >> > +                     mi->tx_flags |= IEEE80211_TX_RC_USE_RTS_CTS;
>> >> > +             } else if (sta->smps_mode == IEEE80211_SMPS_STATIC &&
>> >> > +                     minstrel_mcs_groups[i].streams > 1) {
>> >>
>> >> Your indentation is off inside the if statements. I'll have to wait for
>> >> nbd to review the patch itself, I guess.
>> >>
>> > Felix,
>> >
>> >  Any comments other than the indentation? If no, will send in the
>> > v2 with indentation fixed.
>>
>> Was checking my old submissions. This was marked as "Not Applicable" in
>> patchwork.
>>
>> Felix/Johannes,
>>
>> Can you please explain to me the meaning of the status "Not Applicable"?
>
> This patch is *ancient*, before we actually used patchwork properly ...
Ok, so you want me to send a V2 with the indentation fixed?
(or) shall i wait for Felix's review before sending V2?
Johannes Berg June 1, 2015, 9:40 p.m. UTC | #7
On Tue, 2015-06-02 at 03:03 +0530, Krishna Chaitanya wrote:

> > This patch is *ancient*, before we actually used patchwork properly ...
> Ok, so you want me to send a V2 with the indentation fixed?
> (or) shall i wait for Felix's review before sending V2?

It seems unlikely that anyone would want to review a patch over 15
months later :)

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
Krishna Chaitanya June 2, 2015, 6:29 p.m. UTC | #8
On Tue, Jun 2, 2015 at 3:10 AM, Johannes Berg <johannes@sipsolutions.net> wrote:
> On Tue, 2015-06-02 at 03:03 +0530, Krishna Chaitanya wrote:
>
>> > This patch is *ancient*, before we actually used patchwork properly ...
>> Ok, so you want me to send a V2 with the indentation fixed?
>> (or) shall i wait for Felix's review before sending V2?
>
> It seems unlikely that anyone would want to review a patch over 15
> months later :)

 Please drop this patch, i have sent a new one in sync with HEAD.
diff mbox

Patch

diff --git a/net/mac80211/rc80211_minstrel_ht.c b/net/mac80211/rc80211_minstrel_ht.c
index c1b5b73..a1095d3 100644
--- a/net/mac80211/rc80211_minstrel_ht.c
+++ b/net/mac80211/rc80211_minstrel_ht.c
@@ -925,10 +925,17 @@  minstrel_ht_update_caps(void *priv, struct ieee80211_supported_band *sband,
 		    sta->bandwidth < IEEE80211_STA_RX_BW_40)
 			continue;
 
-		/* Mark MCS > 7 as unsupported if STA is in static SMPS mode */
-		if (sta->smps_mode == IEEE80211_SMPS_STATIC &&
-		    minstrel_mcs_groups[i].streams > 1)
+		/* Handle STA's SMPS State
+		 * a. Use RTS_CTS, if Nss>1 and if STA is in Dynamic SMPS Mode
+		 * b. Mark Nss>1 as unsupported, if STA is in static SMPS mode
+		 */
+		if (sta->smps_mode == IEEE80211_SMPS_DYNAMIC &&
+			minstrel_mcs_groups[i].streams > 1) {
+			mi->tx_flags |= IEEE80211_TX_RC_USE_RTS_CTS;
+		} else if (sta->smps_mode == IEEE80211_SMPS_STATIC &&
+			minstrel_mcs_groups[i].streams > 1) {
 			continue;
+		}
 
 		mi->groups[i].supported =
 			mcs->rx_mask[minstrel_mcs_groups[i].streams - 1];