diff options
author | Dominik Sliwa <dominik.sliwa@toradex.com> | 2017-11-21 16:35:43 +0000 |
---|---|---|
committer | Dominik Sliwa <dominik.sliwa@toradex.com> | 2018-09-18 13:01:26 +0200 |
commit | d6a47bfb72f495a72637fbe635220f6af0f4cb6f (patch) | |
tree | 599ca63f39f31243e55a7a62df8c98fd40e308de /drivers/net/wireless/marvell/mwifiex/pcie.c | |
parent | a5867d9e1f9f8096480104d80f9a8088dbde9209 (diff) |
backports:Backports for tegra 3.1 and 3.10 kernels
Signed-off-by: Dominik Sliwa <dominik.sliwa@toradex.com>
Diffstat (limited to 'drivers/net/wireless/marvell/mwifiex/pcie.c')
-rw-r--r-- | drivers/net/wireless/marvell/mwifiex/pcie.c | 11 |
1 files changed, 9 insertions, 2 deletions
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) |