Commit dee1b66c authored by Takashi Iwai's avatar Takashi Iwai Committed by Jaroslav Kysela

[ALSA] hda-intel - Add power_save_controller module option

Add power_save_controller module option instead of define flag.
Also, added descriptions of new module options in ALSA-Configuration.txt.
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarJaroslav Kysela <perex@suse.cz>
parent ae0a8ed8
...@@ -768,6 +768,10 @@ Prior to version 0.9.0rc4 options had a 'snd_' prefix. This was removed. ...@@ -768,6 +768,10 @@ Prior to version 0.9.0rc4 options had a 'snd_' prefix. This was removed.
single_cmd - Use single immediate commands to communicate with single_cmd - Use single immediate commands to communicate with
codecs (for debugging only) codecs (for debugging only)
enable_msi - Enable Message Signaled Interrupt (MSI) (default = off) enable_msi - Enable Message Signaled Interrupt (MSI) (default = off)
power_save - Automatic power-saving timtout (in second, 0 =
disable, default = 10)
power_save_controller - Reset HD-audio controller in power-saving mode
(default = on)
This module supports one card and autoprobe. This module supports one card and autoprobe.
...@@ -993,6 +997,12 @@ Prior to version 0.9.0rc4 options had a 'snd_' prefix. This was removed. ...@@ -993,6 +997,12 @@ Prior to version 0.9.0rc4 options had a 'snd_' prefix. This was removed.
subsystem ID (output of "lspci -nv") to ALSA BTS or alsa-devel subsystem ID (output of "lspci -nv") to ALSA BTS or alsa-devel
ML (see the section "Links and Addresses"). ML (see the section "Links and Addresses").
When CONFIG_SND_HDA_POWER_SAVE is set, two options, power_save and
power_save_controller become available. power_save specifies the
time to turn off the power automatically at idle status. When
power_save_controller is true, the controller is also turned off.
This might result in more obvious click noise at turning on/off.
Note 2: If you get click noises on output, try the module option Note 2: If you get click noises on output, try the module option
position_fix=1 or 2. position_fix=1 will use the SD_LPIB position_fix=1 or 2. position_fix=1 will use the SD_LPIB
register value without FIFO size correction as the current register value without FIFO size correction as the current
......
...@@ -75,8 +75,18 @@ MODULE_PARM_DESC(single_cmd, "Use single command to communicate with codecs " ...@@ -75,8 +75,18 @@ MODULE_PARM_DESC(single_cmd, "Use single command to communicate with codecs "
module_param(enable_msi, int, 0); module_param(enable_msi, int, 0);
MODULE_PARM_DESC(enable_msi, "Enable Message Signaled Interrupt (MSI)"); MODULE_PARM_DESC(enable_msi, "Enable Message Signaled Interrupt (MSI)");
#ifdef CONFIG_SND_HDA_POWER_SAVE
/* power_save option is defined in hda_codec.c */ /* power_save option is defined in hda_codec.c */
/* reset the HD-audio controller in power save mode.
* this may give more power-saving, but will take longer time to
* wake up.
*/
static int power_save_controller = 1;
module_param(power_save_controller, bool, 0644);
MODULE_PARM_DESC(power_save_controller, "Reset controller in power save mode.");
#endif
/* just for backward compatibility */ /* just for backward compatibility */
static int enable; static int enable;
module_param(enable, bool, 0444); module_param(enable, bool, 0444);
...@@ -102,17 +112,6 @@ MODULE_DESCRIPTION("Intel HDA driver"); ...@@ -102,17 +112,6 @@ MODULE_DESCRIPTION("Intel HDA driver");
#define SFX "hda-intel: " #define SFX "hda-intel: "
/*
* build flags
*/
/*
* reset the HD-audio controller in power save mode.
* this may give more power-saving, but will take longer time to
* wake up.
*/
#define HDA_POWER_SAVE_RESET_CONTROLLER
/* /*
* registers * registers
...@@ -1533,10 +1532,8 @@ static void azx_power_notify(struct hda_codec *codec) ...@@ -1533,10 +1532,8 @@ static void azx_power_notify(struct hda_codec *codec)
} }
if (power_on) if (power_on)
azx_init_chip(chip); azx_init_chip(chip);
#ifdef HDA_POWER_SAVE_RESET_CONTROLLER else if (chip->running && power_save_controller)
else if (chip->running)
azx_stop_chip(chip); azx_stop_chip(chip);
#endif
} }
#endif /* CONFIG_SND_HDA_POWER_SAVE */ #endif /* CONFIG_SND_HDA_POWER_SAVE */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment