diff options
Diffstat (limited to 'arch/arm/mach-omap2/board-omap3logic.c')
| -rw-r--r-- | arch/arm/mach-omap2/board-omap3logic.c | 26 | 
1 files changed, 25 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/board-omap3logic.c b/arch/arm/mach-omap2/board-omap3logic.c index 89279275589..932e1778aff 100644 --- a/arch/arm/mach-omap2/board-omap3logic.c +++ b/arch/arm/mach-omap2/board-omap3logic.c @@ -4,8 +4,9 @@   * Copyright (C) 2010 Li-Pro.Net   * Stephan Linz <linz@li-pro.net>   * - * Copyright (C) 2010 Logic Product Development, Inc. + * Copyright (C) 2010-2012 Logic Product Development, Inc.   * Peter Barada <peter.barada@logicpd.com> + * Ashwin BIhari <ashwin.bihari@logicpd.com>   *   * Modified from Beagle, EVM, and RX51   * @@ -45,6 +46,7 @@  #include <plat/gpmc-smsc911x.h>  #include <plat/gpmc.h>  #include <plat/sdrc.h> +#include <plat/usb.h>  #define OMAP3LOGIC_SMSC911X_CS			1 @@ -85,6 +87,11 @@ static struct twl4030_gpio_platform_data omap3logic_gpio_data = {  			| BIT(13) | BIT(15) | BIT(16) | BIT(17),  }; +static struct twl4030_usb_data omap3logic_usb_data = { +	.usb_mode	= T2_USB_MODE_ULPI, +}; + +  static struct twl4030_platform_data omap3logic_twldata = {  	.irq_base	= TWL4030_IRQ_BASE,  	.irq_end	= TWL4030_IRQ_END, @@ -92,6 +99,7 @@ static struct twl4030_platform_data omap3logic_twldata = {  	/* platform_data for children goes here */  	.gpio		= &omap3logic_gpio_data,  	.vmmc1		= &omap3logic_vmmc1, +	.usb		= &omap3logic_usb_data,  };  static int __init omap3logic_i2c_init(void) @@ -185,6 +193,20 @@ static inline void __init board_smsc911x_init(void)  #ifdef CONFIG_OMAP_MUX  static struct omap_board_mux board_mux[] __initdata = { +	/* 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), +  	{ .reg_offset = OMAP_MUX_TERMINATOR },  };  #endif @@ -205,6 +227,8 @@ static void __init omap3logic_init(void)  	board_mmc_init();  	board_smsc911x_init(); +	usb_musb_init(NULL); +  	/* Ensure SDRC pins are mux'd for self-refresh */  	omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT);  	omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT);  |