public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* [patch 2.6.18-omap-git] omap2 fullspeed usb 2/2 (apollon)
@ 2006-10-20 19:52 David Brownell
  2006-10-23  4:46 ` Kyungmin Park
  0 siblings, 1 reply; 4+ messages in thread
From: David Brownell @ 2006-10-20 19:52 UTC (permalink / raw)
  To: linux-omap-open-source

[PATCH] USB device support on Apollon

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
-----
Needs re-testing ... at this point only Apollon support is expected to behave.

Index: h4/arch/arm/mach-omap2/board-apollon.c
===================================================================
--- h4.orig/arch/arm/mach-omap2/board-apollon.c	2006-10-18 01:40:22.000000000 -0700
+++ h4/arch/arm/mach-omap2/board-apollon.c	2006-10-18 01:41:54.000000000 -0700
@@ -234,6 +234,13 @@ static struct omap_mmc_config apollon_mm
 	},
 };
 
+static struct omap_usb_config apollon_usb_config __initdata = {
+	.register_dev	= 1,
+	.hmc_mode	= 0x14,	/* 0:dev 1:host1 2: disable */
+
+	.pins[0]	= 6,
+};
+
 static struct omap_lcd_config apollon_lcd_config __initdata = {
 	.ctrl_name	= "internal",
 };
@@ -241,6 +248,7 @@ static struct omap_lcd_config apollon_lc
 static struct omap_board_config_kernel apollon_config[] = {
 	{ OMAP_TAG_UART,	&apollon_uart_config },
 	{ OMAP_TAG_MMC,		&apollon_mmc_config },
+	{ OMAP_TAG_USB,		&apollon_usb_config },
 	{ OMAP_TAG_LCD,		&apollon_lcd_config },
 };
 
@@ -292,28 +300,35 @@ static void __init apollon_sw_init(void)
 	omap_request_gpio(SW_DOWN_GPIO58);
 	omap_set_gpio_direction(SW_DOWN_GPIO58, 1);
 
-	set_irq_type(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), IRQT_RISING);
 	if (request_irq(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), &apollon_sw_interrupt,
 				IRQF_SHARED, "enter sw",
 				&apollon_sw_interrupt))
 		return;
-	set_irq_type(OMAP_GPIO_IRQ(SW_UP_GPIO17), IRQT_RISING);
 	if (request_irq(OMAP_GPIO_IRQ(SW_UP_GPIO17), &apollon_sw_interrupt,
 				IRQF_SHARED, "up sw",
 				&apollon_sw_interrupt))
 		return;
-	set_irq_type(OMAP_GPIO_IRQ(SW_DOWN_GPIO58), IRQT_RISING);
 	if (request_irq(OMAP_GPIO_IRQ(SW_DOWN_GPIO58), &apollon_sw_interrupt,
 				IRQF_SHARED, "down sw",
 				&apollon_sw_interrupt))
 		return;
 }
 
+static void __init apollon_usb_init(void)
+{
+	/* USB device */
+	/* DEVICE_SUSPEND */
+	omap_cfg_reg(P21_242X_GPIO12);
+	omap_set_gpio_direction(12, 0);
+	omap_set_gpio_dataout(12, 0);
+}
+
 static void __init omap_apollon_init(void)
 {
 	apollon_led_init();
 	apollon_sw_init();
 	apollon_flash_init();
+	apollon_usb_init();
 
 	/* REVISIT: where's the correct place */
 	omap_cfg_reg(W19_24XX_SYS_NIRQ);

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

* RE: [patch 2.6.18-omap-git] omap2 fullspeed usb 2/2 (apollon)
  2006-10-20 19:52 [patch 2.6.18-omap-git] omap2 fullspeed usb 2/2 (apollon) David Brownell
@ 2006-10-23  4:46 ` Kyungmin Park
  2006-10-24 18:43   ` David Brownell
  0 siblings, 1 reply; 4+ messages in thread
From: Kyungmin Park @ 2006-10-23  4:46 UTC (permalink / raw)
  To: 'David Brownell', linux-omap-open-source

[PATCH] USB device support on Apollon
 
  Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>

----

diff --git a/arch/arm/mach-omap2/board-apollon.c b/arch/arm/mach-
omap2/board-apollon.c
index 99651b2..e1e2246 100644
--- a/arch/arm/mach-omap2/board-apollon.c
+++ b/arch/arm/mach-omap2/board-apollon.c
@@ -235,6 +235,13 @@ static struct omap_mmc_config apollon_mm
 	},
 };
 
+static struct omap_usb_config apollon_usb_config __initdata = {
+	.register_dev	= 1,
+	.hmc_mode	= 0x14,	/* 0:dev 1:host1 2:disable */
+
+	.pins[0]	= 6,
+};
+
 static struct omap_lcd_config apollon_lcd_config __initdata = {
 	.ctrl_name	= "internal",
 };
@@ -242,6 +249,7 @@ static struct omap_lcd_config apollon_lc
 static struct omap_board_config_kernel apollon_config[] = {
 	{ OMAP_TAG_UART,	&apollon_uart_config },
 	{ OMAP_TAG_MMC,		&apollon_mmc_config },
+	{ OMAP_TAG_USB,		&apollon_usb_config },
 	{ OMAP_TAG_LCD,		&apollon_lcd_config },
 };
 
@@ -310,11 +318,22 @@ static void __init apollon_sw_init(void)
 		return;
 }
 
+static void __init apollon_usb_init(void)
+{
+	/* USB device */
+	/* DEVICE_SUSPEND */
+	omap_cfg_reg(P21_242X_GPIO12);
+	omap_request_gpio(12);
+	omap_set_gpio_direction(12, 0);		/* OUT */
+	omap_set_gpio_dataout(12, 0);
+}
+
 static void __init omap_apollon_init(void)
 {
 	apollon_led_init();
 	apollon_sw_init();
 	apollon_flash_init();
+	apollon_usb_init();
 
 	/* REVISIT: where's the correct place */
 	omap_cfg_reg(W19_24XX_SYS_NIRQ);

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

* Re: [patch 2.6.18-omap-git] omap2 fullspeed usb 2/2 (apollon)
  2006-10-23  4:46 ` Kyungmin Park
@ 2006-10-24 18:43   ` David Brownell
  2006-10-25 18:46     ` Tony Lindgren
  0 siblings, 1 reply; 4+ messages in thread
From: David Brownell @ 2006-10-24 18:43 UTC (permalink / raw)
  To: kyungmin.park; +Cc: linux-omap-open-source

On Sunday 22 October 2006 9:46 pm, Kyungmin Park wrote:
> [PATCH] USB device support on Apollon
>  
>   Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>


So this is what I sent but without the set_irq_type() stuff that somehow
got in, right?

Have you verified that it's stil behaving on your board?

- Dave


> ----
> 
> diff --git a/arch/arm/mach-omap2/board-apollon.c b/arch/arm/mach-
> omap2/board-apollon.c
> index 99651b2..e1e2246 100644
> --- a/arch/arm/mach-omap2/board-apollon.c
> +++ b/arch/arm/mach-omap2/board-apollon.c
> @@ -235,6 +235,13 @@ static struct omap_mmc_config apollon_mm
>  	},
>  };
>  
> +static struct omap_usb_config apollon_usb_config __initdata = {
> +	.register_dev	= 1,
> +	.hmc_mode	= 0x14,	/* 0:dev 1:host1 2:disable */
> +
> +	.pins[0]	= 6,
> +};
> +
>  static struct omap_lcd_config apollon_lcd_config __initdata = {
>  	.ctrl_name	= "internal",
>  };
> @@ -242,6 +249,7 @@ static struct omap_lcd_config apollon_lc
>  static struct omap_board_config_kernel apollon_config[] = {
>  	{ OMAP_TAG_UART,	&apollon_uart_config },
>  	{ OMAP_TAG_MMC,		&apollon_mmc_config },
> +	{ OMAP_TAG_USB,		&apollon_usb_config },
>  	{ OMAP_TAG_LCD,		&apollon_lcd_config },
>  };
>  
> @@ -310,11 +318,22 @@ static void __init apollon_sw_init(void)
>  		return;
>  }
>  
> +static void __init apollon_usb_init(void)
> +{
> +	/* USB device */
> +	/* DEVICE_SUSPEND */
> +	omap_cfg_reg(P21_242X_GPIO12);
> +	omap_request_gpio(12);
> +	omap_set_gpio_direction(12, 0);		/* OUT */
> +	omap_set_gpio_dataout(12, 0);
> +}
> +
>  static void __init omap_apollon_init(void)
>  {
>  	apollon_led_init();
>  	apollon_sw_init();
>  	apollon_flash_init();
> +	apollon_usb_init();
>  
>  	/* REVISIT: where's the correct place */
>  	omap_cfg_reg(W19_24XX_SYS_NIRQ);
> 

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

* Re: [patch 2.6.18-omap-git] omap2 fullspeed usb 2/2 (apollon)
  2006-10-24 18:43   ` David Brownell
@ 2006-10-25 18:46     ` Tony Lindgren
  0 siblings, 0 replies; 4+ messages in thread
From: Tony Lindgren @ 2006-10-25 18:46 UTC (permalink / raw)
  To: David Brownell; +Cc: linux-omap-open-source

* David Brownell <david-b@pacbell.net> [061024 22:00]:
> On Sunday 22 October 2006 9:46 pm, Kyungmin Park wrote:
> > [PATCH] USB device support on Apollon
> >  
> >   Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
> 
> 
> So this is what I sent but without the set_irq_type() stuff that somehow
> got in, right?
> 
> Have you verified that it's stil behaving on your board?

I've pushed it.

Tony

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

end of thread, other threads:[~2006-10-25 18:46 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-10-20 19:52 [patch 2.6.18-omap-git] omap2 fullspeed usb 2/2 (apollon) David Brownell
2006-10-23  4:46 ` Kyungmin Park
2006-10-24 18:43   ` David Brownell
2006-10-25 18:46     ` Tony Lindgren

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