The EHCI controller seems to throw interrupts (e.g. port change) just fine, but after queuing an async request, we never get a completion interrupt.
Things that do not help:
- Applying the SB600/SB700 quirk found in other kernels (http://lxr.free-electrons.com/source/drivers/usb/host/ehci-pci.c?v=3.17#L198)
- A timer that regularly forces manual status bit checks in case interrupts don't fire
- Various minor changes to make our queue entries look more like those Window uses
Problem also exists when using our usbehci.sys on Windows 2003.