diff options
author | Imre Kaloz <kaloz@openwrt.org> | 2013-11-27 12:40:07 +0000 |
---|---|---|
committer | Imre Kaloz <kaloz@openwrt.org> | 2013-11-27 12:40:07 +0000 |
commit | 9a0d644f9eb62b9cbf9dbbc9f91a8cebdfa547ca (patch) | |
tree | 09c9ac1d48b1a8b6165f82ffe756a64d15a19a31 /package/kernel/mac80211/patches/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch | |
parent | dcae3ef009bc5f02704dee38b6cdf255f3afdde9 (diff) | |
download | upstream-9a0d644f9eb62b9cbf9dbbc9f91a8cebdfa547ca.tar.gz upstream-9a0d644f9eb62b9cbf9dbbc9f91a8cebdfa547ca.tar.bz2 upstream-9a0d644f9eb62b9cbf9dbbc9f91a8cebdfa547ca.zip |
add device tree based initialization to wl12xx
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
SVN-Revision: 38933
Diffstat (limited to 'package/kernel/mac80211/patches/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch')
-rw-r--r-- | package/kernel/mac80211/patches/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch b/package/kernel/mac80211/patches/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch new file mode 100644 index 0000000000..757f598716 --- /dev/null +++ b/package/kernel/mac80211/patches/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch @@ -0,0 +1,48 @@ +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> + +--- a/drivers/net/wireless/ti/wlcore/main.c ++++ b/drivers/net/wireless/ti/wlcore/main.c +@@ -6065,7 +6065,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; +@@ -6115,7 +6114,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 |