aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAjay Kumar Gupta <ajay.gupta@ti.com>2010-03-25 07:25:27 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-05-20 16:21:36 -0400
commit58815fa3bffdee8dbac5af6931eea991d7a71a19 (patch)
tree582ab7198c56b21a85a83ed21e53c433a691faa0 /arch
parentd7086ddb4d3c2f8007ed5e0bb1f30a06c1bb3480 (diff)
usb: musb: Add extvbus in musb_board_data
EXTVBUS programming is required by OMAP3EVM REV >=E to supply 500mA power so adding a flag which can be used by musb driver to program EXTVBUS. Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com> Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-omap2/board-omap3evm.c3
-rw-r--r--arch/arm/mach-omap2/usb-musb.c1
-rw-r--r--arch/arm/plat-omap/include/plat/usb.h1
3 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/board-omap3evm.c b/arch/arm/mach-omap2/board-omap3evm.c
index 017bb2f4f7d2..7d7b5bc8dc31 100644
--- a/arch/arm/mach-omap2/board-omap3evm.c
+++ b/arch/arm/mach-omap2/board-omap3evm.c
@@ -702,6 +702,9 @@ static void __init omap3_evm_init(void)
702 omap_mux_init_gpio(21, OMAP_PIN_INPUT_PULLUP); 702 omap_mux_init_gpio(21, OMAP_PIN_INPUT_PULLUP);
703 ehci_pdata.reset_gpio_port[1] = 21; 703 ehci_pdata.reset_gpio_port[1] = 21;
704 704
705 /* EVM REV >= E can supply 500mA with EXTVBUS programming */
706 musb_board_data.power = 500;
707 musb_board_data.extvbus = 1;
705 } else { 708 } else {
706 /* setup EHCI phy reset on MDC */ 709 /* setup EHCI phy reset on MDC */
707 omap_mux_init_gpio(135, OMAP_PIN_OUTPUT); 710 omap_mux_init_gpio(135, OMAP_PIN_OUTPUT);
diff --git a/arch/arm/mach-omap2/usb-musb.c b/arch/arm/mach-omap2/usb-musb.c
index 6d41fa7b2ce8..96f6787e00b2 100644
--- a/arch/arm/mach-omap2/usb-musb.c
+++ b/arch/arm/mach-omap2/usb-musb.c
@@ -107,6 +107,7 @@ void __init usb_musb_init(struct omap_musb_board_data *board_data)
107 musb_plat.board_data = board_data; 107 musb_plat.board_data = board_data;
108 musb_plat.power = board_data->power >> 1; 108 musb_plat.power = board_data->power >> 1;
109 musb_plat.mode = board_data->mode; 109 musb_plat.mode = board_data->mode;
110 musb_plat.extvbus = board_data->extvbus;
110 111
111 if (platform_device_register(&musb_device) < 0) 112 if (platform_device_register(&musb_device) < 0)
112 printk(KERN_ERR "Unable to register HS-USB (MUSB) device\n"); 113 printk(KERN_ERR "Unable to register HS-USB (MUSB) device\n");
diff --git a/arch/arm/plat-omap/include/plat/usb.h b/arch/arm/plat-omap/include/plat/usb.h
index 876ca8d5e927..60c734f40ed1 100644
--- a/arch/arm/plat-omap/include/plat/usb.h
+++ b/arch/arm/plat-omap/include/plat/usb.h
@@ -47,6 +47,7 @@ struct omap_musb_board_data {
47 u8 interface_type; 47 u8 interface_type;
48 u8 mode; 48 u8 mode;
49 u16 power; 49 u16 power;
50 unsigned extvbus:1;
50}; 51};
51 52
52enum musb_interface {MUSB_INTERFACE_ULPI, MUSB_INTERFACE_UTMI}; 53enum musb_interface {MUSB_INTERFACE_ULPI, MUSB_INTERFACE_UTMI};