Revert "ALSA: hda - Allow power_save_controller option override DCAPS"
This reverts commit6ab317419c. The commit [6ab317419c: ALSA: hda - Allow power_save_controller option override DCAPS] changed the behavior of power_save_controller so that it can override the driver capability. This assumed that this option is rarely changed dynamically unlike power_save option. Too naive. It turned out that the user-space power-management tool tries to set power_save_controller option to 1 together with power_save option without knowing what's actually doing. This enabled forcibly the runtime PM of the controller, which is known to be broken om many chips thus disabled as default. So, the only sane fix is to revert this commit again. It was intended to ease debugging/testing for runtime PM enablement, but obviously we need another way for it. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=56171 Reported-and-tested-by: Nikita Tsukanov <keks9n@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
@@ -134,8 +134,8 @@ MODULE_PARM_DESC(power_save, "Automatic power-saving timeout "
|
||||
* 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, bint, 0644);
|
||||
static bool power_save_controller = 1;
|
||||
module_param(power_save_controller, bool, 0644);
|
||||
MODULE_PARM_DESC(power_save_controller, "Reset controller in power save mode.");
|
||||
#endif /* CONFIG_PM */
|
||||
|
||||
@@ -2931,8 +2931,6 @@ static int azx_runtime_idle(struct device *dev)
|
||||
struct snd_card *card = dev_get_drvdata(dev);
|
||||
struct azx *chip = card->private_data;
|
||||
|
||||
if (power_save_controller > 0)
|
||||
return 0;
|
||||
if (!power_save_controller ||
|
||||
!(chip->driver_caps & AZX_DCAPS_PM_RUNTIME))
|
||||
return -EBUSY;
|
||||
|
||||
Reference in New Issue
Block a user