Lines Matching full:ehci

18 #include "../host/ehci.h"
34 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in ehci_ci_portpower() local
35 struct ehci_ci_priv *priv = (struct ehci_ci_priv *)ehci->priv; in ehci_ci_portpower()
39 int port = HCS_N_PORTS(ehci->hcs_params); in ehci_ci_portpower()
75 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in ehci_ci_reset() local
82 ehci->need_io_watchdog = 0; in ehci_ci_reset()
110 struct ehci_hcd *ehci; in host_start() local
136 ehci = hcd_to_ehci(hcd); in host_start()
137 ehci->caps = ci->hw_bank.cap; in host_start()
138 ehci->has_hostpc = ci->hw_bank.lpm; in host_start()
139 ehci->has_tdi_phy_lpm = ci->hw_bank.lpm; in host_start()
140 ehci->imx28_write_fix = ci->imx28_write_fix; in host_start()
142 priv = (struct ehci_ci_priv *)ehci->priv; in host_start()
225 /* The below code is based on tegra ehci driver */
235 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in ci_ehci_hub_control() local
243 status_reg = &ehci->regs->port_status[(wIndex & 0xff) - 1]; in ci_ehci_hub_control()
245 spin_lock_irqsave(&ehci->lock, flags); in ci_ehci_hub_control()
248 temp = ehci_readl(ehci, status_reg); in ci_ehci_hub_control()
256 ehci_writel(ehci, temp | PORT_SUSPEND, status_reg); in ci_ehci_hub_control()
262 if (ehci_handshake(ehci, status_reg, PORT_SUSPEND, in ci_ehci_hub_control()
264 ehci_err(ehci, "timeout waiting for SUSPEND\n"); in ci_ehci_hub_control()
271 temp = ehci_readl(ehci, status_reg); in ci_ehci_hub_control()
273 ehci_writel(ehci, temp, status_reg); in ci_ehci_hub_control()
276 set_bit((wIndex & 0xff) - 1, &ehci->suspended_ports); in ci_ehci_hub_control()
287 if (ehci_handshake(ehci, status_reg, PORT_RESUME, 0, 25000)) in ci_ehci_hub_control()
288 ehci_err(ehci, "timeout waiting for resume\n"); in ci_ehci_hub_control()
291 spin_unlock_irqrestore(&ehci->lock, flags); in ci_ehci_hub_control()
296 spin_unlock_irqrestore(&ehci->lock, flags); in ci_ehci_hub_control()
301 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in ci_ehci_bus_suspend() local
312 port = HCS_N_PORTS(ehci->hcs_params); in ci_ehci_bus_suspend()
314 u32 __iomem *reg = &ehci->regs->port_status[port]; in ci_ehci_bus_suspend()
315 u32 portsc = ehci_readl(ehci, reg); in ci_ehci_bus_suspend()
328 tmp = ehci_readl(ehci, &ehci->regs->command); in ci_ehci_bus_suspend()
330 ehci_writel(ehci, tmp, &ehci->regs->command); in ci_ehci_bus_suspend()
340 tmp = ehci_readl(ehci, reg); in ci_ehci_bus_suspend()
342 ehci_writel(ehci, tmp, reg); in ci_ehci_bus_suspend()