Home
last modified time | relevance | path

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

/linux-4.1.27/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.c58 static int xhci_pci_reinit(struct xhci_hcd *xhci, struct pci_dev *pdev) in xhci_pci_reinit() argument
68 xhci_dbg(xhci, "MWI active\n"); in xhci_pci_reinit()
70 xhci_dbg(xhci, "Finished xhci_pci_reinit\n"); in xhci_pci_reinit()
74 static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci) in xhci_pci_quirks() argument
84 xhci->quirks |= XHCI_RESET_EP_QUIRK; in xhci_pci_quirks()
85 xhci_dbg_trace(xhci, trace_xhci_dbg_quirks, in xhci_pci_quirks()
91 xhci->quirks |= XHCI_SLOW_SUSPEND; in xhci_pci_quirks()
92 xhci_dbg_trace(xhci, trace_xhci_dbg_quirks, in xhci_pci_quirks()
98 xhci->quirks |= XHCI_BROKEN_STREAMS; in xhci_pci_quirks()
103 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.c53 static void xhci_common_hub_descriptor(struct xhci_hcd *xhci, in xhci_common_hub_descriptor() argument
64 if (HCC_PPC(xhci->hcc_params)) in xhci_common_hub_descriptor()
77 static void xhci_usb2_hub_descriptor(struct usb_hcd *hcd, struct xhci_hcd *xhci, in xhci_usb2_hub_descriptor() argument
86 ports = xhci->num_usb2_ports; in xhci_usb2_hub_descriptor()
88 xhci_common_hub_descriptor(xhci, desc, ports); in xhci_usb2_hub_descriptor()
98 portsc = readl(xhci->usb2_ports[i]); in xhci_usb2_hub_descriptor()
130 static void xhci_usb3_hub_descriptor(struct usb_hcd *hcd, struct xhci_hcd *xhci, in xhci_usb3_hub_descriptor() argument
138 ports = xhci->num_usb3_ports; in xhci_usb3_hub_descriptor()
139 xhci_common_hub_descriptor(xhci, desc, ports); in xhci_usb3_hub_descriptor()
152 portsc = readl(xhci->usb3_ports[i]); in xhci_usb3_hub_descriptor()
[all …]
Dxhci.h876 struct xhci_hcd *xhci; member
1608 static inline struct usb_hcd *xhci_to_hcd(struct xhci_hcd *xhci) in xhci_to_hcd() argument
1610 return xhci->main_hcd; in xhci_to_hcd()
1613 #define xhci_dbg(xhci, fmt, args...) \ argument
1614 dev_dbg(xhci_to_hcd(xhci)->self.controller , fmt , ## args)
1615 #define xhci_err(xhci, fmt, args...) \ argument
1616 dev_err(xhci_to_hcd(xhci)->self.controller , fmt , ## args)
1617 #define xhci_warn(xhci, fmt, args...) \ argument
1618 dev_warn(xhci_to_hcd(xhci)->self.controller , fmt , ## args)
1619 #define xhci_warn_ratelimited(xhci, fmt, args...) \ argument
[all …]
Dxhci-plat.c29 static void xhci_plat_quirks(struct device *dev, struct xhci_hcd *xhci) in xhci_plat_quirks() argument
36 xhci->quirks |= XHCI_PLAT; in xhci_plat_quirks()
71 struct xhci_hcd *xhci; in xhci_plat_probe() local
138 xhci = hcd_to_xhci(hcd); in xhci_plat_probe()
139 xhci->clk = clk; in xhci_plat_probe()
140 xhci->shared_hcd = usb_create_shared_hcd(driver, &pdev->dev, in xhci_plat_probe()
142 if (!xhci->shared_hcd) { in xhci_plat_probe()
149 xhci->quirks |= XHCI_LPM_SUPPORT; in xhci_plat_probe()
154 *((struct xhci_hcd **) xhci->shared_hcd->hcd_priv) = xhci; in xhci_plat_probe()
156 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
62 obj-$(CONFIG_USB_XHCI_HCD) += xhci-hcd.o
63 obj-$(CONFIG_USB_XHCI_PCI) += xhci-pci.o
64 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.1.27/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.h730 struct platform_device *xhci; member
/linux-4.1.27/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.1.27/arch/arm/boot/dts/
Darmada-38x.dtsi566 compatible = "marvell,armada-380-xhci";
574 compatible = "marvell,armada-380-xhci";
Dr8a7790-lager.dts626 &xhci {
Darmada-375.dtsi461 compatible = "marvell,armada-375-xhci";
Dr8a7790.dtsi1322 xhci: usb@ee000000 { label
1323 compatible = "renesas,xhci-r8a7790";
Dr8a7791.dtsi1325 xhci: usb@ee000000 { label
1326 compatible = "renesas,xhci-r8a7791";
/linux-4.1.27/Documentation/usb/
Dpower-management.txt627 Distinct from 'companion ports', or 'ehci/xhci shared switchover ports'
/linux-4.1.27/
DMAINTAINERS10479 F: drivers/usb/host/xhci*