All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Intel Graphics Development <intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH 3/7] drm/i915: Wire up port A aux channel
Date: Thu, 7 Nov 2013 15:20:50 +0200	[thread overview]
Message-ID: <20131107132050.GN5986@intel.com> (raw)
In-Reply-To: <1383818746-1199-3-git-send-email-daniel.vetter@ffwll.ch>

On Thu, Nov 07, 2013 at 11:05:42AM +0100, Daniel Vetter wrote:
> Useful for dp aux to work better. Also stop enabling the port A
> hotplug event - eDP panels are expected to fire that interupt and
> we're not really ready to deal with them. This is consistent with how
> we handle port A on ilk-hsw.
> 
> The more important bit is that we must delay the enabling of hotplug
> interrupts until all the encoders are fully set up. But we need irq
> support earlier than that, hence hotplug interrupts can only be
> enabled in the ->hpd_irq_setup callback.
> 
> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> ---
>  drivers/gpu/drm/i915/i915_irq.c | 19 +++++++++++++++++--
>  drivers/gpu/drm/i915/i915_reg.h |  3 ++-
>  2 files changed, 19 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
> index 370c9281a256..686afe0a98f1 100644
> --- a/drivers/gpu/drm/i915/i915_irq.c
> +++ b/drivers/gpu/drm/i915/i915_irq.c
> @@ -1778,6 +1778,21 @@ static irqreturn_t gen8_irq_handler(int irq, void *arg)
>  		}
>  	}
>  
> +	if (master_ctl & GEN8_DE_PORT_IRQ) {
> +		tmp = I915_READ(GEN8_DE_PORT_IIR);
> +		if (tmp & GEN8_AUX_CHANNEL_A_HOTPLUG)
> +			dp_aux_irq_handler(dev);
> +		else if (tmp)
> +			DRM_ERROR("Unexpected DE Port interrupt\n");
> +		else
> +			DRM_ERROR("The master control interrupt lied (DE PORT)!\n");
> +
> +		if (tmp) {
> +			I915_WRITE(GEN8_DE_PORT_IIR, tmp);
> +			ret = IRQ_HANDLED;
> +		}
> +	}
> +
>  	for_each_pipe(pipe) {
>  		uint32_t pipe_iir;
>  
> @@ -2883,8 +2898,8 @@ static void gen8_de_irq_postinstall(struct drm_i915_private *dev_priv)
>  	}
>  	POSTING_READ(GEN8_DE_PIPE_ISR(0));
>  
> -	I915_WRITE(GEN8_DE_PORT_IMR, ~_PORT_DP_A_HOTPLUG);
> -	I915_WRITE(GEN8_DE_PORT_IER, _PORT_DP_A_HOTPLUG);
> +	I915_WRITE(GEN8_DE_PORT_IMR, ~GEN8_AUX_CHANNEL_A_HOTPLUG);
> +	I915_WRITE(GEN8_DE_PORT_IER, GEN8_AUX_CHANNEL_A_HOTPLUG);
>  	POSTING_READ(GEN8_DE_PORT_IER);
>  }
>  
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 9e7588345017..be0d98ae97f7 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -4073,7 +4073,8 @@
>  #define GEN8_DE_PORT_IMR 0x44444
>  #define GEN8_DE_PORT_IIR 0x44448
>  #define GEN8_DE_PORT_IER 0x4444c
> -#define  _PORT_DP_A_HOTPLUG		(1 << 3)
> +#define  GEN8_PORT_DP_A_HOTPLUG		(1 << 3)
> +#define  GEN8_AUX_CHANNEL_A_HOTPLUG	(1 << 0)
                              ^^^^^^^^

That's not a hotplug interrupt.

Otherwise looks good:
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

>  
>  #define GEN8_DE_MISC_ISR 0x44460
>  #define GEN8_DE_MISC_IMR 0x44464
> -- 
> 1.8.4.rc3
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC

  reply	other threads:[~2013-11-07 13:21 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-07 10:05 [PATCH 1/7] drm/i915: Optimize pipe irq handling on bdw Daniel Vetter
2013-11-07 10:05 ` [PATCH 2/7] drm/i915: Fix up the bdw pipe interrupt enable lists Daniel Vetter
2013-11-07 13:49   ` [PATCH] " Daniel Vetter
2013-11-07 14:00     ` Ville Syrjälä
2013-11-07 10:05 ` [PATCH 3/7] drm/i915: Wire up port A aux channel Daniel Vetter
2013-11-07 13:20   ` Ville Syrjälä [this message]
2013-11-07 13:49     ` [PATCH] " Daniel Vetter
2013-11-07 13:59       ` Ville Syrjälä
2013-11-07 10:05 ` [PATCH 4/7] drm/i915: Wire up PCH interrupts for bdw Daniel Vetter
2013-11-07 10:05 ` [PATCH 5/7] drm/i915: Wire up pipe CRC support " Daniel Vetter
2013-11-07 10:05 ` [PATCH 6/7] drm/i915: Optimize gen8_enable|disable_vblank functions Daniel Vetter
2013-11-07 13:37   ` Ville Syrjälä
2013-11-07 14:31     ` [PATCH 1/2] drm/i915: Mask the vblank interrupt on bdw by default Daniel Vetter
2013-11-07 14:31       ` [PATCH 2/2] drm/i915/bdw: Take render error interrupt out of the mask Daniel Vetter
2013-11-07 14:35       ` [PATCH 1/2] drm/i915: Mask the vblank interrupt on bdw by default Ville Syrjälä
2013-11-07 10:05 ` [PATCH 7/7] drm/i915: Wire up cpu fifo underrun reporting support for bdw Daniel Vetter
2013-11-07 13:08 ` [PATCH 1/7] drm/i915: Optimize pipe irq handling on bdw Ville Syrjälä
2013-11-07 13:45 ` Ville Syrjälä
2013-11-08  7:57   ` Daniel Vetter
     [not found]   ` <32493_1383921850_527CF8B9_32493_10045_1_20131108075743.GZ14082@phenom.ffwll.local>
2013-11-08 15:25     ` [PATCH] Workaround for flicker with panning on the i830 Thomas Richter
2013-11-08 16:32       ` Daniel Vetter
     [not found]       ` <32493_1383928311_527D11F3_32493_10984_1_20131108163213.GC14082@phenom.ffwll.local>
2013-11-11 15:33         ` Thomas Richter
2013-11-11 15:43           ` Daniel Vetter
     [not found]           ` <1565_1384184620_5280FB2C_1565_9181_1_CAKMK7uF2UmKJHvVPrzE7-7A9DQ5JrLHAFnDiuVUDHFU+DoOXww@mail.gmail.com>
2013-11-12 16:41             ` Thomas Richter
2013-11-12 17:22               ` Daniel Vetter
     [not found]               ` <1565_1384276909_528263AC_1565_19510_1_20131112172217.GB3741@phenom.ffwll.local>
2013-11-13 19:50                 ` Thomas Richter
2013-11-13 20:20                   ` Daniel Vetter
     [not found]                   ` <26136_1384374018_5283DF02_26136_9623_1_20131113202049.GH7251@phenom.ffwll.local>
2013-11-14  7:14                     ` Thomas Richter
2013-11-14  8:21                       ` Daniel Vetter
     [not found]                       ` <26136_1384417275_528487FB_26136_12808_1_CAKMK7uEfiAoFutfk=mtqteuV07t5SneGniyXnRet_T3Bs4spRw@mail.gmail.com>
2013-11-14 18:15                         ` Thomas Richter
2013-11-14 18:33                           ` Daniel Vetter
     [not found]                           ` <26136_1384453961_52851749_26136_18549_1_20131114183308.GI22741@phenom.ffwll.local>
2013-11-15 13:16                             ` Workaround for flicker with panning on the i830 - found a way for tiled displays Thomas Richter
2013-11-15 15:41                               ` Daniel Vetter
     [not found]                               ` <10422_1384530087_528640A7_10422_3841_1_20131115154159.GU22741@phenom.ffwll.local>
2013-11-15 16:08                                 ` Thomas Richter
2013-11-15 17:01                                 ` Thomas Richter

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=20131107132050.GN5986@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=daniel.vetter@ffwll.ch \
    --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 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.