diff options
author | Tong, Bo <box.tong@intel.com> | 2012-03-14 12:54:28 +0800 |
---|---|---|
committer | buildbot <buildbot@intel.com> | 2012-04-11 21:33:26 -0700 |
commit | 554e68af22934661e070f6ab78e30b383354d610 (patch) | |
tree | b0a8273d6a25a6d1f0e01ec1b5efa7acc68da1a4 /sound | |
parent | fe1072336926840e25cdabb9dc46a63ecbb3c0fb (diff) | |
download | kernel-mfld-blackbay-554e68af22934661e070f6ab78e30b383354d610.tar.gz kernel-mfld-blackbay-554e68af22934661e070f6ab78e30b383354d610.tar.bz2 kernel-mfld-blackbay-554e68af22934661e070f6ab78e30b383354d610.zip |
Port a bunch of patches from R2
BZ: 17008
This patch includes below bug fixing
0001-GFX-DISPLAY-Add-vblank-mask-when-enable-disable-PIPE.patch: BZ: 25812
0002-GFX-DISPLAY-Fix-MIPI-panel-power-faild-issue.patch: BZ: 21666
0003-HDMI-Audio-play-music-via-HDMI-will-play-from-the-sp.patch: BZ: 18714
Change-Id: I555f741c5e3effe3685fd86ad85db6ef842da3c4
Signed-off-by: Tong, Bo <box.tong@intel.com>
Reviewed-on: http://android.intel.com:8080/42018
Reviewed-by: Hu, Austin <austin.hu@intel.com>
Reviewed-by: Xu, Randy <randy.xu@intel.com>
Tested-by: Xu, Randy <randy.xu@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/drivers/intel_mid_hdmi/intel_mid_hdmi_audio.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/sound/drivers/intel_mid_hdmi/intel_mid_hdmi_audio.c b/sound/drivers/intel_mid_hdmi/intel_mid_hdmi_audio.c index 1ba9682d2f7..64481bc112f 100644 --- a/sound/drivers/intel_mid_hdmi/intel_mid_hdmi_audio.c +++ b/sound/drivers/intel_mid_hdmi/intel_mid_hdmi_audio.c @@ -561,8 +561,19 @@ static int snd_intelhad_open(struct snd_pcm_substream *substream) return -ENODEV; } + /* + * HDMI driver might suspend the device already, + * so we return it on + */ + if (!ospm_power_using_hw_begin(OSPM_DISPLAY_ISLAND, + OSPM_UHB_FORCE_POWER_ON)) { + pr_err("HDMI device can't be turned on\n"); + return -ENODEV; + } + if (had_get_hwstate(intelhaddata)) { pr_err("%s: HDMI cable plugged-out\n", __func__); + ospm_power_using_hw_end(OSPM_DISPLAY_ISLAND); return -ENODEV; } @@ -571,9 +582,12 @@ static int snd_intelhad_open(struct snd_pcm_substream *substream) /* Check, if device already in use */ if (runtime->private_data) { pr_err("Device already in use\n"); + ospm_power_using_hw_end(OSPM_DISPLAY_ISLAND); return -EBUSY; } + ospm_power_using_hw_end(OSPM_DISPLAY_ISLAND); + /* set the runtime hw parameter with local snd_pcm_hardware struct */ runtime->hw = snd_intel_hadstream; |