staging: brcm80211: fixed sparse endianness warnings on fullmac ratespec
Structure that is sent to the dongle has been annotated. Reported-by: Johannes Berg <johannes@sipsolutions.net> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
7d852d16de
commit
c17f70da1a
|
@ -400,6 +400,13 @@ struct brcmf_bss_info {
|
|||
/* variable length Information Elements */
|
||||
};
|
||||
|
||||
struct brcm_rateset_le {
|
||||
/* # rates in this set */
|
||||
__le32 count;
|
||||
/* rates in 500kbps units w/hi bit set if basic */
|
||||
u8 rates[WL_NUMRATES];
|
||||
};
|
||||
|
||||
struct brcmf_ssid {
|
||||
u32 SSID_len;
|
||||
unsigned char SSID[32];
|
||||
|
|
|
@ -1864,7 +1864,7 @@ brcmf_cfg80211_set_bitrate_mask(struct wiphy *wiphy, struct net_device *dev,
|
|||
const u8 *addr,
|
||||
const struct cfg80211_bitrate_mask *mask)
|
||||
{
|
||||
struct brcm_rateset rateset;
|
||||
struct brcm_rateset_le rateset_le;
|
||||
s32 rate;
|
||||
s32 val;
|
||||
s32 err_bg;
|
||||
|
@ -1878,15 +1878,13 @@ brcmf_cfg80211_set_bitrate_mask(struct wiphy *wiphy, struct net_device *dev,
|
|||
|
||||
/* addr param is always NULL. ignore it */
|
||||
/* Get current rateset */
|
||||
err = brcmf_dev_ioctl(dev, BRCM_GET_CURR_RATESET, &rateset,
|
||||
sizeof(rateset));
|
||||
err = brcmf_dev_ioctl(dev, BRCM_GET_CURR_RATESET, &rateset_le,
|
||||
sizeof(rateset_le));
|
||||
if (unlikely(err)) {
|
||||
WL_ERR("could not get current rateset (%d)\n", err);
|
||||
goto done;
|
||||
}
|
||||
|
||||
rateset.count = le32_to_cpu(rateset.count);
|
||||
|
||||
legacy = ffs(mask->control[IEEE80211_BAND_2GHZ].legacy & 0xFFFF);
|
||||
if (!legacy)
|
||||
legacy = ffs(mask->control[IEEE80211_BAND_5GHZ].legacy &
|
||||
|
@ -1894,9 +1892,9 @@ brcmf_cfg80211_set_bitrate_mask(struct wiphy *wiphy, struct net_device *dev,
|
|||
|
||||
val = wl_g_rates[legacy - 1].bitrate * 100000;
|
||||
|
||||
if (val < rateset.count)
|
||||
if (val < le32_to_cpu(rateset_le.count))
|
||||
/* Select rate by rateset index */
|
||||
rate = rateset.rates[val] & 0x7f;
|
||||
rate = rateset_le.rates[val] & 0x7f;
|
||||
else
|
||||
/* Specified rate in bps */
|
||||
rate = val / 500000;
|
||||
|
|
|
@ -101,6 +101,13 @@
|
|||
|
||||
#define MAX_STREAMS_SUPPORTED 4 /* max number of streams supported */
|
||||
|
||||
struct brcm_rateset {
|
||||
/* # rates in this set */
|
||||
u32 count;
|
||||
/* rates in 500kbps units w/hi bit set if basic */
|
||||
u8 rates[WL_NUMRATES];
|
||||
};
|
||||
|
||||
struct brcms_c_rateset {
|
||||
uint count; /* number of rates in rates[] */
|
||||
/* rates in 500kbps units w/hi bit set if basic */
|
||||
|
|
|
@ -48,13 +48,6 @@
|
|||
|
||||
#define WL_NUMRATES 16 /* max # of rates in a rateset */
|
||||
|
||||
struct brcm_rateset {
|
||||
/* # rates in this set */
|
||||
u32 count;
|
||||
/* rates in 500kbps units w/hi bit set if basic */
|
||||
u8 rates[WL_NUMRATES];
|
||||
};
|
||||
|
||||
#define BRCM_CNTRY_BUF_SZ 4 /* Country string is 3 bytes + NUL */
|
||||
|
||||
#define BRCM_SET_CHANNEL 30
|
||||
|
|
Loading…
Reference in New Issue