public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] omap3: cm-t35: add mux initialization
@ 2009-11-29  8:07 Mike Rapoport
  2009-11-29  8:07 ` [PATCH] omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN} Mike Rapoport
                   ` (2 more replies)
  0 siblings, 3 replies; 16+ messages in thread
From: Mike Rapoport @ 2009-11-29  8:07 UTC (permalink / raw)
  To: tony; +Cc: linux-omap, Mike Rapoport

Tony,

These patches are follow-ups to your mux rework series.
The first one is pretty trivial and adds OUTPUT_PULL{UP,DOWN} to shorten
the lines in omap_board_mux arrays. 
The second patch adds the mux configuration for CM-T35. This is actually
the most compact subset of 'cat /sys/kernel/debug/omap_mux/board' that makes
CM-T35 functional :)

The following changes since commit d8bfa71e2e9d794f9c7e5b019f316804f7f50582:
  Tony Lindgren (1):
          omap: mux: Add data for 2430

Mike Rapoport (2):
  omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN}
  omap3: cm-t35: add mux initialization

 arch/arm/mach-omap2/Kconfig        |    1 +
 arch/arm/mach-omap2/board-cm-t35.c |   95 +++++++++++++++++++++++++++++++++--
 arch/arm/mach-omap2/mux.h          |    2 +
 3 files changed, 92 insertions(+), 6 deletions(-)


^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH] omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN}
  2009-11-29  8:07 [PATCH] omap3: cm-t35: add mux initialization Mike Rapoport
@ 2009-11-29  8:07 ` Mike Rapoport
  2009-11-30 21:12   ` Tony Lindgren
  2009-11-29  8:07 ` [PATCH] omap3: cm-t35: add mux initialization Mike Rapoport
  2009-12-06 15:31 ` Mike Rapoport
  2 siblings, 1 reply; 16+ messages in thread
From: Mike Rapoport @ 2009-11-29  8:07 UTC (permalink / raw)
  To: tony; +Cc: linux-omap, Mike Rapoport

Signed-off-by: Mike Rapoport <mike@compulab.co.il>
---
 arch/arm/mach-omap2/mux.h |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-omap2/mux.h b/arch/arm/mach-omap2/mux.h
index e09c5d2..02a1b53 100644
--- a/arch/arm/mach-omap2/mux.h
+++ b/arch/arm/mach-omap2/mux.h
@@ -37,6 +37,8 @@
 
 /* Active pin states */
 #define OMAP_PIN_OUTPUT			0
+#define OMAP_PIN_OUTPUT_PULLUP		(OMAP_PULL_ENA | OMAP_PULL_UP)
+#define OMAP_PIN_OUTPUT_PULLDOWN	OMAP_PULL_ENA
 #define OMAP_PIN_INPUT			OMAP_INPUT_EN
 #define OMAP_PIN_INPUT_PULLUP		(OMAP_PULL_ENA | OMAP_INPUT_EN \
 						| OMAP_PULL_UP)
-- 
1.6.4.4


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH] omap3: cm-t35: add mux initialization
  2009-11-29  8:07 [PATCH] omap3: cm-t35: add mux initialization Mike Rapoport
  2009-11-29  8:07 ` [PATCH] omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN} Mike Rapoport
@ 2009-11-29  8:07 ` Mike Rapoport
  2009-12-06 15:31 ` Mike Rapoport
  2 siblings, 0 replies; 16+ messages in thread
From: Mike Rapoport @ 2009-11-29  8:07 UTC (permalink / raw)
  To: tony; +Cc: linux-omap, Mike Rapoport

CM-T35 can be assembled with different set of peripherals thus making
certain interfaces available to user as GPIOs or dedicated pins. Because
of it CM-T35 bootloader sets up mux configuration only for pins
necessary to boot the system and the rest of the mux configuration is
done by the kernel. Besides, having mux configuration in the kernel
allows to minimize dependancy on bootloader.

Signed-off-by: Mike Rapoport <mike@compulab.co.il>
---
 arch/arm/mach-omap2/Kconfig        |    1 +
 arch/arm/mach-omap2/board-cm-t35.c |   95 +++++++++++++++++++++++++++++++++--
 2 files changed, 90 insertions(+), 6 deletions(-)

diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 034d990..96e7e3f 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -108,6 +108,7 @@ config MACH_OMAP_ZOOM3
 config MACH_CM_T35
 	bool "CompuLab CM-T35 module"
 	depends on ARCH_OMAP3 && ARCH_OMAP34XX
+	select OMAP_MUX
 
 config MACH_IGEP0020
 	bool "IGEP0020"
diff --git a/arch/arm/mach-omap2/board-cm-t35.c b/arch/arm/mach-omap2/board-cm-t35.c
index e5f3039..12c85a1 100644
--- a/arch/arm/mach-omap2/board-cm-t35.c
+++ b/arch/arm/mach-omap2/board-cm-t35.c
@@ -482,13 +482,98 @@ static void __init cm_t35_map_io(void)
 	omap2_map_common_io();
 }
 
-#ifdef CONFIG_OMAP_MUX
 static struct omap_board_mux board_mux[] __initdata = {
+	/* nCS and IRQ for CM-T35 ethernet */
+	OMAP3_MUX(GPMC_NCS5, OMAP_MUX_MODE0),
+	OMAP3_MUX(UART3_CTS_RCTX, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP),
+
+	/* nCS and IRQ for SB-T35 ethernet */
+	OMAP3_MUX(GPMC_NCS4, OMAP_MUX_MODE0),
+	OMAP3_MUX(GPMC_WAIT3, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP),
+
+	/* PENDOWN GPIO */
+	OMAP3_MUX(GPMC_NCS6, OMAP_MUX_MODE4 | OMAP_PIN_INPUT),
+
+	/* mUSB */
+	OMAP3_MUX(HSUSB0_CLK, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_STP, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT_PULLUP),
+	OMAP3_MUX(HSUSB0_DIR, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_NXT, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA0, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA1, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA2, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA3, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA4, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA5, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA6, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA7, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+
+	/* MMC 2 */
+	OMAP3_MUX(MMC2_DAT4, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(MMC2_DAT5, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(MMC2_DAT6, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(MMC2_DAT7, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+
+	/* McSPI 1 */
+	OMAP3_MUX(MCSPI1_CLK, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCSPI1_SIMO, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCSPI1_SOMI, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCSPI1_CS0, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLDOWN),
+
+	/* McSPI 4 */
+	OMAP3_MUX(MCBSP1_CLKR, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP1_DX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP1_DR, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP1_FSX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT_PULLUP),
+
+	/* McBSP 2 */
+	OMAP3_MUX(MCBSP2_FSX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP2_CLKX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP2_DR, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP2_DX, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+
+	/* serial ports */
+	OMAP3_MUX(MCBSP3_CLKX, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(MCBSP3_FSX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(UART1_TX, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(UART1_RX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+
+	/* DSS */
+	OMAP3_MUX(DSS_PCLK, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_HSYNC, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_VSYNC, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_ACBIAS, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA0, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA1, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA2, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA3, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA4, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA5, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA6, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA7, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA8, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA9, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA10, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA11, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA12, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA13, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA14, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA15, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA16, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA17, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA18, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA19, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA20, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA21, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA22, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA23, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+
+	/* TPS IRQ */
+	OMAP3_MUX(SYS_NIRQ, OMAP_MUX_MODE0 | OMAP_WAKEUP_EN | \
+		  OMAP_PIN_INPUT_PULLUP),
+
 	{ .reg_offset = OMAP_MUX_TERMINATOR },
 };
-#else
-#define board_mux	NULL
-#endif
 
 static void __init cm_t35_init(void)
 {
@@ -501,8 +586,6 @@ static void __init cm_t35_init(void)
 	cm_t35_init_led();
 
 	usb_musb_init();
-
-	omap_mux_init_signal("sys_nirq", OMAP_WAKEUP_EN | OMAP_PIN_INPUT_PULLUP);
 }
 
 MACHINE_START(CM_T35, "Compulab CM-T35")
-- 
1.6.4.4


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PATCH] omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN}
  2009-11-29  8:07 ` [PATCH] omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN} Mike Rapoport
@ 2009-11-30 21:12   ` Tony Lindgren
  2009-11-30 21:58     ` Mike Rapoport
  0 siblings, 1 reply; 16+ messages in thread
From: Tony Lindgren @ 2009-11-30 21:12 UTC (permalink / raw)
  To: Mike Rapoport; +Cc: linux-omap

* Mike Rapoport <mike@compulab.co.il> [091129 00:10]:
> Signed-off-by: Mike Rapoport <mike@compulab.co.il>
> ---
>  arch/arm/mach-omap2/mux.h |    2 ++
>  1 files changed, 2 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/mux.h b/arch/arm/mach-omap2/mux.h
> index e09c5d2..02a1b53 100644
> --- a/arch/arm/mach-omap2/mux.h
> +++ b/arch/arm/mach-omap2/mux.h
> @@ -37,6 +37,8 @@
>  
>  /* Active pin states */
>  #define OMAP_PIN_OUTPUT			0
> +#define OMAP_PIN_OUTPUT_PULLUP		(OMAP_PULL_ENA | OMAP_PULL_UP)
> +#define OMAP_PIN_OUTPUT_PULLDOWN	OMAP_PULL_ENA
>  #define OMAP_PIN_INPUT			OMAP_INPUT_EN
>  #define OMAP_PIN_INPUT_PULLUP		(OMAP_PULL_ENA | OMAP_INPUT_EN \
>  						| OMAP_PULL_UP)

Hmm, isn't this same as configuring as GPIO with up or
down value?

Or is there's some need doing it with mux only? Like
power savings?

Regards,

Tony

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN}
  2009-11-30 21:12   ` Tony Lindgren
@ 2009-11-30 21:58     ` Mike Rapoport
  2009-11-30 23:10       ` Tony Lindgren
  0 siblings, 1 reply; 16+ messages in thread
From: Mike Rapoport @ 2009-11-30 21:58 UTC (permalink / raw)
  To: Tony Lindgren; +Cc: Mike Rapoport, linux-omap

On Mon, Nov 30, 2009 at 11:12 PM, Tony Lindgren <tony@atomide.com> wrote:
> * Mike Rapoport <mike@compulab.co.il> [091129 00:10]:
>> Signed-off-by: Mike Rapoport <mike@compulab.co.il>
>> ---
>>  arch/arm/mach-omap2/mux.h |    2 ++
>>  1 files changed, 2 insertions(+), 0 deletions(-)
>>
>> diff --git a/arch/arm/mach-omap2/mux.h b/arch/arm/mach-omap2/mux.h
>> index e09c5d2..02a1b53 100644
>> --- a/arch/arm/mach-omap2/mux.h
>> +++ b/arch/arm/mach-omap2/mux.h
>> @@ -37,6 +37,8 @@
>>
>>  /* Active pin states */
>>  #define OMAP_PIN_OUTPUT                      0
>> +#define OMAP_PIN_OUTPUT_PULLUP               (OMAP_PULL_ENA | OMAP_PULL_UP)
>> +#define OMAP_PIN_OUTPUT_PULLDOWN     OMAP_PULL_ENA
>>  #define OMAP_PIN_INPUT                       OMAP_INPUT_EN
>>  #define OMAP_PIN_INPUT_PULLUP                (OMAP_PULL_ENA | OMAP_INPUT_EN \
>>                                               | OMAP_PULL_UP)
>
> Hmm, isn't this same as configuring as GPIO with up or
> down value?
>
> Or is there's some need doing it with mux only? Like
> power savings?

This is intended for dedicated pins rather than GPIO. Actually, I've
met only one till now, the HSUSB0_STP.
If you define most of the mux configuration in the kernel you
eventually run into very long lines in the omap_board_mux array. So,
shortening at least some of them seems good idea to me.
Take a look at my second patch ([1]) for example of what I mean :)

[1] http://en.wikipedia.org/wiki/Wikipedia:Tools/Editing_tools
> Regards,
>
> Tony
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>



-- 
	Sincerely Yours,
		Mike.
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN}
  2009-11-30 21:58     ` Mike Rapoport
@ 2009-11-30 23:10       ` Tony Lindgren
  2009-12-01  7:57         ` Mike Rapoport
  0 siblings, 1 reply; 16+ messages in thread
From: Tony Lindgren @ 2009-11-30 23:10 UTC (permalink / raw)
  To: Mike Rapoport; +Cc: Mike Rapoport, linux-omap

* Mike Rapoport <mike.rapoport@gmail.com> [091130 13:57]:
> On Mon, Nov 30, 2009 at 11:12 PM, Tony Lindgren <tony@atomide.com> wrote:
> > * Mike Rapoport <mike@compulab.co.il> [091129 00:10]:
> >> Signed-off-by: Mike Rapoport <mike@compulab.co.il>
> >> ---
> >>  arch/arm/mach-omap2/mux.h |    2 ++
> >>  1 files changed, 2 insertions(+), 0 deletions(-)
> >>
> >> diff --git a/arch/arm/mach-omap2/mux.h b/arch/arm/mach-omap2/mux.h
> >> index e09c5d2..02a1b53 100644
> >> --- a/arch/arm/mach-omap2/mux.h
> >> +++ b/arch/arm/mach-omap2/mux.h
> >> @@ -37,6 +37,8 @@
> >>
> >>  /* Active pin states */
> >>  #define OMAP_PIN_OUTPUT                      0
> >> +#define OMAP_PIN_OUTPUT_PULLUP               (OMAP_PULL_ENA | OMAP_PULL_UP)
> >> +#define OMAP_PIN_OUTPUT_PULLDOWN     OMAP_PULL_ENA
> >>  #define OMAP_PIN_INPUT                       OMAP_INPUT_EN
> >>  #define OMAP_PIN_INPUT_PULLUP                (OMAP_PULL_ENA | OMAP_INPUT_EN \
> >>                                               | OMAP_PULL_UP)
> >
> > Hmm, isn't this same as configuring as GPIO with up or
> > down value?
> >
> > Or is there's some need doing it with mux only? Like
> > power savings?
> 
> This is intended for dedicated pins rather than GPIO. Actually, I've
> met only one till now, the HSUSB0_STP.

Hmm, are you sure you need the OMAP_PIN_OUTPUT_PULLUP for HSUSB0_STP?

AFAIK, it's not needed for other boards. I believe the STP should be
down until the MUSB signals STP and pulls it up briefly. Might be
worth checking.

> If you define most of the mux configuration in the kernel you
> eventually run into very long lines in the omap_board_mux array. So,
> shortening at least some of them seems good idea to me.

Yeah nothing wrong with that, I'm just thinking back to when we added
these mux defines originally. It seemed like the the combination of
out and pull should be needed, and pull would only be needed for inputs.

> Take a look at my second patch ([1]) for example of what I mean :)
> 
> [1] http://en.wikipedia.org/wiki/Wikipedia:Tools/Editing_tools

I guess this is a wrong link here to the editing tool. Our mux
code is bloated, but should not be _that_ bloated! :)

Eh, let's hope we don't need to implement kernel based wiki and
editing tools for the muxing :)

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN}
  2009-11-30 23:10       ` Tony Lindgren
@ 2009-12-01  7:57         ` Mike Rapoport
  0 siblings, 0 replies; 16+ messages in thread
From: Mike Rapoport @ 2009-12-01  7:57 UTC (permalink / raw)
  To: Tony Lindgren; +Cc: Mike Rapoport, linux-omap



Tony Lindgren wrote:
> * Mike Rapoport <mike.rapoport@gmail.com> [091130 13:57]:
>> On Mon, Nov 30, 2009 at 11:12 PM, Tony Lindgren <tony@atomide.com> wrote:
>>> * Mike Rapoport <mike@compulab.co.il> [091129 00:10]:
>>>> Signed-off-by: Mike Rapoport <mike@compulab.co.il>
>>>> ---
>>>>  arch/arm/mach-omap2/mux.h |    2 ++
>>>>  1 files changed, 2 insertions(+), 0 deletions(-)
>>>>
>>>> diff --git a/arch/arm/mach-omap2/mux.h b/arch/arm/mach-omap2/mux.h
>>>> index e09c5d2..02a1b53 100644
>>>> --- a/arch/arm/mach-omap2/mux.h
>>>> +++ b/arch/arm/mach-omap2/mux.h
>>>> @@ -37,6 +37,8 @@
>>>>
>>>>  /* Active pin states */
>>>>  #define OMAP_PIN_OUTPUT                      0
>>>> +#define OMAP_PIN_OUTPUT_PULLUP               (OMAP_PULL_ENA | OMAP_PULL_UP)
>>>> +#define OMAP_PIN_OUTPUT_PULLDOWN     OMAP_PULL_ENA
>>>>  #define OMAP_PIN_INPUT                       OMAP_INPUT_EN
>>>>  #define OMAP_PIN_INPUT_PULLUP                (OMAP_PULL_ENA | OMAP_INPUT_EN \
>>>>                                               | OMAP_PULL_UP)
>>> Hmm, isn't this same as configuring as GPIO with up or
>>> down value?
>>>
>>> Or is there's some need doing it with mux only? Like
>>> power savings?
>> This is intended for dedicated pins rather than GPIO. Actually, I've
>> met only one till now, the HSUSB0_STP.
> 
> Hmm, are you sure you need the OMAP_PIN_OUTPUT_PULLUP for HSUSB0_STP?
> 
> AFAIK, it's not needed for other boards. I believe the STP should be
> down until the MUSB signals STP and pulls it up briefly. Might be
> worth checking.

Well, quick grep on HSUSB0_STP in U-Boot shows that all omap3 boards have
MUX_VAL(CP(HSUSB0_STP),         (IDIS | PTU | EN  | M0)) /*HSUSB0_STP*/
i.e pin is OUTPUT_PULLUP. I'll try to check if canceling the pull-up does not
affect mUSB functionality.

>> If you define most of the mux configuration in the kernel you
>> eventually run into very long lines in the omap_board_mux array. So,
>> shortening at least some of them seems good idea to me.
> 
> Yeah nothing wrong with that, I'm just thinking back to when we added
> these mux defines originally. It seemed like the the combination of
> out and pull should be needed, and pull would only be needed for inputs.
> 
>> Take a look at my second patch ([1]) for example of what I mean :)
>>
>> [1] http://en.wikipedia.org/wiki/Wikipedia:Tools/Editing_tools
> 
> I guess this is a wrong link here to the editing tool. Our mux
> code is bloated, but should not be _that_ bloated! :)

Oops :) This is the correct one:
http://thread.gmane.org/gmane.linux.ports.arm.omap/27341
Klipper screwed me entirely :)

> Eh, let's hope we don't need to implement kernel based wiki and
> editing tools for the muxing :)


> Regards,
> 
> Tony
> 

-- 
Sincerely yours,
Mike.


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] omap3: cm-t35: add mux initialization
  2009-11-29  8:07 [PATCH] omap3: cm-t35: add mux initialization Mike Rapoport
  2009-11-29  8:07 ` [PATCH] omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN} Mike Rapoport
  2009-11-29  8:07 ` [PATCH] omap3: cm-t35: add mux initialization Mike Rapoport
@ 2009-12-06 15:31 ` Mike Rapoport
  2009-12-07 16:22   ` Tony Lindgren
  2 siblings, 1 reply; 16+ messages in thread
From: Mike Rapoport @ 2009-12-06 15:31 UTC (permalink / raw)
  To: tony; +Cc: linux-omap

Tony,
Any chance this can go to 2.6.33?

Mike Rapoport wrote:
> Tony,
> 
> These patches are follow-ups to your mux rework series.
> The first one is pretty trivial and adds OUTPUT_PULL{UP,DOWN} to shorten
> the lines in omap_board_mux arrays. 
> The second patch adds the mux configuration for CM-T35. This is actually
> the most compact subset of 'cat /sys/kernel/debug/omap_mux/board' that makes
> CM-T35 functional :)
> 
> The following changes since commit d8bfa71e2e9d794f9c7e5b019f316804f7f50582:
>   Tony Lindgren (1):
>           omap: mux: Add data for 2430
> 
> Mike Rapoport (2):
>   omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN}
>   omap3: cm-t35: add mux initialization
> 
>  arch/arm/mach-omap2/Kconfig        |    1 +
>  arch/arm/mach-omap2/board-cm-t35.c |   95 +++++++++++++++++++++++++++++++++--
>  arch/arm/mach-omap2/mux.h          |    2 +
>  3 files changed, 92 insertions(+), 6 deletions(-)
> 
> 

-- 
Sincerely yours,
Mike.


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] omap3: cm-t35: add mux initialization
  2009-12-06 15:31 ` Mike Rapoport
@ 2009-12-07 16:22   ` Tony Lindgren
  2009-12-07 16:35     ` Gadiyar, Anand
  0 siblings, 1 reply; 16+ messages in thread
From: Tony Lindgren @ 2009-12-07 16:22 UTC (permalink / raw)
  To: Mike Rapoport; +Cc: linux-omap

* Mike Rapoport <mike@compulab.co.il> [091206 07:30]:
> Tony,
> Any chance this can go to 2.6.33?

Sure, I was just waiting to hear back if the OUTPUT_PULLUP is
needed for sure? Or is just OUTPUT enough for musb to work?

Tony


 
> Mike Rapoport wrote:
> > Tony,
> > 
> > These patches are follow-ups to your mux rework series.
> > The first one is pretty trivial and adds OUTPUT_PULL{UP,DOWN} to shorten
> > the lines in omap_board_mux arrays. 
> > The second patch adds the mux configuration for CM-T35. This is actually
> > the most compact subset of 'cat /sys/kernel/debug/omap_mux/board' that makes
> > CM-T35 functional :)
> > 
> > The following changes since commit d8bfa71e2e9d794f9c7e5b019f316804f7f50582:
> >   Tony Lindgren (1):
> >           omap: mux: Add data for 2430
> > 
> > Mike Rapoport (2):
> >   omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN}
> >   omap3: cm-t35: add mux initialization
> > 
> >  arch/arm/mach-omap2/Kconfig        |    1 +
> >  arch/arm/mach-omap2/board-cm-t35.c |   95 +++++++++++++++++++++++++++++++++--
> >  arch/arm/mach-omap2/mux.h          |    2 +
> >  3 files changed, 92 insertions(+), 6 deletions(-)
> > 
> > 
> 
> -- 
> Sincerely yours,
> Mike.
> 

^ permalink raw reply	[flat|nested] 16+ messages in thread

* RE: [PATCH] omap3: cm-t35: add mux initialization
  2009-12-07 16:22   ` Tony Lindgren
@ 2009-12-07 16:35     ` Gadiyar, Anand
  2009-12-07 17:44       ` Tony Lindgren
  0 siblings, 1 reply; 16+ messages in thread
From: Gadiyar, Anand @ 2009-12-07 16:35 UTC (permalink / raw)
  To: Tony Lindgren, Mike Rapoport; +Cc: linux-omap@vger.kernel.org

Tony Lindgren wrote: 
> * Mike Rapoport <mike@compulab.co.il> [091206 07:30]:
> > Tony,
> > Any chance this can go to 2.6.33?
> 
> Sure, I was just waiting to hear back if the OUTPUT_PULLUP is
> needed for sure? Or is just OUTPUT enough for musb to work?
> 
> Tony
> 

OUTPUT should work too. The ULPI spec recommends a weak pull-up
on STP line, but we needn't really have that. Plain OUTPUT is sufficient.

Regards,
Anand

> 
> 
> > Mike Rapoport wrote:
> > > Tony,
> > >
> > > These patches are follow-ups to your mux rework series.
> > > The first one is pretty trivial and adds OUTPUT_PULL{UP,DOWN} to shorten
> > > the lines in omap_board_mux arrays.
> > > The second patch adds the mux configuration for CM-T35. This is actually
> > > the most compact subset of 'cat /sys/kernel/debug/omap_mux/board' that makes
> > > CM-T35 functional :)
> > >
> > > The following changes since commit d8bfa71e2e9d794f9c7e5b019f316804f7f50582:
> > >   Tony Lindgren (1):
> > >           omap: mux: Add data for 2430
> > >
> > > Mike Rapoport (2):
> > >   omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN}
> > >   omap3: cm-t35: add mux initialization
> > >
> > >  arch/arm/mach-omap2/Kconfig        |    1 +
> > >  arch/arm/mach-omap2/board-cm-t35.c |   95 +++++++++++++++++++++++++++++++++--
> > >  arch/arm/mach-omap2/mux.h          |    2 +
> > >  3 files changed, 92 insertions(+), 6 deletions(-)
> > >
> > >
> >
> > --
> > Sincerely yours,
> > Mike.
> >

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] omap3: cm-t35: add mux initialization
  2009-12-07 16:35     ` Gadiyar, Anand
@ 2009-12-07 17:44       ` Tony Lindgren
  2009-12-08 10:40         ` Mike Rapoport
                           ` (2 more replies)
  0 siblings, 3 replies; 16+ messages in thread
From: Tony Lindgren @ 2009-12-07 17:44 UTC (permalink / raw)
  To: Gadiyar, Anand; +Cc: Mike Rapoport, linux-omap@vger.kernel.org

* Gadiyar, Anand <gadiyar@ti.com> [091207 08:35]:
> Tony Lindgren wrote: 
> > * Mike Rapoport <mike@compulab.co.il> [091206 07:30]:
> > > Tony,
> > > Any chance this can go to 2.6.33?
> > 
> > Sure, I was just waiting to hear back if the OUTPUT_PULLUP is
> > needed for sure? Or is just OUTPUT enough for musb to work?
> > 
> > Tony
> > 
> 
> OUTPUT should work too. The ULPI spec recommends a weak pull-up
> on STP line, but we needn't really have that. Plain OUTPUT is sufficient.

OK, thanks for checking that. Mike, what do you prefer to do?

I guess in some cases the pull may be needed for a pin
to change faster if an external pull is not used?

We could add the OUTPUT_PULL defines, but we should probably
mark them with comments that they should be rarely needed.

Regards,

Tony


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] omap3: cm-t35: add mux initialization
  2009-12-07 17:44       ` Tony Lindgren
@ 2009-12-08 10:40         ` Mike Rapoport
  2009-12-09  6:49         ` [PATCH v2] " Mike Rapoport
  2009-12-09 13:27         ` [PATCH] omap3: cm-t35: add mux initialization (was: Re: [PATCH] omap3: cm-t35: add mux initialization) Mike Rapoport
  2 siblings, 0 replies; 16+ messages in thread
From: Mike Rapoport @ 2009-12-08 10:40 UTC (permalink / raw)
  To: Tony Lindgren; +Cc: Gadiyar, Anand, linux-omap@vger.kernel.org



Tony Lindgren wrote:
> * Gadiyar, Anand <gadiyar@ti.com> [091207 08:35]:
>> Tony Lindgren wrote: 
>>> * Mike Rapoport <mike@compulab.co.il> [091206 07:30]:
>>>> Tony,
>>>> Any chance this can go to 2.6.33?
>>> Sure, I was just waiting to hear back if the OUTPUT_PULLUP is
>>> needed for sure? Or is just OUTPUT enough for musb to work?
>>>
>>> Tony
>>>
>> OUTPUT should work too. The ULPI spec recommends a weak pull-up
>> on STP line, but we needn't really have that. Plain OUTPUT is sufficient.
> 
> OK, thanks for checking that. Mike, what do you prefer to do?

I'll test without the pull and if it's Ok this way I'll update the mux
initialization patch and drop the OUTPUT_PULL{UP,DOWN}.

> I guess in some cases the pull may be needed for a pin
> to change faster if an external pull is not used?
> 
> We could add the OUTPUT_PULL defines, but we should probably
> mark them with comments that they should be rarely needed.
> 
> Regards,
> 
> Tony
> 
> 

-- 
Sincerely yours,
Mike.


^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH v2] omap3: cm-t35: add mux initialization
  2009-12-07 17:44       ` Tony Lindgren
  2009-12-08 10:40         ` Mike Rapoport
@ 2009-12-09  6:49         ` Mike Rapoport
  2009-12-09 13:27         ` [PATCH] omap3: cm-t35: add mux initialization (was: Re: [PATCH] omap3: cm-t35: add mux initialization) Mike Rapoport
  2 siblings, 0 replies; 16+ messages in thread
From: Mike Rapoport @ 2009-12-09  6:49 UTC (permalink / raw)
  To: tony; +Cc: gadiyar, linux-omap, Mike Rapoport

CM-T35 can be assembled with different set of peripherals thus making
certain interfaces available to user as GPIOs or dedicated pins. Because
of it CM-T35 bootloader sets up mux configuration only for pins
necessary to boot the system and the rest of the mux configuration is
done by the kernel. Besides, having mux configuration in the kernel
allows to minimize dependancy on bootloader.

Signed-off-by: Mike Rapoport <mike@compulab.co.il>
---
 arch/arm/mach-omap2/Kconfig        |    1 +
 arch/arm/mach-omap2/board-cm-t35.c |   95 +++++++++++++++++++++++++++++++++--
 2 files changed, 90 insertions(+), 6 deletions(-)

diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 034d990..96e7e3f 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -108,6 +108,7 @@ config MACH_OMAP_ZOOM3
 config MACH_CM_T35
 	bool "CompuLab CM-T35 module"
 	depends on ARCH_OMAP3 && ARCH_OMAP34XX
+	select OMAP_MUX
 
 config MACH_IGEP0020
 	bool "IGEP0020"
diff --git a/arch/arm/mach-omap2/board-cm-t35.c b/arch/arm/mach-omap2/board-cm-t35.c
index e5f3039..c28afd6 100644
--- a/arch/arm/mach-omap2/board-cm-t35.c
+++ b/arch/arm/mach-omap2/board-cm-t35.c
@@ -482,13 +482,98 @@ static void __init cm_t35_map_io(void)
 	omap2_map_common_io();
 }
 
-#ifdef CONFIG_OMAP_MUX
 static struct omap_board_mux board_mux[] __initdata = {
+	/* nCS and IRQ for CM-T35 ethernet */
+	OMAP3_MUX(GPMC_NCS5, OMAP_MUX_MODE0),
+	OMAP3_MUX(UART3_CTS_RCTX, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP),
+
+	/* nCS and IRQ for SB-T35 ethernet */
+	OMAP3_MUX(GPMC_NCS4, OMAP_MUX_MODE0),
+	OMAP3_MUX(GPMC_WAIT3, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP),
+
+	/* PENDOWN GPIO */
+	OMAP3_MUX(GPMC_NCS6, OMAP_MUX_MODE4 | OMAP_PIN_INPUT),
+
+	/* mUSB */
+	OMAP3_MUX(HSUSB0_CLK, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_STP, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(HSUSB0_DIR, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_NXT, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA0, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA1, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA2, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA3, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA4, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA5, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA6, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA7, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+
+	/* MMC 2 */
+	OMAP3_MUX(MMC2_DAT4, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(MMC2_DAT5, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(MMC2_DAT6, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(MMC2_DAT7, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+
+	/* McSPI 1 */
+	OMAP3_MUX(MCSPI1_CLK, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCSPI1_SIMO, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCSPI1_SOMI, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCSPI1_CS0, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLDOWN),
+
+	/* McSPI 4 */
+	OMAP3_MUX(MCBSP1_CLKR, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP1_DX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP1_DR, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP1_FSX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT_PULLUP),
+
+	/* McBSP 2 */
+	OMAP3_MUX(MCBSP2_FSX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP2_CLKX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP2_DR, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP2_DX, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+
+	/* serial ports */
+	OMAP3_MUX(MCBSP3_CLKX, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(MCBSP3_FSX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(UART1_TX, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(UART1_RX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+
+	/* DSS */
+	OMAP3_MUX(DSS_PCLK, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_HSYNC, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_VSYNC, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_ACBIAS, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA0, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA1, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA2, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA3, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA4, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA5, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA6, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA7, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA8, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA9, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA10, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA11, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA12, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA13, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA14, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA15, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA16, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA17, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA18, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA19, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA20, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA21, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA22, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA23, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+
+	/* TPS IRQ */
+	OMAP3_MUX(SYS_NIRQ, OMAP_MUX_MODE0 | OMAP_WAKEUP_EN | \
+		  OMAP_PIN_INPUT_PULLUP),
+
 	{ .reg_offset = OMAP_MUX_TERMINATOR },
 };
-#else
-#define board_mux	NULL
-#endif
 
 static void __init cm_t35_init(void)
 {
@@ -501,8 +586,6 @@ static void __init cm_t35_init(void)
 	cm_t35_init_led();
 
 	usb_musb_init();
-
-	omap_mux_init_signal("sys_nirq", OMAP_WAKEUP_EN | OMAP_PIN_INPUT_PULLUP);
 }
 
 MACHINE_START(CM_T35, "Compulab CM-T35")
-- 
1.6.4.4


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH] omap3: cm-t35: add mux initialization (was: Re: [PATCH] omap3: cm-t35: add mux initialization)
  2009-12-07 17:44       ` Tony Lindgren
  2009-12-08 10:40         ` Mike Rapoport
  2009-12-09  6:49         ` [PATCH v2] " Mike Rapoport
@ 2009-12-09 13:27         ` Mike Rapoport
  2009-12-09 16:36           ` Tony Lindgren
  2009-12-11 22:00           ` [APPLIED] [PATCH] omap3: cm-t35: add mux initialization Tony Lindgren
  2 siblings, 2 replies; 16+ messages in thread
From: Mike Rapoport @ 2009-12-09 13:27 UTC (permalink / raw)
  To: Tony Lindgren; +Cc: Gadiyar, Anand, linux-omap@vger.kernel.org, Mike Rapoport

Tony,

Tony Lindgren wrote:
> * Gadiyar, Anand <gadiyar@ti.com> [091207 08:35]:
>> Tony Lindgren wrote: 
>>> * Mike Rapoport <mike@compulab.co.il> [091206 07:30]:
>>>> Tony,
>>>> Any chance this can go to 2.6.33?
>>> Sure, I was just waiting to hear back if the OUTPUT_PULLUP is
>>> needed for sure? Or is just OUTPUT enough for musb to work?
>>>
>>> Tony
>>>
>> OUTPUT should work too. The ULPI spec recommends a weak pull-up
>> on STP line, but we needn't really have that. Plain OUTPUT is sufficient.
> 
> OK, thanks for checking that. Mike, what do you prefer to do?
> 
> I guess in some cases the pull may be needed for a pin
> to change faster if an external pull is not used?
> 
> We could add the OUTPUT_PULL defines, but we should probably
> mark them with comments that they should be rarely needed.

Here's updated cm-t35 mux initialization that should apply to current
linux-omap-2.6/master. Please discard the previous version and sorry for the noise.

> Regards,
> 
> Tony
> 
> 

>From 0da6d5d13351c2fc121a86ab641e25e4ff017800 Mon Sep 17 00:00:00 2001
From: Mike Rapoport <mike@compulab.co.il>
Date: Wed, 9 Dec 2009 15:23:24 +0200
Subject: [PATCH] omap3: cm-t35: add mux initialization

CM-T35 can be assembled with different set of peripherals thus making
certain interfaces available to user as GPIOs or dedicated pins. Because
of it CM-T35 bootloader sets up mux configuration only for pins
necessary to boot the system and the rest of the mux configuration is
done by the kernel. Besides, having mux configuration in the kernel
allows to minimize dependancy on bootloader.

Signed-off-by: Mike Rapoport <mike@compulab.co.il>
---
 arch/arm/mach-omap2/Kconfig        |    1 +
 arch/arm/mach-omap2/board-cm-t35.c |   96 +++++++++++++++++++++++++++++++++---
 2 files changed, 90 insertions(+), 7 deletions(-)

diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 16c0c13..66de47b 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -136,6 +136,7 @@ config MACH_CM_T35
 	bool "CompuLab CM-T35 module"
 	depends on ARCH_OMAP3 && ARCH_OMAP34XX
 	select OMAP_PACKAGE_CUS
+	select OMAP_MUX

 config MACH_IGEP0020
 	bool "IGEP0020"
diff --git a/arch/arm/mach-omap2/board-cm-t35.c b/arch/arm/mach-omap2/board-cm-t35.c
index 507c922..1591aae 100644
--- a/arch/arm/mach-omap2/board-cm-t35.c
+++ b/arch/arm/mach-omap2/board-cm-t35.c
@@ -482,13 +482,98 @@ static void __init cm_t35_map_io(void)
 	omap2_map_common_io();
 }

-#ifdef CONFIG_OMAP_MUX
 static struct omap_board_mux board_mux[] __initdata = {
+	/* nCS and IRQ for CM-T35 ethernet */
+	OMAP3_MUX(GPMC_NCS5, OMAP_MUX_MODE0),
+	OMAP3_MUX(UART3_CTS_RCTX, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP),
+
+	/* nCS and IRQ for SB-T35 ethernet */
+	OMAP3_MUX(GPMC_NCS4, OMAP_MUX_MODE0),
+	OMAP3_MUX(GPMC_WAIT3, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP),
+
+	/* PENDOWN GPIO */
+	OMAP3_MUX(GPMC_NCS6, OMAP_MUX_MODE4 | OMAP_PIN_INPUT),
+
+	/* mUSB */
+	OMAP3_MUX(HSUSB0_CLK, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_STP, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(HSUSB0_DIR, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_NXT, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA0, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA1, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA2, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA3, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA4, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA5, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA6, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(HSUSB0_DATA7, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+
+	/* MMC 2 */
+	OMAP3_MUX(SDMMC2_DAT4, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(SDMMC2_DAT5, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(SDMMC2_DAT6, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(SDMMC2_DAT7, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+
+	/* McSPI 1 */
+	OMAP3_MUX(MCSPI1_CLK, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCSPI1_SIMO, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCSPI1_SOMI, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCSPI1_CS0, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLDOWN),
+
+	/* McSPI 4 */
+	OMAP3_MUX(MCBSP1_CLKR, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP1_DX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP1_DR, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP1_FSX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT_PULLUP),
+
+	/* McBSP 2 */
+	OMAP3_MUX(MCBSP2_FSX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP2_CLKX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP2_DR, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+	OMAP3_MUX(MCBSP2_DX, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+
+	/* serial ports */
+	OMAP3_MUX(MCBSP3_CLKX, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(MCBSP3_FSX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
+	OMAP3_MUX(UART1_TX, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(UART1_RX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
+
+	/* DSS */
+	OMAP3_MUX(DSS_PCLK, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_HSYNC, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_VSYNC, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_ACBIAS, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA0, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA1, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA2, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA3, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA4, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA5, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA6, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA7, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA8, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA9, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA10, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA11, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA12, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA13, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA14, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA15, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA16, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA17, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA18, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA19, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA20, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA21, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA22, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+	OMAP3_MUX(DSS_DATA23, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
+
+	/* TPS IRQ */
+	OMAP3_MUX(SYS_NIRQ, OMAP_MUX_MODE0 | OMAP_WAKEUP_EN | \
+		  OMAP_PIN_INPUT_PULLUP),
+
 	{ .reg_offset = OMAP_MUX_TERMINATOR },
 };
-#else
-#define board_mux	NULL
-#endif

 static void __init cm_t35_init(void)
 {
@@ -501,9 +586,6 @@ static void __init cm_t35_init(void)
 	cm_t35_init_led();

 	usb_musb_init();
-
-	omap_mux_init_signal("sys_nirq",
-		OMAP_WAKEUP_EN | OMAP_PIN_INPUT_PULLUP);
 }

 MACHINE_START(CM_T35, "Compulab CM-T35")
-- 
1.6.4.4



-- 
Sincerely yours,
Mike.



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PATCH] omap3: cm-t35: add mux initialization (was: Re: [PATCH] omap3: cm-t35: add mux initialization)
  2009-12-09 13:27         ` [PATCH] omap3: cm-t35: add mux initialization (was: Re: [PATCH] omap3: cm-t35: add mux initialization) Mike Rapoport
@ 2009-12-09 16:36           ` Tony Lindgren
  2009-12-11 22:00           ` [APPLIED] [PATCH] omap3: cm-t35: add mux initialization Tony Lindgren
  1 sibling, 0 replies; 16+ messages in thread
From: Tony Lindgren @ 2009-12-09 16:36 UTC (permalink / raw)
  To: Mike Rapoport; +Cc: Gadiyar, Anand, linux-omap@vger.kernel.org

* Mike Rapoport <mike@compulab.co.il> [091209 05:26]:
> Tony,
> 
> Tony Lindgren wrote:
> > * Gadiyar, Anand <gadiyar@ti.com> [091207 08:35]:
> >> Tony Lindgren wrote: 
> >>> * Mike Rapoport <mike@compulab.co.il> [091206 07:30]:
> >>>> Tony,
> >>>> Any chance this can go to 2.6.33?
> >>> Sure, I was just waiting to hear back if the OUTPUT_PULLUP is
> >>> needed for sure? Or is just OUTPUT enough for musb to work?
> >>>
> >>> Tony
> >>>
> >> OUTPUT should work too. The ULPI spec recommends a weak pull-up
> >> on STP line, but we needn't really have that. Plain OUTPUT is sufficient.
> > 
> > OK, thanks for checking that. Mike, what do you prefer to do?
> > 
> > I guess in some cases the pull may be needed for a pin
> > to change faster if an external pull is not used?
> > 
> > We could add the OUTPUT_PULL defines, but we should probably
> > mark them with comments that they should be rarely needed.
> 
> Here's updated cm-t35 mux initialization that should apply to current
> linux-omap-2.6/master. Please discard the previous version and sorry for the noise.

Great. Thanks for all your help getting the mux code sorted
out. Will queue.

Regards,

Tony
 
> > Regards,
> > 
> > Tony
> > 
> > 
> 
> From 0da6d5d13351c2fc121a86ab641e25e4ff017800 Mon Sep 17 00:00:00 2001
> From: Mike Rapoport <mike@compulab.co.il>
> Date: Wed, 9 Dec 2009 15:23:24 +0200
> Subject: [PATCH] omap3: cm-t35: add mux initialization
> 
> CM-T35 can be assembled with different set of peripherals thus making
> certain interfaces available to user as GPIOs or dedicated pins. Because
> of it CM-T35 bootloader sets up mux configuration only for pins
> necessary to boot the system and the rest of the mux configuration is
> done by the kernel. Besides, having mux configuration in the kernel
> allows to minimize dependancy on bootloader.
> 
> Signed-off-by: Mike Rapoport <mike@compulab.co.il>
> ---
>  arch/arm/mach-omap2/Kconfig        |    1 +
>  arch/arm/mach-omap2/board-cm-t35.c |   96 +++++++++++++++++++++++++++++++++---
>  2 files changed, 90 insertions(+), 7 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
> index 16c0c13..66de47b 100644
> --- a/arch/arm/mach-omap2/Kconfig
> +++ b/arch/arm/mach-omap2/Kconfig
> @@ -136,6 +136,7 @@ config MACH_CM_T35
>  	bool "CompuLab CM-T35 module"
>  	depends on ARCH_OMAP3 && ARCH_OMAP34XX
>  	select OMAP_PACKAGE_CUS
> +	select OMAP_MUX
> 
>  config MACH_IGEP0020
>  	bool "IGEP0020"
> diff --git a/arch/arm/mach-omap2/board-cm-t35.c b/arch/arm/mach-omap2/board-cm-t35.c
> index 507c922..1591aae 100644
> --- a/arch/arm/mach-omap2/board-cm-t35.c
> +++ b/arch/arm/mach-omap2/board-cm-t35.c
> @@ -482,13 +482,98 @@ static void __init cm_t35_map_io(void)
>  	omap2_map_common_io();
>  }
> 
> -#ifdef CONFIG_OMAP_MUX
>  static struct omap_board_mux board_mux[] __initdata = {
> +	/* nCS and IRQ for CM-T35 ethernet */
> +	OMAP3_MUX(GPMC_NCS5, OMAP_MUX_MODE0),
> +	OMAP3_MUX(UART3_CTS_RCTX, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP),
> +
> +	/* nCS and IRQ for SB-T35 ethernet */
> +	OMAP3_MUX(GPMC_NCS4, OMAP_MUX_MODE0),
> +	OMAP3_MUX(GPMC_WAIT3, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP),
> +
> +	/* PENDOWN GPIO */
> +	OMAP3_MUX(GPMC_NCS6, OMAP_MUX_MODE4 | OMAP_PIN_INPUT),
> +
> +	/* mUSB */
> +	OMAP3_MUX(HSUSB0_CLK, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(HSUSB0_STP, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(HSUSB0_DIR, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(HSUSB0_NXT, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(HSUSB0_DATA0, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(HSUSB0_DATA1, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(HSUSB0_DATA2, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(HSUSB0_DATA3, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(HSUSB0_DATA4, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(HSUSB0_DATA5, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(HSUSB0_DATA6, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(HSUSB0_DATA7, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +
> +	/* MMC 2 */
> +	OMAP3_MUX(SDMMC2_DAT4, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(SDMMC2_DAT5, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(SDMMC2_DAT6, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(SDMMC2_DAT7, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
> +
> +	/* McSPI 1 */
> +	OMAP3_MUX(MCSPI1_CLK, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(MCSPI1_SIMO, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(MCSPI1_SOMI, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(MCSPI1_CS0, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLDOWN),
> +
> +	/* McSPI 4 */
> +	OMAP3_MUX(MCBSP1_CLKR, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(MCBSP1_DX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(MCBSP1_DR, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(MCBSP1_FSX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT_PULLUP),
> +
> +	/* McBSP 2 */
> +	OMAP3_MUX(MCBSP2_FSX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(MCBSP2_CLKX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(MCBSP2_DR, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(MCBSP2_DX, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +
> +	/* serial ports */
> +	OMAP3_MUX(MCBSP3_CLKX, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(MCBSP3_FSX, OMAP_MUX_MODE1 | OMAP_PIN_INPUT),
> +	OMAP3_MUX(UART1_TX, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(UART1_RX, OMAP_MUX_MODE0 | OMAP_PIN_INPUT),
> +
> +	/* DSS */
> +	OMAP3_MUX(DSS_PCLK, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_HSYNC, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_VSYNC, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_ACBIAS, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA0, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA1, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA2, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA3, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA4, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA5, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA6, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA7, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA8, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA9, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA10, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA11, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA12, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA13, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA14, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA15, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA16, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA17, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA18, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA19, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA20, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA21, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA22, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +	OMAP3_MUX(DSS_DATA23, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT),
> +
> +	/* TPS IRQ */
> +	OMAP3_MUX(SYS_NIRQ, OMAP_MUX_MODE0 | OMAP_WAKEUP_EN | \
> +		  OMAP_PIN_INPUT_PULLUP),
> +
>  	{ .reg_offset = OMAP_MUX_TERMINATOR },
>  };
> -#else
> -#define board_mux	NULL
> -#endif
> 
>  static void __init cm_t35_init(void)
>  {
> @@ -501,9 +586,6 @@ static void __init cm_t35_init(void)
>  	cm_t35_init_led();
> 
>  	usb_musb_init();
> -
> -	omap_mux_init_signal("sys_nirq",
> -		OMAP_WAKEUP_EN | OMAP_PIN_INPUT_PULLUP);
>  }
> 
>  MACHINE_START(CM_T35, "Compulab CM-T35")
> -- 
> 1.6.4.4
> 
> 
> 
> -- 
> Sincerely yours,
> Mike.
> 
> 

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [APPLIED]  [PATCH] omap3: cm-t35: add mux initialization
  2009-12-09 13:27         ` [PATCH] omap3: cm-t35: add mux initialization (was: Re: [PATCH] omap3: cm-t35: add mux initialization) Mike Rapoport
  2009-12-09 16:36           ` Tony Lindgren
@ 2009-12-11 22:00           ` Tony Lindgren
  1 sibling, 0 replies; 16+ messages in thread
From: Tony Lindgren @ 2009-12-11 22:00 UTC (permalink / raw)
  To: linux-omap

This patch has been applied to the linux-omap
by youw fwiendly patch wobot.

Branch in linux-omap: for-next

Initial commit ID (Likely to change): ecc6cd343ffbaf3604b7278e34eafd63f89aaaa0

PatchWorks
http://patchwork.kernel.org/patch/65987/

Git (Likely to change, and takes a while to get mirrored)
http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap-2.6.git;a=commit;h=ecc6cd343ffbaf3604b7278e34eafd63f89aaaa0



^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2009-12-11 22:00 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-29  8:07 [PATCH] omap3: cm-t35: add mux initialization Mike Rapoport
2009-11-29  8:07 ` [PATCH] omap3: mux: add shorthands for OUTPUT_PULL{UP,DOWN} Mike Rapoport
2009-11-30 21:12   ` Tony Lindgren
2009-11-30 21:58     ` Mike Rapoport
2009-11-30 23:10       ` Tony Lindgren
2009-12-01  7:57         ` Mike Rapoport
2009-11-29  8:07 ` [PATCH] omap3: cm-t35: add mux initialization Mike Rapoport
2009-12-06 15:31 ` Mike Rapoport
2009-12-07 16:22   ` Tony Lindgren
2009-12-07 16:35     ` Gadiyar, Anand
2009-12-07 17:44       ` Tony Lindgren
2009-12-08 10:40         ` Mike Rapoport
2009-12-09  6:49         ` [PATCH v2] " Mike Rapoport
2009-12-09 13:27         ` [PATCH] omap3: cm-t35: add mux initialization (was: Re: [PATCH] omap3: cm-t35: add mux initialization) Mike Rapoport
2009-12-09 16:36           ` Tony Lindgren
2009-12-11 22:00           ` [APPLIED] [PATCH] omap3: cm-t35: add mux initialization Tony Lindgren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox