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 | 620833b3a1ac621e93dc747def1e1f0bb97cb753 (patch) | |
tree | 577c536e003bfaa4eff77a323c06e0c2ecaac7ec /package/kernel/mac80211/patches/902-wlcore-remove-pwr_in_suspend-from-platform-data.patch | |
parent | 94cdb9986f60a1fbcd78385bf791b7d87b43e24d (diff) | |
download | master-187ad058-620833b3a1ac621e93dc747def1e1f0bb97cb753.tar.gz master-187ad058-620833b3a1ac621e93dc747def1e1f0bb97cb753.tar.bz2 master-187ad058-620833b3a1ac621e93dc747def1e1f0bb97cb753.zip |
add device tree based initialization to wl12xx
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38933 3c298f89-4303-0410-b956-a3cf2f4a3e73
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 |