Re: [PATCH] ARM: EXYNOS: Add WLAN init on ORIGEN

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Sangwook,

On 02/16/2012 03:55 PM, Sangwook Lee wrote:
Add WLAN init code on Origen for both hw2.1.1 and hw2.0 in AR6003

Signed-off-by: Sangwook Lee<sangwook.lee@xxxxxxxxxx>
---
  arch/arm/mach-exynos/mach-origen.c |   21 +++++++++++++++++++++
  1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-exynos/mach-origen.c b/arch/arm/mach-exynos/mach-origen.c
index e1d87b9..d570667 100644
--- a/arch/arm/mach-exynos/mach-origen.c
+++ b/arch/arm/mach-exynos/mach-origen.c
@@ -21,6 +21,7 @@
  #include<linux/mfd/max8997.h>
  #include<linux/lcd.h>
  #include<linux/rfkill-gpio.h>
+#include<linux/delay.h>

  #include<asm/mach/arch.h>
  #include<asm/hardware/gic.h>
@@ -676,6 +677,25 @@ static void __init origen_bt_setup(void)
  	s3c_gpio_setpull(EXYNOS4_GPX2(2), S3C_GPIO_PULL_NONE);
  }

+static void __init origen_wlan_setup(void)
+{
+	int err;
+
+	err = gpio_request_one(EXYNOS4_GPX2(4),
+			GPIOF_OUT_INIT_LOW, "GPX2_4");
+	if (err) {
+		pr_warning("ORIGEN: Failed to obtain WIFI GPIOs\n");
+		return;
+	}
+	s3c_gpio_cfgpin(EXYNOS4_GPX2(4), S3C_GPIO_OUTPUT);

The pin is already configured as output in gpio_request_one(), doesn't
it work without this line ?

+	s3c_gpio_setpull(EXYNOS4_GPX2(4),
+			S3C_GPIO_PULL_NONE);

No need to break the line.

+	/* VDD33,I/O Supply must be done */

Is it to reset the module by cycling its power supply ?

+	gpio_set_value(EXYNOS4_GPX2(4), 0);

Isn't EXYNOS4_GPX2(4) set to low state (0) already at this point,
since you used GPIOF_OUT_INIT_LOW flags ?

+	udelay(30);     /*AR6003 speicic value Tb */

s/speicic/specific ?

+	gpio_direction_output(EXYNOS4_GPX2(4), 1);

Isn't gpio_set_value() enough here ?

+}

I couldn't identify EXYNOS4_GPX2(4) GPIO on the board's schematics
(I didn't try too hard though), AFAIU it controls a voltage regulator.
I guess, it doesn't make sense to define a fixed voltage regulator
for "VDD3,I/O" supply, since it is not controlled from anywhere else
than the board code ?

--
Regards,
Sylwester
--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  Powered by Linux