提交 44bb3198 编写于 作者: A Ashwin Bihari 提交者: Tony Lindgren

Add MSUB support for the LogicPD OMAP3530 DevKits

Add support for the OMAP3 MUSB OTG controller to the LogicPD
OMAP3530 SOM-LV[1] and Torpedo[2] DevKits

[1] - www.logicpd.com/products/system-on-modules/omap35x-som-lv/
[2] - www.logicpd.com/products/system-on-modules/omap35x-torpedo-som/
Signed-off-by: NAshwin Bihari <ashwin.bihari@logicpd.com>
Signed-off-by: NTony Lindgren <tony@atomide.com>
上级 3b511201
...@@ -4,8 +4,9 @@ ...@@ -4,8 +4,9 @@
* Copyright (C) 2010 Li-Pro.Net * Copyright (C) 2010 Li-Pro.Net
* Stephan Linz <linz@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> * Peter Barada <peter.barada@logicpd.com>
* Ashwin BIhari <ashwin.bihari@logicpd.com>
* *
* Modified from Beagle, EVM, and RX51 * Modified from Beagle, EVM, and RX51
* *
...@@ -45,6 +46,7 @@ ...@@ -45,6 +46,7 @@
#include <plat/gpmc-smsc911x.h> #include <plat/gpmc-smsc911x.h>
#include <plat/gpmc.h> #include <plat/gpmc.h>
#include <plat/sdrc.h> #include <plat/sdrc.h>
#include <plat/usb.h>
#define OMAP3LOGIC_SMSC911X_CS 1 #define OMAP3LOGIC_SMSC911X_CS 1
...@@ -85,6 +87,11 @@ static struct twl4030_gpio_platform_data omap3logic_gpio_data = { ...@@ -85,6 +87,11 @@ static struct twl4030_gpio_platform_data omap3logic_gpio_data = {
| BIT(13) | BIT(15) | BIT(16) | BIT(17), | 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 = { static struct twl4030_platform_data omap3logic_twldata = {
.irq_base = TWL4030_IRQ_BASE, .irq_base = TWL4030_IRQ_BASE,
.irq_end = TWL4030_IRQ_END, .irq_end = TWL4030_IRQ_END,
...@@ -92,6 +99,7 @@ static struct twl4030_platform_data omap3logic_twldata = { ...@@ -92,6 +99,7 @@ static struct twl4030_platform_data omap3logic_twldata = {
/* platform_data for children goes here */ /* platform_data for children goes here */
.gpio = &omap3logic_gpio_data, .gpio = &omap3logic_gpio_data,
.vmmc1 = &omap3logic_vmmc1, .vmmc1 = &omap3logic_vmmc1,
.usb = &omap3logic_usb_data,
}; };
static int __init omap3logic_i2c_init(void) static int __init omap3logic_i2c_init(void)
...@@ -185,6 +193,20 @@ static inline void __init board_smsc911x_init(void) ...@@ -185,6 +193,20 @@ static inline void __init board_smsc911x_init(void)
#ifdef CONFIG_OMAP_MUX #ifdef CONFIG_OMAP_MUX
static struct omap_board_mux board_mux[] __initdata = { 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 }, { .reg_offset = OMAP_MUX_TERMINATOR },
}; };
#endif #endif
...@@ -205,6 +227,8 @@ static void __init omap3logic_init(void) ...@@ -205,6 +227,8 @@ static void __init omap3logic_init(void)
board_mmc_init(); board_mmc_init();
board_smsc911x_init(); board_smsc911x_init();
usb_musb_init(NULL);
/* Ensure SDRC pins are mux'd for self-refresh */ /* Ensure SDRC pins are mux'd for self-refresh */
omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT); omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT);
omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT); omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册