| /linux/drivers/usb/host/ |
| A D | xhci.c | 293 val = xhci_read_64(xhci, &xhci->op_regs->dcbaa_ptr); in xhci_zero_64b_regs() 295 xhci_write_64(xhci, 0, &xhci->op_regs->dcbaa_ptr); in xhci_zero_64b_regs() 296 val = xhci_read_64(xhci, &xhci->op_regs->cmd_ring); in xhci_zero_64b_regs() 298 xhci_write_64(xhci, 0, &xhci->op_regs->cmd_ring); in xhci_zero_64b_regs() 374 xhci = from_timer(xhci, t, comp_mode_recovery_timer); in compliance_mode_recovery() 712 xhci->s3.command = readl(&xhci->op_regs->command); in xhci_save_registers() 714 xhci->s3.dcbaa_ptr = xhci_read_64(xhci, &xhci->op_regs->dcbaa_ptr); in xhci_save_registers() 737 writel(xhci->s3.command, &xhci->op_regs->command); in xhci_restore_registers() 739 xhci_write_64(xhci, xhci->s3.dcbaa_ptr, &xhci->op_regs->dcbaa_ptr); in xhci_restore_registers() 3970 xhci->num_active_eps, xhci->limit_active_eps); in xhci_reserve_host_control_ep_resources() [all …]
|
| A D | xhci-mem.c | 981 dev->eps[i].xhci = xhci; in xhci_alloc_virt_device() 1878 xhci_free_interrupter(xhci, xhci->interrupters[i]); in xhci_mem_cleanup() 1885 xhci_ring_free(xhci, xhci->cmd_ring); in xhci_mem_cleanup() 1923 xhci->dcbaa, xhci->dcbaa->dma); in xhci_mem_cleanup() 2039 port_cap = &xhci->port_caps[xhci->num_port_caps++]; in xhci_add_in_port() 2408 xhci->page_size = 1 << xhci->page_shift; in xhci_mem_init() 2436 &xhci->dcbaa->dma, xhci->dcbaa); in xhci_mem_init() 2437 xhci_write_64(xhci, dma, &xhci->op_regs->dcbaa_ptr); in xhci_mem_init() 2456 if (!xhci->segment_pool || !xhci->device_pool) in xhci_mem_init() 2504 xhci->dba = (void __iomem *) xhci->cap_regs + val; in xhci_mem_init() [all …]
|
| A D | xhci-ring.c | 421 if ((xhci->cmd_ring->dequeue != xhci->cmd_ring->enqueue) && in xhci_handle_stopped_cmd_ring() 462 ret = xhci_handshake_check_state(xhci, &xhci->op_regs->cmd_ring, in xhci_abort_cmd_ring() 485 xhci_handle_stopped_cmd_ring(xhci, xhci_next_queued_cmd(xhci)); in xhci_abort_cmd_ring() 975 xhci = ep->xhci; in xhci_invalidate_cancelled_tds() 1693 xhci_handle_stopped_cmd_ring(xhci, xhci->current_cmd); in xhci_handle_command_timeout() 1834 inc_deq(xhci, xhci->cmd_ring); in handle_cmd_completion() 3129 xhci_handle_events(xhci, xhci->interrupters[0]); in xhci_irq() 3582 ret = prepare_transfer(xhci, xhci->devs[slot_id], in xhci_queue_bulk_tx() 3690 ret = prepare_transfer(xhci, xhci->devs[slot_id], in xhci_queue_bulk_tx() 3739 ret = prepare_transfer(xhci, xhci->devs[slot_id], in xhci_queue_ctrl_tx() [all …]
|
| A D | xhci-pci.c | 163 xhci->nvecs = pci_alloc_irq_vectors(pdev, 1, xhci->nvecs, in xhci_try_enable_msi() 165 if (xhci->nvecs < 0) { in xhci_try_enable_msi() 172 xhci_to_hcd(xhci)); in xhci_try_enable_msi() 225 xhci_cleanup_msix(xhci); in xhci_pci_stop() 547 struct xhci_hcd *xhci; in xhci_pci_setup() local 552 xhci = hcd_to_xhci(hcd); in xhci_pci_setup() 591 struct xhci_hcd *xhci; in xhci_pci_common_probe() local 616 xhci = hcd_to_xhci(hcd); in xhci_pci_common_probe() 617 xhci->reset = reset; in xhci_pci_common_probe() 678 struct xhci_hcd *xhci; in xhci_pci_remove() local [all …]
|
| A D | xhci-hub.c | 563 xhci_dbg(xhci, in xhci_disable_port() 690 xhci_start(xhci); in xhci_port_set_test_mode() 703 if (!xhci->devs[i]) in xhci_enter_test_mode() 717 xhci_set_port_power(xhci, xhci->usb3_rhub.ports[i], false, flags); in xhci_enter_test_mode() 720 xhci_set_port_power(xhci, xhci->usb2_rhub.ports[i], false, flags); in xhci_enter_test_mode() 751 xhci->test_mode = 0; in xhci_exit_test_mode() 935 struct xhci_hcd *xhci; in xhci_handle_usb2_port_link_resume() local 1261 xhci_hc_died(xhci); in xhci_hub_control() 1307 xhci_hc_died(xhci); in xhci_hub_control() 1554 xhci_hc_died(xhci); in xhci_hub_control() [all …]
|
| A D | xhci-plat.c | 81 xhci->quirks |= priv->quirks; in xhci_plat_quirks() 149 struct xhci_hcd *xhci; in xhci_plat_probe() local 193 xhci = hcd_to_xhci(hcd); in xhci_plat_probe() 208 if (IS_ERR(xhci->clk)) { in xhci_plat_probe() 209 ret = PTR_ERR(xhci->clk); in xhci_plat_probe() 214 if (IS_ERR(xhci->reset)) { in xhci_plat_probe() 239 xhci->main_hcd = hcd; in xhci_plat_probe() 269 &xhci->imod_interval); in xhci_plat_probe() 306 if (!xhci->shared_hcd) { in xhci_plat_probe() 331 if (xhci->shared_hcd) { in xhci_plat_probe() [all …]
|
| A D | Makefile | 14 xhci-hcd-y := xhci.o xhci-mem.o xhci-ext-caps.o 15 xhci-hcd-y += xhci-ring.o xhci-hub.o xhci-dbg.o 16 xhci-hcd-y += xhci-trace.o 19 xhci-hcd-y += xhci-dbgcap.o xhci-dbgtty.o 22 xhci-mtk-hcd-y := xhci-mtk.o xhci-mtk-sch.o 24 xhci-plat-hcd-y := xhci-plat.o 26 xhci-plat-hcd-y += xhci-mvebu.o 29 xhci-hcd-y += xhci-debugfs.o 32 xhci-rcar-hcd-y += xhci-rcar.o 33 xhci-rcar-hcd-$(CONFIG_USB_XHCI_RZV2M) += xhci-rzv2m.o [all …]
|
| A D | xhci-debugfs.c | 261 struct xhci_hcd *xhci; in xhci_slot_context_show() local 283 struct xhci_hcd *xhci; in xhci_endpoint_context_show() local 662 xhci_debugfs_regset(xhci, in xhci_debugfs_init() 667 xhci_debugfs_regset(xhci, in xhci_debugfs_init() 672 xhci_debugfs_regset(xhci, in xhci_debugfs_init() 692 xhci_debugfs_create_ring_dir(xhci, &xhci->cmd_ring, in xhci_debugfs_init() 696 xhci_debugfs_create_ring_dir(xhci, &xhci->interrupters[0]->event_ring, in xhci_debugfs_init() 700 xhci->debugfs_slots = debugfs_create_dir("devices", xhci->debugfs_root); in xhci_debugfs_init() 702 xhci_debugfs_create_ports(xhci, xhci->debugfs_root); in xhci_debugfs_init() 710 xhci->debugfs_root = NULL; in xhci_debugfs_exit() [all …]
|
| A D | xhci-debugfs.h | 107 void xhci_debugfs_init(struct xhci_hcd *xhci); 108 void xhci_debugfs_exit(struct xhci_hcd *xhci); 111 void xhci_debugfs_create_slot(struct xhci_hcd *xhci, int slot_id); 113 void xhci_debugfs_create_endpoint(struct xhci_hcd *xhci, 116 void xhci_debugfs_remove_endpoint(struct xhci_hcd *xhci, 119 void xhci_debugfs_create_stream_files(struct xhci_hcd *xhci, 123 static inline void xhci_debugfs_init(struct xhci_hcd *xhci) { } in xhci_debugfs_init() argument 124 static inline void xhci_debugfs_exit(struct xhci_hcd *xhci) { } in xhci_debugfs_exit() argument 130 xhci_debugfs_create_endpoint(struct xhci_hcd *xhci, in xhci_debugfs_create_endpoint() argument 134 xhci_debugfs_remove_endpoint(struct xhci_hcd *xhci, in xhci_debugfs_remove_endpoint() argument [all …]
|
| A D | xhci.h | 675 struct xhci_hcd *xhci; member 1692 return xhci->main_hcd; in xhci_to_hcd() 1697 if (xhci->shared_hcd) in xhci_get_usb3_hcd() 1698 return xhci->shared_hcd; in xhci_get_usb3_hcd() 1700 if (!xhci->usb2_rhub.num_ports) in xhci_get_usb3_hcd() 1701 return xhci->main_hcd; in xhci_get_usb3_hcd() 1715 return xhci->allow_single_roothub && in xhci_has_one_roothub() 1716 (!xhci->usb2_rhub.num_ports || !xhci->usb3_rhub.num_ports); in xhci_has_one_roothub() 1719 #define xhci_dbg(xhci, fmt, args...) \ argument 1721 #define xhci_err(xhci, fmt, args...) \ argument [all …]
|
| A D | xhci-histb.c | 193 struct xhci_hcd *xhci; in xhci_histb_probe() local 252 xhci = hcd_to_xhci(hcd); in xhci_histb_probe() 256 xhci->main_hcd = hcd; in xhci_histb_probe() 259 if (!xhci->shared_hcd) { in xhci_histb_probe() 265 xhci->quirks |= XHCI_HW_LPM_DISABLE; in xhci_histb_probe() 268 xhci->quirks |= XHCI_LPM_SUPPORT; in xhci_histb_probe() 271 xhci->imod_interval = 40000; in xhci_histb_probe() 273 &xhci->imod_interval); in xhci_histb_probe() 280 xhci->shared_hcd->can_do_streams = 1; in xhci_histb_probe() 300 usb_put_hcd(xhci->shared_hcd); in xhci_histb_probe() [all …]
|
| A D | xhci-mtk.c | 456 xhci->quirks |= XHCI_MTK_HOST; in xhci_mtk_quirks() 471 if (xhci->hci_version < 0x100 && HCC_MAX_PSA(xhci->hcc_params) == 4) in xhci_mtk_quirks() 515 struct xhci_hcd *xhci; in xhci_mtk_probe() local 627 xhci = hcd_to_xhci(hcd); in xhci_mtk_probe() 628 xhci->main_hcd = hcd; in xhci_mtk_probe() 636 xhci->imod_interval = 5000; in xhci_mtk_probe() 646 if (!xhci->shared_hcd) { in xhci_mtk_probe() 657 if (xhci->shared_hcd) { in xhci_mtk_probe() 722 xhci->shared_hcd = NULL; in xhci_mtk_remove() 813 if (xhci->xhc_state) in xhci_mtk_runtime_suspend() [all …]
|
| A D | xhci-dbgcap.c | 984 dbc = xhci->dbc; in dbc_show() 1000 dbc = xhci->dbc; in dbc_store() 1020 dbc = xhci->dbc; in dbc_idVendor_show() 1041 dbc = xhci->dbc; in dbc_idVendor_store() 1062 dbc = xhci->dbc; in dbc_idProduct_show() 1083 dbc = xhci->dbc; in dbc_idProduct_store() 1103 dbc = xhci->dbc; in dbc_bcdDevice_show() 1124 dbc = xhci->dbc; in dbc_bcdDevice_store() 1145 dbc = xhci->dbc; in dbc_bInterfaceProtocol_show() 1304 if (xhci->dbc) in xhci_create_dbc_dev() [all …]
|
| A D | xhci-ext-caps.c | 28 static int xhci_create_intel_xhci_sw_pdev(struct xhci_hcd *xhci, u32 cap_offset) in xhci_create_intel_xhci_sw_pdev() argument 30 struct usb_hcd *hcd = xhci_to_hcd(xhci); in xhci_create_intel_xhci_sw_pdev() 39 xhci_err(xhci, "couldn't allocate %s platform device\n", in xhci_create_intel_xhci_sw_pdev() 84 int xhci_ext_cap_init(struct xhci_hcd *xhci) in xhci_ext_cap_init() argument 86 void __iomem *base = &xhci->cap_regs->hc_capbase; in xhci_ext_cap_init() 97 if (xhci->quirks & XHCI_INTEL_USB_ROLE_SW) { in xhci_ext_cap_init() 98 ret = xhci_create_intel_xhci_sw_pdev(xhci, in xhci_ext_cap_init()
|
| A D | xhci-dbgcap.h | 126 struct xhci_hcd *xhci; member 205 int xhci_create_dbc_dev(struct xhci_hcd *xhci); 206 void xhci_remove_dbc_dev(struct xhci_hcd *xhci); 211 int xhci_dbc_tty_probe(struct device *dev, void __iomem *res, struct xhci_hcd *xhci); 222 int xhci_dbc_suspend(struct xhci_hcd *xhci); 223 int xhci_dbc_resume(struct xhci_hcd *xhci); 226 static inline int xhci_create_dbc_dev(struct xhci_hcd *xhci) in xhci_create_dbc_dev() argument 231 static inline void xhci_remove_dbc_dev(struct xhci_hcd *xhci) in xhci_remove_dbc_dev() argument 241 static inline int xhci_dbc_suspend(struct xhci_hcd *xhci) in xhci_dbc_suspend() argument 246 static inline int xhci_dbc_resume(struct xhci_hcd *xhci) in xhci_dbc_resume() argument
|
| A D | xhci-dbg.c | 13 char *xhci_get_slot_state(struct xhci_hcd *xhci, in xhci_get_slot_state() argument 16 struct xhci_slot_ctx *slot_ctx = xhci_get_slot_ctx(xhci, ctx); in xhci_get_slot_state() 22 void xhci_dbg_trace(struct xhci_hcd *xhci, void (*trace)(struct va_format *), in xhci_dbg_trace() argument 31 xhci_dbg(xhci, "%pV\n", &vaf); in xhci_dbg_trace()
|
| A D | xhci-mtk-sch.c | 130 struct xhci_hcd *xhci = hcd_to_xhci(mtk->hcd); in get_bw_info() local 134 virt_dev = xhci->devs[udev->slot_id]; in get_bw_info() 887 struct xhci_hcd *xhci = hcd_to_xhci(mtk->hcd); in xhci_mtk_sch_init() local 892 num_usb_bus = xhci->usb3_rhub.num_ports * 2 + xhci->usb2_rhub.num_ports; in xhci_mtk_sch_init() 915 struct xhci_hcd *xhci = hcd_to_xhci(hcd); in add_ep_quirk() local 921 virt_dev = xhci->devs[udev->slot_id]; in add_ep_quirk() 923 ep_ctx = xhci_get_ep_ctx(xhci, virt_dev->in_ctx, ep_index); in add_ep_quirk() 955 struct xhci_hcd *xhci = hcd_to_xhci(hcd); in drop_ep_quirk() local 976 struct xhci_hcd *xhci = hcd_to_xhci(hcd); in xhci_mtk_check_bandwidth() local 990 xhci_err(xhci, "Not enough bandwidth! (%s)\n", in xhci_mtk_check_bandwidth() [all …]
|
| A D | xhci-tegra.c | 1293 struct usb_hcd *hcd = main ? xhci->main_hcd : xhci->shared_hcd; in tegra_xhci_set_port_power() 1541 struct xhci_hcd *xhci; in tegra_xusb_probe() local 1819 xhci = hcd_to_xhci(tegra->hcd); in tegra_xusb_probe() 1825 if (!xhci->shared_hcd) { in tegra_xusb_probe() 1891 usb_put_hcd(xhci->shared_hcd); in tegra_xusb_probe() 1933 usb_put_hcd(xhci->shared_hcd); in tegra_xusb_remove() 1934 xhci->shared_hcd = NULL; in tegra_xusb_remove() 2071 rhub = &xhci->usb3_rhub; in tegra_xhci_enable_phy_sleepwalk_wake() 2073 rhub = &xhci->usb2_rhub; in tegra_xhci_enable_phy_sleepwalk_wake() 2187 if (!xhci->usb2_rhub.ports[i]) in tegra_xusb_enter_elpg() [all …]
|
| A D | xhci-trace.h | 12 #define TRACE_SYSTEM xhci-hcd 74 TP_PROTO(struct xhci_hcd *xhci, struct xhci_container_ctx *ctx, 76 TP_ARGS(xhci, ctx, ep_num), 84 ((HCC_64BYTE_CONTEXT(xhci->hcc_params) + 1) * 8) * 89 __entry->ctx_64 = HCC_64BYTE_CONTEXT(xhci->hcc_params); 95 ((HCC_64BYTE_CONTEXT(xhci->hcc_params) + 1) * 32) * 105 TP_PROTO(struct xhci_hcd *xhci, struct xhci_container_ctx *ctx, 107 TP_ARGS(xhci, ctx, ep_num) 624 #define TRACE_INCLUDE_FILE xhci-trace
|
| /linux/Documentation/devicetree/bindings/usb/ |
| A D | renesas,usb-xhci.yaml | 18 - renesas,xhci-r8a7742 # RZ/G1H 19 - renesas,xhci-r8a7743 # RZ/G1M 20 - renesas,xhci-r8a7744 # RZ/G1N 21 - renesas,xhci-r8a7790 # R-Car H2 27 - renesas,xhci-r8a774a1 # RZ/G2M 28 - renesas,xhci-r8a774b1 # RZ/G2N 29 - renesas,xhci-r8a774c0 # RZ/G2E 30 - renesas,xhci-r8a774e1 # RZ/G2H 83 - $ref: usb-xhci.yaml 90 - renesas,rzv2m-xhci [all …]
|
| A D | generic-xhci.yaml | 16 const: generic-xhci 20 - marvell,armada3700-xhci 23 - marvell,armada-8k-xhci 24 - const: generic-xhci 28 - brcm,bcm2711-xhci 29 - const: brcm,xhci-brcm-v2 32 - brcm,xhci-brcm-v2 33 - brcm,bcm7445-xhci 35 const: xhci-platform 65 - $ref: usb-xhci.yaml# [all …]
|
| A D | mediatek,mtk-xhci.yaml | 14 - $ref: usb-xhci.yaml 26 - mediatek,mt2701-xhci 27 - mediatek,mt2712-xhci 28 - mediatek,mt7622-xhci 29 - mediatek,mt7623-xhci 30 - mediatek,mt7629-xhci 31 - mediatek,mt7986-xhci 32 - mediatek,mt7988-xhci 33 - mediatek,mt8173-xhci 34 - mediatek,mt8183-xhci [all …]
|
| A D | mediatek,mtu3.yaml | 208 $ref: /schemas/usb/mediatek,mtk-xhci.yaml# 210 The xhci should be added as subnode to mtu3 as shown in the following 257 xhci: usb@11270000 { 258 compatible = "mediatek,mt8173-xhci", "mediatek,mtk-xhci"; 290 compatible = "mediatek,mt2712-xhci", "mediatek,mtk-xhci"; 327 compatible = "mediatek,mt8183-xhci", "mediatek,mtk-xhci";
|
| /linux/drivers/usb/cdns3/ |
| A D | host.c | 34 struct xhci_hcd *xhci = hcd_to_xhci(hcd); in xhci_cdns3_plat_start() local 38 value = readl(&xhci->op_regs->command); in xhci_cdns3_plat_start() 40 writel(value, &xhci->op_regs->command); in xhci_cdns3_plat_start() 71 struct platform_device *xhci; in __cdns_host_init() local 78 if (!xhci) { in __cdns_host_init() 83 xhci->dev.parent = cdns->dev; in __cdns_host_init() 84 cdns->host_dev = xhci; in __cdns_host_init() 86 ret = platform_device_add_resources(xhci, cdns->xhci_res, in __cdns_host_init() 113 ret = platform_device_add(xhci); in __cdns_host_init() 120 hcd = platform_get_drvdata(xhci); in __cdns_host_init() [all …]
|
| /linux/drivers/usb/dwc3/ |
| A D | host.c | 130 struct platform_device *xhci; in dwc3_host_init() local 145 if (!xhci) { in dwc3_host_init() 150 xhci->dev.parent = dwc->dev; in dwc3_host_init() 152 dwc->xhci = xhci; in dwc3_host_init() 193 ret = platform_device_add_data(xhci, &dwc3_xhci_plat_quirk, in dwc3_host_init() 198 ret = platform_device_add(xhci); in dwc3_host_init() 209 device_init_wakeup(&xhci->dev, true); in dwc3_host_init() 214 platform_device_put(xhci); in dwc3_host_init() 221 device_init_wakeup(&dwc->xhci->dev, false); in dwc3_host_exit() 224 platform_device_unregister(dwc->xhci); in dwc3_host_exit() [all …]
|