mwifiex: add support for SD8786 sdio
authorWarheadsSE <max@warheads.net>
Tue, 24 Apr 2012 19:57:21 +0000 (15:57 -0400)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 9 May 2012 00:56:10 +0000 (20:56 -0400)
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>
drivers/net/wireless/mwifiex/Kconfig
drivers/net/wireless/mwifiex/sdio.c
drivers/net/wireless/mwifiex/sdio.h

index 7f91cc6947872029b3024b3c313064a1b1492c8f..8e384fae3e68a840c274498c2376ab3423d61e89 100644 (file)
@@ -10,12 +10,12 @@ config MWIFIEX
          mwifiex.
 
 config MWIFIEX_SDIO
-       tristate "Marvell WiFi-Ex Driver for SD8787/SD8797"
+       tristate "Marvell WiFi-Ex Driver for SD8786/SD8787/SD8797"
        depends on MWIFIEX && MMC
        select FW_LOADER
        ---help---
          This adds support for wireless adapters based on Marvell
-         8787/8797 chipsets with SDIO interface.
+         8786/8787/8797 chipsets with SDIO interface.
 
          If you choose to build it as a module, it will be called
          mwifiex_sdio.
index 1aa45c4295bb082a17828e7da0c18a079a095b06..e0377473282f05fab01835578cb9b2579a40217f 100644 (file)
@@ -253,6 +253,8 @@ static int mwifiex_sdio_resume(struct device *dev)
        return 0;
 }
 
+/* Device ID for SD8786 */
+#define SDIO_DEVICE_ID_MARVELL_8786   (0x9116)
 /* Device ID for SD8787 */
 #define SDIO_DEVICE_ID_MARVELL_8787   (0x9119)
 /* Device ID for SD8797 */
@@ -260,6 +262,7 @@ static int mwifiex_sdio_resume(struct device *dev)
 
 /* WLAN IDs */
 static const struct sdio_device_id mwifiex_ids[] = {
+       {SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8786)},
        {SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8787)},
        {SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8797)},
        {},
@@ -1599,6 +1602,9 @@ static int mwifiex_register_dev(struct mwifiex_adapter *adapter)
        adapter->dev = &func->dev;
 
        switch (func->device) {
+       case SDIO_DEVICE_ID_MARVELL_8786:
+               strcpy(adapter->fw_name, SD8786_DEFAULT_FW_NAME);
+               break;
        case SDIO_DEVICE_ID_MARVELL_8797:
                strcpy(adapter->fw_name, SD8797_DEFAULT_FW_NAME);
                break;
@@ -1807,5 +1813,6 @@ MODULE_AUTHOR("Marvell International Ltd.");
 MODULE_DESCRIPTION("Marvell WiFi-Ex SDIO Driver version " SDIO_VERSION);
 MODULE_VERSION(SDIO_VERSION);
 MODULE_LICENSE("GPL v2");
+MODULE_FIRMWARE(SD8786_DEFAULT_FW_NAME);
 MODULE_FIRMWARE(SD8787_DEFAULT_FW_NAME);
 MODULE_FIRMWARE(SD8797_DEFAULT_FW_NAME);
index 0ead152e3d1e344b594fa134de9a6cf3fd658590..21033738ef0c664d7c00bcf1babc2eece48832c0 100644 (file)
@@ -28,6 +28,7 @@
 
 #include "main.h"
 
+#define SD8786_DEFAULT_FW_NAME "mrvl/sd8786_uapsta.bin"
 #define SD8787_DEFAULT_FW_NAME "mrvl/sd8787_uapsta.bin"
 #define SD8797_DEFAULT_FW_NAME "mrvl/sd8797_uapsta.bin"