Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Oct 1997 11:07:21 -0700 (MST)
From:      Nate Williams <nate@mt.sri.com>
To:        Nate Williams <nate@freebsd.org>
Cc:        mobile@freebsd.org
Subject:   Announce: Working suspend/resume (was Re: cvs commit: src/usr.sbin/pccard/pccardd cardd.c)
Message-ID:  <199710281807.LAA06518@rocky.mt.sri.com>
In-Reply-To: <199710281751.JAA20266@freefall.freebsd.org>

index | next in thread | previous in thread | raw e-mail

>   Modified files:
>     usr.sbin/pccard/pccardd cardd.c 
>   Log:
>   - Disable cards when doing a suspend by emulating that they have been
>     removed.  Add a new state 'suspend' so we 'fake' insertion events at
>     resume time for the cards that have been suspended.
>   
>   [
>   The code still works if you remove the card during suspend, switch the
>   card during suspend, or combinations of both.
>   ]
>
>   Reviewed by:	frf@xocolatl.com

Thanks to Robert for sending me a bug report, things are much better.
It turns out there was a *HUGE* race condition in the code after I
killed the 'suspend' function.  How it ever worked I'll never know, but
the new code is both better and more robust, and what I had initially
intended to do a couple of years ago.

I'd be suprised if suspend/resume didn't work for *all* laptops
now, although it may require some setup of the PCIC controller for some
machines.  If it doesn't work out of the box, try setting
"machdep.pccard.pcic_resume_reset" to 1.

root # sysctl -w machdep.pccard.pcic_resume_reset=1

You *MUST* rebuild pccardc/pccardd before you boot into the new kernel.
If you don't normal card insertion/removal events won't get recognized
by the card daemon (the above change is necessary), but once you've
rebuilt and re-installed it everything should work great.

*Please* test this code.  I think it should work, and if it proves to be
good I'd like to bring it into 2.2 after a shakeout period.  In any
case, it's much more robust than the old code in the face of cards
getting switched, etc...



Nate


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199710281807.LAA06518>