|
|
@@ -173,7 +173,6 @@ static struct kernel_param_ops param_ops_xint = {
|
|
|
#define param_check_xint param_check_int
|
|
|
|
|
|
static int power_save = CONFIG_SND_HDA_POWER_SAVE_DEFAULT;
|
|
|
-static int *power_save_addr = &power_save;
|
|
|
module_param(power_save, xint, 0644);
|
|
|
MODULE_PARM_DESC(power_save, "Automatic power-saving timeout "
|
|
|
"(in second, 0 = disable).");
|
|
|
@@ -186,7 +185,7 @@ 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.");
|
|
|
#else
|
|
|
-static int *power_save_addr;
|
|
|
+#define power_save 0
|
|
|
#endif /* CONFIG_PM */
|
|
|
|
|
|
static int align_buffer_size = -1;
|
|
|
@@ -740,7 +739,6 @@ static int param_set_xint(const char *val, const struct kernel_param *kp)
|
|
|
{
|
|
|
struct hda_intel *hda;
|
|
|
struct azx *chip;
|
|
|
- struct hda_codec *c;
|
|
|
int prev = power_save;
|
|
|
int ret = param_set_int(val, kp);
|
|
|
|
|
|
@@ -752,8 +750,7 @@ static int param_set_xint(const char *val, const struct kernel_param *kp)
|
|
|
chip = &hda->chip;
|
|
|
if (!chip->bus || chip->disabled)
|
|
|
continue;
|
|
|
- list_for_each_entry(c, &chip->bus->codec_list, list)
|
|
|
- snd_hda_power_sync(c);
|
|
|
+ snd_hda_set_power_save(chip->bus, power_save * 1000);
|
|
|
}
|
|
|
mutex_unlock(&card_list_lock);
|
|
|
return 0;
|
|
|
@@ -1889,7 +1886,7 @@ static int azx_probe_continue(struct azx *chip)
|
|
|
#endif
|
|
|
|
|
|
/* create codec instances */
|
|
|
- err = azx_bus_create(chip, model[dev], power_save_addr);
|
|
|
+ err = azx_bus_create(chip, model[dev]);
|
|
|
if (err < 0)
|
|
|
goto out_free;
|
|
|
|
|
|
@@ -1933,6 +1930,7 @@ static int azx_probe_continue(struct azx *chip)
|
|
|
power_down_all_codecs(chip);
|
|
|
azx_notifier_register(chip);
|
|
|
azx_add_card_list(chip);
|
|
|
+ snd_hda_set_power_save(chip->bus, power_save * 1000);
|
|
|
if (azx_has_pm_runtime(chip) || hda->use_vga_switcheroo)
|
|
|
pm_runtime_put_noidle(&pci->dev);
|
|
|
|