Subject: APM resume weirdness
To: None <port-i386@netbsd.org>
From: Lennart Augustsson <lennart@augustsson.net>
List: port-i386
Date: 05/29/2000 20:08:54
It seems that while the APM resume code is running (i.e. the
power hooks) the interrupts are turned on.  This is BAD.  It means
an interrupt can happen before a device has had a chance to
reset the hardware to a known state.

I think the APM resume code should run at splhigh().  Comments?

Here's an excerpt from PR 10218 that shows what happens (intr before
power):

apmev: resume system
uhci_intr: suspended sts=0x20
uhci0: host controller halted
uhci0 regs: cmd=0000, sts=0020, intr=0000, frnum=0000, flbase=fffff000, sof=0040, portsc1=0080,
portsc2=0080
intrs=0
QH(0xc55e5fc0) at 00004fc0: hlink=00004fe2 elink=00000001
uhci_power: sc=0xc073f000, why=0 (was 1), cmd=0x0
uhci_run: setting run=1
uhci_run: done cmd=0x1 sts=0x0

--

        -- Lennart