aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/libertas/cmdresp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/wireless/libertas/cmdresp.c b/drivers/net/wireless/libertas/cmdresp.c
index 4c36e63ae7b0..d64ad87db459 100644
--- a/drivers/net/wireless/libertas/cmdresp.c
+++ b/drivers/net/wireless/libertas/cmdresp.c
@@ -174,7 +174,11 @@ static int wlan_ret_get_hw_spec(wlan_private * priv,
174 lbs_deb_cmd("GET_HW_SPEC: hardware interface 0x%x, hardware spec 0x%04x\n", 174 lbs_deb_cmd("GET_HW_SPEC: hardware interface 0x%x, hardware spec 0x%04x\n",
175 hwspec->hwifversion, hwspec->version); 175 hwspec->hwifversion, hwspec->version);
176 176
177 adapter->regioncode = le16_to_cpu(hwspec->regioncode); 177 /* Clamp region code to 8-bit since FW spec indicates that it should
178 * only ever be 8-bit, even though the field size is 16-bit. Some firmware
179 * returns non-zero high 8 bits here.
180 */
181 adapter->regioncode = le16_to_cpu(hwspec->regioncode) & 0xFF;
178 182
179 for (i = 0; i < MRVDRV_MAX_REGION_CODE; i++) { 183 for (i = 0; i < MRVDRV_MAX_REGION_CODE; i++) {
180 /* use the region code to search for the index */ 184 /* use the region code to search for the index */