The relation between uhci(4), ohci(4) and their root hub device is
authormpi <mpi@openbsd.org>
Sun, 11 May 2014 16:33:21 +0000 (16:33 +0000)
committermpi <mpi@openbsd.org>
Sun, 11 May 2014 16:33:21 +0000 (16:33 +0000)
commitbdab83f375179096549352328105aa0809be4bf2
treed19dd33a226e68ec755d1ee7ff013dc7743d91a2
parent51f00e714c4aaa3a77511ce7d88bbd2d97a5045a
The relation between uhci(4), ohci(4) and their root hub device is
delicate.  HC drivers do not always accept to be left alone.

I don't know if it is a love crisis, but apparently receiving a root
hub status change interrupt before having an uhub(4) attached breaks
resume.

So make sure the root hub is re-attached before interrupt get enabled.
It is safe to do it during DVACT_RESUME since attaching root hubs do
not require any USB transfer.

Based on a diff from yasuoka@, fix a regression introduced in last
commit an reported by Abel Abraham Camarillo Ojeda on tech@ and Nils
R on bugs@.
sys/dev/usb/usb.c