[Intel-gfx] [PATCH] Defined NM doesn't work on KBL and uses automatic N/M.
Jani Nikula
jani.nikula at linux.intel.com
Fri May 26 08:31:00 UTC 2017
On Fri, 26 May 2017, Quanxian Wang <quanxian.wang at intel.com> wrote:
> According to the bspec, when set N/M, should disable
> and enable transcoder which attaching DP audio. However
> with that implementation will affect performance more.
>
> But with current implementation, KBL could not work with defined N/M.
> By default, KBL will use automatic N/M.
>
> Signed-off-by: Quanxian Wang <quanxian.wang at intel.com>
> Reviewed-by: Libin Yang <libin.yang at intel.com>
> Reviewed-by: Jani Nikula <jani.nikula at intel.com>
I have *NOT* reviewed this patch. Even if it's based on my suggestion in
[1], it does not automatically signify review.
The patch subject should start with "drm/i915/audio:".
The DP spec always expresses the values as M/N, more specifically
Maud/Naud, so it's confusing to see them expressed as N/M.
I still have trouble understanding the commit message. I am wondering if
something was fixed in Kabylake and beyond, since according to
6014ac122ed0 ("drm/i915/audio: set proper N/M in modeset") we need this
for certain modes. In particular, should the condition check for KBL ||
gen >= 10?
BR,
Jani.
[1] http://mid.mail-archive.com/87pogs1lz7.fsf@intel.com
> ---
> drivers/gpu/drm/i915/intel_audio.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c
> index d805b6e..ba4994e 100644
> --- a/drivers/gpu/drm/i915/intel_audio.c
> +++ b/drivers/gpu/drm/i915/intel_audio.c
> @@ -289,6 +289,10 @@ hsw_dp_audio_config_update(struct intel_crtc *intel_crtc, enum port port,
> enum pipe pipe = intel_crtc->pipe;
> u32 tmp;
>
> + /* It doesn't work on KBL and uses automatic N/M. */
> + if (IS_KABYLAKE(dev_priv))
> + nm = NULL;
> +
> if (nm)
> DRM_DEBUG_KMS("using Maud %u, Naud %u\n", nm->m, nm->n);
> else
--
Jani Nikula, Intel Open Source Technology Center
More information about the Intel-gfx
mailing list