summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-whistler-sdhci.c
diff options
context:
space:
mode:
authorNitin Bindal <nbindal@nvidia.com>2011-11-22 20:32:43 +0530
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:52:40 -0800
commitc54ec7f7a0c5caec84c03e99de58c69a68bde699 (patch)
treea681d5219dde975a0d4354bcc5e85e629537749a /arch/arm/mach-tegra/board-whistler-sdhci.c
parenta906af8e7fa6700ecafec3bc6f543e00ea28b98e (diff)
arm: tegra: whistler: wifi out-band-interrupt
1) configuring wf_wakeup gpio 2) create resource wifi_resource and provide it to wifi driver bug 904449 Change-Id: Iadfea38cee4923b211caf8324f270088b9de029c Reviewed-on: http://git-master/r/66146 Reviewed-by: Nitin Bindal <nbindal@nvidia.com> Tested-by: Nitin Bindal <nbindal@nvidia.com> Reviewed-by: Rakesh Goyal <rgoyal@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Rebase-Id: R267fa93fbef9497ec85d5e0a5d8c05b9e8dcc8ae
Diffstat (limited to 'arch/arm/mach-tegra/board-whistler-sdhci.c')
-rw-r--r--arch/arm/mach-tegra/board-whistler-sdhci.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-whistler-sdhci.c b/arch/arm/mach-tegra/board-whistler-sdhci.c
index 9a6aebb6d8a7..336c3854f0e5 100644
--- a/arch/arm/mach-tegra/board-whistler-sdhci.c
+++ b/arch/arm/mach-tegra/board-whistler-sdhci.c
@@ -34,6 +34,7 @@
#define WHISTLER_WLAN_PWR TEGRA_GPIO_PK5
#define WHISTLER_WLAN_RST TEGRA_GPIO_PK6
+#define WHISTLER_WLAN_WOW TEGRA_GPIO_PU5
#define WHISTLER_EXT_SDCARD_DETECT TEGRA_GPIO_PI5
@@ -84,9 +85,20 @@ static struct wifi_platform_data whistler_wifi_control = {
.set_carddetect = whistler_wifi_set_carddetect,
};
+static struct resource wifi_resource[] = {
+ [0] = {
+ .name = "bcm4329_wlan_irq",
+ .start = TEGRA_GPIO_TO_IRQ(TEGRA_GPIO_PU5),
+ .end = TEGRA_GPIO_TO_IRQ(TEGRA_GPIO_PU5),
+ .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL | IORESOURCE_IRQ_SHAREABLE,
+ },
+};
+
static struct platform_device whistler_wifi_device = {
.name = "bcm4329_wlan",
.id = 1,
+ .num_resources = 1,
+ .resource = wifi_resource,
.dev = {
.platform_data = &whistler_wifi_control,
},
@@ -207,12 +219,15 @@ static int __init whistler_wifi_init(void)
{
gpio_request(WHISTLER_WLAN_PWR, "wlan_power");
gpio_request(WHISTLER_WLAN_RST, "wlan_rst");
+ gpio_request(WHISTLER_WLAN_WOW, "bcmsdh_sdmmc");
tegra_gpio_enable(WHISTLER_WLAN_PWR);
tegra_gpio_enable(WHISTLER_WLAN_RST);
+ tegra_gpio_enable(WHISTLER_WLAN_WOW);
gpio_direction_output(WHISTLER_WLAN_PWR, 0);
gpio_direction_output(WHISTLER_WLAN_RST, 0);
+ gpio_direction_input(WHISTLER_WLAN_WOW);
platform_device_register(&whistler_wifi_device);
return 0;