/Linux-v5.10/drivers/usb/gadget/udc/aspeed-vhub/ |
D | core.c | 3 * aspeed-vhub -- Driver for Aspeed SoC "vHub" USB gadget 33 #include "vhub.h" 59 spin_unlock(&ep->vhub->lock); in ast_vhub_done() 61 spin_lock(&ep->vhub->lock); in ast_vhub_done() 100 struct ast_vhub *vhub = data; in ast_vhub_irq() local 105 if (!vhub->ep0_bufs) in ast_vhub_irq() 108 spin_lock(&vhub->lock); in ast_vhub_irq() 111 istat = readl(vhub->regs + AST_VHUB_ISR); in ast_vhub_irq() 114 writel(istat, vhub->regs + AST_VHUB_ISR); in ast_vhub_irq() 117 UDCVDBG(vhub, "irq status=%08x, ep_acks=%08x ep_nacks=%08x\n", in ast_vhub_irq() [all …]
|
D | hub.c | 3 * aspeed-vhub -- Driver for Aspeed SoC "vHub" USB gadget 37 #include "vhub.h" 179 if (ep->vhub->wakeup_en) in ast_vhub_hub_dev_status() 196 if (ep->vhub->ep1_stalled) in ast_vhub_hub_ep_status() 214 ep->vhub->wakeup_en = is_set; in ast_vhub_hub_dev_feature() 242 ep->vhub->ep1_stalled = is_set; in ast_vhub_hub_ep_feature() 243 reg = readl(ep->vhub->regs + AST_VHUB_EP1_CTRL); in ast_vhub_hub_ep_feature() 250 writel(reg, ep->vhub->regs + AST_VHUB_EP1_CTRL); in ast_vhub_hub_ep_feature() 259 struct ast_vhub *vhub = ep->vhub; in ast_vhub_rep_desc() local 275 memcpy(ep->buf, &vhub->vhub_dev_desc, dsize); in ast_vhub_rep_desc() [all …]
|
D | dev.c | 3 * aspeed-vhub -- Driver for Aspeed SoC "vHub" USB gadget 35 #include "vhub.h" 72 reg = readl(d->vhub->regs + AST_VHUB_IER); in ast_vhub_dev_enable() 74 writel(reg, d->vhub->regs + AST_VHUB_IER); in ast_vhub_dev_enable() 104 reg = readl(d->vhub->regs + AST_VHUB_IER); in ast_vhub_dev_disable() 106 writel(reg, d->vhub->regs + AST_VHUB_IER); in ast_vhub_dev_disable() 234 d->gadget.speed = ep->vhub->speed; in ast_vhub_std_dev_request() 277 spin_lock_irqsave(&d->vhub->lock, flags); in ast_vhub_udc_wakeup() 284 ast_vhub_hub_wake_all(d->vhub); in ast_vhub_udc_wakeup() 287 spin_unlock_irqrestore(&d->vhub->lock, flags); in ast_vhub_udc_wakeup() [all …]
|
D | epn.c | 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() 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() 435 dev_warn(&ep->vhub->pdev->dev, "Timeout waiting for DMA\n"); in ast_vhub_stop_active_req() 470 struct ast_vhub *vhub = ep->vhub; in ast_vhub_epn_dequeue() local [all …]
|
D | ep0.c | 3 * aspeed-vhub -- Driver for Aspeed SoC "vHub" USB gadget 33 #include "vhub.h" 59 spin_unlock(&ep->vhub->lock); in ast_vhub_reply() 64 spin_lock(&ep->vhub->lock); in ast_vhub_reply() 128 /* If this is the vHub, we handle requests differently */ in ast_vhub_ep0_handle_setup() 157 spin_unlock(&ep->vhub->lock); in ast_vhub_ep0_handle_setup() 159 spin_lock(&ep->vhub->lock); in ast_vhub_ep0_handle_setup() 275 struct ast_vhub *vhub = ep->vhub; in ast_vhub_ep0_handle_ack() local 276 struct device *dev = &vhub->pdev->dev; in ast_vhub_ep0_handle_ack() 363 struct ast_vhub *vhub = ep->vhub; in ast_vhub_ep0_queue() local [all …]
|
D | vhub.h | 10 * VHUB register definitions * 136 * matching corresponding vHub EP0 control bits 210 * existing AST2400/AST2500 platforms. AST2600 and future vhub revisions 214 #define AST_VHUB_NUM_PORTS 5 /* vHub ports */ 265 * or internal use vhub EP0. vhub EP1 doesn't have an 277 /* Dev pointer or NULL for vHub EP0 */ 280 /* vHub itself */ 281 struct ast_vhub *vhub; member 292 /* EP0 (either device or vhub) */ 296 * vHub and devices but located in [all …]
|
D | Makefile | 2 obj-$(CONFIG_USB_ASPEED_VHUB) += aspeed-vhub.o 3 aspeed-vhub-y := core.o ep0.o epn.o dev.o hub.o
|
D | Kconfig | 3 tristate "Aspeed vHub UDC driver" 8 AST2600 family SoCs supporting the "vHub" functionality and USB2.0
|
/Linux-v5.10/Documentation/devicetree/bindings/usb/ |
D | aspeed,usb-vhub.yaml | 5 $id: http://devicetree.org/schemas/usb/aspeed,usb-vhub.yaml# 26 - aspeed,ast2400-usb-vhub 27 - aspeed,ast2500-usb-vhub 28 - aspeed,ast2600-usb-vhub 39 aspeed,vhub-downstream-ports: 46 aspeed,vhub-generic-endpoints: 53 vhub-vendor-id: 54 description: vhub Vendor ID 58 vhub-product-id: 59 description: vhub Product ID [all …]
|
/Linux-v5.10/arch/arm/boot/dts/ |
D | ast2500-facebook-netbmc-common.dtsi | 69 &vhub {
|
D | aspeed-g6.dtsi | 283 vhub: usb-vhub@1e6a0000 { label 284 compatible = "aspeed,ast2600-usb-vhub"; 288 aspeed,vhub-downstream-ports = <7>; 289 aspeed,vhub-generic-endpoints = <21>;
|
D | aspeed-bmc-facebook-wedge100.dts | 146 &vhub {
|
D | aspeed-ast2500-evb.dts | 116 &vhub {
|
D | aspeed-g4.dtsi | 162 vhub: usb-vhub@1e6a0000 { label 163 compatible = "aspeed,ast2400-usb-vhub"; 167 aspeed,vhub-downstream-ports = <5>; 168 aspeed,vhub-generic-endpoints = <15>;
|
D | aspeed-bmc-facebook-wedge40.dts | 132 &vhub {
|
D | aspeed-g5.dtsi | 194 vhub: usb-vhub@1e6a0000 { label 195 compatible = "aspeed,ast2500-usb-vhub"; 199 aspeed,vhub-downstream-ports = <5>; 200 aspeed,vhub-generic-endpoints = <15>;
|
D | aspeed-bmc-opp-nicole.dts | 295 &vhub {
|
D | aspeed-bmc-opp-romulus.dts | 341 &vhub {
|
D | aspeed-bmc-opp-mowgli.dts | 653 &vhub {
|
D | aspeed-bmc-opp-witherspoon.dts | 690 &vhub {
|
D | aspeed-bmc-inspur-fp5280g2.dts | 813 &vhub {
|
D | aspeed-bmc-opp-mihawk.dts | 1337 &vhub {
|
D | aspeed-bmc-facebook-cmm.dts | 1560 &vhub {
|
/Linux-v5.10/drivers/usb/gadget/udc/ |
D | Makefile | 43 obj-$(CONFIG_USB_ASPEED_VHUB) += aspeed-vhub/
|
D | Kconfig | 465 source "drivers/usb/gadget/udc/aspeed-vhub/Kconfig"
|