Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 70500f54 authored by Marek Vašut's avatar Marek Vašut Committed by David S. Miller
Browse files

[PATCH] libertas: region code values specified as 8bit



This patch strips away possible mess in regioncode (eg. on my card - 88W8305
chipset - I get 0x3031 instead of expected 0x0031 and as a result the driver
defaults to USA region which is obviously incorrect). Following patch fixes
the issue.

Signed-off-by: default avatarMarek Vasut <marek.vasut@gmail.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 794760f7
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -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 */