Commit e8e2ff46 authored by Gupta, Ajay Kumar's avatar Gupta, Ajay Kumar Committed by Greg Kroah-Hartman

USB: musb: fix the nop registration for OMAP3EVM

OMAP3EVM uses ISP1504 phy which doesn't require any programming and
thus has to use NOP otg transceiver.

Cleanups being done:
	- Remove unwanted code in usb-musb.c file
	- Register NOP in OMAP3EVM board file using
	  usb_nop_xceiv_register().
	- Select NOP_USB_XCEIV for OMAP3EVM boards.
	- Don't enable TWL4030_USB in omap3_evm_defconfig
Signed-off-by: default avatarAjay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: default avatarEino-Ville Talvala <talvala@stanford.edu>
Acked-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 18753ebc
...@@ -1107,7 +1107,7 @@ CONFIG_USB_ZERO=m ...@@ -1107,7 +1107,7 @@ CONFIG_USB_ZERO=m
CONFIG_USB_OTG_UTILS=y CONFIG_USB_OTG_UTILS=y
# CONFIG_USB_GPIO_VBUS is not set # CONFIG_USB_GPIO_VBUS is not set
# CONFIG_ISP1301_OMAP is not set # CONFIG_ISP1301_OMAP is not set
CONFIG_TWL4030_USB=y # CONFIG_TWL4030_USB is not set
# CONFIG_NOP_USB_XCEIV is not set # CONFIG_NOP_USB_XCEIV is not set
CONFIG_MMC=y CONFIG_MMC=y
# CONFIG_MMC_DEBUG is not set # CONFIG_MMC_DEBUG is not set
......
...@@ -25,6 +25,7 @@ ...@@ -25,6 +25,7 @@
#include <linux/spi/spi.h> #include <linux/spi/spi.h>
#include <linux/spi/ads7846.h> #include <linux/spi/ads7846.h>
#include <linux/i2c/twl4030.h> #include <linux/i2c/twl4030.h>
#include <linux/usb/otg.h>
#include <mach/hardware.h> #include <mach/hardware.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
...@@ -307,6 +308,10 @@ static void __init omap3_evm_init(void) ...@@ -307,6 +308,10 @@ static void __init omap3_evm_init(void)
ARRAY_SIZE(omap3evm_spi_board_info)); ARRAY_SIZE(omap3evm_spi_board_info));
omap_serial_init(); omap_serial_init();
#ifdef CONFIG_NOP_USB_XCEIV
/* OMAP3EVM uses ISP1504 phy and so register nop transceiver */
usb_nop_xceiv_register();
#endif
usb_musb_init(); usb_musb_init();
ads7846_dev_init(); ads7846_dev_init();
} }
......
...@@ -155,20 +155,6 @@ static struct platform_device musb_device = { ...@@ -155,20 +155,6 @@ static struct platform_device musb_device = {
.resource = musb_resources, .resource = musb_resources,
}; };
#ifdef CONFIG_NOP_USB_XCEIV
static u64 nop_xceiv_dmamask = DMA_BIT_MASK(32);
static struct platform_device nop_xceiv_device = {
.name = "nop_usb_xceiv",
.id = -1,
.dev = {
.dma_mask = &nop_xceiv_dmamask,
.coherent_dma_mask = DMA_BIT_MASK(32),
.platform_data = NULL,
},
};
#endif
void __init usb_musb_init(void) void __init usb_musb_init(void)
{ {
if (cpu_is_omap243x()) if (cpu_is_omap243x())
...@@ -183,13 +169,6 @@ void __init usb_musb_init(void) ...@@ -183,13 +169,6 @@ void __init usb_musb_init(void)
*/ */
musb_plat.clock = "ick"; musb_plat.clock = "ick";
#ifdef CONFIG_NOP_USB_XCEIV
if (platform_device_register(&nop_xceiv_device) < 0) {
printk(KERN_ERR "Unable to register NOP-XCEIV device\n");
return;
}
#endif
if (platform_device_register(&musb_device) < 0) { if (platform_device_register(&musb_device) < 0) {
printk(KERN_ERR "Unable to register HS-USB (MUSB) device\n"); printk(KERN_ERR "Unable to register HS-USB (MUSB) device\n");
return; return;
......
...@@ -12,6 +12,7 @@ config USB_MUSB_HDRC ...@@ -12,6 +12,7 @@ config USB_MUSB_HDRC
depends on !SUPERH depends on !SUPERH
select NOP_USB_XCEIV if ARCH_DAVINCI select NOP_USB_XCEIV if ARCH_DAVINCI
select TWL4030_USB if MACH_OMAP_3430SDP select TWL4030_USB if MACH_OMAP_3430SDP
select NOP_USB_XCEIV if MACH_OMAP3EVM
select USB_OTG_UTILS select USB_OTG_UTILS
tristate 'Inventra Highspeed Dual Role Controller (TI, ADI, ...)' tristate 'Inventra Highspeed Dual Role Controller (TI, ADI, ...)'
help help
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment