From: Jani Nikula <jani.nikula@linux.intel.com>
To: libin.yang@intel.com, intel-gfx@lists.freedesktop.org,
ville.syrjala@linux.intel.com, daniel.vetter@intel.com,
tiwai@suse.de
Subject: Re: [PATCH v2] drm/i915/audio: fix hdmi audio noise issue
Date: Thu, 10 Nov 2016 12:37:19 +0200 [thread overview]
Message-ID: <87vavvei3k.fsf@intel.com> (raw)
In-Reply-To: <1478754878-89716-1-git-send-email-libin.yang@intel.com>
On Thu, 10 Nov 2016, libin.yang@intel.com wrote:
> From: Libin Yang <libin.yang@intel.com>
>
> Some monitors will have noise or even no sound after
> applying the patch 6014ac12.
>
> In patch 6014ac12, it will reset the cts value to 0 for HDMI.
> However, we need to disable Enable CTS or M Prog bit. This is
> the initial setting after HW reset.
>
> Fixes: 6014ac122ed0 ("drm/i915/audio: set proper N/M in modeset")
> Signed-off-by: Libin Yang <libin.yang@intel.com>
> ---
> drivers/gpu/drm/i915/intel_audio.c | 15 ++++++++++++---
> 1 file changed, 12 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c
> index 813fd74..a472d35 100644
> --- a/drivers/gpu/drm/i915/intel_audio.c
> +++ b/drivers/gpu/drm/i915/intel_audio.c
> @@ -332,6 +332,13 @@ hsw_hdmi_audio_config_update(struct intel_crtc *intel_crtc, enum port port,
> int n;
> u32 tmp;
>
> + /* reset CTS value to 0 */
> + tmp = I915_READ(HSW_AUD_M_CTS_ENABLE(pipe));
> + tmp &= ~AUD_CONFIG_M_MASK;
> + tmp &= ~AUD_M_CTS_M_VALUE_INDEX;
> + tmp |= AUD_M_CTS_M_PROG_ENABLE;
> + I915_WRITE(HSW_AUD_M_CTS_ENABLE(pipe), tmp);
> +
> tmp = I915_READ(HSW_AUD_CFG(pipe));
> tmp &= ~AUD_CONFIG_N_VALUE_INDEX;
> tmp &= ~AUD_CONFIG_PIXEL_CLOCK_HDMI_MASK;
> @@ -351,10 +358,12 @@ hsw_hdmi_audio_config_update(struct intel_crtc *intel_crtc, enum port port,
>
> I915_WRITE(HSW_AUD_CFG(pipe), tmp);
>
> + /*
> + * Let's disable "Enable CTS or M Prog bit"
> + * and let HW calculate the value
> + */
> tmp = I915_READ(HSW_AUD_M_CTS_ENABLE(pipe));
> - tmp &= ~AUD_CONFIG_M_MASK;
> - tmp &= ~AUD_M_CTS_M_VALUE_INDEX;
> - tmp |= AUD_M_CTS_M_PROG_ENABLE;
> + tmp &= ~AUD_M_CTS_M_PROG_ENABLE;
> I915_WRITE(HSW_AUD_M_CTS_ENABLE(pipe), tmp);
You did not address my review comment on the earlier version:
Is it necessary to do the HSW_AUD_M_CTS_ENABLE updates in two places?
Why do you both enable and disable AUD_M_CTS_M_PROG_ENABLE bit here?
BR,
Jani.
> }
--
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2016-11-10 10:37 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-10 5:14 [PATCH v2] drm/i915/audio: fix hdmi audio noise issue libin.yang
2016-11-10 5:47 ` ✓ Fi.CI.BAT: success for drm/i915/audio: fix hdmi audio noise issue (rev2) Patchwork
2016-11-10 10:37 ` Jani Nikula [this message]
2016-11-11 2:14 ` [PATCH v2] drm/i915/audio: fix hdmi audio noise issue Yang, Libin
2016-11-11 8:41 ` Jani Nikula
2016-11-11 8:46 ` Yang, Libin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87vavvei3k.fsf@intel.com \
--to=jani.nikula@linux.intel.com \
--cc=daniel.vetter@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=libin.yang@intel.com \
--cc=tiwai@suse.de \
--cc=ville.syrjala@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).