linux/sound
Takashi Iwai cb53c626e1 [ALSA] hda-intel - Add POWER_SAVE option
Added CONFIG_SND_HDA_POWER_SAVE kconfig.  It's an experimental option
to achieve an aggressive power-saving.  With this option, the driver
will turn on/off the power of each codec and controller chip dynamically
on demand.
The patch introduces a new module option 'power_save'.  It specifies
the second of time-out for automatic power-down.  As default, it's
10 seconds.  Setting 0 means to suppress the power-saving feature.
The codec may have analog-input loopbacks, which are usually represented
by mixer elements such as 'Mic Playback Switch' or 'CD Playback Switch'.
When these are on, we cannot turn off the mixer and the codec chip has
to be kept on.  For bookkeeping these states, a new codec-callback is
introduced.
For the bus-controller side, a new callback pm_notify is introduced,
which can be used to turn on/off the contoller appropriately.
Note that this power-saving might cause slight click-noise at
power-on/off.  Also, it might take some time to wake up the codec, and
might even drop some tones at the very beginning.  This seems to be the
side-effect of turning off the controller chip.
This turn-off of the controller can be disabled by undefining
HDA_POWER_SAVE_RESET_CONTOLLER in hda_intel.c.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:46 +02:00
..
aoa [ALSA] Clean up with common snd_ctl_boolean_*_info callbacks 2007-10-16 15:57:45 +02:00
arm [ALSA] Get rid of dead code in sound/arm/sa11xx-uda1341.c 2007-10-16 15:58:24 +02:00
core [ALSA] seq_midi_event: fix parsing of F9/FD bytes 2007-10-16 15:58:38 +02:00
drivers [ALSA] Clean up Makefile 2007-10-16 15:58:05 +02:00
i2c [ALSA] Clean up Makefile 2007-10-16 15:58:05 +02:00
isa [ALSA] isa libs Makefiles cleanup 2007-10-16 15:58:38 +02:00
mips IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
oss DDB5477: remove driver bits of support 2007-07-31 15:39:38 -07:00
parisc [PARISC] fix section mismatch warnings in harmony sound driver 2007-02-17 01:19:12 -05:00
pci [ALSA] hda-intel - Add POWER_SAVE option 2007-10-16 15:58:46 +02:00
pcmcia [ALSA] Clean up with common snd_ctl_boolean_*_info callbacks 2007-10-16 15:57:45 +02:00
ppc [ALSA] Clean up with common snd_ctl_boolean_*_info callbacks 2007-10-16 15:57:45 +02:00
sh [ALSA] Clean up with common snd_ctl_boolean_*_info callbacks 2007-10-16 15:57:45 +02:00
soc [ALSA] sound/soc ioremap/iounmap balancing 2007-10-16 15:58:21 +02:00
sparc [SOUND] CS4231 SBus: Two fixes. 2007-08-03 14:08:33 -07:00
spi [ALSA] ALSA sound driver for the AT73C213 DAC using Atmel SSC driver 2007-10-16 15:57:50 +02:00
synth [ALSA] sound/synth/util_mem.c: remove pointless check 2007-10-16 15:58:15 +02:00
usb [ALSA] usb-audio - Add advanced mode support for Edirol UA-1EX 2007-10-16 15:58:39 +02:00
ac97_bus.c [ALSA] ac97_bus power management 2007-02-09 09:03:54 +01:00
Kconfig [ALSA] Add SPI devices to ALSA Kconfig and Makefile 2007-10-16 15:57:47 +02:00
last.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile [ALSA] Add SPI devices to ALSA Kconfig and Makefile 2007-10-16 15:57:47 +02:00
sound_core.c [PATCH] mark struct file_operations const 9 2007-02-12 09:48:46 -08:00
sound_firmware.c Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00