Lines Matching full:ehci
18 #include "../host/ehci.h"
73 .compatible = "nvidia,tegra20-ehci",
76 .compatible = "nvidia,tegra30-ehci",
104 dev_err(dev, "can't get ehci reset: %pe\n", rst); in tegra_usb_reset_controller()
152 struct ehci_hcd *ehci; in tegra_usb_notify_event() local
157 ehci = hcd_to_ehci(ci->hcd); in tegra_usb_notify_event()
158 ehci->has_tdi_phy_lpm = false; in tegra_usb_notify_event()
159 ehci_writel(ehci, usb->soc->txfifothresh << 16, in tegra_usb_notify_event()
160 &ehci->regs->txfill_tuning); in tegra_usb_notify_event()
168 static int tegra_usb_internal_port_reset(struct ehci_hcd *ehci, in tegra_usb_internal_port_reset() argument
176 saved_usbintr = ehci_readl(ehci, &ehci->regs->intr_enable); in tegra_usb_internal_port_reset()
178 ehci_writel(ehci, 0, &ehci->regs->intr_enable); in tegra_usb_internal_port_reset()
179 spin_unlock_irqrestore(&ehci->lock, *flags); in tegra_usb_internal_port_reset()
186 temp = ehci_readl(ehci, portsc_reg); in tegra_usb_internal_port_reset()
188 ehci_writel(ehci, temp, portsc_reg); in tegra_usb_internal_port_reset()
191 ehci_writel(ehci, temp, portsc_reg); in tegra_usb_internal_port_reset()
202 temp = ehci_readl(ehci, portsc_reg); in tegra_usb_internal_port_reset()
215 ehci_writel(ehci, PORT_CSC, portsc_reg); in tegra_usb_internal_port_reset()
221 temp = ehci_readl(ehci, &ehci->regs->status); in tegra_usb_internal_port_reset()
222 ehci_writel(ehci, temp, &ehci->regs->status); in tegra_usb_internal_port_reset()
225 spin_lock_irqsave(&ehci->lock, *flags); in tegra_usb_internal_port_reset()
226 ehci_writel(ehci, saved_usbintr, &ehci->regs->intr_enable); in tegra_usb_internal_port_reset()
236 struct ehci_hcd *ehci = hcd_to_ehci(ci->hcd); in tegra_ehci_hub_control() local
240 status_reg = &ehci->regs->port_status[(wIndex & 0xff) - 1]; in tegra_ehci_hub_control()
248 retval = tegra_usb_internal_port_reset(ehci, status_reg, flags); in tegra_ehci_hub_control()