Lines Matching refs:ehci
0 /* ehci-lpm.c EHCI HCD LPM support code
19 /* this file is part of ehci-hcd.c */
20 static int ehci_lpm_set_da(struct ehci_hcd *ehci, int dev_addr, int port_num)
24 ehci_dbg(ehci, "set dev address %d for port %d\n", dev_addr, port_num);
25 if (port_num > HCS_N_PORTS(ehci->hcs_params)) {
26 ehci_dbg(ehci, "invalid port number %d\n", port_num);
29 portsc = ehci_readl(ehci, &ehci->regs->port_status[port_num-1]);
32 ehci_writel(ehci, portsc, &ehci->regs->port_status[port_num-1]);
40 static int ehci_lpm_check(struct ehci_hcd *ehci, int port)
46 portsc = &ehci->regs->port_status[port-1];
47 val32 = ehci_readl(ehci, portsc);
49 ehci_dbg(ehci, "LPM: no device attached\n");
53 ehci_writel(ehci, val32, portsc);
56 ehci_dbg(ehci, "Sending LPM 0x%08x to port %d\n", val32, port);
57 ehci_writel(ehci, val32, portsc);
60 retval = handshake(ehci, &ehci->regs->port_status[port-1], PORT_SSTS,
62 dbg_port(ehci, "LPM", port, val32);
64 ehci_dbg(ehci, "LPM: device ACK for LPM\n");
70 ehci_writel(ehci, val32, portsc);
73 ehci_writel(ehci, val32, portsc);
75 ehci_dbg(ehci, "LPM: device does not ACK, disable LPM %d\n",
79 ehci_writel(ehci, val32, portsc);