da8xx.c (d445b6da8da491e025eb60576ce959f6a3a56a4f) da8xx.c (b96d3b08365f5a9603f50f3aadca6012f7eaffa1)
1/*
2 * Texas Instruments DA8xx/OMAP-L1x "glue layer"
3 *
4 * Copyright (c) 2008-2009 MontaVista Software, Inc. <source@mvista.com>
5 *
6 * Based on the DaVinci "glue layer" code.
7 * Copyright (C) 2005-2006 by Texas Instruments
8 *

--- 411 unchanged lines hidden (view full) ---

420 musb->mregs += DA8XX_MENTOR_CORE_OFFSET;
421
422 /* Returns zero if e.g. not clocked */
423 rev = musb_readl(reg_base, DA8XX_USB_REVISION_REG);
424 if (!rev)
425 goto fail;
426
427 usb_nop_xceiv_register();
1/*
2 * Texas Instruments DA8xx/OMAP-L1x "glue layer"
3 *
4 * Copyright (c) 2008-2009 MontaVista Software, Inc. <source@mvista.com>
5 *
6 * Based on the DaVinci "glue layer" code.
7 * Copyright (C) 2005-2006 by Texas Instruments
8 *

--- 411 unchanged lines hidden (view full) ---

420 musb->mregs += DA8XX_MENTOR_CORE_OFFSET;
421
422 /* Returns zero if e.g. not clocked */
423 rev = musb_readl(reg_base, DA8XX_USB_REVISION_REG);
424 if (!rev)
425 goto fail;
426
427 usb_nop_xceiv_register();
428 musb->xceiv = otg_get_transceiver();
428 musb->xceiv = usb_get_transceiver();
429 if (!musb->xceiv)
430 goto fail;
431
432 if (is_host_enabled(musb))
433 setup_timer(&otg_workaround, otg_timer, (unsigned long)musb);
434
435 /* Reset the controller */
436 musb_writel(reg_base, DA8XX_USB_CTRL_REG, DA8XX_SOFT_RESET_MASK);

--- 16 unchanged lines hidden (view full) ---

453
454static int da8xx_musb_exit(struct musb *musb)
455{
456 if (is_host_enabled(musb))
457 del_timer_sync(&otg_workaround);
458
459 phy_off();
460
429 if (!musb->xceiv)
430 goto fail;
431
432 if (is_host_enabled(musb))
433 setup_timer(&otg_workaround, otg_timer, (unsigned long)musb);
434
435 /* Reset the controller */
436 musb_writel(reg_base, DA8XX_USB_CTRL_REG, DA8XX_SOFT_RESET_MASK);

--- 16 unchanged lines hidden (view full) ---

453
454static int da8xx_musb_exit(struct musb *musb)
455{
456 if (is_host_enabled(musb))
457 del_timer_sync(&otg_workaround);
458
459 phy_off();
460
461 otg_put_transceiver(musb->xceiv);
461 usb_put_transceiver(musb->xceiv);
462 usb_nop_xceiv_unregister();
463
464 return 0;
465}
466
467static const struct musb_platform_ops da8xx_ops = {
468 .init = da8xx_musb_init,
469 .exit = da8xx_musb_exit,

--- 131 unchanged lines hidden ---
462 usb_nop_xceiv_unregister();
463
464 return 0;
465}
466
467static const struct musb_platform_ops da8xx_ops = {
468 .init = da8xx_musb_init,
469 .exit = da8xx_musb_exit,

--- 131 unchanged lines hidden ---