summaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/hda_tegra.c
diff options
context:
space:
mode:
authorTakashi Iwai2015-02-20 09:26:04 +0100
committerTakashi Iwai2015-02-26 15:36:52 +0100
commitbb573928e187fc5b1f91c3a7684791d5dfcca640 (patch)
treebc4877b0a4deaba4428bd6f73ada6152d181abb4 /sound/pci/hda/hda_tegra.c
parentALSA: hda - Use standard runtime PM for codec power-save control (diff)
downloadkernel-qcow2-linux-bb573928e187fc5b1f91c3a7684791d5dfcca640.tar.gz
kernel-qcow2-linux-bb573928e187fc5b1f91c3a7684791d5dfcca640.tar.xz
kernel-qcow2-linux-bb573928e187fc5b1f91c3a7684791d5dfcca640.zip
ALSA: hda - Drop power_save value indirection in hda_bus
We used to pass the power_save option value to hda_bus via a given pointer. This was needed to refer to the value from the HD-audio core side. However, after the transition to the runtime PM, this is no longer needed. This patch drops the power_save value indirection in hda_bus above, and let the controller driver reprograms the autosuspend value explicitly by a new helper, snd_hda_set_power_save(). Without this call, the HD-audio core doesn't set up the autosuspend and flip the runtime PM. (User may still be able to set up via sysfs, though.) Along with this change, the pointer argument of azx_bus_create() is dropped as well. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_tegra.c')
-rw-r--r--sound/pci/hda/hda_tegra.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sound/pci/hda/hda_tegra.c b/sound/pci/hda/hda_tegra.c
index f6949e413a50..42bc17655df0 100644
--- a/sound/pci/hda/hda_tegra.c
+++ b/sound/pci/hda/hda_tegra.c
@@ -81,7 +81,7 @@ module_param(power_save, bint, 0644);
MODULE_PARM_DESC(power_save,
"Automatic power-saving timeout (in seconds, 0 = disable).");
#else
-static int power_save = 0;
+#define power_save 0
#endif
/*
@@ -496,7 +496,7 @@ static int hda_tegra_probe(struct platform_device *pdev)
goto out_free;
/* create codec instances */
- err = azx_bus_create(chip, NULL, &power_save);
+ err = azx_bus_create(chip, NULL);
if (err < 0)
goto out_free;
@@ -525,6 +525,7 @@ static int hda_tegra_probe(struct platform_device *pdev)
chip->running = 1;
power_down_all_codecs(chip);
azx_notifier_register(chip);
+ snd_hda_set_power_save(chip->bus, power_save * 1000);
return 0;