vhub 59 drivers/usb/gadget/udc/aspeed-vhub/core.c spin_unlock(&ep->vhub->lock); vhub 61 drivers/usb/gadget/udc/aspeed-vhub/core.c spin_lock(&ep->vhub->lock); vhub 100 drivers/usb/gadget/udc/aspeed-vhub/core.c struct ast_vhub *vhub = data; vhub 105 drivers/usb/gadget/udc/aspeed-vhub/core.c if (!vhub->ep0_bufs) vhub 108 drivers/usb/gadget/udc/aspeed-vhub/core.c spin_lock(&vhub->lock); vhub 111 drivers/usb/gadget/udc/aspeed-vhub/core.c istat = readl(vhub->regs + AST_VHUB_ISR); vhub 114 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(istat, vhub->regs + AST_VHUB_ISR); vhub 117 drivers/usb/gadget/udc/aspeed-vhub/core.c UDCVDBG(vhub, "irq status=%08x, ep_acks=%08x ep_nacks=%08x\n", vhub 119 drivers/usb/gadget/udc/aspeed-vhub/core.c readl(vhub->regs + AST_VHUB_EP_ACK_ISR), vhub 120 drivers/usb/gadget/udc/aspeed-vhub/core.c readl(vhub->regs + AST_VHUB_EP_NACK_ISR)); vhub 124 drivers/usb/gadget/udc/aspeed-vhub/core.c u32 i, ep_acks = readl(vhub->regs + AST_VHUB_EP_ACK_ISR); vhub 125 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(ep_acks, vhub->regs + AST_VHUB_EP_ACK_ISR); vhub 130 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_epn_ack_irq(&vhub->epns[i]); vhub 143 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_dev_irq(&vhub->ports[0].dev); vhub 145 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_dev_irq(&vhub->ports[1].dev); vhub 147 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_dev_irq(&vhub->ports[2].dev); vhub 149 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_dev_irq(&vhub->ports[3].dev); vhub 151 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_dev_irq(&vhub->ports[4].dev); vhub 159 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_ep0_handle_ack(&vhub->ep0, true); vhub 161 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_ep0_handle_ack(&vhub->ep0, false); vhub 163 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_ep0_handle_setup(&vhub->ep0); vhub 171 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_hub_resume(vhub); vhub 173 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_hub_suspend(vhub); vhub 175 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_hub_reset(vhub); vhub 179 drivers/usb/gadget/udc/aspeed-vhub/core.c spin_unlock(&vhub->lock); vhub 183 drivers/usb/gadget/udc/aspeed-vhub/core.c void ast_vhub_init_hw(struct ast_vhub *vhub) vhub 187 drivers/usb/gadget/udc/aspeed-vhub/core.c UDCDBG(vhub,"(Re)Starting HW ...\n"); vhub 213 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(ctrl, vhub->regs + AST_VHUB_CTRL); vhub 219 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(ctrl, vhub->regs + AST_VHUB_CTRL); vhub 225 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(VHUB_SW_RESET_ALL, vhub->regs + AST_VHUB_SW_RESET); vhub 227 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(0, vhub->regs + AST_VHUB_SW_RESET); vhub 230 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(0, vhub->regs + AST_VHUB_EP_ACK_IER); vhub 231 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(0, vhub->regs + AST_VHUB_EP_NACK_IER); vhub 232 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(VHUB_EP_IRQ_ALL, vhub->regs + AST_VHUB_EP_ACK_ISR); vhub 233 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(VHUB_EP_IRQ_ALL, vhub->regs + AST_VHUB_EP_NACK_ISR); vhub 236 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(0, vhub->regs + AST_VHUB_EP0_CTRL); vhub 239 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->regs + AST_VHUB_EP1_CTRL); vhub 240 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(0, vhub->regs + AST_VHUB_EP1_STS_CHG); vhub 243 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(vhub->ep0.buf_dma, vhub->regs + AST_VHUB_EP0_DATA); vhub 246 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(0, vhub->regs + AST_VHUB_CONF); vhub 249 drivers/usb/gadget/udc/aspeed-vhub/core.c if (vhub->force_usb1) vhub 253 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(ctrl, vhub->regs + AST_VHUB_CTRL); vhub 263 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->regs + AST_VHUB_IER); vhub 268 drivers/usb/gadget/udc/aspeed-vhub/core.c struct ast_vhub *vhub = platform_get_drvdata(pdev); vhub 272 drivers/usb/gadget/udc/aspeed-vhub/core.c if (!vhub || !vhub->regs) vhub 277 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_del_dev(&vhub->ports[i].dev); vhub 279 drivers/usb/gadget/udc/aspeed-vhub/core.c spin_lock_irqsave(&vhub->lock, flags); vhub 282 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(0, vhub->regs + AST_VHUB_IER); vhub 283 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(VHUB_IRQ_ACK_ALL, vhub->regs + AST_VHUB_ISR); vhub 288 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->regs + AST_VHUB_CTRL); vhub 290 drivers/usb/gadget/udc/aspeed-vhub/core.c if (vhub->clk) vhub 291 drivers/usb/gadget/udc/aspeed-vhub/core.c clk_disable_unprepare(vhub->clk); vhub 293 drivers/usb/gadget/udc/aspeed-vhub/core.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 295 drivers/usb/gadget/udc/aspeed-vhub/core.c if (vhub->ep0_bufs) vhub 299 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->ep0_bufs, vhub 300 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->ep0_bufs_dma); vhub 301 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->ep0_bufs = NULL; vhub 309 drivers/usb/gadget/udc/aspeed-vhub/core.c struct ast_vhub *vhub; vhub 313 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub = devm_kzalloc(&pdev->dev, sizeof(*vhub), GFP_KERNEL); vhub 314 drivers/usb/gadget/udc/aspeed-vhub/core.c if (!vhub) vhub 317 drivers/usb/gadget/udc/aspeed-vhub/core.c spin_lock_init(&vhub->lock); vhub 318 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->pdev = pdev; vhub 321 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->regs = devm_ioremap_resource(&pdev->dev, res); vhub 322 drivers/usb/gadget/udc/aspeed-vhub/core.c if (IS_ERR(vhub->regs)) { vhub 324 drivers/usb/gadget/udc/aspeed-vhub/core.c return PTR_ERR(vhub->regs); vhub 326 drivers/usb/gadget/udc/aspeed-vhub/core.c UDCDBG(vhub, "vHub@%pR mapped @%p\n", res, vhub->regs); vhub 328 drivers/usb/gadget/udc/aspeed-vhub/core.c platform_set_drvdata(pdev, vhub); vhub 330 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->clk = devm_clk_get(&pdev->dev, NULL); vhub 331 drivers/usb/gadget/udc/aspeed-vhub/core.c if (IS_ERR(vhub->clk)) { vhub 332 drivers/usb/gadget/udc/aspeed-vhub/core.c rc = PTR_ERR(vhub->clk); vhub 335 drivers/usb/gadget/udc/aspeed-vhub/core.c rc = clk_prepare_enable(vhub->clk); vhub 344 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->force_usb1 = true; vhub 347 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(0, vhub->regs + AST_VHUB_IER); vhub 348 drivers/usb/gadget/udc/aspeed-vhub/core.c writel(VHUB_IRQ_ACK_ALL, vhub->regs + AST_VHUB_ISR); vhub 351 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->irq = platform_get_irq(pdev, 0); vhub 352 drivers/usb/gadget/udc/aspeed-vhub/core.c if (vhub->irq < 0) { vhub 353 drivers/usb/gadget/udc/aspeed-vhub/core.c rc = vhub->irq; vhub 356 drivers/usb/gadget/udc/aspeed-vhub/core.c rc = devm_request_irq(&pdev->dev, vhub->irq, ast_vhub_irq, 0, vhub 357 drivers/usb/gadget/udc/aspeed-vhub/core.c KBUILD_MODNAME, vhub); vhub 367 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->ep0_bufs = dma_alloc_coherent(&pdev->dev, vhub 370 drivers/usb/gadget/udc/aspeed-vhub/core.c &vhub->ep0_bufs_dma, GFP_KERNEL); vhub 371 drivers/usb/gadget/udc/aspeed-vhub/core.c if (!vhub->ep0_bufs) { vhub 376 drivers/usb/gadget/udc/aspeed-vhub/core.c UDCVDBG(vhub, "EP0 DMA buffers @%p (DMA 0x%08x)\n", vhub 377 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->ep0_bufs, (u32)vhub->ep0_bufs_dma); vhub 380 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_init_ep0(vhub, &vhub->ep0, NULL); vhub 384 drivers/usb/gadget/udc/aspeed-vhub/core.c rc = ast_vhub_init_dev(vhub, i); vhub 389 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_init_hub(vhub); vhub 392 drivers/usb/gadget/udc/aspeed-vhub/core.c ast_vhub_init_hw(vhub); vhub 395 drivers/usb/gadget/udc/aspeed-vhub/core.c vhub->force_usb1 ? 1 : 2); vhub 72 drivers/usb/gadget/udc/aspeed-vhub/dev.c reg = readl(d->vhub->regs + AST_VHUB_IER); vhub 74 drivers/usb/gadget/udc/aspeed-vhub/dev.c writel(reg, d->vhub->regs + AST_VHUB_IER); vhub 104 drivers/usb/gadget/udc/aspeed-vhub/dev.c reg = readl(d->vhub->regs + AST_VHUB_IER); vhub 106 drivers/usb/gadget/udc/aspeed-vhub/dev.c writel(reg, d->vhub->regs + AST_VHUB_IER); vhub 234 drivers/usb/gadget/udc/aspeed-vhub/dev.c d->gadget.speed = ep->vhub->speed; vhub 277 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_lock_irqsave(&d->vhub->lock, flags); vhub 284 drivers/usb/gadget/udc/aspeed-vhub/dev.c ast_vhub_hub_wake_all(d->vhub); vhub 287 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_unlock_irqrestore(&d->vhub->lock, flags); vhub 295 drivers/usb/gadget/udc/aspeed-vhub/dev.c return (readl(d->vhub->regs + AST_VHUB_USBSTS) >> 16) & 0x7ff; vhub 314 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_lock_irqsave(&d->vhub->lock, flags); vhub 319 drivers/usb/gadget/udc/aspeed-vhub/dev.c ast_vhub_device_connect(d->vhub, d->index, on); vhub 330 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_unlock_irqrestore(&d->vhub->lock, flags); vhub 341 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_lock_irqsave(&d->vhub->lock, flags); vhub 349 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_unlock_irqrestore(&d->vhub->lock, flags); vhub 444 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_lock_irqsave(&d->vhub->lock, flags); vhub 456 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_unlock_irqrestore(&d->vhub->lock, flags); vhub 473 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_unlock(&d->vhub->lock); vhub 475 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_lock(&d->vhub->lock); vhub 482 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_unlock(&d->vhub->lock); vhub 484 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_lock(&d->vhub->lock); vhub 502 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_unlock(&d->vhub->lock); vhub 504 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_lock(&d->vhub->lock); vhub 519 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_lock_irqsave(&d->vhub->lock, flags); vhub 521 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_unlock_irqrestore(&d->vhub->lock, flags); vhub 525 drivers/usb/gadget/udc/aspeed-vhub/dev.c spin_unlock_irqrestore(&d->vhub->lock, flags); vhub 536 drivers/usb/gadget/udc/aspeed-vhub/dev.c int ast_vhub_init_dev(struct ast_vhub *vhub, unsigned int idx) vhub 538 drivers/usb/gadget/udc/aspeed-vhub/dev.c struct ast_vhub_dev *d = &vhub->ports[idx].dev; vhub 539 drivers/usb/gadget/udc/aspeed-vhub/dev.c struct device *parent = &vhub->pdev->dev; vhub 542 drivers/usb/gadget/udc/aspeed-vhub/dev.c d->vhub = vhub; vhub 545 drivers/usb/gadget/udc/aspeed-vhub/dev.c d->regs = vhub->regs + 0x100 + 0x10 * idx; vhub 547 drivers/usb/gadget/udc/aspeed-vhub/dev.c ast_vhub_init_ep0(vhub, &d->ep0, d); vhub 570 drivers/usb/gadget/udc/aspeed-vhub/dev.c if (vhub->force_usb1) vhub 575 drivers/usb/gadget/udc/aspeed-vhub/dev.c d->gadget.dev.of_node = vhub->pdev->dev.of_node; vhub 59 drivers/usb/gadget/udc/aspeed-vhub/ep0.c spin_unlock(&ep->vhub->lock); vhub 64 drivers/usb/gadget/udc/aspeed-vhub/ep0.c spin_lock(&ep->vhub->lock); vhub 157 drivers/usb/gadget/udc/aspeed-vhub/ep0.c spin_unlock(&ep->vhub->lock); vhub 159 drivers/usb/gadget/udc/aspeed-vhub/ep0.c spin_lock(&ep->vhub->lock); vhub 275 drivers/usb/gadget/udc/aspeed-vhub/ep0.c struct ast_vhub *vhub = ep->vhub; vhub 276 drivers/usb/gadget/udc/aspeed-vhub/ep0.c struct device *dev = &vhub->pdev->dev; vhub 363 drivers/usb/gadget/udc/aspeed-vhub/ep0.c struct ast_vhub *vhub = ep->vhub; vhub 364 drivers/usb/gadget/udc/aspeed-vhub/ep0.c struct device *dev = &vhub->pdev->dev; vhub 402 drivers/usb/gadget/udc/aspeed-vhub/ep0.c spin_lock_irqsave(&vhub->lock, flags); vhub 411 drivers/usb/gadget/udc/aspeed-vhub/ep0.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 432 drivers/usb/gadget/udc/aspeed-vhub/ep0.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 440 drivers/usb/gadget/udc/aspeed-vhub/ep0.c struct ast_vhub *vhub = ep->vhub; vhub 445 drivers/usb/gadget/udc/aspeed-vhub/ep0.c spin_lock_irqsave(&vhub->lock, flags); vhub 466 drivers/usb/gadget/udc/aspeed-vhub/ep0.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 487 drivers/usb/gadget/udc/aspeed-vhub/ep0.c void ast_vhub_init_ep0(struct ast_vhub *vhub, struct ast_vhub_ep *ep, vhub 500 drivers/usb/gadget/udc/aspeed-vhub/ep0.c ep->vhub = vhub; vhub 508 drivers/usb/gadget/udc/aspeed-vhub/ep0.c ep->ep0.setup = vhub->regs + vhub 510 drivers/usb/gadget/udc/aspeed-vhub/ep0.c ep->buf = vhub->ep0_bufs + vhub 512 drivers/usb/gadget/udc/aspeed-vhub/ep0.c ep->buf_dma = vhub->ep0_bufs_dma + vhub 515 drivers/usb/gadget/udc/aspeed-vhub/ep0.c ep->ep0.ctlstat = vhub->regs + AST_VHUB_EP0_CTRL; vhub 516 drivers/usb/gadget/udc/aspeed-vhub/ep0.c ep->ep0.setup = vhub->regs + AST_VHUB_SETUP0; vhub 517 drivers/usb/gadget/udc/aspeed-vhub/ep0.c ep->buf = vhub->ep0_bufs; vhub 518 drivers/usb/gadget/udc/aspeed-vhub/ep0.c ep->buf_dma = vhub->ep0_bufs_dma; vhub 338 drivers/usb/gadget/udc/aspeed-vhub/epn.c struct ast_vhub *vhub = ep->vhub; vhub 345 drivers/usb/gadget/udc/aspeed-vhub/epn.c dev_warn(&vhub->pdev->dev, "Bogus EPn request ! u_req=%p\n", u_req); vhub 347 drivers/usb/gadget/udc/aspeed-vhub/epn.c dev_warn(&vhub->pdev->dev, "complete=%p internal=%d\n", vhub 382 drivers/usb/gadget/udc/aspeed-vhub/epn.c dev_warn(&vhub->pdev->dev, vhub 401 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_lock_irqsave(&vhub->lock, flags); vhub 412 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 435 drivers/usb/gadget/udc/aspeed-vhub/epn.c dev_warn(&ep->vhub->pdev->dev, "Timeout waiting for DMA\n"); vhub 470 drivers/usb/gadget/udc/aspeed-vhub/epn.c struct ast_vhub *vhub = ep->vhub; vhub 475 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_lock_irqsave(&vhub->lock, flags); vhub 492 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 511 drivers/usb/gadget/udc/aspeed-vhub/epn.c ep->vhub->regs + AST_VHUB_EP_TOGGLE); vhub 518 drivers/usb/gadget/udc/aspeed-vhub/epn.c struct ast_vhub *vhub = ep->vhub; vhub 530 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_lock_irqsave(&vhub->lock, flags); vhub 534 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 541 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 559 drivers/usb/gadget/udc/aspeed-vhub/epn.c struct ast_vhub *vhub = ep->vhub; vhub 565 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_lock_irqsave(&vhub->lock, flags); vhub 577 drivers/usb/gadget/udc/aspeed-vhub/epn.c ep_ier = readl(vhub->regs + AST_VHUB_EP_ACK_IER); vhub 579 drivers/usb/gadget/udc/aspeed-vhub/epn.c writel(ep_ier, vhub->regs + AST_VHUB_EP_ACK_IER); vhub 580 drivers/usb/gadget/udc/aspeed-vhub/epn.c writel(imask, vhub->regs + AST_VHUB_EP_ACK_ISR); vhub 588 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 598 drivers/usb/gadget/udc/aspeed-vhub/epn.c struct ast_vhub *vhub; vhub 626 drivers/usb/gadget/udc/aspeed-vhub/epn.c vhub = ep->vhub; vhub 692 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_lock_irqsave(&vhub->lock, flags); vhub 736 drivers/usb/gadget/udc/aspeed-vhub/epn.c vhub->regs + AST_VHUB_EP_TOGGLE); vhub 740 drivers/usb/gadget/udc/aspeed-vhub/epn.c writel(imask, vhub->regs + AST_VHUB_EP_ACK_ISR); vhub 741 drivers/usb/gadget/udc/aspeed-vhub/epn.c ep_ier = readl(vhub->regs + AST_VHUB_EP_ACK_IER); vhub 743 drivers/usb/gadget/udc/aspeed-vhub/epn.c writel(ep_ier, vhub->regs + AST_VHUB_EP_ACK_IER); vhub 748 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 771 drivers/usb/gadget/udc/aspeed-vhub/epn.c dma_free_coherent(&ep->vhub->pdev->dev, vhub 796 drivers/usb/gadget/udc/aspeed-vhub/epn.c struct ast_vhub *vhub = d->vhub; vhub 802 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_lock_irqsave(&vhub->lock, flags); vhub 804 drivers/usb/gadget/udc/aspeed-vhub/epn.c if (vhub->epns[i].dev == NULL) vhub 807 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 812 drivers/usb/gadget/udc/aspeed-vhub/epn.c ep = &vhub->epns[i]; vhub 814 drivers/usb/gadget/udc/aspeed-vhub/epn.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 819 drivers/usb/gadget/udc/aspeed-vhub/epn.c ep->vhub = vhub; vhub 824 drivers/usb/gadget/udc/aspeed-vhub/epn.c ep->epn.regs = vhub->regs + 0x200 + (i * 0x10); vhub 826 drivers/usb/gadget/udc/aspeed-vhub/epn.c ep->buf = dma_alloc_coherent(&vhub->pdev->dev, vhub 189 drivers/usb/gadget/udc/aspeed-vhub/hub.c if (ep->vhub->wakeup_en) vhub 206 drivers/usb/gadget/udc/aspeed-vhub/hub.c if (ep->vhub->ep1_stalled) vhub 224 drivers/usb/gadget/udc/aspeed-vhub/hub.c ep->vhub->wakeup_en = is_set; vhub 252 drivers/usb/gadget/udc/aspeed-vhub/hub.c ep->vhub->ep1_stalled = is_set; vhub 253 drivers/usb/gadget/udc/aspeed-vhub/hub.c reg = readl(ep->vhub->regs + AST_VHUB_EP1_CTRL); vhub 260 drivers/usb/gadget/udc/aspeed-vhub/hub.c writel(reg, ep->vhub->regs + AST_VHUB_EP1_CTRL); vhub 309 drivers/usb/gadget/udc/aspeed-vhub/hub.c if (desc_type == USB_DT_DEVICE && ep->vhub->force_usb1) vhub 338 drivers/usb/gadget/udc/aspeed-vhub/hub.c struct ast_vhub *vhub = ep->vhub; vhub 346 drivers/usb/gadget/udc/aspeed-vhub/hub.c if (vhub->speed == USB_SPEED_UNKNOWN) { vhub 347 drivers/usb/gadget/udc/aspeed-vhub/hub.c u32 ustat = readl(vhub->regs + AST_VHUB_USBSTS); vhub 349 drivers/usb/gadget/udc/aspeed-vhub/hub.c vhub->speed = USB_SPEED_HIGH; vhub 351 drivers/usb/gadget/udc/aspeed-vhub/hub.c vhub->speed = USB_SPEED_FULL; vhub 352 drivers/usb/gadget/udc/aspeed-vhub/hub.c UDCDBG(vhub, "USB status=%08x speed=%s\n", ustat, vhub 353 drivers/usb/gadget/udc/aspeed-vhub/hub.c vhub->speed == USB_SPEED_HIGH ? "high" : "full"); vhub 360 drivers/usb/gadget/udc/aspeed-vhub/hub.c writel(wValue, vhub->regs + AST_VHUB_CONF); vhub 413 drivers/usb/gadget/udc/aspeed-vhub/hub.c static void ast_vhub_update_hub_ep1(struct ast_vhub *vhub, vhub 417 drivers/usb/gadget/udc/aspeed-vhub/hub.c u32 reg = readl(vhub->regs + AST_VHUB_EP1_STS_CHG); vhub 419 drivers/usb/gadget/udc/aspeed-vhub/hub.c if (vhub->ports[port].change) vhub 423 drivers/usb/gadget/udc/aspeed-vhub/hub.c writel(reg, vhub->regs + AST_VHUB_EP1_STS_CHG); vhub 426 drivers/usb/gadget/udc/aspeed-vhub/hub.c static void ast_vhub_change_port_stat(struct ast_vhub *vhub, vhub 432 drivers/usb/gadget/udc/aspeed-vhub/hub.c struct ast_vhub_port *p = &vhub->ports[port]; vhub 461 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_update_hub_ep1(vhub, port); vhub 465 drivers/usb/gadget/udc/aspeed-vhub/hub.c static void ast_vhub_send_host_wakeup(struct ast_vhub *vhub) vhub 467 drivers/usb/gadget/udc/aspeed-vhub/hub.c u32 reg = readl(vhub->regs + AST_VHUB_CTRL); vhub 468 drivers/usb/gadget/udc/aspeed-vhub/hub.c UDCDBG(vhub, "Waking up host !\n"); vhub 470 drivers/usb/gadget/udc/aspeed-vhub/hub.c writel(reg, vhub->regs + AST_VHUB_CTRL); vhub 473 drivers/usb/gadget/udc/aspeed-vhub/hub.c void ast_vhub_device_connect(struct ast_vhub *vhub, vhub 477 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_change_port_stat(vhub, port, 0, vhub 480 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_change_port_stat(vhub, port, vhub 489 drivers/usb/gadget/udc/aspeed-vhub/hub.c if (vhub->wakeup_en) vhub 490 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_send_host_wakeup(vhub); vhub 495 drivers/usb/gadget/udc/aspeed-vhub/hub.c struct ast_vhub *vhub = container_of(work, vhub 506 drivers/usb/gadget/udc/aspeed-vhub/hub.c spin_lock_irqsave(&vhub->lock, flags); vhub 508 drivers/usb/gadget/udc/aspeed-vhub/hub.c struct ast_vhub_port *p = &vhub->ports[i]; vhub 512 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_change_port_stat(vhub, i, vhub 517 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_send_host_wakeup(vhub); vhub 518 drivers/usb/gadget/udc/aspeed-vhub/hub.c spin_unlock_irqrestore(&vhub->lock, flags); vhub 521 drivers/usb/gadget/udc/aspeed-vhub/hub.c void ast_vhub_hub_wake_all(struct ast_vhub *vhub) vhub 528 drivers/usb/gadget/udc/aspeed-vhub/hub.c schedule_work(&vhub->wake_work); vhub 531 drivers/usb/gadget/udc/aspeed-vhub/hub.c static void ast_vhub_port_reset(struct ast_vhub *vhub, u8 port) vhub 533 drivers/usb/gadget/udc/aspeed-vhub/hub.c struct ast_vhub_port *p = &vhub->ports[port]; vhub 537 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_change_port_stat(vhub, port, vhub 554 drivers/usb/gadget/udc/aspeed-vhub/hub.c if (speed == USB_SPEED_UNKNOWN || speed > vhub->speed) vhub 555 drivers/usb/gadget/udc/aspeed-vhub/hub.c speed = vhub->speed; vhub 572 drivers/usb/gadget/udc/aspeed-vhub/hub.c UDCDBG(vhub, "Unsupported speed %d when" vhub 581 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_change_port_stat(vhub, port, clr, set, true); vhub 587 drivers/usb/gadget/udc/aspeed-vhub/hub.c struct ast_vhub *vhub = ep->vhub; vhub 593 drivers/usb/gadget/udc/aspeed-vhub/hub.c p = &vhub->ports[port]; vhub 599 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_change_port_stat(vhub, port, vhub 606 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_port_reset(vhub, port); vhub 616 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_update_hub_ep1(vhub, port); vhub 630 drivers/usb/gadget/udc/aspeed-vhub/hub.c struct ast_vhub *vhub = ep->vhub; vhub 636 drivers/usb/gadget/udc/aspeed-vhub/hub.c p = &vhub->ports[port]; vhub 640 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_change_port_stat(vhub, port, vhub 649 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_change_port_stat(vhub, port, vhub 667 drivers/usb/gadget/udc/aspeed-vhub/hub.c ast_vhub_update_hub_ep1(vhub, port); vhub 676 drivers/usb/gadget/udc/aspeed-vhub/hub.c struct ast_vhub *vhub = ep->vhub; vhub 683 drivers/usb/gadget/udc/aspeed-vhub/hub.c stat = vhub->ports[port].status; vhub 684 drivers/usb/gadget/udc/aspeed-vhub/hub.c chg = vhub->ports[port].change; vhub 745 drivers/usb/gadget/udc/aspeed-vhub/hub.c void ast_vhub_hub_suspend(struct ast_vhub *vhub) vhub 749 drivers/usb/gadget/udc/aspeed-vhub/hub.c UDCDBG(vhub, "USB bus suspend\n"); vhub 751 drivers/usb/gadget/udc/aspeed-vhub/hub.c if (vhub->suspended) vhub 754 drivers/usb/gadget/udc/aspeed-vhub/hub.c vhub->suspended = true; vhub 761 drivers/usb/gadget/udc/aspeed-vhub/hub.c struct ast_vhub_port *p = &vhub->ports[i]; vhub 768 drivers/usb/gadget/udc/aspeed-vhub/hub.c void ast_vhub_hub_resume(struct ast_vhub *vhub) vhub 772 drivers/usb/gadget/udc/aspeed-vhub/hub.c UDCDBG(vhub, "USB bus resume\n"); vhub 774 drivers/usb/gadget/udc/aspeed-vhub/hub.c if (!vhub->suspended) vhub 777 drivers/usb/gadget/udc/aspeed-vhub/hub.c vhub->suspended = false; vhub 784 drivers/usb/gadget/udc/aspeed-vhub/hub.c struct ast_vhub_port *p = &vhub->ports[i]; vhub 791 drivers/usb/gadget/udc/aspeed-vhub/hub.c void ast_vhub_hub_reset(struct ast_vhub *vhub) vhub 795 drivers/usb/gadget/udc/aspeed-vhub/hub.c UDCDBG(vhub, "USB bus reset\n"); vhub 801 drivers/usb/gadget/udc/aspeed-vhub/hub.c if (vhub->speed == USB_SPEED_UNKNOWN) vhub 805 drivers/usb/gadget/udc/aspeed-vhub/hub.c vhub->suspended = false; vhub 808 drivers/usb/gadget/udc/aspeed-vhub/hub.c vhub->speed = USB_SPEED_UNKNOWN; vhub 811 drivers/usb/gadget/udc/aspeed-vhub/hub.c vhub->wakeup_en = false; vhub 818 drivers/usb/gadget/udc/aspeed-vhub/hub.c struct ast_vhub_port *p = &vhub->ports[i]; vhub 829 drivers/usb/gadget/udc/aspeed-vhub/hub.c writel(0, vhub->regs + AST_VHUB_CONF); vhub 830 drivers/usb/gadget/udc/aspeed-vhub/hub.c writel(0, vhub->regs + AST_VHUB_EP0_CTRL); vhub 833 drivers/usb/gadget/udc/aspeed-vhub/hub.c vhub->regs + AST_VHUB_EP1_CTRL); vhub 834 drivers/usb/gadget/udc/aspeed-vhub/hub.c writel(0, vhub->regs + AST_VHUB_EP1_STS_CHG); vhub 837 drivers/usb/gadget/udc/aspeed-vhub/hub.c void ast_vhub_init_hub(struct ast_vhub *vhub) vhub 839 drivers/usb/gadget/udc/aspeed-vhub/hub.c vhub->speed = USB_SPEED_UNKNOWN; vhub 840 drivers/usb/gadget/udc/aspeed-vhub/hub.c INIT_WORK(&vhub->wake_work, ast_vhub_wake_work); vhub 281 drivers/usb/gadget/udc/aspeed-vhub/vhub.h struct ast_vhub *vhub; vhub 342 drivers/usb/gadget/udc/aspeed-vhub/vhub.h struct ast_vhub *vhub; vhub 426 drivers/usb/gadget/udc/aspeed-vhub/vhub.h dev_dbg(&(ep)->vhub->pdev->dev, \ vhub 433 drivers/usb/gadget/udc/aspeed-vhub/vhub.h dev_dbg(&(d)->vhub->pdev->dev, \ vhub 448 drivers/usb/gadget/udc/aspeed-vhub/vhub.h dev_dbg(&(ep)->vhub->pdev->dev, \ vhub 455 drivers/usb/gadget/udc/aspeed-vhub/vhub.h dev_dbg(&(d)->vhub->pdev->dev, \ vhub 505 drivers/usb/gadget/udc/aspeed-vhub/vhub.h void ast_vhub_init_hw(struct ast_vhub *vhub); vhub 511 drivers/usb/gadget/udc/aspeed-vhub/vhub.h void ast_vhub_init_ep0(struct ast_vhub *vhub, struct ast_vhub_ep *ep, vhub 521 drivers/usb/gadget/udc/aspeed-vhub/vhub.h void ast_vhub_init_hub(struct ast_vhub *vhub); vhub 526 drivers/usb/gadget/udc/aspeed-vhub/vhub.h void ast_vhub_device_connect(struct ast_vhub *vhub, unsigned int port, vhub 528 drivers/usb/gadget/udc/aspeed-vhub/vhub.h void ast_vhub_hub_suspend(struct ast_vhub *vhub); vhub 529 drivers/usb/gadget/udc/aspeed-vhub/vhub.h void ast_vhub_hub_resume(struct ast_vhub *vhub); vhub 530 drivers/usb/gadget/udc/aspeed-vhub/vhub.h void ast_vhub_hub_reset(struct ast_vhub *vhub); vhub 531 drivers/usb/gadget/udc/aspeed-vhub/vhub.h void ast_vhub_hub_wake_all(struct ast_vhub *vhub); vhub 534 drivers/usb/gadget/udc/aspeed-vhub/vhub.h int ast_vhub_init_dev(struct ast_vhub *vhub, unsigned int idx);