From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Imre Deak <imre.deak@intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH v3 2/2] drm/i915: vlv: W/a for hotplug/manual VGA detection
Date: Fri, 10 Jan 2014 15:04:46 +0200 [thread overview]
Message-ID: <20140110130445.GA9454@intel.com> (raw)
In-Reply-To: <1389280096-1032-2-git-send-email-imre.deak@intel.com>
On Thu, Jan 09, 2014 at 05:08:16PM +0200, Imre Deak wrote:
> VGA detection requires the reference clock to be on, so make sure this
> is the case.
>
> This fixes VGA hotplug/manual detection where all pipes are off and so
> we would normally disable all clocks.
>
> v2:
> - Instead of disabling PSR clock gating, force the reference clock on
> through the DPLL_A register. (Kin Chan S <kin.s.chan@intel.com>)
>
> v3:
> - Move enabling of the clock to intel_reset_dpio() and use the DPLL_B
> register instead, where we already have a similar tweak for the CRI
> clock. (Ville)
>
> Reported-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Signed-off-by: Imre Deak <imre.deak@intel.com>
For the series:
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_display.c | 19 +++++++++++++++----
> 1 file changed, 15 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 3262ac4..4e2598b 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -1377,8 +1377,12 @@ static void intel_reset_dpio(struct drm_device *dev)
> if (!IS_VALLEYVIEW(dev))
> return;
>
> - /* Enable the CRI clock source so we can get at the display */
> + /*
> + * Enable the CRI clock source so we can get at the display and the
> + * reference clock for VGA hotplug / manual detection.
> + */
> I915_WRITE(DPLL(PIPE_B), I915_READ(DPLL(PIPE_B)) |
> + DPLL_REFA_CLK_ENABLE_VLV |
> DPLL_INTEGRATED_CRI_CLK_VLV);
>
> /*
> @@ -1507,9 +1511,12 @@ static void vlv_disable_pll(struct drm_i915_private *dev_priv, enum pipe pipe)
> /* Make sure the pipe isn't still relying on us */
> assert_pipe_disabled(dev_priv, pipe);
>
> - /* Leave integrated clock source enabled */
> + /*
> + * Leave integrated clock source and reference clock enabled for pipe B.
> + * The latter is needed for VGA hotplug / manual detection.
> + */
> if (pipe == PIPE_B)
> - val = DPLL_INTEGRATED_CRI_CLK_VLV;
> + val = DPLL_INTEGRATED_CRI_CLK_VLV | DPLL_REFA_CLK_ENABLE_VLV;
> I915_WRITE(DPLL(pipe), val);
> POSTING_READ(DPLL(pipe));
> }
> @@ -4986,7 +4993,11 @@ static void vlv_update_pll(struct intel_crtc *crtc)
>
> vlv_dpio_write(dev_priv, pipe, VLV_PLL_DW11(pipe), 0x87871000);
>
> - /* Enable DPIO clock input */
> + /*
> + * Enable DPIO clock input. We should never disable the reference
> + * clock for pipe B, since VGA hotplug / manual detection depends
> + * on it.
> + */
> dpll = DPLL_EXT_BUFFER_ENABLE_VLV | DPLL_REFA_CLK_ENABLE_VLV |
> DPLL_VGA_MODE_DIS | DPLL_INTEGRATED_CLOCK_VLV;
> /* We should never disable this, set it here for state tracking */
> --
> 1.8.4
--
Ville Syrjälä
Intel OTC
prev parent reply other threads:[~2014-01-10 13:04 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-09 15:08 [PATCH v3 1/2] drm/i915: vlv: make CRI clock enabling explicit during resume Imre Deak
2014-01-09 15:08 ` [PATCH v3 2/2] drm/i915: vlv: W/a for hotplug/manual VGA detection Imre Deak
2014-01-10 13:04 ` Ville Syrjälä [this message]
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=20140110130445.GA9454@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=imre.deak@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
/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