All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Vetter <daniel@ffwll.ch>
To: Jani Nikula <jani.nikula@intel.com>
Cc: intel-gfx <intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH v3] drm/i915: rewrite hsw/bdw audio codec enable/disable sequences
Date: Mon, 3 Nov 2014 13:09:02 +0100	[thread overview]
Message-ID: <20141103120902.GS26941@phenom.ffwll.local> (raw)
In-Reply-To: <87h9ykiovy.fsf@intel.com>

On Fri, Oct 31, 2014 at 11:12:33AM +0200, Jani Nikula wrote:
> We have drm_crtc_vblank_off very early in the disable sequence, and
> drm_crtc_vblank_on very late in the enable sequence. Especially
> early/late since
> 
> commit 4b3a9526fc3228e74011b88f58088336acd2c9e2
> Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Date:   Thu Aug 14 22:04:37 2014 +0300
> 
>     drm/i915: Move vblank enable earlier and disable later
> 
> All of the audio codec enable/disable stuff, like most of mode set, is
> done with vblank disabled.
> 
> Since
> 
> commit 44bd93a3d367913d883be6abba9a6e51a53c4e90
> Author: Daniel Vetter <daniel.vetter@ffwll.ch>
> Date:   Fri Jul 25 23:36:44 2014 +0200
> 
>     drm/i915: Use generic vblank wait
> 
> we started using drm_wait_one_vblank instead of directly checking the
> registers in intel_wait_for_vblank, and this specifically disallows its
> use during mode set (and IIRC we've seen bug reports about that too).
> 
> I don't know what the correct answer should be here. I've ensured the
> audio codec enable doesn't happen until after the port/pipe are up and
> running, but I still can't vblank wait.

Yeah, this is a big ugly. We really can't enable vblanks earlier since on
some ports the pipe really only starts running later on.

Imo the proper fix is to push the audio/infoframe setup into a vblank work
item, and the code here would only schedule that on the very next vblank.
Unfortunately that infrastructure isn't there yet, so meanwhile I think we
need to locally resurrect the old vblank_wait functions with a big XXX
comment.

Or given that we've never really cared about actually running in the
vblank (the wait_for macro uses msleeps, so we're pretty much guaranteed
to miss the actual vblank) just insert FIXME comments stating what should
be done here.

I'm ok with either approach really.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2014-11-03 12:08 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-27 14:26 [PATCH v2 00/18] drm/i915: hdmi/dp audio rework Jani Nikula
2014-10-27 14:26 ` [PATCH v2 01/18] drm/i915: add new intel audio file to group DP/HDMI audio Jani Nikula
2014-10-27 17:40   ` Vivi, Rodrigo
2014-10-27 14:26 ` [PATCH v2 02/18] drm/i915/audio: constify hdmi audio clock struct Jani Nikula
2014-10-27 17:42   ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 03/18] drm/i915/audio: beat some sense into the variable types and names Jani Nikula
2014-10-27 17:46   ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 04/18] drm/i915: pass intel_encoder to intel_write_eld Jani Nikula
2014-10-27 17:47   ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 05/18] drm/i915/audio: pass intel_encoder on to platform specific ELD functions Jani Nikula
2014-10-27 17:52   ` Rodrigo Vivi
2014-10-28  7:30     ` Daniel Vetter
2014-10-29 21:48       ` Rodrigo Vivi
2014-10-30  8:52         ` Jani Nikula
2014-11-03 11:59           ` Daniel Vetter
2014-11-04 23:18             ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 06/18] drm/i915/audio: set ELD Conn_Type at one place Jani Nikula
2014-10-27 18:00   ` Rodrigo Vivi
2014-10-28  9:18     ` Jani Nikula
2014-10-28 11:53     ` [PATCH v3] " Jani Nikula
2014-10-28 16:23       ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 07/18] drm/i915/ddi: write ELD where it's supposed to be done Jani Nikula
2014-10-27 18:04   ` Rodrigo Vivi
2014-10-28  8:28     ` Jani Nikula
2014-10-30 17:16       ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 08/18] drm/i915: introduce intel_audio_codec_{enable, disable} Jani Nikula
2014-10-27 18:21   ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 09/18] drm/i915/audio: remove misleading checks for !eld[0] Jani Nikula
2014-10-27 18:27   ` Rodrigo Vivi
2014-10-27 18:29     ` Rodrigo Vivi
2014-11-03 12:04     ` Daniel Vetter
2014-10-27 14:26 ` [PATCH v2 10/18] drm/i915: clean up and clarify audio related register defines Jani Nikula
2014-10-27 18:31   ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 11/18] drm/i915: rewrite hsw/bdw audio codec enable/disable sequences Jani Nikula
2014-10-27 18:35   ` Rodrigo Vivi
2014-10-28 15:18     ` Jani Nikula
2014-10-28 12:03   ` [PATCH v3] " Jani Nikula
2014-10-29 21:49     ` Rodrigo Vivi
2014-10-30  8:51       ` Jani Nikula
2014-10-30 17:54     ` Rodrigo Vivi
2014-10-31  9:12       ` Jani Nikula
2014-11-03 12:09         ` Daniel Vetter [this message]
2014-11-04  8:30           ` [PATCH v4] " Jani Nikula
2014-11-04 23:15             ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 12/18] drm/i915/audio: rewrite vlv/chv and gen 5-7 audio codec enable sequence Jani Nikula
2014-10-28 12:04   ` [PATCH v3] " Jani Nikula
2014-10-30 18:04     ` Rodrigo Vivi
2014-10-31  9:17       ` Jani Nikula
2014-11-04  8:31         ` [PATCH v4] " Jani Nikula
2014-11-05  9:25           ` Daniel Vetter
     [not found]           ` <CABVU7+uFMsMDa5mnXmDmQzGOYq5ict_aTLROXjyz8v4qOJrEog@mail.gmail.com>
2014-11-05 10:41             ` Jani Nikula
2014-11-05 12:31               ` Daniel Vetter
2014-10-27 14:26 ` [PATCH v2 13/18] drm/i915/audio: add vlv/chv/gen5-7 audio codec disable sequence Jani Nikula
2014-10-30 18:59   ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 14/18] drm/i915: enable audio codec after port Jani Nikula
2014-10-30 19:03   ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 15/18] drm/i915/audio: add audio codec disable on g4x Jani Nikula
2014-10-30 19:10   ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 16/18] drm/i915/audio: add audio codec enable debug log for g4x Jani Nikula
2014-10-27 18:37   ` Rodrigo Vivi
2014-10-27 14:26 ` [PATCH v2 17/18] drm/i915: make pipe/port based audio valid accessors easier to use Jani Nikula
2014-10-27 18:39   ` Rodrigo Vivi
2014-10-27 14:27 ` [PATCH v2 18/18] drm/i915/audio: add DOC comment describing HDA over HDMI/DP Jani Nikula
2014-10-27 18:40   ` Rodrigo Vivi
2014-10-28 14:20 ` [PATCH 1/2] drm/edid: add #defines and helpers for ELD Jani Nikula
2014-10-28 14:20   ` [PATCH 2/2] drm/edid: fix Baseline_ELD_Len field in drm_edid_to_eld() Jani Nikula
2014-11-05 15:37     ` Rodrigo Vivi
2014-11-10 13:39     ` Daniel Vetter
     [not found]       ` <CAKMK7uF0EFz5DDTJJS9KJ405vgH=FQS5d3FT3spTYp9XxCr-UQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-11-10 22:38         ` Ben Skeggs
2014-11-10 23:13     ` Daniel Vetter
2014-11-04 23:53   ` [PATCH 1/2] drm/edid: add #defines and helpers for ELD Rodrigo Vivi

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=20141103120902.GS26941@phenom.ffwll.local \
    --to=daniel@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jani.nikula@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.