Nothing more than paranoia from when I was farting with this. I am sure it can be non volatile too. I got a useful report that there are still some issues with this so I am going to plow ahead with the state machine version jordan drafted.
On Sun, Oct 03, 2010 at 06:19:50PM +0200, Mark Kettenis wrote: > > Date: Sun, 3 Oct 2010 11:09:17 -0500 > > From: Marco Peereboom <ma...@peereboom.us> > > > > Index: acpiec.c > > =================================================================== > > RCS file: /cvs/src/sys/dev/acpi/acpiec.c,v > > retrieving revision 1.43 > > diff -u -p -r1.43 acpiec.c > > --- acpiec.c 8 Aug 2010 17:25:41 -0000 1.43 > > +++ acpiec.c 29 Sep 2010 04:24:13 -0000 > > @@ -92,7 +92,7 @@ void > > acpiec_wait(struct acpiec_softc *sc, u_int8_t mask, u_int8_t val) > > { > > static int acpiecnowait; > > - u_int8_t stat; > > + volatile u_int8_t stat; > > Why are you making 'stat' volatile?