[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: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
This commit is contained in:
parent
ae0a8ed8bf
commit
dee1b66ce4
2 changed files with 21 additions and 14 deletions
|
@ -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.
|
||||||
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 "
|
||||||
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");
|
||||||
|
|
||||||
#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)
|
||||||
}
|
}
|
||||||
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 */
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue