aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWarheadsSE <max@warheads.net>2012-04-24 15:57:21 -0400
committerJohn W. Linville <linville@tuxdriver.com>2012-05-08 20:56:10 -0400
commit98e6b9df53e3e561ee75b7ed76dccb09964ba952 (patch)
tree00281e3b4ce2c0cc484a65cdd8e5ae14adc9bdf2
parent62c50543cec42592c67d3c9cef5d426aee7c071f (diff)
mwifiex: add support for SD8786 sdio
modified: drivers/net/wireless/mwifiex/Kconfig - notate additional chipset modified: drivers/net/wireless/mwifiex/sdio.c - add definition of id (0x9116) - add to switch for firmware load - add MODULE_FIRMWARE modified: drivers/net/wireless/mwifiex/sdio.h - add definition of default firmware name Signed-off-by: Jason Plum <max@warheads.net> Acked-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/mwifiex/Kconfig4
-rw-r--r--drivers/net/wireless/mwifiex/sdio.c7
-rw-r--r--drivers/net/wireless/mwifiex/sdio.h1
3 files changed, 10 insertions, 2 deletions
diff --git a/drivers/net/wireless/mwifiex/Kconfig b/drivers/net/wireless/mwifiex/Kconfig
index 7f91cc694787..8e384fae3e68 100644
--- a/drivers/net/wireless/mwifiex/Kconfig
+++ b/drivers/net/wireless/mwifiex/Kconfig
@@ -10,12 +10,12 @@ config MWIFIEX
10 mwifiex. 10 mwifiex.
11 11
12config MWIFIEX_SDIO 12config MWIFIEX_SDIO
13 tristate "Marvell WiFi-Ex Driver for SD8787/SD8797" 13 tristate "Marvell WiFi-Ex Driver for SD8786/SD8787/SD8797"
14 depends on MWIFIEX && MMC 14 depends on MWIFIEX && MMC
15 select FW_LOADER 15 select FW_LOADER
16 ---help--- 16 ---help---
17 This adds support for wireless adapters based on Marvell 17 This adds support for wireless adapters based on Marvell
18 8787/8797 chipsets with SDIO interface. 18 8786/8787/8797 chipsets with SDIO interface.
19 19
20 If you choose to build it as a module, it will be called 20 If you choose to build it as a module, it will be called
21 mwifiex_sdio. 21 mwifiex_sdio.
diff --git a/drivers/net/wireless/mwifiex/sdio.c b/drivers/net/wireless/mwifiex/sdio.c
index 1aa45c4295bb..e0377473282f 100644
--- a/drivers/net/wireless/mwifiex/sdio.c
+++ b/drivers/net/wireless/mwifiex/sdio.c
@@ -253,6 +253,8 @@ static int mwifiex_sdio_resume(struct device *dev)
253 return 0; 253 return 0;
254} 254}
255 255
256/* Device ID for SD8786 */
257#define SDIO_DEVICE_ID_MARVELL_8786 (0x9116)
256/* Device ID for SD8787 */ 258/* Device ID for SD8787 */
257#define SDIO_DEVICE_ID_MARVELL_8787 (0x9119) 259#define SDIO_DEVICE_ID_MARVELL_8787 (0x9119)
258/* Device ID for SD8797 */ 260/* Device ID for SD8797 */
@@ -260,6 +262,7 @@ static int mwifiex_sdio_resume(struct device *dev)
260 262
261/* WLAN IDs */ 263/* WLAN IDs */
262static const struct sdio_device_id mwifiex_ids[] = { 264static const struct sdio_device_id mwifiex_ids[] = {
265 {SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8786)},
263 {SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8787)}, 266 {SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8787)},
264 {SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8797)}, 267 {SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8797)},
265 {}, 268 {},
@@ -1599,6 +1602,9 @@ static int mwifiex_register_dev(struct mwifiex_adapter *adapter)
1599 adapter->dev = &func->dev; 1602 adapter->dev = &func->dev;
1600 1603
1601 switch (func->device) { 1604 switch (func->device) {
1605 case SDIO_DEVICE_ID_MARVELL_8786:
1606 strcpy(adapter->fw_name, SD8786_DEFAULT_FW_NAME);
1607 break;
1602 case SDIO_DEVICE_ID_MARVELL_8797: 1608 case SDIO_DEVICE_ID_MARVELL_8797:
1603 strcpy(adapter->fw_name, SD8797_DEFAULT_FW_NAME); 1609 strcpy(adapter->fw_name, SD8797_DEFAULT_FW_NAME);
1604 break; 1610 break;
@@ -1807,5 +1813,6 @@ MODULE_AUTHOR("Marvell International Ltd.");
1807MODULE_DESCRIPTION("Marvell WiFi-Ex SDIO Driver version " SDIO_VERSION); 1813MODULE_DESCRIPTION("Marvell WiFi-Ex SDIO Driver version " SDIO_VERSION);
1808MODULE_VERSION(SDIO_VERSION); 1814MODULE_VERSION(SDIO_VERSION);
1809MODULE_LICENSE("GPL v2"); 1815MODULE_LICENSE("GPL v2");
1816MODULE_FIRMWARE(SD8786_DEFAULT_FW_NAME);
1810MODULE_FIRMWARE(SD8787_DEFAULT_FW_NAME); 1817MODULE_FIRMWARE(SD8787_DEFAULT_FW_NAME);
1811MODULE_FIRMWARE(SD8797_DEFAULT_FW_NAME); 1818MODULE_FIRMWARE(SD8797_DEFAULT_FW_NAME);
diff --git a/drivers/net/wireless/mwifiex/sdio.h b/drivers/net/wireless/mwifiex/sdio.h
index 0ead152e3d1e..21033738ef0c 100644
--- a/drivers/net/wireless/mwifiex/sdio.h
+++ b/drivers/net/wireless/mwifiex/sdio.h
@@ -28,6 +28,7 @@
28 28
29#include "main.h" 29#include "main.h"
30 30
31#define SD8786_DEFAULT_FW_NAME "mrvl/sd8786_uapsta.bin"
31#define SD8787_DEFAULT_FW_NAME "mrvl/sd8787_uapsta.bin" 32#define SD8787_DEFAULT_FW_NAME "mrvl/sd8787_uapsta.bin"
32#define SD8797_DEFAULT_FW_NAME "mrvl/sd8797_uapsta.bin" 33#define SD8797_DEFAULT_FW_NAME "mrvl/sd8797_uapsta.bin"
33 34