From 94a9595b44d4a7ef7d2063b6e2e67e3d49aa373f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Va=C5=A1ut?= Date: Mon, 20 Aug 2007 12:55:41 -0400 Subject: [PATCH] --- yaml --- r: 66535 b: refs/heads/master c: 70500f5443be1b27ea2c9ab71ce9dc2250af7b19 h: refs/heads/master i: 66533: ed4e54961a2ed701205c263a514a4cdb0ca46107 66531: 576aa0425c5e8e08ca83041b0104737ca551cdfd 66527: f7b8047dcaf05a0763e2f3417fc4ba8eff00f657 v: v3 --- [refs] | 2 +- trunk/drivers/net/wireless/libertas/cmdresp.c | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index cdecf4eabe2a..f03fe72d358e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 794760f750655d987499d7a5034519afc84af63b +refs/heads/master: 70500f5443be1b27ea2c9ab71ce9dc2250af7b19 diff --git a/trunk/drivers/net/wireless/libertas/cmdresp.c b/trunk/drivers/net/wireless/libertas/cmdresp.c index 4c36e63ae7b0..d64ad87db459 100644 --- a/trunk/drivers/net/wireless/libertas/cmdresp.c +++ b/trunk/drivers/net/wireless/libertas/cmdresp.c @@ -174,7 +174,11 @@ static int wlan_ret_get_hw_spec(wlan_private * priv, lbs_deb_cmd("GET_HW_SPEC: hardware interface 0x%x, hardware spec 0x%04x\n", hwspec->hwifversion, hwspec->version); - adapter->regioncode = le16_to_cpu(hwspec->regioncode); + /* Clamp region code to 8-bit since FW spec indicates that it should + * only ever be 8-bit, even though the field size is 16-bit. Some firmware + * returns non-zero high 8 bits here. + */ + adapter->regioncode = le16_to_cpu(hwspec->regioncode) & 0xFF; for (i = 0; i < MRVDRV_MAX_REGION_CODE; i++) { /* use the region code to search for the index */