| /linux/drivers/usb/host/ |
| H A D | ehci-timer.c | 11 static void ehci_set_command_bit(struct ehci_hcd *ehci, u32 bit) in ehci_set_command_bit() argument 13 ehci->command |= bit; in ehci_set_command_bit() 14 ehci_writel(ehci, ehci->command, &ehci->regs->command); in ehci_set_command_bit() 17 ehci_readl(ehci, &ehci->regs->command); in ehci_set_command_bit() 21 static void ehci_clear_command_bit(struct ehci_hcd *ehci, u32 bit) in ehci_clear_command_bit() argument 23 ehci->command &= ~bit; in ehci_clear_command_bit() 24 ehci_writel(ehci, ehci->command, &ehci->regs->command); in ehci_clear_command_bit() 27 ehci_readl(ehci, &ehci->regs->command); in ehci_clear_command_bit() 76 static void ehci_enable_event(struct ehci_hcd *ehci, unsigned event, in ehci_enable_event() argument 79 ktime_t *timeout = &ehci->hr_timeouts[event]; in ehci_enable_event() [all …]
|
| H A D | ehci-hub.c | 22 static void unlink_empty_async_suspended(struct ehci_hcd *ehci); 33 static void ehci_handover_companion_ports(struct ehci_hcd *ehci) in ehci_handover_companion_ports() argument 39 struct usb_hcd *hcd = ehci_to_hcd(ehci); in ehci_handover_companion_ports() 41 if (!ehci->owned_ports) in ehci_handover_companion_ports() 55 port = HCS_N_PORTS(ehci->hcs_params); in ehci_handover_companion_ports() 57 if (test_bit(port, &ehci->owned_ports)) { in ehci_handover_companion_ports() 58 reg = &ehci->regs->port_status[port]; in ehci_handover_companion_ports() 59 status = ehci_readl(ehci, reg) & ~PORT_RWC_BITS; in ehci_handover_companion_ports() 61 ehci_port_power(ehci, port, true); in ehci_handover_companion_ports() 68 spin_lock_irq(&ehci->lock); in ehci_handover_companion_ports() [all …]
|
| H A D | ehci-mem.c | 25 static inline void ehci_qtd_init(struct ehci_hcd *ehci, struct ehci_qtd *qtd, in ehci_qtd_init() argument 30 qtd->hw_token = cpu_to_hc32(ehci, QTD_STS_HALT); in ehci_qtd_init() 31 qtd->hw_next = EHCI_LIST_END(ehci); in ehci_qtd_init() 32 qtd->hw_alt_next = EHCI_LIST_END(ehci); in ehci_qtd_init() 36 static struct ehci_qtd *ehci_qtd_alloc (struct ehci_hcd *ehci, gfp_t flags) in ehci_qtd_alloc() argument 41 qtd = dma_pool_alloc (ehci->qtd_pool, flags, &dma); in ehci_qtd_alloc() 43 ehci_qtd_init(ehci, qtd, dma); in ehci_qtd_alloc() 48 static inline void ehci_qtd_free (struct ehci_hcd *ehci, struct ehci_qtd *qtd) in ehci_qtd_free() argument 50 dma_pool_free (ehci->qtd_pool, qtd, qtd->qtd_dma); in ehci_qtd_free() 54 static void qh_destroy(struct ehci_hcd *ehci, struct ehci_qh *qh) in qh_destroy() argument [all …]
|
| H A D | ehci-sched.c | 32 periodic_next_shadow(struct ehci_hcd *ehci, union ehci_shadow *periodic, in periodic_next_shadow() argument 35 switch (hc32_to_cpu(ehci, tag)) { in periodic_next_shadow() 49 shadow_next_periodic(struct ehci_hcd *ehci, union ehci_shadow *periodic, in shadow_next_periodic() argument 52 switch (hc32_to_cpu(ehci, tag)) { in shadow_next_periodic() 63 static void periodic_unlink(struct ehci_hcd *ehci, unsigned frame, void *ptr) in periodic_unlink() argument 65 union ehci_shadow *prev_p = &ehci->pshadow[frame]; in periodic_unlink() 66 __hc32 *hw_p = &ehci->periodic[frame]; in periodic_unlink() 71 prev_p = periodic_next_shadow(ehci, prev_p, in periodic_unlink() 72 Q_NEXT_TYPE(ehci, *hw_p)); in periodic_unlink() 73 hw_p = shadow_next_periodic(ehci, &here, in periodic_unlink() [all …]
|
| H A D | ehci-dbg.c | 15 static void dbg_hcs_params(struct ehci_hcd *ehci, char *label) in dbg_hcs_params() argument 17 u32 params = ehci_readl(ehci, &ehci->caps->hcs_params); in dbg_hcs_params() 19 ehci_dbg(ehci, in dbg_hcs_params() 37 byte = readb(&ehci->caps->portroute[(i >> 1)]); in dbg_hcs_params() 42 ehci_dbg(ehci, "%s portroute %s\n", label, buf); in dbg_hcs_params() 51 static void dbg_hcc_params(struct ehci_hcd *ehci, char *label) in dbg_hcc_params() argument 53 u32 params = ehci_readl(ehci, &ehci->caps->hcc_params); in dbg_hcc_params() 56 ehci_dbg(ehci, in dbg_hcc_params() 63 ehci_dbg(ehci, in dbg_hcc_params() 80 dbg_qtd(const char *label, struct ehci_hcd *ehci, struct ehci_qtd *qtd) in dbg_qtd() argument [all …]
|
| H A D | ehci-fsl.c | 147 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in fsl_ehci_drv_probe() local 151 hcd, ehci, hcd->usb_phy); in fsl_ehci_drv_probe() 155 &ehci_to_hcd(ehci)->self); in fsl_ehci_drv_probe() 196 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in ehci_fsl_setup_phy() local 206 portsc = ehci_readl(ehci, &ehci->regs->port_status[port_offset]); in ehci_fsl_setup_phy() 283 ehci_writel(ehci, portsc, &ehci->regs->port_status[port_offset]); in ehci_fsl_setup_phy() 295 static int ehci_fsl_usb_setup(struct ehci_hcd *ehci) in ehci_fsl_usb_setup() argument 297 struct usb_hcd *hcd = ehci_to_hcd(ehci); in ehci_fsl_usb_setup() 320 ehci->has_fsl_hs_errata = 1; in ehci_fsl_usb_setup() 323 ehci->has_fsl_susp_errata = 1; in ehci_fsl_usb_setup() [all …]
|
| H A D | ehci-sysfs.c | 14 struct ehci_hcd *ehci; in companion_show() local 18 ehci = hcd_to_ehci(dev_get_drvdata(dev)); in companion_show() 19 nports = HCS_N_PORTS(ehci->hcs_params); in companion_show() 22 if (test_bit(index, &ehci->companion_ports)) in companion_show() 37 struct ehci_hcd *ehci; in companion_store() local 40 ehci = hcd_to_ehci(dev_get_drvdata(dev)); in companion_store() 48 if (portnum <= 0 || portnum > HCS_N_PORTS(ehci->hcs_params)) in companion_store() 52 set_bit(portnum, &ehci->companion_ports); in companion_store() 54 clear_bit(portnum, &ehci->companion_ports); in companion_store() 55 set_owner(ehci, portnum, new_owner); in companion_store() [all …]
|
| H A D | ehci-platform.c | 61 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in ehci_platform_reset() local 64 ehci->has_synopsys_hc_bug = pdata->has_synopsys_hc_bug; in ehci_platform_reset() 72 ehci->caps = hcd->regs + pdata->caps_offset; in ehci_platform_reset() 78 ehci->need_io_watchdog = 0; in ehci_platform_reset() 81 ehci_writel(ehci, BCM_USB_FIFO_THRESHOLD, in ehci_platform_reset() 82 &ehci->regs->brcm_insnreg[1]); in ehci_platform_reset() 142 static bool quirk_poll_check_port_status(struct ehci_hcd *ehci) in quirk_poll_check_port_status() argument 144 u32 port_status = ehci_readl(ehci, &ehci->regs->port_status[0]); in quirk_poll_check_port_status() 164 static void quirk_poll_rebind_companion(struct ehci_hcd *ehci) in quirk_poll_rebind_companion() argument 167 struct usb_hcd *hcd = ehci_to_hcd(ehci); in quirk_poll_rebind_companion() [all …]
|
| H A D | ehci-ps3.c | 12 static void ps3_ehci_setup_insnreg(struct ehci_hcd *ehci) in ps3_ehci_setup_insnreg() argument 31 writel_be(0x01000020, (void __iomem *)ehci->regs + in ps3_ehci_setup_insnreg() 36 writel_be(0x00000001, (void __iomem *)ehci->regs + in ps3_ehci_setup_insnreg() 43 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in ps3_ehci_hc_reset() local 45 ehci->big_endian_mmio = 1; in ps3_ehci_hc_reset() 46 ehci->caps = hcd->regs; in ps3_ehci_hc_reset() 52 ps3_ehci_setup_insnreg(ehci); in ps3_ehci_hc_reset()
|
| /linux/Documentation/devicetree/bindings/mfd/ |
| H A D | omap-usb-host.txt | 18 "ehci-phy", 19 "ehci-tll", 20 "ehci-hsic", 67 See Documentation/devicetree/bindings/usb/generic-ehci.yaml and 87 usbhsehci: ehci@4a064c00 { 88 compatible = "ti,ehci-omap"; 96 port1-mode = "ehci-phy"; 97 port2-mode = "ehci-tll"; 98 port3-mode = "ehci-phy";
|
| /linux/include/linux/usb/ |
| H A D | ehci_def.h | 22 #define HC_LENGTH(ehci, p) (0x00ff&((p) >> /* bits 7:0 / offset 00h */ \ argument 23 (ehci_big_endian_capbase(ehci) ? 24 : 0))) 24 #define HC_VERSION(ehci, p) (0xffff&((p) >> /* bits 31:16 / offset 02h */ \ argument 25 (ehci_big_endian_capbase(ehci) ? 0 : 16)))
|
| /linux/Documentation/devicetree/bindings/mips/cavium/ |
| H A D | uctl.txt | 34 ehci@16f0000000000 { 35 compatible = "cavium,octeon-6335-ehci","usb-ehci";
|
| /linux/Documentation/devicetree/bindings/usb/ |
| H A D | atmel-usb.txt | 33 - compatible: Should be "atmel,at91sam9g45-ehci" for USB controllers 36 - interrupts: Should contain ehci interrupt 46 usb1: ehci@800000 { 47 compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
|
| H A D | ehci-st.txt | 4 - compatible : must be "st,st-ehci-300x" 26 compatible = "st,st-ehci-300x";
|
| /linux/arch/mips/boot/dts/brcm/ |
| H A D | bcm7346.dtsi | 319 compatible = "brcm,bcm7346-ehci", "generic-ehci"; 338 compatible = "brcm,bcm7346-ehci", "generic-ehci"; 357 compatible = "brcm,bcm7346-ehci", "generic-ehci"; 376 compatible = "brcm,bcm7346-ehci", "generic-ehci";
|
| H A D | bcm7435.dtsi | 333 compatible = "brcm,bcm7435-ehci", "generic-ehci"; 352 compatible = "brcm,bcm7435-ehci", "generic-ehci"; 371 compatible = "brcm,bcm7435-ehci", "generic-ehci"; 390 compatible = "brcm,bcm7435-ehci", "generic-ehci";
|
| H A D | bcm7425.dtsi | 318 compatible = "brcm,bcm7425-ehci", "generic-ehci"; 337 compatible = "brcm,bcm7425-ehci", "generic-ehci"; 356 compatible = "brcm,bcm7425-ehci", "generic-ehci"; 375 compatible = "brcm,bcm7425-ehci", "generic-ehci";
|
| H A D | bcm6328.dtsi | 195 ehci: usb@10002500 { label 196 compatible = "brcm,bcm6328-ehci", "generic-ehci";
|
| /linux/arch/arm/boot/dts/st/ |
| H A D | spear600.dtsi | 95 compatible = "st,spear600-ehci", "usb-ehci"; 103 compatible = "st,spear600-ehci", "usb-ehci";
|
| H A D | spear13xx.dtsi | 178 compatible = "st,spear600-ehci", "usb-ehci"; 186 compatible = "st,spear600-ehci", "usb-ehci";
|
| /linux/arch/arm/boot/dts/socionext/ |
| H A D | uniphier-ld4.dtsi | 296 compatible = "socionext,uniphier-ehci", "generic-ehci"; 310 compatible = "socionext,uniphier-ehci", "generic-ehci"; 324 compatible = "socionext,uniphier-ehci", "generic-ehci";
|
| H A D | uniphier-sld8.dtsi | 301 compatible = "socionext,uniphier-ehci", "generic-ehci"; 315 compatible = "socionext,uniphier-ehci", "generic-ehci"; 329 compatible = "socionext,uniphier-ehci", "generic-ehci";
|
| /linux/drivers/phy/samsung/ |
| H A D | phy-exynos5250-usb2.c | 200 u32 ehci; in exynos5250_power_on() local 301 ehci = readl(drv->reg_phy + EXYNOS_5250_HOSTEHCICTRL); in exynos5250_power_on() 302 ehci |= EXYNOS_5250_HOSTEHCICTRL_ENAINCRXALIGN | in exynos5250_power_on() 306 writel(ehci, drv->reg_phy + EXYNOS_5250_HOSTEHCICTRL); in exynos5250_power_on()
|
| /linux/drivers/phy/marvell/ |
| H A D | Kconfig | 91 The PHY driver will be used by Marvell ehci driver. 102 The PHY driver will be used by Marvell udc/ehci/otg driver. 113 The PHY driver will be used by Marvell udc/ehci/otg driver. 124 The PHY driver will be used by Marvell udc/ehci/otg driver.
|
| /linux/Documentation/devicetree/bindings/ |
| H A D | resource-names.txt | 51 reg-names = "config", "ohci", "ehci"; 53 interrupt-names = "ohci", "ehci";
|