Messages in this thread | | | Subject | Re: Saving device driver state during shutdown | Date | Tue, 03 Aug 1999 13:04:41 +0100 | From | David Woodhouse <> |
| |
mharris@meteng.on.ca said: > If it is just saving your mixer settings that you are worried about, > this has nothing to do whatsoever with the kernel. Any setting that > can be read from ANY device on the system, which can also be equally > written to, can be saved to disk by some program or another, and > stored back upon bootup. The redhat default install does this for the > mixer allready, unless one has not installed the required sound > packages, or has disabled the boot time sound service.
Not quite.
On bootup, the system is fairly busy, and there can be a large delay between initialising the kernel driver, and reloading the mixer levels from user-space.
Even with sound drivers as loadable modules, with a post-install script to fix the levels, this has been known to take a few seconds - long enough to wake the household at 3am when the module gets reloaded because something tries to make a sound, and the default state of the line input is 'bloody loud' :)
While kerneld was still capable of storing persistent data for modules, I made the SB driver save and restore mixer settings on load/unload. When it first initialised the hardware, the previous mixer levels were restored - at no time did it jump to some arbitrarily-chosen 'default' levels.
Since the death of kerneld, I haven't yet come up with a good solution for this - perhaps it should be possible to pass the required levels on the command line, or as an argument to the module?
One thing with which I experimented was reading the current levels back from the hardware - on cards which support it, that's quite a nice solution.
---- ---- ---- David Woodhouse David.Woodhouse@mvhi.com Office: (+44) 1223 810302 Project Leader, Process Information Systems Mobile: (+44) 976 658355 Axiom (Cambridge) Ltd., Swaffham Bulbeck, Cambridge, CB5 0NA, UK. finger dwmw2@ferret.lmh.ox.ac.uk for PGP key.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |