aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-omap2/board-4430sdp.c10
-rw-r--r--arch/arm/mach-omap2/usb-musb.c9
-rw-r--r--arch/arm/plat-omap/include/plat/omap44xx.h1
3 files changed, 18 insertions, 2 deletions
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c
index 793ce8f4e927..86b240e7aa7c 100644
--- a/arch/arm/mach-omap2/board-4430sdp.c
+++ b/arch/arm/mach-omap2/board-4430sdp.c
@@ -17,6 +17,7 @@
17#include <linux/platform_device.h> 17#include <linux/platform_device.h>
18#include <linux/io.h> 18#include <linux/io.h>
19#include <linux/gpio.h> 19#include <linux/gpio.h>
20#include <linux/usb/otg.h>
20 21
21#include <mach/hardware.h> 22#include <mach/hardware.h>
22#include <asm/mach-types.h> 23#include <asm/mach-types.h>
@@ -27,6 +28,7 @@
27#include <plat/common.h> 28#include <plat/common.h>
28#include <plat/control.h> 29#include <plat/control.h>
29#include <plat/timer-gp.h> 30#include <plat/timer-gp.h>
31#include <plat/usb.h>
30#include <asm/hardware/gic.h> 32#include <asm/hardware/gic.h>
31 33
32static struct platform_device sdp4430_lcd_device = { 34static struct platform_device sdp4430_lcd_device = {
@@ -73,11 +75,19 @@ static void __init omap_4430sdp_init_irq(void)
73 omap_gpio_init(); 75 omap_gpio_init();
74} 76}
75 77
78static struct omap_musb_board_data musb_board_data = {
79 .interface_type = MUSB_INTERFACE_UTMI,
80 .mode = MUSB_PERIPHERAL,
81 .power = 100,
82};
76 83
77static void __init omap_4430sdp_init(void) 84static void __init omap_4430sdp_init(void)
78{ 85{
79 platform_add_devices(sdp4430_devices, ARRAY_SIZE(sdp4430_devices)); 86 platform_add_devices(sdp4430_devices, ARRAY_SIZE(sdp4430_devices));
80 omap_serial_init(); 87 omap_serial_init();
88 /* OMAP4 SDP uses internal transceiver so register nop transceiver */
89 usb_nop_xceiv_register();
90 usb_musb_init(&musb_board_data);
81} 91}
82 92
83static void __init omap_4430sdp_map_io(void) 93static void __init omap_4430sdp_map_io(void)
diff --git a/arch/arm/mach-omap2/usb-musb.c b/arch/arm/mach-omap2/usb-musb.c
index 2221a6ccdeee..d5bea43e9422 100644
--- a/arch/arm/mach-omap2/usb-musb.c
+++ b/arch/arm/mach-omap2/usb-musb.c
@@ -88,10 +88,15 @@ static struct platform_device musb_device = {
88 88
89void __init usb_musb_init(struct omap_musb_board_data *board_data) 89void __init usb_musb_init(struct omap_musb_board_data *board_data)
90{ 90{
91 if (cpu_is_omap243x()) 91 if (cpu_is_omap243x()) {
92 musb_resources[0].start = OMAP243X_HS_BASE; 92 musb_resources[0].start = OMAP243X_HS_BASE;
93 else 93 } else if (cpu_is_omap34xx()) {
94 musb_resources[0].start = OMAP34XX_HSUSB_OTG_BASE; 94 musb_resources[0].start = OMAP34XX_HSUSB_OTG_BASE;
95 } else if (cpu_is_omap44xx()) {
96 musb_resources[0].start = OMAP44XX_HSUSB_OTG_BASE;
97 musb_resources[1].start = INT_44XX_HS_USB_MC;
98 musb_resources[2].start = INT_44XX_HS_USB_DMA;
99 }
95 musb_resources[0].end = musb_resources[0].start + SZ_4K - 1; 100 musb_resources[0].end = musb_resources[0].start + SZ_4K - 1;
96 101
97 /* 102 /*
diff --git a/arch/arm/plat-omap/include/plat/omap44xx.h b/arch/arm/plat-omap/include/plat/omap44xx.h
index 2068b39f76bb..8fc15d33089a 100644
--- a/arch/arm/plat-omap/include/plat/omap44xx.h
+++ b/arch/arm/plat-omap/include/plat/omap44xx.h
@@ -45,6 +45,7 @@
45#define OMAP44XX_MCPDM_L3_BASE 0x49032000 45#define OMAP44XX_MCPDM_L3_BASE 0x49032000
46 46
47#define OMAP44XX_MAILBOX_BASE (L4_44XX_BASE + 0xF4000) 47#define OMAP44XX_MAILBOX_BASE (L4_44XX_BASE + 0xF4000)
48#define OMAP44XX_HSUSB_OTG_BASE (L4_44XX_BASE + 0xAB000)
48 49
49#endif /* __ASM_ARCH_OMAP44XX_H */ 50#endif /* __ASM_ARCH_OMAP44XX_H */
50 51