Lines Matching full:glue

3  * Texas Instruments DA8xx/OMAP-L1x "glue layer"
7 * Based on the DaVinci "glue layer" code.
327 struct da8xx_glue *glue = dev_get_drvdata(musb->controller->parent); in da8xx_musb_set_mode() local
335 return phy_set_mode(glue->phy, PHY_MODE_USB_OTG); in da8xx_musb_set_mode()
351 return phy_set_mode(glue->phy, phy_mode); in da8xx_musb_set_mode()
356 struct da8xx_glue *glue = dev_get_drvdata(musb->controller->parent); in da8xx_musb_init() local
363 ret = clk_prepare_enable(glue->clk); in da8xx_musb_init()
365 dev_err(glue->dev, "failed to enable clock\n"); in da8xx_musb_init()
386 ret = phy_init(glue->phy); in da8xx_musb_init()
388 dev_err(glue->dev, "Failed to init phy.\n"); in da8xx_musb_init()
392 ret = phy_power_on(glue->phy); in da8xx_musb_init()
394 dev_err(glue->dev, "Failed to power on phy.\n"); in da8xx_musb_init()
408 phy_exit(glue->phy); in da8xx_musb_init()
410 clk_disable_unprepare(glue->clk); in da8xx_musb_init()
416 struct da8xx_glue *glue = dev_get_drvdata(musb->controller->parent); in da8xx_musb_exit() local
420 phy_power_off(glue->phy); in da8xx_musb_exit()
421 phy_exit(glue->phy); in da8xx_musb_exit()
422 clk_disable_unprepare(glue->clk); in da8xx_musb_exit()
510 struct da8xx_glue *glue; in da8xx_probe() local
516 glue = devm_kzalloc(&pdev->dev, sizeof(*glue), GFP_KERNEL); in da8xx_probe()
517 if (!glue) in da8xx_probe()
526 glue->phy = devm_phy_get(&pdev->dev, "usb-phy"); in da8xx_probe()
527 if (IS_ERR(glue->phy)) { in da8xx_probe()
528 if (PTR_ERR(glue->phy) != -EPROBE_DEFER) in da8xx_probe()
530 return PTR_ERR(glue->phy); in da8xx_probe()
533 glue->dev = &pdev->dev; in da8xx_probe()
534 glue->clk = clk; in da8xx_probe()
548 glue->usb_phy = usb_phy_generic_register(); in da8xx_probe()
549 ret = PTR_ERR_OR_ZERO(glue->usb_phy); in da8xx_probe()
554 platform_set_drvdata(pdev, glue); in da8xx_probe()
581 glue->musb = platform_device_register_full(&pinfo); in da8xx_probe()
582 ret = PTR_ERR_OR_ZERO(glue->musb); in da8xx_probe()
585 usb_phy_generic_unregister(glue->usb_phy); in da8xx_probe()
593 struct da8xx_glue *glue = platform_get_drvdata(pdev); in da8xx_remove() local
595 platform_device_unregister(glue->musb); in da8xx_remove()
596 usb_phy_generic_unregister(glue->usb_phy); in da8xx_remove()
605 struct da8xx_glue *glue = dev_get_drvdata(dev); in da8xx_suspend() local
607 ret = phy_power_off(glue->phy); in da8xx_suspend()
610 clk_disable_unprepare(glue->clk); in da8xx_suspend()
618 struct da8xx_glue *glue = dev_get_drvdata(dev); in da8xx_resume() local
620 ret = clk_prepare_enable(glue->clk); in da8xx_resume()
623 return phy_power_on(glue->phy); in da8xx_resume()
649 MODULE_DESCRIPTION("DA8xx/OMAP-L1x MUSB Glue Layer");