linux/sound/pci/hda
Mengdong Lin a07187c992 ALSA: hda - restore BCLK M/N values when resuming HSW/BDW display controller
For Intel Haswell/Broadwell display HD-A controller, the 24MHz HD-A link BCLK
is converted from Core Display Clock (CDCLK): BCLK = CDCLK * M / N
And there are two registers EM4 and EM5 to program M, N value respectively.
The EM4/EM5 values will be lost and when the display power well is disabled.

BIOS programs CDCLK selected by OEM and EM4/EM5, but BIOS has no idea about
display power well on/off at runtime. So the M/N can be wrong if non-default
CDCLK is used when the audio controller resumes, which results in an invalid
BCLK and abnormal audio playback rate. So this patch saves and restores valid
M/N values on controller suspend/resume.

And 'struct hda_intel' is defined to contain standard HD-A 'struct azx' and
Intel specific fields, as Takashi suggested.

Signed-off-by: Mengdong Lin <mengdong.lin@intel.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2014-06-26 15:47:42 +02:00
..
ca0132_regs.h ALSA: hda/ca0132 - Fix type of INVALID_CHIP_ADDRESS 2013-02-12 10:15:15 +01:00
hda_auto_parser.c ALSA: hda - Fix usage of "model" module parameter 2014-06-23 12:21:12 +02:00
hda_auto_parser.h ALSA: hda - add some small convenience functions to auto parser 2013-04-11 11:59:27 +02:00
hda_beep.c ALSA: hda - Fix registration of beep input device 2014-02-28 14:02:21 +01:00
hda_beep.h ALSA: hda - Fix registration of beep input device 2014-02-28 14:02:21 +01:00
hda_codec.c ALSA: hda - Fix registration of beep input device 2014-02-28 14:02:21 +01:00
hda_codec.h ALSA: hda - Add fixup_forced flag 2014-05-26 11:03:38 +02:00
hda_controller.c ALSA: hda - Suppress CORBRP clear on Nvidia controller chips 2014-04-29 18:41:22 +02:00
hda_controller.h ALSA: hda - Make full_reset boolean 2014-04-09 14:48:07 +02:00
hda_eld.c ALSA: hda - Replace with standard printk 2014-02-25 12:27:32 +01:00
hda_generic.c ALSA: hda - if statement not indented 2014-05-14 16:47:27 +02:00
hda_generic.h Merge branch 'for-linus' into for-next 2014-02-12 10:34:27 +01:00
hda_hwdep.c ALSA: hda - Add sysfs to codec object, too 2014-02-25 12:12:54 +01:00
hda_i915.c drm/i915, HD-audio: Don't continue probing when nomodeset is given 2014-06-16 10:34:06 +02:00
hda_i915.h drm/i915, HD-audio: Don't continue probing when nomodeset is given 2014-06-16 10:34:06 +02:00
hda_intel_trace.h ALSA: hda - Add tracepoints to HD-audio controller driver 2012-10-30 10:39:59 +01:00
hda_intel.c ALSA: hda - restore BCLK M/N values when resuming HSW/BDW display controller 2014-06-26 15:47:42 +02:00
hda_jack.c ALSA: hda - Kill EXPORT_SYMBOL_HDA() 2013-12-19 14:36:19 +01:00
hda_jack.h ALSA: hda - Add a block_report flag to jacks 2013-11-07 14:03:17 +01:00
hda_local.h ALSA: hda - Make a SND_HDA_PIN_QUIRK macro 2014-06-24 14:48:31 +02:00
hda_priv.h ALSA: hda - Suppress CORBRP clear on Nvidia controller chips 2014-04-29 18:41:22 +02:00
hda_proc.c ALSA: hda - Add parameter for dumping processing coefficients 2014-01-29 16:39:13 +01:00
hda_sysfs.c ALSA: hda - Replace with standard printk 2014-02-25 12:27:32 +01:00
hda_tegra.c ALSA: hda: fix tegra build 2014-05-27 07:36:18 +02:00
hda_trace.h ALSA: hda - Clean up CONFIG_SND_HDA_POWER_SAVE 2012-08-30 07:50:13 -07:00
Kconfig ALSA: hda - Add driver for Tegra SoC HDA 2014-05-20 09:38:38 +02:00
Makefile ALSA: hda - Add driver for Tegra SoC HDA 2014-05-20 09:38:38 +02:00
patch_analog.c ALSA: hda/analog - Fix silent output on ASUS A8JN 2014-05-30 12:07:12 +02:00
patch_ca0110.c ALSA: hda - Remove superfluous inclusion of linux/pci.h 2014-02-15 10:12:12 +01:00
patch_ca0132.c ALSA: hda - Replace with standard printk 2014-02-25 12:27:32 +01:00
patch_cirrus.c ALSA: hda - Remove superfluous inclusion of linux/pci.h 2014-02-15 10:12:12 +01:00
patch_cmedia.c ALSA: hda - Replace with standard printk 2014-02-25 12:27:32 +01:00
patch_conexant.c ALSA: hda - Fix registration of beep input device 2014-02-28 14:02:21 +01:00
patch_hdmi.c ALSA: hda - hdmi: call overridden init on resume 2014-06-23 12:38:28 +02:00
patch_realtek.c ALSA: hda - Make the pin quirk tables use the SND_HDA_PIN_QUIRK macro 2014-06-24 14:48:34 +02:00
patch_si3054.c ALSA: hda - Replace with standard printk 2014-02-25 12:27:32 +01:00
patch_sigmatel.c ALSA: hda - Adjust speaker HPF and add LED support for HP Spectre 13 2014-06-25 17:50:24 +02:00
patch_via.c ALSA: hda - Make snd_hda_gen_spec_free() static 2014-02-10 18:23:57 +01:00
thinkpad_helper.c ALSA: hda - Replace with standard printk 2014-02-25 12:27:32 +01:00