summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/linux/linux-omap3-git/overo/overo.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/linux/linux-omap3-git/overo/overo.patch')
-rw-r--r--meta/recipes-kernel/linux/linux-omap3-git/overo/overo.patch97
1 files changed, 97 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux-omap3-git/overo/overo.patch b/meta/recipes-kernel/linux/linux-omap3-git/overo/overo.patch
new file mode 100644
index 0000000000..5e9b696b46
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-omap3-git/overo/overo.patch
@@ -0,0 +1,97 @@
1diff --git a/arch/arm/mach-omap2/board-overo.c b/arch/arm/mach-omap2/board-overo.c
2index 396ec33..85ef43f 100644
3--- a/arch/arm/mach-omap2/board-overo.c
4+++ b/arch/arm/mach-omap2/board-overo.c
5@@ -158,11 +158,6 @@ static void __init overo_init_irq(void)
6 omap_gpio_init();
7 }
8
9-static struct platform_device overo_twl4030rtc_device = {
10- .name = "twl4030_rtc",
11- .id = -1,
12-};
13-
14 static struct platform_device overo_lcd_device = {
15 .name = "overo_lcd",
16 .id = -1,
17@@ -179,9 +174,6 @@ static struct omap_board_config_kernel overo_config[] __initdata = {
18
19 static struct platform_device *overo_devices[] __initdata = {
20 &overo_lcd_device,
21-#ifdef CONFIG_RTC_DRV_TWL4030
22- &overo_twl4030rtc_device,
23-#endif
24 };
25
26 static void __init overo_init(void)
27@@ -207,6 +199,12 @@ static void __init overo_init(void)
28 printk(KERN_ERR "could not obtain gpio for OVERO_GPIO_W2W_NRESET\n");
29 }
30
31+ if ((gpio_request(OVERO_GPIO_BT_XGATE, "OVERO_GPIO_BT_XGATE") == 0) &&
32+ (gpio_direction_output(OVERO_GPIO_BT_XGATE, 0) == 0))
33+ gpio_export(OVERO_GPIO_BT_XGATE, 0);
34+ else
35+ printk(KERN_ERR "could not obtain gpio for OVERO_GPIO_BT_XGATE\n");
36+
37 if ((gpio_request(OVERO_GPIO_BT_NRESET, "OVERO_GPIO_BT_NRESET") == 0) &&
38 (gpio_direction_output(OVERO_GPIO_BT_NRESET, 1) == 0)) {
39 gpio_export(OVERO_GPIO_BT_NRESET, 0);
40diff --git a/arch/arm/plat-omap/include/mach/board-overo.h b/arch/arm/plat-omap/include/mach/board-overo.h
41index b70f22a..7ecae66 100644
42--- a/arch/arm/plat-omap/include/mach/board-overo.h
43+++ b/arch/arm/plat-omap/include/mach/board-overo.h
44@@ -16,6 +16,7 @@
45 #ifndef __ASM_ARCH_OVERO_H
46 #define __ASM_ARCH_OVERO_H
47
48+#define OVERO_GPIO_BT_XGATE 15
49 #define OVERO_GPIO_W2W_NRESET 16
50 #define OVERO_GPIO_BT_NRESET 164
51 #define OVERO_GPIO_USBH_CPEN 168
52diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
53index c939f81..b9c2c76 100644
54--- a/drivers/usb/musb/musb_core.c
55+++ b/drivers/usb/musb/musb_core.c
56@@ -1814,6 +1814,9 @@ allocate_instance(struct device *dev,
57 ep->epnum = epnum;
58 }
59
60+#ifdef CONFIG_USB_MUSB_OTG
61+ otg_set_transceiver(&musb->xceiv);
62+#endif
63 musb->controller = dev;
64 return musb;
65 }
66diff --git a/drivers/usb/musb/omap2430.c b/drivers/usb/musb/omap2430.c
67index 9d2dcb1..51af80b 100644
68--- a/drivers/usb/musb/omap2430.c
69+++ b/drivers/usb/musb/omap2430.c
70@@ -215,12 +215,14 @@ void musb_platform_set_mode(struct musb *musb, u8 musb_mode)
71
72 int __init musb_platform_init(struct musb *musb)
73 {
74+ struct otg_transceiver *xceiv = otg_get_transceiver();
75 u32 l;
76
77 #if defined(CONFIG_ARCH_OMAP2430)
78 omap_cfg_reg(AE5_2430_USB0HS_STP);
79 #endif
80
81+ musb->xceiv = *xceiv;
82 musb_platform_resume(musb);
83
84 l = omap_readl(OTG_SYSCONFIG);
85diff --git a/scripts/Makefile.fwinst b/scripts/Makefile.fwinst
86index 6bf8e87..fb20532 100644
87--- a/scripts/Makefile.fwinst
88+++ b/scripts/Makefile.fwinst
89@@ -37,7 +37,7 @@ install-all-dirs: $(installed-fw-dirs)
90 @true
91
92 quiet_cmd_install = INSTALL $(subst $(srctree)/,,$@)
93- cmd_install = $(INSTALL) -m0644 $< $@
94+ cmd_install = $(INSTALL) -m 0644 $< $@
95
96 $(installed-fw-dirs):
97 $(call cmd,mkdir)