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> References: <199710281751.JAA20266@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199710281807.LAA06518>