Lines Matching defs:musb

27 	struct platform_device *musb;
56 struct musb *musb = __hci;
58 spin_lock_irqsave(&musb->lock, flags);
60 musb->int_usb = musb_readb(musb->mregs, MUSB_INTRUSB);
61 musb->int_tx = musb_readw(musb->mregs, MUSB_INTRTX);
62 musb->int_rx = musb_readw(musb->mregs, MUSB_INTRRX);
64 if (musb->int_usb || musb->int_tx || musb->int_rx) {
65 musb_writeb(musb->mregs, MUSB_INTRUSB, musb->int_usb);
66 musb_writew(musb->mregs, MUSB_INTRTX, musb->int_tx);
67 musb_writew(musb->mregs, MUSB_INTRRX, musb->int_rx);
68 ret = musb_interrupt(musb);
71 spin_unlock_irqrestore(&musb->lock, flags);
76 static void mpfs_musb_set_vbus(struct musb *musb, int is_on)
85 devctl = musb_readb(musb->mregs, MUSB_DEVCTL);
88 musb->is_active = 1;
89 musb->xceiv->otg->default_a = 1;
90 musb->xceiv->otg->state = OTG_STATE_A_WAIT_VRISE;
92 MUSB_HST_MODE(musb);
94 musb->is_active = 0;
100 musb->xceiv->otg->default_a = 0;
101 musb->xceiv->otg->state = OTG_STATE_B_IDLE;
104 MUSB_DEV_MODE(musb);
107 musb_writeb(musb->mregs, MUSB_DEVCTL, devctl);
109 dev_dbg(musb->controller, "VBUS %s, devctl %02x\n",
110 usb_otg_state_string(musb->xceiv->otg->state),
111 musb_readb(musb->mregs, MUSB_DEVCTL));
114 static int mpfs_musb_init(struct musb *musb)
116 struct device *dev = musb->controller;
118 musb->xceiv = devm_usb_get_phy(dev, USB_PHY_TYPE_USB2);
119 if (IS_ERR(musb->xceiv)) {
121 return PTR_ERR(musb->xceiv);
124 musb->dyn_fifo = true;
125 musb->isr = mpfs_musb_interrupt;
127 musb_platform_set_vbus(musb, 1);
156 musb_pdev = platform_device_alloc("musb-hdrc", PLATFORM_DEVID_AUTO);
158 dev_err(dev, "failed to allocate musb device\n");
181 glue->musb = musb_pdev;
223 dev_err(dev, "failed to register musb device\n");
244 platform_device_unregister(glue->musb);
250 { .compatible = "microchip,mpfs-musb" },
260 .name = "mpfs-musb",