From: Johannes Berg <johannes@sipsolutions.net>
To: greearb@candelatech.com
Cc: linux-wireless@vger.kernel.org
Subject: Re: [PATCH v4 2/2] mac80211: Support ht-cap over-rides.
Date: Mon, 07 Nov 2011 10:13:28 +0100 [thread overview]
Message-ID: <1320657208.3993.29.camel@jlt3.sipsolutions.net> (raw)
In-Reply-To: <1320437440-6463-2-git-send-email-greearb@candelatech.com> (sfid-20111104_211114_679516_4CC16ABF)
On Fri, 2011-11-04 at 13:10 -0700, greearb@candelatech.com wrote:
> +/*
> + * Stations supporting 802.11n are required to support
> + * at least the first 8 MCS rates. See section 7.3.2.56.4
> + * and 20.1.1 of the 802.11n spec.
> + */
> +#define IEEE80211_HT_MCS_REQ_RATES_STA 8
I'd prefer if this was a validation on the input from userspace directly
in cfg80211, that way other drivers that want to implement this don't
have to bother.
That probably goes well with the validation of the supported mask that I
asked for.
> + /* mac80211 allows over-riding some of the ht-capabilities */
> + local->hw.wiphy->ht_capa_mod_mask =
> + kzalloc(sizeof(*local->hw.wiphy->ht_capa_mod_mask),
> + GFP_KERNEL);
> + if (local->hw.wiphy->ht_capa_mod_mask) {
> + struct ieee80211_ht_cap *cm = local->hw.wiphy->ht_capa_mod_mask;
> + u8 *r = (u8 *)(&cm->mcs.rx_mask);
> + memset(r, 0xff, IEEE80211_HT_MCS_MASK_LEN);
> + cm->cap_info |= IEEE80211_HT_CAP_MAX_AMSDU;
> + cm->ampdu_params_info |= IEEE80211_HT_AMPDU_PARM_FACTOR;
> + cm->ampdu_params_info |= IEEE80211_HT_AMPDU_PARM_DENSITY;
> + }
Why is this not just a static const that you fill manually? There's
nothing that's not constant here. So e.g.
static const struct ieee80211_ht_cap mac80211_ht_capa_mod_mask = {
.ampdu_params_info = IEEE80211_HT_AMPDU_PARM_FACTOR |
IEEE80211_HT_AMPDU_PARM_DENSITY,
.mcs = {
.rx_mask = { 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, },
},
/* etc */
};
> @@ -988,6 +1001,8 @@ int ieee80211_register_hw(struct ieee80211_hw *hw)
> fail_wiphy_register:
> if (local->wiphy_ciphers_allocated)
> kfree(local->hw.wiphy->cipher_suites);
> + kfree(local->hw.wiphy->ht_capa_mod_mask);
> + local->hw.wiphy->ht_capa_mod_mask = NULL;
No need for this then obviously.
Looks pretty good overall. This is _much_ more readable than the
previous series. :-)
johannes
next prev parent reply other threads:[~2011-11-07 9:13 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-04 20:10 [PATCH v4 1/2] wireless: Support ht-capabilities over-rides greearb
2011-11-04 20:10 ` [PATCH v4 2/2] mac80211: Support ht-cap over-rides greearb
2011-11-07 9:13 ` Johannes Berg [this message]
2011-11-07 16:19 ` Ben Greear
2011-11-07 17:06 ` Johannes Berg
2011-11-04 21:03 ` [PATCH v4 1/2] wireless: Support ht-capabilities over-rides Johannes Berg
2011-11-07 9:06 ` Johannes Berg
2011-11-07 16:27 ` Ben Greear
2011-11-07 17:02 ` Johannes Berg
2011-11-07 17:40 ` Ben Greear
2011-11-07 17:42 ` Johannes Berg
2011-11-07 17:45 ` Ben Greear
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1320657208.3993.29.camel@jlt3.sipsolutions.net \
--to=johannes@sipsolutions.net \
--cc=greearb@candelatech.com \
--cc=linux-wireless@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).