summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/marvell
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/marvell')
-rw-r--r--drivers/net/wireless/marvell/mwifiex/Kconfig3
-rw-r--r--drivers/net/wireless/marvell/mwifiex/pcie.c11
-rw-r--r--drivers/net/wireless/marvell/mwifiex/sdio.c4
-rw-r--r--drivers/net/wireless/marvell/mwifiex/usb.c4
4 files changed, 17 insertions, 5 deletions
diff --git a/drivers/net/wireless/marvell/mwifiex/Kconfig b/drivers/net/wireless/marvell/mwifiex/Kconfig
index b37a20c..a8abf60 100644
--- a/drivers/net/wireless/marvell/mwifiex/Kconfig
+++ b/drivers/net/wireless/marvell/mwifiex/Kconfig
@@ -1,5 +1,4 @@
config MWIFIEX
- depends on !KERNEL_3_18
tristate "Marvell WiFi-Ex Driver"
depends on m
depends on CFG80211
@@ -11,7 +10,6 @@ config MWIFIEX
mwifiex.
config MWIFIEX_SDIO
- depends on !KERNEL_3_2
tristate "Marvell WiFi-Ex Driver for SD8786/SD8787/SD8797/SD8887/SD8897/SD8997"
depends on m
depends on MWIFIEX && MMC
@@ -25,7 +23,6 @@ config MWIFIEX_SDIO
mwifiex_sdio.
config MWIFIEX_PCIE
- depends on !KERNEL_3_16
tristate "Marvell WiFi-Ex Driver for PCIE 8766/8897/8997"
depends on m
depends on MWIFIEX && PCI
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie.c b/drivers/net/wireless/marvell/mwifiex/pcie.c
index 248b7b3..a6d643c 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie.c
+++ b/drivers/net/wireless/marvell/mwifiex/pcie.c
@@ -320,6 +320,7 @@ static void mwifiex_pcie_shutdown(struct pci_dev *pdev)
return;
}
+#if LINUX_VERSION_IS_GEQ(4,16,0)
static void mwifiex_pcie_coredump(struct device *dev)
{
struct pci_dev *pdev;
@@ -332,6 +333,7 @@ static void mwifiex_pcie_coredump(struct device *dev)
&card->work_flags))
schedule_work(&card->work);
}
+#endif
static const struct pci_device_id mwifiex_ids[] = {
{
@@ -428,7 +430,7 @@ struct pci_error_handlers mwifiex_pcie_err_handler = {
#if LINUX_VERSION_IS_GEQ(4,13,0)
.reset_prepare = mwifiex_pcie_reset_prepare,
.reset_done = mwifiex_pcie_reset_done,
-#else
+#elif LINUX_VERSION_IS_GEQ(3,16,0)
.reset_notify = mwifiex_pcie_reset_prepare_notify,
#endif
@@ -447,7 +449,9 @@ static struct pci_driver __refdata mwifiex_pcie = {
.probe = mwifiex_pcie_probe,
.remove = mwifiex_pcie_remove,
.driver = {
+#if LINUX_VERSION_IS_GEQ(4,16,0)
.coredump = mwifiex_pcie_coredump,
+#endif
#ifdef CONFIG_PM_SLEEP
.pm = &mwifiex_pcie_pm_ops,
#endif
@@ -2818,11 +2822,14 @@ static void mwifiex_pcie_device_dump_work(struct mwifiex_adapter *adapter)
static void mwifiex_pcie_card_reset_work(struct mwifiex_adapter *adapter)
{
struct pcie_service_card *card = adapter->card;
-
+#if LINUX_VERSION_IS_LESS(3,14,0)
+ pci_reset_function(card->dev);
+#else
/* We can't afford to wait here; remove() might be waiting on us. If we
* can't grab the device lock, maybe we'll get another chance later.
*/
pci_try_reset_function(card->dev);
+#endif
}
static void mwifiex_pcie_work(struct work_struct *work)
diff --git a/drivers/net/wireless/marvell/mwifiex/sdio.c b/drivers/net/wireless/marvell/mwifiex/sdio.c
index dfdcbc4..f0ba531 100644
--- a/drivers/net/wireless/marvell/mwifiex/sdio.c
+++ b/drivers/net/wireless/marvell/mwifiex/sdio.c
@@ -466,6 +466,7 @@ static int mwifiex_sdio_suspend(struct device *dev)
return ret;
}
+#if LINUX_VERSION_IS_GEQ(4,16,0)
static void mwifiex_sdio_coredump(struct device *dev)
{
struct sdio_func *func = dev_to_sdio_func(dev);
@@ -476,6 +477,7 @@ static void mwifiex_sdio_coredump(struct device *dev)
&card->work_flags))
schedule_work(&card->work);
}
+#endif
/* Device ID for SD8786 */
#define SDIO_DEVICE_ID_MARVELL_8786 (0x9116)
@@ -526,7 +528,9 @@ static struct sdio_driver mwifiex_sdio = {
.remove = mwifiex_sdio_remove,
.drv = {
.owner = THIS_MODULE,
+#if LINUX_VERSION_IS_GEQ(4,16,0)
.coredump = mwifiex_sdio_coredump,
+#endif
.pm = &mwifiex_sdio_pm_ops,
}
};
diff --git a/drivers/net/wireless/marvell/mwifiex/usb.c b/drivers/net/wireless/marvell/mwifiex/usb.c
index 88f4c89..b1ac443 100644
--- a/drivers/net/wireless/marvell/mwifiex/usb.c
+++ b/drivers/net/wireless/marvell/mwifiex/usb.c
@@ -651,6 +651,7 @@ static void mwifiex_usb_disconnect(struct usb_interface *intf)
usb_put_dev(interface_to_usbdev(intf));
}
+#if LINUX_VERSION_IS_GEQ(4,16,0)
static void mwifiex_usb_coredump(struct device *dev)
{
struct usb_interface *intf = to_usb_interface(dev);
@@ -659,6 +660,7 @@ static void mwifiex_usb_coredump(struct device *dev)
mwifiex_fw_dump_event(mwifiex_get_priv(card->adapter,
MWIFIEX_BSS_ROLE_ANY));
}
+#endif
static struct usb_driver mwifiex_usb_driver = {
.name = "mwifiex_usb",
@@ -669,7 +671,9 @@ static struct usb_driver mwifiex_usb_driver = {
.resume = mwifiex_usb_resume,
.soft_unbind = 1,
.drvwrap.driver = {
+#if LINUX_VERSION_IS_GEQ(4,16,0)
.coredump = mwifiex_usb_coredump,
+#endif
},
};