Home
last modified time | relevance | path

Searched refs:xhci (Results 1 – 22 of 22) sorted by relevance

/linux-4.4.14/drivers/usb/host/
Dxhci-dbg.c29 void xhci_dbg_regs(struct xhci_hcd *xhci) in xhci_dbg_regs() argument
33 xhci_dbg(xhci, "// xHCI capability registers at %p:\n", in xhci_dbg_regs()
34 xhci->cap_regs); in xhci_dbg_regs()
35 temp = readl(&xhci->cap_regs->hc_capbase); in xhci_dbg_regs()
36 xhci_dbg(xhci, "// @%p = 0x%x (CAPLENGTH AND HCIVERSION)\n", in xhci_dbg_regs()
37 &xhci->cap_regs->hc_capbase, temp); in xhci_dbg_regs()
38 xhci_dbg(xhci, "// CAPLENGTH: 0x%x\n", in xhci_dbg_regs()
41 xhci_dbg(xhci, "// HCIVERSION: 0x%x\n", in xhci_dbg_regs()
45 xhci_dbg(xhci, "// xHCI operational registers at %p:\n", xhci->op_regs); in xhci_dbg_regs()
47 temp = readl(&xhci->cap_regs->run_regs_off); in xhci_dbg_regs()
[all …]
Dxhci.c83 void xhci_quiesce(struct xhci_hcd *xhci) in xhci_quiesce() argument
90 halted = readl(&xhci->op_regs->status) & STS_HALT; in xhci_quiesce()
94 cmd = readl(&xhci->op_regs->command); in xhci_quiesce()
96 writel(cmd, &xhci->op_regs->command); in xhci_quiesce()
107 int xhci_halt(struct xhci_hcd *xhci) in xhci_halt() argument
110 xhci_dbg_trace(xhci, trace_xhci_dbg_init, "// Halt the HC"); in xhci_halt()
111 xhci_quiesce(xhci); in xhci_halt()
113 ret = xhci_handshake(&xhci->op_regs->status, in xhci_halt()
116 xhci->xhc_state |= XHCI_STATE_HALTED; in xhci_halt()
117 xhci->cmd_ring_state = CMD_RING_STATE_STOPPED; in xhci_halt()
[all …]
Dxhci-mem.c39 static struct xhci_segment *xhci_segment_alloc(struct xhci_hcd *xhci, in xhci_segment_alloc() argument
50 seg->trbs = dma_pool_alloc(xhci->segment_pool, flags, &dma); in xhci_segment_alloc()
68 static void xhci_segment_free(struct xhci_hcd *xhci, struct xhci_segment *seg) in xhci_segment_free() argument
71 dma_pool_free(xhci->segment_pool, seg->trbs, seg->dma); in xhci_segment_free()
77 static void xhci_free_segments_for_ring(struct xhci_hcd *xhci, in xhci_free_segments_for_ring() argument
85 xhci_segment_free(xhci, seg); in xhci_free_segments_for_ring()
88 xhci_segment_free(xhci, first); in xhci_free_segments_for_ring()
98 static void xhci_link_segments(struct xhci_hcd *xhci, struct xhci_segment *prev, in xhci_link_segments() argument
116 if (xhci_link_trb_quirk(xhci) || in xhci_link_segments()
118 (xhci->quirks & XHCI_AMD_0x96_HOST))) in xhci_link_segments()
[all …]
Dxhci-pci.c65 static int xhci_pci_reinit(struct xhci_hcd *xhci, struct pci_dev *pdev) in xhci_pci_reinit() argument
75 xhci_dbg(xhci, "MWI active\n"); in xhci_pci_reinit()
77 xhci_dbg(xhci, "Finished xhci_pci_reinit\n"); in xhci_pci_reinit()
81 static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci) in xhci_pci_quirks() argument
91 xhci->quirks |= XHCI_RESET_EP_QUIRK; in xhci_pci_quirks()
92 xhci_dbg_trace(xhci, trace_xhci_dbg_quirks, in xhci_pci_quirks()
98 xhci->quirks |= XHCI_SLOW_SUSPEND; in xhci_pci_quirks()
99 xhci_dbg_trace(xhci, trace_xhci_dbg_quirks, in xhci_pci_quirks()
105 xhci->quirks |= XHCI_BROKEN_STREAMS; in xhci_pci_quirks()
110 xhci->quirks |= XHCI_BROKEN_MSI; in xhci_pci_quirks()
[all …]
Dxhci-ring.c93 static bool last_trb_on_last_seg(struct xhci_hcd *xhci, struct xhci_ring *ring, in last_trb_on_last_seg() argument
96 if (ring == xhci->event_ring) in last_trb_on_last_seg()
98 (seg->next == xhci->event_ring->first_seg); in last_trb_on_last_seg()
107 static int last_trb(struct xhci_hcd *xhci, struct xhci_ring *ring, in last_trb() argument
110 if (ring == xhci->event_ring) in last_trb()
126 static void next_trb(struct xhci_hcd *xhci, in next_trb() argument
131 if (last_trb(xhci, ring, *seg, *trb)) { in next_trb()
143 static void inc_deq(struct xhci_hcd *xhci, struct xhci_ring *ring) in inc_deq() argument
152 !last_trb(xhci, ring, ring->deq_seg, ring->dequeue)) in inc_deq()
161 if (last_trb(xhci, ring, ring->deq_seg, ring->dequeue)) { in inc_deq()
[all …]
Dxhci-hub.c63 static int xhci_create_usb3_bos_desc(struct xhci_hcd *xhci, char *buf, in xhci_create_usb3_bos_desc() argument
75 if (xhci->usb3_rhub.min_rev >= 0x01 && xhci->usb3_rhub.psi_uid_count) { in xhci_create_usb3_bos_desc()
77 ssa_count = xhci->usb3_rhub.psi_uid_count * 2; in xhci_create_usb3_bos_desc()
94 temp = readl(&xhci->cap_regs->hcc_params); in xhci_create_usb3_bos_desc()
99 if ((xhci->quirks & XHCI_LPM_SUPPORT)) { in xhci_create_usb3_bos_desc()
100 temp = readl(&xhci->cap_regs->hcs_params3); in xhci_create_usb3_bos_desc()
117 bm_attrib |= (xhci->usb3_rhub.psi_uid_count - 1) << 5; in xhci_create_usb3_bos_desc()
130 for (i = 0; i < xhci->usb3_rhub.psi_count; i++) { in xhci_create_usb3_bos_desc()
131 psi = xhci->usb3_rhub.psi[i]; in xhci_create_usb3_bos_desc()
154 static void xhci_common_hub_descriptor(struct xhci_hcd *xhci, in xhci_common_hub_descriptor() argument
[all …]
Dxhci.h924 struct xhci_hcd *xhci; member
1684 static inline struct usb_hcd *xhci_to_hcd(struct xhci_hcd *xhci) in xhci_to_hcd() argument
1686 return xhci->main_hcd; in xhci_to_hcd()
1689 #define xhci_dbg(xhci, fmt, args...) \ argument
1690 dev_dbg(xhci_to_hcd(xhci)->self.controller , fmt , ## args)
1691 #define xhci_err(xhci, fmt, args...) \ argument
1692 dev_err(xhci_to_hcd(xhci)->self.controller , fmt , ## args)
1693 #define xhci_warn(xhci, fmt, args...) \ argument
1694 dev_warn(xhci_to_hcd(xhci)->self.controller , fmt , ## args)
1695 #define xhci_warn_ratelimited(xhci, fmt, args...) \ argument
[all …]
Dxhci-plat.c39 static void xhci_plat_quirks(struct device *dev, struct xhci_hcd *xhci) in xhci_plat_quirks() argument
46 xhci->quirks |= XHCI_PLAT; in xhci_plat_quirks()
81 struct xhci_hcd *xhci; in xhci_plat_probe() local
148 xhci = hcd_to_xhci(hcd); in xhci_plat_probe()
149 xhci->clk = clk; in xhci_plat_probe()
150 xhci->main_hcd = hcd; in xhci_plat_probe()
151 xhci->shared_hcd = usb_create_shared_hcd(driver, &pdev->dev, in xhci_plat_probe()
153 if (!xhci->shared_hcd) { in xhci_plat_probe()
160 xhci->quirks |= XHCI_LPM_SUPPORT; in xhci_plat_probe()
162 if (HCC_MAX_PSA(xhci->hcc_params) >= 4) in xhci_plat_probe()
[all …]
DMakefile13 xhci-hcd-y := xhci.o xhci-mem.o
14 xhci-hcd-y += xhci-ring.o xhci-hub.o xhci-dbg.o
15 xhci-hcd-y += xhci-trace.o
17 xhci-plat-hcd-y := xhci-plat.o
19 xhci-plat-hcd-y += xhci-mvebu.o
22 xhci-plat-hcd-y += xhci-rcar.o
64 obj-$(CONFIG_USB_XHCI_HCD) += xhci-hcd.o
65 obj-$(CONFIG_USB_XHCI_PCI) += xhci-pci.o
66 obj-$(CONFIG_USB_XHCI_PLATFORM) += xhci-plat-hcd.o
Dxhci-trace.h15 #define TRACE_SYSTEM xhci-hcd
78 TP_PROTO(struct xhci_hcd *xhci, struct xhci_container_ctx *ctx,
80 TP_ARGS(xhci, ctx, ep_num),
89 ((HCC_64BYTE_CONTEXT(xhci->hcc_params) + 1) * 8) *
95 udev = to_usb_device(xhci_to_hcd(xhci)->self.controller);
96 __entry->ctx_64 = HCC_64BYTE_CONTEXT(xhci->hcc_params);
103 ((HCC_64BYTE_CONTEXT(xhci->hcc_params) + 1) * 32) *
113 TP_PROTO(struct xhci_hcd *xhci, struct xhci_container_ctx *ctx,
115 TP_ARGS(xhci, ctx, ep_num)
156 #define TRACE_INCLUDE_FILE xhci-trace
DKconfig25 module will be called xhci-hcd.
/linux-4.4.14/drivers/usb/dwc3/
Dhost.c25 struct platform_device *xhci; in dwc3_host_init() local
29 xhci = platform_device_alloc("xhci-hcd", PLATFORM_DEVID_AUTO); in dwc3_host_init()
30 if (!xhci) { in dwc3_host_init()
35 dma_set_coherent_mask(&xhci->dev, dwc->dev->coherent_dma_mask); in dwc3_host_init()
37 xhci->dev.parent = dwc->dev; in dwc3_host_init()
38 xhci->dev.dma_mask = dwc->dev->dma_mask; in dwc3_host_init()
39 xhci->dev.dma_parms = dwc->dev->dma_parms; in dwc3_host_init()
41 dwc->xhci = xhci; in dwc3_host_init()
43 ret = platform_device_add_resources(xhci, dwc->xhci_resources, in dwc3_host_init()
54 ret = platform_device_add_data(xhci, &pdata, sizeof(pdata)); in dwc3_host_init()
[all …]
Dcore.h750 struct platform_device *xhci; member
/linux-4.4.14/Documentation/devicetree/bindings/usb/
Dusb-xhci.txt4 - compatible: should be one of "generic-xhci",
5 "marvell,armada-375-xhci", "marvell,armada-380-xhci",
6 "renesas,xhci-r8a7790", "renesas,xhci-r8a7791" (deprecated:
7 "xhci-platform").
18 compatible = "generic-xhci";
/linux-4.4.14/arch/arm/boot/dts/
Darmada-38x.dtsi588 compatible = "marvell,armada-380-xhci";
596 compatible = "marvell,armada-380-xhci";
Darmada-370-dlink-dns327l.dts291 xhci_pwr_pin: xhci-pwr-pin {
Dr8a7790-lager.dts640 &xhci {
Darmada-375.dtsi467 compatible = "marvell,armada-375-xhci";
Dr8a7791.dtsi1474 xhci: usb@ee000000 { label
1475 compatible = "renesas,xhci-r8a7791";
Dr8a7790.dtsi1463 xhci: usb@ee000000 { label
1464 compatible = "renesas,xhci-r8a7790";
/linux-4.4.14/Documentation/usb/
Dpower-management.txt639 Distinct from 'companion ports', or 'ehci/xhci shared switchover ports'
/linux-4.4.14/
DMAINTAINERS11286 F: drivers/usb/host/xhci*