Lines Matching full:vhub

3  * aspeed-vhub -- Driver for Aspeed SoC "vHub" USB gadget
33 #include "vhub.h"
338 struct ast_vhub *vhub = ep->vhub; in ast_vhub_epn_queue() local
345 dev_warn(&vhub->pdev->dev, "Bogus EPn request ! u_req=%p\n", u_req); in ast_vhub_epn_queue()
347 dev_warn(&vhub->pdev->dev, "complete=%p internal=%d\n", in ast_vhub_epn_queue()
379 rc = usb_gadget_map_request_by_dev(&vhub->pdev->dev, u_req, in ast_vhub_epn_queue()
382 dev_warn(&vhub->pdev->dev, in ast_vhub_epn_queue()
401 spin_lock_irqsave(&vhub->lock, flags); in ast_vhub_epn_queue()
412 spin_unlock_irqrestore(&vhub->lock, flags); in ast_vhub_epn_queue()
438 dev_warn(&ep->vhub->pdev->dev, "Timeout waiting for DMA\n"); in ast_vhub_stop_active_req()
473 struct ast_vhub *vhub = ep->vhub; in ast_vhub_epn_dequeue() local
478 spin_lock_irqsave(&vhub->lock, flags); in ast_vhub_epn_dequeue()
495 spin_unlock_irqrestore(&vhub->lock, flags); in ast_vhub_epn_dequeue()
514 ep->vhub->regs + AST_VHUB_EP_TOGGLE); in ast_vhub_update_epn_stall()
521 struct ast_vhub *vhub = ep->vhub; in ast_vhub_set_halt_and_wedge() local
533 spin_lock_irqsave(&vhub->lock, flags); in ast_vhub_set_halt_and_wedge()
537 spin_unlock_irqrestore(&vhub->lock, flags); in ast_vhub_set_halt_and_wedge()
544 spin_unlock_irqrestore(&vhub->lock, flags); in ast_vhub_set_halt_and_wedge()
562 struct ast_vhub *vhub = ep->vhub; in ast_vhub_epn_disable() local
568 spin_lock_irqsave(&vhub->lock, flags); in ast_vhub_epn_disable()
580 ep_ier = readl(vhub->regs + AST_VHUB_EP_ACK_IER); in ast_vhub_epn_disable()
582 writel(ep_ier, vhub->regs + AST_VHUB_EP_ACK_IER); in ast_vhub_epn_disable()
583 writel(imask, vhub->regs + AST_VHUB_EP_ACK_ISR); in ast_vhub_epn_disable()
591 spin_unlock_irqrestore(&vhub->lock, flags); in ast_vhub_epn_disable()
601 struct ast_vhub *vhub; in ast_vhub_epn_enable() local
629 vhub = ep->vhub; in ast_vhub_epn_enable()
695 spin_lock_irqsave(&vhub->lock, flags); in ast_vhub_epn_enable()
739 vhub->regs + AST_VHUB_EP_TOGGLE); in ast_vhub_epn_enable()
743 writel(imask, vhub->regs + AST_VHUB_EP_ACK_ISR); in ast_vhub_epn_enable()
744 ep_ier = readl(vhub->regs + AST_VHUB_EP_ACK_IER); in ast_vhub_epn_enable()
746 writel(ep_ier, vhub->regs + AST_VHUB_EP_ACK_IER); in ast_vhub_epn_enable()
751 spin_unlock_irqrestore(&vhub->lock, flags); in ast_vhub_epn_enable()
774 dma_free_coherent(&ep->vhub->pdev->dev, in ast_vhub_epn_dispose()
799 struct ast_vhub *vhub = d->vhub; in ast_vhub_alloc_epn() local
805 spin_lock_irqsave(&vhub->lock, flags); in ast_vhub_alloc_epn()
806 for (i = 0; i < vhub->max_epns; i++) in ast_vhub_alloc_epn()
807 if (vhub->epns[i].dev == NULL) in ast_vhub_alloc_epn()
809 if (i >= vhub->max_epns) { in ast_vhub_alloc_epn()
810 spin_unlock_irqrestore(&vhub->lock, flags); in ast_vhub_alloc_epn()
815 ep = &vhub->epns[i]; in ast_vhub_alloc_epn()
817 spin_unlock_irqrestore(&vhub->lock, flags); in ast_vhub_alloc_epn()
822 ep->vhub = vhub; in ast_vhub_alloc_epn()
827 ep->epn.regs = vhub->regs + 0x200 + (i * 0x10); in ast_vhub_alloc_epn()
829 ep->buf = dma_alloc_coherent(&vhub->pdev->dev, in ast_vhub_alloc_epn()