Shoot. It got mixed up with Alan's IRQ patch, the one I've yet to
try out on my laptop.
I'll resubmit in a bit, unless you want to just nuke the last chunk
of the patch yourself.
- Dave
> @@ -1812,16 +1990,30 @@
> ohci_t * ohci = (ohci_t*) dev->data;
> if (ohci) {
> switch (rqst) {
> + /*
> + * We have to disable the OHCI irq. This sucks because we'd
>rather
> + * not disable a potentially shared IRQ since the other user
>might
> + * want an IRQ event during suspend. Unfortunately at least some
> + * machines come back with the IRQ floating and if we don't do
> + * this we are dead, defunct, pushing up the silicon daisies.
> + */
> case PM_SUSPEND:
> dbg("USB-Bus suspend: %p", ohci);
> - writel (ohci->hc_control = 0xFF, &ohci->regs->control);
> + ohci->hc_control = OHCI_CONTROL_INIT | OHCI_USB_SUSPEND;
> + writel (ohci->hc_control, &ohci->regs->control);
> wait_ms (10);
> + if(ohci->irq > 0)
> + disable_irq(ohci->irq);
> break;
> case PM_RESUME:
> dbg("USB-Bus resume: %p", ohci);
> - writel (ohci->hc_control = 0x7F, &ohci->regs->control);
> + ohci->hc_control = OHCI_CONTROL_INIT | OHCI_USB_RESUME;
> + writel (ohci->hc_control, &ohci->regs->control);
> wait_ms (20);
> - writel (ohci->hc_control = 0xBF, &ohci->regs->control);
> + ohci->hc_control = OHCI_CONTROL_INIT | OHCI_USB_OPER;
> + writel (ohci->hc_control, &ohci->regs->control);
> + if(ohci->irq > 0)
> + enable_irq(ohci->irq);
> break;
> }
> }
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]