mirror of
https://github.com/torvalds/linux.git
synced 2024-12-21 02:21:36 +00:00
brcm80211: moved function brcmu_chspec_malformed
Moved brcmu_chspec_malformed into the only file using it. The function name was adjusted accordingly. Reported-by: Johannes Berg <johannes@sipsolutions.net> Reviewed-by: Roland Vossen <rvossen@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
f8e4b412c9
commit
3de67818e7
@ -1484,6 +1484,32 @@ brcms_c_channel_reg_limits(struct brcms_cm_info *wlc_cm, u16 chanspec,
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
* Verify the chanspec is using a legal set of parameters, i.e. that the
|
||||
* chanspec specified a band, bw, ctl_sb and channel and that the
|
||||
* combination could be legal given any set of circumstances.
|
||||
* RETURNS: true is the chanspec is malformed, false if it looks good.
|
||||
*/
|
||||
static bool brcms_c_chspec_malformed(u16 chanspec)
|
||||
{
|
||||
/* must be 2G or 5G band */
|
||||
if (!CHSPEC_IS5G(chanspec) && !CHSPEC_IS2G(chanspec))
|
||||
return true;
|
||||
/* must be 20 or 40 bandwidth */
|
||||
if (!CHSPEC_IS40(chanspec) && !CHSPEC_IS20(chanspec))
|
||||
return true;
|
||||
|
||||
/* 20MHZ b/w must have no ctl sb, 40 must have a ctl sb */
|
||||
if (CHSPEC_IS20(chanspec)) {
|
||||
if (!CHSPEC_SB_NONE(chanspec))
|
||||
return true;
|
||||
} else if (!CHSPEC_SB_UPPER(chanspec) && !CHSPEC_SB_LOWER(chanspec)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/*
|
||||
* Validate the chanspec for this locale, for 40MHZ we need to also
|
||||
* check that the sidebands are valid 20MZH channels in this locale
|
||||
@ -1497,7 +1523,7 @@ brcms_c_valid_chanspec_ext(struct brcms_cm_info *wlc_cm, u16 chspec,
|
||||
u8 channel = CHSPEC_CHANNEL(chspec);
|
||||
|
||||
/* check the chanspec */
|
||||
if (brcmu_chspec_malformed(chspec)) {
|
||||
if (brcms_c_chspec_malformed(chspec)) {
|
||||
wiphy_err(wlc->wiphy, "wl%d: malformed chanspec 0x%x\n",
|
||||
wlc->pub->unit, chspec);
|
||||
return false;
|
||||
|
@ -14,30 +14,3 @@
|
||||
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
#include <brcmu_wifi.h>
|
||||
|
||||
/*
|
||||
* Verify the chanspec is using a legal set of parameters, i.e. that the
|
||||
* chanspec specified a band, bw, ctl_sb and channel and that the
|
||||
* combination could be legal given any set of circumstances.
|
||||
* RETURNS: true is the chanspec is malformed, false if it looks good.
|
||||
*/
|
||||
bool brcmu_chspec_malformed(u16 chanspec)
|
||||
{
|
||||
/* must be 2G or 5G band */
|
||||
if (!CHSPEC_IS5G(chanspec) && !CHSPEC_IS2G(chanspec))
|
||||
return true;
|
||||
/* must be 20 or 40 bandwidth */
|
||||
if (!CHSPEC_IS40(chanspec) && !CHSPEC_IS20(chanspec))
|
||||
return true;
|
||||
|
||||
/* 20MHZ b/w must have no ctl sb, 40 must have a ctl sb */
|
||||
if (CHSPEC_IS20(chanspec)) {
|
||||
if (!CHSPEC_SB_NONE(chanspec))
|
||||
return true;
|
||||
} else if (!CHSPEC_SB_UPPER(chanspec) && !CHSPEC_SB_LOWER(chanspec)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
EXPORT_SYMBOL(brcmu_chspec_malformed);
|
||||
|
@ -168,14 +168,6 @@ static inline bool ac_bitmap_tst(u8 bitmap, int prec)
|
||||
return (bitmap & (1 << (prec))) != 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Verify the chanspec is using a legal set of parameters, i.e. that the
|
||||
* chanspec specified a band, bw, ctl_sb and channel and that the
|
||||
* combination could be legal given any set of circumstances.
|
||||
* RETURNS: true is the chanspec is malformed, false if it looks good.
|
||||
*/
|
||||
extern bool brcmu_chspec_malformed(u16 chanspec);
|
||||
|
||||
/* Enumerate crypto algorithms */
|
||||
#define CRYPTO_ALGO_OFF 0
|
||||
#define CRYPTO_ALGO_WEP1 1
|
||||
|
Loading…
Reference in New Issue
Block a user