Lines Matching refs:musb
43 struct musb *musb; member
67 struct musb *musb = glue->musb; in mtk_otg_switch_set() local
68 u8 devctl = readb(musb->mregs + MUSB_DEVCTL); in mtk_otg_switch_set()
76 musb->xceiv->otg->state = OTG_STATE_A_WAIT_VRISE; in mtk_otg_switch_set()
83 musb_writeb(musb->mregs, MUSB_DEVCTL, devctl); in mtk_otg_switch_set()
84 MUSB_HST_MODE(musb); in mtk_otg_switch_set()
87 musb->xceiv->otg->state = OTG_STATE_B_IDLE; in mtk_otg_switch_set()
91 musb_writeb(musb->mregs, MUSB_DEVCTL, devctl); in mtk_otg_switch_set()
95 MUSB_DEV_MODE(musb); in mtk_otg_switch_set()
101 musb_writeb(musb->mregs, MUSB_DEVCTL, devctl); in mtk_otg_switch_set()
152 struct musb *musb = __hci; in generic_interrupt() local
154 spin_lock_irqsave(&musb->lock, flags); in generic_interrupt()
155 musb->int_usb = musb_clearb(musb->mregs, MUSB_INTRUSB); in generic_interrupt()
156 musb->int_rx = musb_clearw(musb->mregs, MUSB_INTRRX); in generic_interrupt()
157 musb->int_tx = musb_clearw(musb->mregs, MUSB_INTRTX); in generic_interrupt()
159 if ((musb->int_usb & MUSB_INTR_RESET) && !is_host_active(musb)) { in generic_interrupt()
161 musb_ep_select(musb->mregs, 0); in generic_interrupt()
162 musb_writeb(musb->mregs, MUSB_FADDR, 0); in generic_interrupt()
165 if (musb->int_usb || musb->int_tx || musb->int_rx) in generic_interrupt()
166 retval = musb_interrupt(musb); in generic_interrupt()
168 spin_unlock_irqrestore(&musb->lock, flags); in generic_interrupt()
176 struct musb *musb = (struct musb *)dev_id; in mtk_musb_interrupt() local
179 l1_ints = musb_readl(musb->mregs, USB_L1INTS) & in mtk_musb_interrupt()
180 musb_readl(musb->mregs, USB_L1INTM); in mtk_musb_interrupt()
183 retval = generic_interrupt(irq, musb); in mtk_musb_interrupt()
187 retval = dma_controller_irq(irq, musb->dma_controller); in mtk_musb_interrupt()
217 static int mtk_musb_set_mode(struct musb *musb, u8 mode) in mtk_musb_set_mode() argument
219 struct device *dev = musb->controller; in mtk_musb_set_mode()
245 if (musb->port_mode != MUSB_OTG) { in mtk_musb_set_mode()
254 static int mtk_musb_init(struct musb *musb) in mtk_musb_init() argument
256 struct device *dev = musb->controller; in mtk_musb_init()
260 glue->musb = musb; in mtk_musb_init()
261 musb->phy = glue->phy; in mtk_musb_init()
262 musb->xceiv = glue->xceiv; in mtk_musb_init()
263 musb->is_host = false; in mtk_musb_init()
264 musb->isr = mtk_musb_interrupt; in mtk_musb_init()
267 musb_writew(musb->mregs, MUSB_TXTOGEN, MTK_TOGGLE_EN); in mtk_musb_init()
268 musb_writew(musb->mregs, MUSB_RXTOGEN, MTK_TOGGLE_EN); in mtk_musb_init()
270 if (musb->port_mode == MUSB_OTG) { in mtk_musb_init()
287 musb_writel(musb->mregs, MUSB_HSDMA_INTR, in mtk_musb_init()
290 musb_writel(musb->mregs, USB_L1INTM, TX_INT_STATUS | RX_INT_STATUS | in mtk_musb_init()
297 if (musb->port_mode == MUSB_OTG) in mtk_musb_init()
304 struct musb *musb = qh->hw_ep->musb; in mtk_musb_get_toggle() local
308 toggle = musb_readw(musb->mregs, is_out ? MUSB_TXTOG : MUSB_RXTOG); in mtk_musb_get_toggle()
314 struct musb *musb = qh->hw_ep->musb; in mtk_musb_set_toggle() local
321 value = musb_readw(musb->mregs, MUSB_TXTOG); in mtk_musb_set_toggle()
323 musb_writew(musb->mregs, MUSB_TXTOG, value); in mtk_musb_set_toggle()
325 value = musb_readw(musb->mregs, MUSB_RXTOG); in mtk_musb_set_toggle()
327 musb_writew(musb->mregs, MUSB_RXTOG, value); in mtk_musb_set_toggle()
333 static int mtk_musb_exit(struct musb *musb) in mtk_musb_exit() argument
335 struct device *dev = musb->controller; in mtk_musb_exit()