Lines Matching refs:uhci
26 static void uhci_pci_reset_hc(struct uhci_hcd *uhci) in uhci_pci_reset_hc() argument
28 uhci_reset_hc(to_pci_dev(uhci_dev(uhci)), uhci->io_addr); in uhci_pci_reset_hc()
37 static int uhci_pci_check_and_reset_hc(struct uhci_hcd *uhci) in uhci_pci_check_and_reset_hc() argument
39 return uhci_check_and_reset_hc(to_pci_dev(uhci_dev(uhci)), in uhci_pci_check_and_reset_hc()
40 uhci->io_addr); in uhci_pci_check_and_reset_hc()
47 static void uhci_pci_configure_hc(struct uhci_hcd *uhci) in uhci_pci_configure_hc() argument
49 struct pci_dev *pdev = to_pci_dev(uhci_dev(uhci)); in uhci_pci_configure_hc()
59 static int uhci_pci_resume_detect_interrupts_are_broken(struct uhci_hcd *uhci) in uhci_pci_resume_detect_interrupts_are_broken() argument
63 switch (to_pci_dev(uhci_dev(uhci))->vendor) { in uhci_pci_resume_detect_interrupts_are_broken()
81 for (port = 0; port < uhci->rh_numports; ++port) { in uhci_pci_resume_detect_interrupts_are_broken()
82 if (inw(uhci->io_addr + USBPORTSC1 + port * 2) & in uhci_pci_resume_detect_interrupts_are_broken()
91 static int uhci_pci_global_suspend_mode_is_broken(struct uhci_hcd *uhci) in uhci_pci_global_suspend_mode_is_broken() argument
103 for (port = 0; port < uhci->rh_numports; ++port) { in uhci_pci_global_suspend_mode_is_broken()
104 if (inw(uhci->io_addr + USBPORTSC1 + port * 2) & in uhci_pci_global_suspend_mode_is_broken()
115 struct uhci_hcd *uhci = hcd_to_uhci(hcd); in uhci_pci_init() local
117 uhci->io_addr = (unsigned long) hcd->rsrc_start; in uhci_pci_init()
119 uhci->rh_numports = uhci_count_ports(hcd); in uhci_pci_init()
125 if (to_pci_dev(uhci_dev(uhci))->vendor == PCI_VENDOR_ID_VIA) in uhci_pci_init()
126 uhci->oc_low = 1; in uhci_pci_init()
129 if (to_pci_dev(uhci_dev(uhci))->vendor == PCI_VENDOR_ID_HP) in uhci_pci_init()
130 uhci->wait_for_hp = 1; in uhci_pci_init()
133 uhci->reset_hc = uhci_pci_reset_hc; in uhci_pci_init()
134 uhci->check_and_reset_hc = uhci_pci_check_and_reset_hc; in uhci_pci_init()
135 uhci->configure_hc = uhci_pci_configure_hc; in uhci_pci_init()
136 uhci->resume_detect_interrupts_are_broken = in uhci_pci_init()
138 uhci->global_suspend_mode_is_broken = in uhci_pci_init()
145 check_and_reset_hc(uhci); in uhci_pci_init()
169 struct uhci_hcd *uhci = hcd_to_uhci(hcd); in uhci_pci_suspend() local
170 struct pci_dev *pdev = to_pci_dev(uhci_dev(uhci)); in uhci_pci_suspend()
173 dev_dbg(uhci_dev(uhci), "%s\n", __func__); in uhci_pci_suspend()
175 spin_lock_irq(&uhci->lock); in uhci_pci_suspend()
176 if (!HCD_HW_ACCESSIBLE(hcd) || uhci->dead) in uhci_pci_suspend()
194 spin_unlock_irq(&uhci->lock); in uhci_pci_suspend()
208 struct uhci_hcd *uhci = hcd_to_uhci(hcd); in uhci_pci_resume() local
210 dev_dbg(uhci_dev(uhci), "%s\n", __func__); in uhci_pci_resume()
217 spin_lock_irq(&uhci->lock); in uhci_pci_resume()
221 uhci->reset_hc(uhci); in uhci_pci_resume()
222 finish_reset(uhci); in uhci_pci_resume()
229 check_and_reset_hc(uhci); in uhci_pci_resume()
231 configure_hc(uhci); in uhci_pci_resume()
234 if (uhci->rh_state == UHCI_RH_RESET) in uhci_pci_resume()
237 spin_unlock_irq(&uhci->lock); in uhci_pci_resume()
242 if (!uhci->RD_enable && hcd->self.root_hub->do_remote_wakeup) in uhci_pci_resume()