Lines Matching refs:musb
22 struct musb *musb; member
31 struct musb *musb = __hci; in jz4740_musb_interrupt() local
33 if (IS_ENABLED(CONFIG_USB_INVENTRA_DMA) && musb->dma_controller) in jz4740_musb_interrupt()
34 retval_dma = dma_controller_irq(irq, musb->dma_controller); in jz4740_musb_interrupt()
36 spin_lock_irqsave(&musb->lock, flags); in jz4740_musb_interrupt()
38 musb->int_usb = musb_readb(musb->mregs, MUSB_INTRUSB); in jz4740_musb_interrupt()
39 musb->int_tx = musb_readw(musb->mregs, MUSB_INTRTX); in jz4740_musb_interrupt()
40 musb->int_rx = musb_readw(musb->mregs, MUSB_INTRRX); in jz4740_musb_interrupt()
47 musb->int_usb &= MUSB_INTR_SUSPEND | MUSB_INTR_RESUME | in jz4740_musb_interrupt()
50 if (musb->int_usb || musb->int_tx || musb->int_rx) in jz4740_musb_interrupt()
51 retval = musb_interrupt(musb); in jz4740_musb_interrupt()
53 spin_unlock_irqrestore(&musb->lock, flags); in jz4740_musb_interrupt()
82 struct usb_phy *phy = glue->musb->xceiv; in jz4740_musb_role_switch_set()
99 static int jz4740_musb_init(struct musb *musb) in jz4740_musb_init() argument
101 struct device *dev = musb->controller->parent; in jz4740_musb_init()
110 glue->musb = musb; in jz4740_musb_init()
113 musb->xceiv = devm_usb_get_phy_by_phandle(dev, "phys", 0); in jz4740_musb_init()
115 musb->xceiv = devm_usb_get_phy(dev, USB_PHY_TYPE_USB2); in jz4740_musb_init()
116 if (IS_ERR(musb->xceiv)) { in jz4740_musb_init()
117 err = PTR_ERR(musb->xceiv); in jz4740_musb_init()
133 musb->dyn_fifo = true; in jz4740_musb_init()
135 musb->isr = jz4740_musb_interrupt; in jz4740_musb_init()
140 static int jz4740_musb_exit(struct musb *musb) in jz4740_musb_exit() argument
142 struct jz4740_glue *glue = dev_get_drvdata(musb->controller->parent); in jz4740_musb_exit()
197 struct platform_device *musb; in jz4740_probe() local
212 musb = platform_device_alloc("musb-hdrc", PLATFORM_DEVID_AUTO); in jz4740_probe()
213 if (!musb) { in jz4740_probe()
231 musb->dev.parent = dev; in jz4740_probe()
232 musb->dev.dma_mask = &musb->dev.coherent_dma_mask; in jz4740_probe()
233 musb->dev.coherent_dma_mask = DMA_BIT_MASK(32); in jz4740_probe()
235 glue->pdev = musb; in jz4740_probe()
240 ret = platform_device_add_resources(musb, pdev->resource, in jz4740_probe()
247 ret = platform_device_add_data(musb, pdata, sizeof(*pdata)); in jz4740_probe()
253 ret = platform_device_add(musb); in jz4740_probe()
264 platform_device_put(musb); in jz4740_probe()