* [PATCH v3 1/3] omap3: beaglexm: fix EHCI power up GPIO dir
2011-01-06 19:54 [PATCH v3 0/3] OMAP3: beaglexm: GPIO fixes Nishanth Menon
@ 2011-01-06 19:54 ` Nishanth Menon
2011-01-06 19:54 ` [PATCH v3 2/3] omap3: beaglexm: fix DVI reset GPIO Nishanth Menon
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Nishanth Menon @ 2011-01-06 19:54 UTC (permalink / raw)
To: l-o; +Cc: l-a, Kevin, Tony, Koen Kooi, Nishanth Menon
From: Koen Kooi <koen@beagleboard.org>
EHCI enable power pin is inverted (active high) in comparison
to vanilla beagle which is active low. Handle this case conditionally.
[nm@ti.com: helped split up]
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Koen Kooi <koen@beagleboard.org>
---
arch/arm/mach-omap2/board-omap3beagle.c | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
index 6c12760..1b5aa7a 100644
--- a/arch/arm/mach-omap2/board-omap3beagle.c
+++ b/arch/arm/mach-omap2/board-omap3beagle.c
@@ -297,9 +297,16 @@ static int beagle_twl_gpio_setup(struct device *dev,
gpio_request(gpio + 1, "EHCI_nOC");
gpio_direction_input(gpio + 1);
- /* TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, active low) */
+ /*
+ * TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, XM active
+ * high / others active low)
+ */
gpio_request(gpio + TWL4030_GPIO_MAX, "nEN_USB_PWR");
gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0);
+ if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM)
+ gpio_direction_output(gpio + TWL4030_GPIO_MAX, 1);
+ else
+ gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0);
/* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */
gpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1;
--
1.6.3.3
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH v3 2/3] omap3: beaglexm: fix DVI reset GPIO
2011-01-06 19:54 [PATCH v3 0/3] OMAP3: beaglexm: GPIO fixes Nishanth Menon
2011-01-06 19:54 ` [PATCH v3 1/3] omap3: beaglexm: fix EHCI power up GPIO dir Nishanth Menon
@ 2011-01-06 19:54 ` Nishanth Menon
2011-01-06 19:54 ` [PATCH v3 3/3] omap3: beaglexm: power on DVI Nishanth Menon
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Nishanth Menon @ 2011-01-06 19:54 UTC (permalink / raw)
To: l-o; +Cc: l-a, Kevin, Tony, Koen Kooi, Nishanth Menon
From: Koen Kooi <koen@beagleboard.org>
GPIO reset line for Beagle XM is different from vanilla beagle
so we populate it as part of gpio update routine.
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Koen Kooi <koen@beagleboard.org>
---
arch/arm/mach-omap2/board-omap3beagle.c | 8 +++++++-
1 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
index 1b5aa7a..d628f5e 100644
--- a/arch/arm/mach-omap2/board-omap3beagle.c
+++ b/arch/arm/mach-omap2/board-omap3beagle.c
@@ -199,7 +199,7 @@ static struct omap_dss_device beagle_dvi_device = {
.name = "dvi",
.driver_name = "generic_panel",
.phy.dpi.data_lines = 24,
- .reset_gpio = 170,
+ .reset_gpio = -EINVAL,
.platform_enable = beagle_enable_dvi,
.platform_disable = beagle_disable_dvi,
};
@@ -308,6 +308,12 @@ static int beagle_twl_gpio_setup(struct device *dev,
else
gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0);
+ /* DVI reset GPIO is different between beagle revisions */
+ if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM)
+ beagle_dvi_device.reset_gpio = 129;
+ else
+ beagle_dvi_device.reset_gpio = 170;
+
/* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */
gpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1;
--
1.6.3.3
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH v3 3/3] omap3: beaglexm: power on DVI
2011-01-06 19:54 [PATCH v3 0/3] OMAP3: beaglexm: GPIO fixes Nishanth Menon
2011-01-06 19:54 ` [PATCH v3 1/3] omap3: beaglexm: fix EHCI power up GPIO dir Nishanth Menon
2011-01-06 19:54 ` [PATCH v3 2/3] omap3: beaglexm: fix DVI reset GPIO Nishanth Menon
@ 2011-01-06 19:54 ` Nishanth Menon
2011-01-06 19:57 ` [PATCH v3 0/3] OMAP3: beaglexm: GPIO fixes Koen Kooi
2011-01-06 22:15 ` Kevin Hilman
4 siblings, 0 replies; 6+ messages in thread
From: Nishanth Menon @ 2011-01-06 19:54 UTC (permalink / raw)
To: l-o; +Cc: l-a, Kevin, Tony, Koen Kooi, Nishanth Menon
From: Koen Kooi <koen@beagleboard.org>
TFP410 DVI chip is used to provide display out.
this chip is controlled by 2 lines:
LDO which supplies the power is controlled over gpio + 2
and the enable of the chip itself is done over gpio + 1
NOTE: the LDO is necessary for LED, serial blocks as well.
GPIO + 1 was used to sense USB overcurrent in vanilla beagle
[nm@ti.com: helped split up the patch]
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Koen Kooi <koen@beagleboard.org>
---
arch/arm/mach-omap2/board-omap3beagle.c | 20 +++++++++++++++++---
1 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
index d628f5e..7c82730 100644
--- a/arch/arm/mach-omap2/board-omap3beagle.c
+++ b/arch/arm/mach-omap2/board-omap3beagle.c
@@ -293,9 +293,10 @@ static int beagle_twl_gpio_setup(struct device *dev,
/* REVISIT: need ehci-omap hooks for external VBUS
* power switch and overcurrent detect
*/
-
- gpio_request(gpio + 1, "EHCI_nOC");
- gpio_direction_input(gpio + 1);
+ if (omap3_beagle_get_rev() != OMAP3BEAGLE_BOARD_XM) {
+ gpio_request(gpio + 1, "EHCI_nOC");
+ gpio_direction_input(gpio + 1);
+ }
/*
* TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, XM active
@@ -317,6 +318,19 @@ static int beagle_twl_gpio_setup(struct device *dev,
/* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */
gpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1;
+ /*
+ * gpio + 1 on Xm controls the TFP410's enable line (active low)
+ * gpio + 2 control varies depending on the board rev as follows:
+ * P7/P8 revisions(prototype): Camera EN
+ * A2+ revisions (production): LDO (supplies DVI, serial, led blocks)
+ */
+ if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) {
+ gpio_request(gpio + 1, "nDVI_PWR_EN");
+ gpio_direction_output(gpio + 1, 0);
+ gpio_request(gpio + 2, "DVI_LDO_EN");
+ gpio_direction_output(gpio + 2, 1);
+ }
+
return 0;
}
--
1.6.3.3
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH v3 0/3] OMAP3: beaglexm: GPIO fixes
2011-01-06 19:54 [PATCH v3 0/3] OMAP3: beaglexm: GPIO fixes Nishanth Menon
` (2 preceding siblings ...)
2011-01-06 19:54 ` [PATCH v3 3/3] omap3: beaglexm: power on DVI Nishanth Menon
@ 2011-01-06 19:57 ` Koen Kooi
2011-01-06 22:15 ` Kevin Hilman
4 siblings, 0 replies; 6+ messages in thread
From: Koen Kooi @ 2011-01-06 19:57 UTC (permalink / raw)
To: Nishanth Menon; +Cc: l-o, l-a, Kevin, Tony
Thanks for splitting it up! Now I can work on the patches for xM rev C where the pins changed again :)
Op 6 jan 2011, om 20:54 heeft Nishanth Menon het volgende geschreven:
> Hi,
> As discussed in the threads:
> http://thread.gmane.org/gmane.linux.ports.arm.omap/47807/
> http://marc.info/?t=121540030800004&r=1&w=2
>
> here is the split up series with commit message after discussion:
> http://www.beagleboard.org/irclogs/index.php?date=2011-01-06#T19:12:21
>
> Koen Kooi (3):
> omap3: beaglexm: fix EHCI power up GPIO dir
> omap3: beaglexm: fix DVI reset GPIO
> omap3: beaglexm: power on DVI
>
> arch/arm/mach-omap2/board-omap3beagle.c | 37 ++++++++++++++++++++++++++----
> 1 files changed, 32 insertions(+), 5 deletions(-)
>
> v3:
> split up the series, addressed review comments
>
> v2: http://marc.info/?t=129276977900002&r=1&w=2
> Reenable the PMU stat LED
> v1: http://marc.info/?t=129172571000001&r=1&w=2
>
> Regards,
> Nishanth Menon
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [PATCH v3 0/3] OMAP3: beaglexm: GPIO fixes
2011-01-06 19:54 [PATCH v3 0/3] OMAP3: beaglexm: GPIO fixes Nishanth Menon
` (3 preceding siblings ...)
2011-01-06 19:57 ` [PATCH v3 0/3] OMAP3: beaglexm: GPIO fixes Koen Kooi
@ 2011-01-06 22:15 ` Kevin Hilman
4 siblings, 0 replies; 6+ messages in thread
From: Kevin Hilman @ 2011-01-06 22:15 UTC (permalink / raw)
To: Nishanth Menon; +Cc: l-o, l-a, Tony, Koen Kooi
Nishanth Menon <nm@ti.com> writes:
> Hi,
> As discussed in the threads:
> http://thread.gmane.org/gmane.linux.ports.arm.omap/47807/
> http://marc.info/?t=121540030800004&r=1&w=2
>
> here is the split up series with commit message after discussion:
> http://www.beagleboard.org/irclogs/index.php?date=2011-01-06#T19:12:21
>
> Koen Kooi (3):
> omap3: beaglexm: fix EHCI power up GPIO dir
> omap3: beaglexm: fix DVI reset GPIO
> omap3: beaglexm: power on DVI
>
> arch/arm/mach-omap2/board-omap3beagle.c | 37 ++++++++++++++++++++++++++----
> 1 files changed, 32 insertions(+), 5 deletions(-)
>
> v3:
> split up the series, addressed review comments
Thanks, queueing for the .38-rc cycle.
Kevin
> v2: http://marc.info/?t=129276977900002&r=1&w=2
> Reenable the PMU stat LED
> v1: http://marc.info/?t=129172571000001&r=1&w=2
>
> Regards,
> Nishanth Menon
^ permalink raw reply [flat|nested] 6+ messages in thread