From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932699AbeAKL0K (ORCPT + 1 other); Thu, 11 Jan 2018 06:26:10 -0500 Received: from mga01.intel.com ([192.55.52.88]:30285 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932102AbeAKL0I (ORCPT ); Thu, 11 Jan 2018 06:26:08 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.46,344,1511856000"; d="scan'208";a="20758857" From: abhijeet.kumar@intel.com To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Jeeja KP , Vinod Koul , "Subhransu S. Prusty" , Guneshwor Singh , Sandeep Tayal , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Cc: abhijeet.kumar@intel.com Subject: [PATCH] ASoC: hdac_hdmi: Ensuring proper setting of output widget power state Date: Thu, 11 Jan 2018 17:04:27 +0530 Message-Id: <1515670468-9198-1-git-send-email-abhijeet.kumar@intel.com> X-Mailer: git-send-email 1.9.1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: From: Abhijeet Kumar When we change the resolution of DP pannel or hot plug-unplug it while playing an audio clip,sometimes we observe a silent playback(no audio). During no audio condition, we have noticed that the power state of the pin or the connector is D3. Optimzing the way we set the power could mitigate the issue.With this changes the verb is sent to set the power state and response is received. Thus ensuring power state is set. Signed-off-by: Abhijeet Kumar --- sound/soc/codecs/hdac_hdmi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sound/soc/codecs/hdac_hdmi.c b/sound/soc/codecs/hdac_hdmi.c index f3b4f4dfae6a..e24caecf0a4f 100644 --- a/sound/soc/codecs/hdac_hdmi.c +++ b/sound/soc/codecs/hdac_hdmi.c @@ -718,7 +718,7 @@ static void hdac_hdmi_set_power_state(struct hdac_ext_device *edev, { if (get_wcaps(&edev->hdac, nid) & AC_WCAP_POWER) { if (!snd_hdac_check_power_state(&edev->hdac, nid, pwr_state)) - snd_hdac_codec_write(&edev->hdac, nid, 0, + snd_hdac_codec_read(&edev->hdac, nid, 0, AC_VERB_SET_POWER_STATE, pwr_state); } } -- 1.9.1