]> pilppa.com Git - linux-2.6-omap-h63xx.git/commitdiff
ARM: OMAP: USB device support on Apollon
authorKyungmin Park <kyungmin.park@samsung.com>
Wed, 25 Oct 2006 18:43:41 +0000 (21:43 +0300)
committerTony Lindgren <tony@atomide.com>
Wed, 25 Oct 2006 18:43:41 +0000 (21:43 +0300)
USB device support on Apollon

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/mach-omap2/board-apollon.c

index 131358d7c09c3ceb475482fadaee49f9e01f878e..2640ff62b61e14735e05a6184a0ccfbb9fffe2ac 100644 (file)
@@ -235,6 +235,13 @@ static struct omap_mmc_config apollon_mmc_config __initdata = {
        },
 };
 
+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_lcd_config __initdata = {
 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);