diff options
Diffstat (limited to 'target/linux/omap/patches-3.13/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch')
-rw-r--r-- | target/linux/omap/patches-3.13/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/target/linux/omap/patches-3.13/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch b/target/linux/omap/patches-3.13/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch new file mode 100644 index 0000000000..37f4c6dc9e --- /dev/null +++ b/target/linux/omap/patches-3.13/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch @@ -0,0 +1,65 @@ +The pwr_in_suspend flag depends on the MMC settings which can be +retrieved from the SDIO subsystem, so it doesn't need to be part of +the platform data structure. Move it to the platform device data that +is passed from SDIO to wlcore. + +Signed-off-by: Luciano Coelho <coelho@ti.com> +Reviewed-by: Felipe Balbi <balbi@ti.com> + +--- + drivers/net/wireless/ti/wlcore/main.c | 3 +-- + drivers/net/wireless/ti/wlcore/sdio.c | 2 +- + drivers/net/wireless/ti/wlcore/wlcore_i.h | 1 + + include/linux/wl12xx.h | 1 - + 4 files changed, 3 insertions(+), 4 deletions(-) + +--- a/drivers/net/wireless/ti/wlcore/main.c ++++ b/drivers/net/wireless/ti/wlcore/main.c +@@ -6033,7 +6033,6 @@ static void wlcore_nvs_cb(const struct f + struct wl1271 *wl = context; + struct platform_device *pdev = wl->pdev; + struct wlcore_platdev_data *pdev_data = dev_get_platdata(&pdev->dev); +- struct wl12xx_platform_data *pdata = pdev_data->pdata; + + int ret; + irq_handler_t hardirq_fn = NULL; +@@ -6083,7 +6082,7 @@ static void wlcore_nvs_cb(const struct f + if (!ret) { + wl->irq_wake_enabled = true; + device_init_wakeup(wl->dev, 1); +- if (pdata->pwr_in_suspend) ++ if (pdev_data->pwr_in_suspend) + wl->hw->wiphy->wowlan = &wlcore_wowlan_support; + } + #endif +--- a/drivers/net/wireless/ti/wlcore/sdio.c ++++ b/drivers/net/wireless/ti/wlcore/sdio.c +@@ -260,7 +260,7 @@ static int wl1271_probe(struct sdio_func + dev_dbg(glue->dev, "sdio PM caps = 0x%x\n", mmcflags); + + if (mmcflags & MMC_PM_KEEP_POWER) +- pdev_data->pdata->pwr_in_suspend = true; ++ pdev_data->pwr_in_suspend = true; + + sdio_set_drvdata(func, glue); + +--- a/drivers/net/wireless/ti/wlcore/wlcore_i.h ++++ b/drivers/net/wireless/ti/wlcore/wlcore_i.h +@@ -209,6 +209,7 @@ struct wl1271_if_operations { + struct wlcore_platdev_data { + struct wl12xx_platform_data *pdata; + struct wl1271_if_operations *if_ops; ++ bool pwr_in_suspend; + }; + + #define MAX_NUM_KEYS 14 +--- a/include/linux/wl12xx.h ++++ b/include/linux/wl12xx.h +@@ -59,7 +59,6 @@ struct wl12xx_platform_data { + int irq; + int board_ref_clock; + int board_tcxo_clock; +- bool pwr_in_suspend; + }; + + #ifdef CONFIG_WILINK_PLATFORM_DATA |