diff options
| author | Steven Whitehouse <swhiteho@redhat.com> | 2006-09-28 08:29:59 -0400 |
|---|---|---|
| committer | Steven Whitehouse <swhiteho@redhat.com> | 2006-09-28 08:29:59 -0400 |
| commit | 185a257f2f73bcd89050ad02da5bedbc28fc43fa (patch) | |
| tree | 5e32586114534ed3f2165614cba3d578f5d87307 /drivers/usb/host/ohci-pci.c | |
| parent | 3f1a9aaeffd8d1cbc5ab9776c45cbd66af1c9699 (diff) | |
| parent | a77c64c1a641950626181b4857abb701d8f38ccc (diff) | |
Merge branch 'master' into gfs2
Diffstat (limited to 'drivers/usb/host/ohci-pci.c')
| -rw-r--r-- | drivers/usb/host/ohci-pci.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/usb/host/ohci-pci.c b/drivers/usb/host/ohci-pci.c index b268537e389e..3732db7d68eb 100644 --- a/drivers/usb/host/ohci-pci.c +++ b/drivers/usb/host/ohci-pci.c | |||
| @@ -135,6 +135,11 @@ static int ohci_pci_suspend (struct usb_hcd *hcd, pm_message_t message) | |||
| 135 | } | 135 | } |
| 136 | ohci_writel(ohci, OHCI_INTR_MIE, &ohci->regs->intrdisable); | 136 | ohci_writel(ohci, OHCI_INTR_MIE, &ohci->regs->intrdisable); |
| 137 | (void)ohci_readl(ohci, &ohci->regs->intrdisable); | 137 | (void)ohci_readl(ohci, &ohci->regs->intrdisable); |
| 138 | |||
| 139 | /* make sure snapshot being resumed re-enumerates everything */ | ||
| 140 | if (message.event == PM_EVENT_PRETHAW) | ||
| 141 | ohci_usb_reset(ohci); | ||
| 142 | |||
| 138 | clear_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags); | 143 | clear_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags); |
| 139 | bail: | 144 | bail: |
| 140 | spin_unlock_irqrestore (&ohci->lock, flags); | 145 | spin_unlock_irqrestore (&ohci->lock, flags); |
| @@ -171,11 +176,14 @@ static const struct hc_driver ohci_pci_hc_driver = { | |||
| 171 | */ | 176 | */ |
| 172 | .reset = ohci_pci_reset, | 177 | .reset = ohci_pci_reset, |
| 173 | .start = ohci_pci_start, | 178 | .start = ohci_pci_start, |
| 179 | .stop = ohci_stop, | ||
| 180 | .shutdown = ohci_shutdown, | ||
| 181 | |||
| 174 | #ifdef CONFIG_PM | 182 | #ifdef CONFIG_PM |
| 183 | /* these suspend/resume entries are for upstream PCI glue ONLY */ | ||
| 175 | .suspend = ohci_pci_suspend, | 184 | .suspend = ohci_pci_suspend, |
| 176 | .resume = ohci_pci_resume, | 185 | .resume = ohci_pci_resume, |
| 177 | #endif | 186 | #endif |
| 178 | .stop = ohci_stop, | ||
| 179 | 187 | ||
| 180 | /* | 188 | /* |
| 181 | * managing i/o requests and associated device resources | 189 | * managing i/o requests and associated device resources |
| @@ -194,6 +202,7 @@ static const struct hc_driver ohci_pci_hc_driver = { | |||
| 194 | */ | 202 | */ |
| 195 | .hub_status_data = ohci_hub_status_data, | 203 | .hub_status_data = ohci_hub_status_data, |
| 196 | .hub_control = ohci_hub_control, | 204 | .hub_control = ohci_hub_control, |
| 205 | .hub_irq_enable = ohci_rhsc_enable, | ||
| 197 | #ifdef CONFIG_PM | 206 | #ifdef CONFIG_PM |
| 198 | .bus_suspend = ohci_bus_suspend, | 207 | .bus_suspend = ohci_bus_suspend, |
| 199 | .bus_resume = ohci_bus_resume, | 208 | .bus_resume = ohci_bus_resume, |
| @@ -224,6 +233,8 @@ static struct pci_driver ohci_pci_driver = { | |||
| 224 | .suspend = usb_hcd_pci_suspend, | 233 | .suspend = usb_hcd_pci_suspend, |
| 225 | .resume = usb_hcd_pci_resume, | 234 | .resume = usb_hcd_pci_resume, |
| 226 | #endif | 235 | #endif |
| 236 | |||
| 237 | .shutdown = usb_hcd_pci_shutdown, | ||
| 227 | }; | 238 | }; |
| 228 | 239 | ||
| 229 | 240 | ||
