From c5dbfe747097826deaffc3effaf212da398093f2 Mon Sep 17 00:00:00 2001 From: Ajay Kumar Gupta Date: Thu, 8 Jan 2009 16:23:56 +0530 Subject: [PATCH] usb: musb: adding support for registering nop xceiv Adding support for registering nop usb transceiver for musb platforms. Tested with OMAP35xx EVM having OTG phy ISP1504 which is autonomous and doesn't require any phy programming. Signed-off-by: Ajay Kumar Gupta Signed-off-by: Tony Lindgren --- arch/arm/mach-omap2/usb-musb.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/arch/arm/mach-omap2/usb-musb.c b/arch/arm/mach-omap2/usb-musb.c index 327af7d494f..81b4195cbef 100644 --- a/arch/arm/mach-omap2/usb-musb.c +++ b/arch/arm/mach-omap2/usb-musb.c @@ -146,6 +146,20 @@ static struct platform_device musb_device = { .resource = musb_resources, }; +#ifdef CONFIG_NOP_USB_XCEIV +static u64 nop_xceiv_dmamask = DMA_32BIT_MASK; + +static struct platform_device nop_xceiv_device = { + .name = "nop_usb_xceiv", + .id = -1, + .dev = { + .dma_mask = &nop_xceiv_dmamask, + .coherent_dma_mask = DMA_32BIT_MASK, + .platform_data = NULL, + }, +}; +#endif + void __init usb_musb_init(void) { if (cpu_is_omap243x()) { @@ -158,6 +172,13 @@ void __init usb_musb_init(void) musb_resources[0].end = musb_resources[0].start + SZ_8K - 1; +#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) { printk(KERN_ERR "Unable to register HS-USB (MUSB) device\n"); return; -- 2.41.0