Subject: usb controller & devices die after APM sleep
To: NetBSD i386 Mailing List <port-i386@netbsd.org>
From: Alicia da Conceicao <alicia@cyberstation.ca>
List: port-i386
Date: 02/08/1999 19:39:25
This is a multi-part message in MIME format.
--------------9E626755B9ACBB05F071FE60
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Greetings:

After installing NetBSD 1.3I snap-19990131 for ix86, rebuilding a new
kernel & X server, and configuring it all, I managed to get NetBSD to
use all of the cool new "ws*" stuff for display, mouse, and keyboard.
Finally NetBSD can [alt][ctrl][F1-8] between screens (including text
and X) just like Linux, and my USB mouse works great with X.  In fact
on my laptop, I can use my USB mouse, external PS2 mouse, internal
PS2 pointer stick, and touch screen all at the same time under X.  :-)

The only sad tail to this otherwise happy story is that my USB devices
and controller die after an APM sleep.  Even my USB mouse dies, and
running "usbd" does not help.  (BTW, I perfer not to run usbd, since
it eats up a lot of CPU, maybe I should nice it.)  Anyways below is an
excerpt from the boot messages:

uhci0 at pci0 dev 1 function 2: Intel 82371AB USB Host Controller
	(PIIX4) (rev. 0x01)
uhci0: interrupting at irq 9
uhci0: USB version 1.0
usb0 at uhci0
uhub0 at usb0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
ums0 at uhub0 port 2 configuration 1 interface 0
ums0: ELECOM ELECOM USB mouse, rev 1.00/4.51, addr 2, iclass 3/1
ums0: 3 buttons
wsmouse0 at ums0

And after apm sleep I get the following messages:

system resumed from APM sleep
uhub0: device problem, disabling port 2
uhub0: device problem, disabling port 2

At which time my USB mouse dies.  Since USB is now common on new laptops,
getting USB and APM to work together is important.  Perhaps some type of
way to temporary shut down the internal usb hub/controller and bring it
back up is needed.  Something like a "ifconfig usb up/down", like we do
with PCMCIA ethernet cards (like ep0), but with another program not
ifconfig.  In fact since perhaps something even more generic to shut down
other devices and bring them back up is required, since this would help
with other devices like PCMCIA modem cards that also die after APM sleep.

Any advice is greatly appreciated.  Sincerely, Alicia.
--------------9E626755B9ACBB05F071FE60
Content-Type: text/x-vcard; charset=us-ascii; name="vcard.vcf"
Content-Transfer-Encoding: 7bit
Content-Description: Card for Alicia da Conceicao
Content-Disposition: attachment; filename="vcard.vcf"

begin:          vcard
fn:             Alicia da Conceicao
n:              da Conceicao;Alicia
org:            Cyberstation Inc.
adr:            121 Richmond Street West, Suite 1104;;;Toronto;Ontario;M5H-2G4;Canada
email;internet: alicia@cyberstation.ca
title:          VP of Technology
tel;work:       416-860-9378
tel;fax:        416-860-9380
x-mozilla-cpt:  ;0
x-mozilla-html: TRUE
version:        2.1
end:            vcard


--------------9E626755B9ACBB05F071FE60--