Home
last modified time | relevance | path

Searched full:xhci (Results 1 – 25 of 945) sorted by relevance

12345678910>>...38

/OK3568_Linux_fs/kernel/drivers/usb/host/
H A Dxhci-mem.c3 * xHCI host controller driver
17 #include "xhci.h"
18 #include "xhci-trace.h"
19 #include "xhci-debugfs.h"
28 static struct xhci_segment *xhci_segment_alloc(struct xhci_hcd *xhci, in xhci_segment_alloc() argument
36 struct device *dev = xhci_to_hcd(xhci)->self.sysdev; in xhci_segment_alloc()
42 seg->trbs = dma_pool_zalloc(xhci->segment_pool, flags, &dma); in xhci_segment_alloc()
52 dma_pool_free(xhci->segment_pool, seg->trbs, dma); in xhci_segment_alloc()
68 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()
[all …]
H A Dxhci.c3 * xHCI host controller driver
21 #include "xhci.h"
22 #include "xhci-trace.h"
23 #include "xhci-debugfs.h"
24 #include "xhci-dbgcap.h"
84 * Disable interrupts and begin the xHCI halting process.
86 void xhci_quiesce(struct xhci_hcd *xhci) in xhci_quiesce() argument
93 halted = readl(&xhci->op_regs->status) & STS_HALT; in xhci_quiesce()
97 cmd = readl(&xhci->op_regs->command); in xhci_quiesce()
99 writel(cmd, &xhci->op_regs->command); in xhci_quiesce()
[all …]
H A Dxhci-pci.c3 * xHCI host controller driver PCI Bus Glue.
17 #include "xhci.h"
18 #include "xhci-trace.h"
19 #include "xhci-pci.h"
86 static int xhci_pci_reinit(struct xhci_hcd *xhci, struct pci_dev *pdev) in xhci_pci_reinit() argument
96 xhci_dbg(xhci, "MWI active\n"); in xhci_pci_reinit()
98 xhci_dbg(xhci, "Finished xhci_pci_reinit\n"); in xhci_pci_reinit()
102 static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci) in xhci_pci_quirks() argument
112 xhci->quirks |= driver_data->quirks; in xhci_pci_quirks()
121 xhci->quirks |= XHCI_RESET_EP_QUIRK; in xhci_pci_quirks()
[all …]
H A Dxhci-ring.c3 * xHCI host controller driver
58 #include "xhci.h"
59 #include "xhci-trace.h"
61 static int queue_command(struct xhci_hcd *xhci, struct xhci_command *cmd,
143 static void next_trb(struct xhci_hcd *xhci, in next_trb() argument
159 void inc_deq(struct xhci_hcd *xhci, struct xhci_ring *ring) in inc_deq() argument
179 xhci_warn(xhci, "Missing link TRB at end of segment\n"); in inc_deq()
191 xhci_warn(xhci, "Ring is an endless link TRB loop\n"); in inc_deq()
212 * xHCI hardware can't handle the chain bit being cleared on a link TRB.
217 static void inc_enq(struct xhci_hcd *xhci, struct xhci_ring *ring, in inc_enq() argument
[all …]
H A Dxhci-plat.c3 * xhci-plat.c - xHCI host controller driver platform Bus Glue.
8 * A lot of code borrowed from the Linux xHCI driver.
23 #include "xhci.h"
24 #include "xhci-plat.h"
25 #include "xhci-mvebu.h"
26 #include "xhci-rcar.h"
87 static void xhci_plat_quirks(struct device *dev, struct xhci_hcd *xhci) in xhci_plat_quirks() argument
89 struct xhci_plat_priv *priv = xhci_to_priv(xhci); in xhci_plat_quirks()
96 xhci->quirks |= XHCI_PLAT | priv->quirks; in xhci_plat_quirks()
142 .compatible = "generic-xhci",
[all …]
H A Dxhci-hub.c3 * xHCI host controller driver
15 #include "xhci.h"
16 #include "xhci-trace.h"
55 static int xhci_create_usb3_bos_desc(struct xhci_hcd *xhci, char *buf, in xhci_create_usb3_bos_desc() argument
67 /* does xhci support USB 3.1 Enhanced SuperSpeed */ in xhci_create_usb3_bos_desc()
68 for (i = 0; i < xhci->num_port_caps; i++) { in xhci_create_usb3_bos_desc()
69 if (xhci->port_caps[i].maj_rev == 0x03 && in xhci_create_usb3_bos_desc()
70 xhci->port_caps[i].min_rev >= 0x01) { in xhci_create_usb3_bos_desc()
72 port_cap = &xhci->port_caps[i]; in xhci_create_usb3_bos_desc()
78 /* does xhci provide a PSI table for SSA speed attributes? */ in xhci_create_usb3_bos_desc()
[all …]
H A DMakefile6 # tell define_trace.h where to find the xhci trace header
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-plat-hcd-y += xhci-rcar.o
33 xhci-hcd-y += xhci-debugfs.o
[all …]
H A Dxhci-debugfs.c3 * xhci-debugfs.c - xHCI debugfs interface
13 #include "xhci.h"
14 #include "xhci-debugfs.h"
86 static struct xhci_regset *xhci_debugfs_alloc_regset(struct xhci_hcd *xhci) in xhci_debugfs_alloc_regset() argument
99 list_add_tail(&regset->list, &xhci->regset_list); in xhci_debugfs_alloc_regset()
114 static void xhci_debugfs_regset(struct xhci_hcd *xhci, u32 base, in xhci_debugfs_regset() argument
122 struct usb_hcd *hcd = xhci_to_hcd(xhci); in xhci_debugfs_regset()
124 rgs = xhci_debugfs_alloc_regset(xhci); in xhci_debugfs_regset()
140 static void xhci_debugfs_extcap_regset(struct xhci_hcd *xhci, int cap_id, in xhci_debugfs_extcap_regset() argument
147 void __iomem *base = &xhci->cap_regs->hc_capbase; in xhci_debugfs_extcap_regset()
[all …]
H A Dxhci-histb.c3 * xHCI host controller driver for HiSilicon STB SoCs
19 #include "xhci.h"
69 * refer to xHCI spec in xhci_histb_config()
167 static void xhci_histb_quirks(struct device *dev, struct xhci_hcd *xhci) in xhci_histb_quirks() argument
174 xhci->quirks |= XHCI_PLAT; in xhci_histb_quirks()
203 struct xhci_hcd *xhci; in xhci_histb_probe() local
262 xhci = hcd_to_xhci(hcd); in xhci_histb_probe()
266 xhci->main_hcd = hcd; in xhci_histb_probe()
267 xhci->shared_hcd = usb_create_shared_hcd(driver, dev, dev_name(dev), in xhci_histb_probe()
269 if (!xhci->shared_hcd) { in xhci_histb_probe()
[all …]
H A Dxhci-mtk.c3 * MediaTek xHCI Host Controller Driver
22 #include "xhci.h"
23 #include "xhci-mtk.h"
372 static void xhci_mtk_quirks(struct device *dev, struct xhci_hcd *xhci) in xhci_mtk_quirks() argument
374 struct usb_hcd *hcd = xhci_to_hcd(xhci); in xhci_mtk_quirks()
382 xhci->quirks |= XHCI_PLAT; in xhci_mtk_quirks()
383 xhci->quirks |= XHCI_MTK_HOST; in xhci_mtk_quirks()
388 xhci->quirks |= XHCI_SPURIOUS_SUCCESS; in xhci_mtk_quirks()
390 xhci->quirks |= XHCI_LPM_SUPPORT; in xhci_mtk_quirks()
392 xhci->quirks |= XHCI_HW_LPM_DISABLE; in xhci_mtk_quirks()
[all …]
H A Dxhci-debugfs.h3 * xhci-debugfs.h - xHCI debugfs interface
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);
112 void xhci_debugfs_remove_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
[all …]
H A Dxhci.h4 * xHCI host controller driver
22 /* Code sharing between pci-quirks and xhci hcd */
23 #include "xhci-ext-caps.h"
29 /* xHCI PCI Configuration Registers */
38 * xHCI register interface.
39 * This corresponds to the eXtensible Host Controller Interface (xHCI)
44 * struct xhci_cap_regs - xHCI Host Controller Capability Registers.
52 * @hcc_params2: HCCPARAMS2 Capability Parameters 2, xhci 1.1 only
62 __le32 hcc_params2; /* xhci 1.1 */
159 * struct xhci_op_regs - xHCI Host Controller Operational Registers.
[all …]
H A Dxhci-dbgcap.c3 * xhci-dbgcap.c - xHCI debug capability support
13 #include "xhci.h"
14 #include "xhci-trace.h"
15 #include "xhci-dbgcap.h"
412 /* xhci 7.6.9, all three contexts; info, ep-out and ep-in. Each 64 bytes*/ in dbc_alloc_ctx()
917 static void xhci_do_dbc_exit(struct xhci_hcd *xhci) in xhci_do_dbc_exit() argument
921 spin_lock_irqsave(&xhci->lock, flags); in xhci_do_dbc_exit()
922 kfree(xhci->dbc); in xhci_do_dbc_exit()
923 xhci->dbc = NULL; in xhci_do_dbc_exit()
924 spin_unlock_irqrestore(&xhci->lock, flags); in xhci_do_dbc_exit()
[all …]
/OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/usb/
H A Drenesas,usb-xhci.yaml4 $id: http://devicetree.org/schemas/usb/renesas,usb-xhci.yaml#
7 title: Renesas USB xHCI controllers
21 - renesas,xhci-r8a7742 # RZ/G1H
22 - renesas,xhci-r8a7743 # RZ/G1M
23 - renesas,xhci-r8a7744 # RZ/G1N
24 - renesas,xhci-r8a7790 # R-Car H2
25 - renesas,xhci-r8a7791 # R-Car M2-W
26 - renesas,xhci-r8a7793 # R-Car M2-N
27 - const: renesas,rcar-gen2-xhci # R-Car Gen2 and RZ/G1
30 - renesas,xhci-r8a774a1 # RZ/G2M
[all …]
H A Dmediatek,mtk-xhci.txt1 MT8173 xHCI
5 There are two scenarios: the first one only supports xHCI driver;
6 the second one supports dual-role mode, and the host is based on xHCI
10 1st: only supports xHCI driver
14 - compatible : should be "mediatek,<soc-model>-xhci", "mediatek,mtk-xhci",
16 "mediatek,mtk-xhci" compatible string, you need SoC specific ones in
18 - "mediatek,mt8173-xhci"
20 - reg-names: should be "mac" for xHCI MAC and "ippc" for IP port control
41 of the USB wakeup glue layer between xHCI and SPM; it depends on
61 compatible = "mediatek,mt8173-xhci";
[all …]
H A Dusb-xhci.txt1 USB xHCI controllers
6 - "generic-xhci" for generic XHCI device
7 - "marvell,armada3700-xhci" for Armada 37xx SoCs
8 - "marvell,armada-375-xhci" for Armada 375 SoCs
9 - "marvell,armada-380-xhci" for Armada 38x SoCs
10 - "brcm,bcm7445-xhci" for Broadcom STB SoCs with XHCI
11 - "xhci-platform" (deprecated)
17 - reg: should contain address and length of the standard XHCI
19 - interrupts: one XHCI interrupt should be described here.
41 compatible = "generic-xhci";
/OK3568_Linux_fs/u-boot/drivers/usb/host/
H A Dxhci-mem.su
H A Dxhci.su
H A Dxhci-ring.su
H A Dxhci-rcar.c4 * Renesas RCar USB HOST xHCI Controller
16 #include <usb/xhci.h>
17 #include "xhci-rcar-r8a779x_usb3_v3.h"
63 ret = wait_for_bit("xhci-rcar", regs + RCAR_USB3_DL_CTRL, in xhci_rcar_download_fw()
66 >>>>>>> e1cc60c... usb: xhci: Add Renesas R-Car xHCI driver in xhci_rcar_download_fw()
78 ret = wait_for_bit("xhci-rcar", regs + RCAR_USB3_DL_CTRL, in xhci_rcar_download_fw()
81 >>>>>>> e1cc60c... usb: xhci: Add Renesas R-Car xHCI driver in xhci_rcar_download_fw()
118 dev_err(dev, "Failed to register xHCI\n"); in xhci_rcar_probe()
150 debug("Can't get the XHCI register base address\n"); in xhci_rcar_ofdata_to_platdata()
158 { .compatible = "renesas,xhci-r8a7795" },
[all …]
H A DMakefile48 # xhci
49 obj-$(CONFIG_USB_XHCI_HCD) += xhci.o xhci-mem.o xhci-ring.o
50 obj-$(CONFIG_USB_XHCI_DWC3) += xhci-dwc3.o
52 obj-$(CONFIG_USB_XHCI_EXYNOS) += xhci-exynos5.o
53 obj-$(CONFIG_USB_XHCI_FSL) += xhci-fsl.o
54 obj-$(CONFIG_USB_XHCI_MVEBU) += xhci-mvebu.o
55 obj-$(CONFIG_USB_XHCI_OMAP) += xhci-omap.o
56 obj-$(CONFIG_USB_XHCI_PCI) += xhci-pci.o
57 obj-$(CONFIG_USB_XHCI_RCAR) += xhci-rcar.o
/OK3568_Linux_fs/kernel/drivers/usb/cdns3/
H A Dhost.c17 #include "../host/xhci.h"
18 #include "../host/xhci-plat.h"
33 struct platform_device *xhci; in __cdns3_host_init() local
39 xhci = platform_device_alloc("xhci-hcd", PLATFORM_DEVID_AUTO); in __cdns3_host_init()
40 if (!xhci) { in __cdns3_host_init()
41 dev_err(cdns->dev, "couldn't allocate xHCI device\n"); in __cdns3_host_init()
45 xhci->dev.parent = cdns->dev; in __cdns3_host_init()
46 cdns->host_dev = xhci; in __cdns3_host_init()
48 ret = platform_device_add_resources(xhci, cdns->xhci_res, in __cdns3_host_init()
51 dev_err(cdns->dev, "couldn't add resources to xHCI device\n"); in __cdns3_host_init()
[all …]
/OK3568_Linux_fs/kernel/drivers/usb/dwc3/
H A Dhost.c48 struct platform_device *xhci; in dwc3_host_init() local
72 xhci = platform_device_alloc("xhci-hcd", PLATFORM_DEVID_AUTO); in dwc3_host_init()
73 if (!xhci) { in dwc3_host_init()
74 dev_err(dwc->dev, "couldn't allocate xHCI device\n"); in dwc3_host_init()
78 xhci->dev.parent = dwc->dev; in dwc3_host_init()
79 ACPI_COMPANION_SET(&xhci->dev, ACPI_COMPANION(dwc->dev)); in dwc3_host_init()
81 dwc->xhci = xhci; in dwc3_host_init()
83 ret = platform_device_add_resources(xhci, dwc->xhci_resources, in dwc3_host_init()
86 dev_err(dwc->dev, "couldn't add resources to xHCI device\n"); in dwc3_host_init()
105 * This following flag tells XHCI to do just that. in dwc3_host_init()
[all …]
/OK3568_Linux_fs/u-boot/doc/device-tree-bindings/usb/
H A Dmarvell.xhci-usb.txt4 It uses the same properties as a generic XHCI host controller
8 - "marvell,armada3700-xhci", "generic-xhci" for Armada 37xx SoCs
9 - "marvell,armada-8k-xhci", "generic-xhci" for Armada A8K SoCs
10 - reg: should contain address and length of the standard XHCI
12 - interrupts: one XHCI interrupt should be described here.
21 compatible = "marvell,armada-8k-xhci",
22 "generic-xhci";
/OK3568_Linux_fs/yocto/poky/meta/recipes-devtools/qemu/qemu/
H A D0018_let_ld_pointer_dma_function_propagate_MemTxResult.patch24 hw/usb/hcd-xhci.c | 7 ++++---
63 diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
65 --- a/hw/usb/hcd-xhci.c
66 +++ b/hw/usb/hcd-xhci.c
67 @@ -2062,7 +2062,7 @@ static TRBCCode xhci_address_slot(XHCIState *xhci, unsigned int slotid,
68 assert(slotid >= 1 && slotid <= xhci->numslots);
70 dcbaap = xhci_addr64(xhci->dcbaap_low, xhci->dcbaap_high);
71 - poctx = ldq_le_dma(xhci->as, dcbaap + 8 * slotid, MEMTXATTRS_UNSPECIFIED);
72 + ldq_le_dma(xhci->as, dcbaap + 8 * slotid, &poctx, MEMTXATTRS_UNSPECIFIED);
82 dcbaap = xhci_addr64(xhci->dcbaap_low, xhci->dcbaap_high);
[all …]

12345678910>>...38