public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Chris Wilson <chris@chris-wilson.co.uk>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 1/7] drm/i915: Refactor gmch hpd irq handling
Date: Mon, 31 Mar 2014 19:35:24 +0300	[thread overview]
Message-ID: <20140331163524.GX21652@intel.com> (raw)
In-Reply-To: <20140331154928.GD7314@nuc-i3427.alporthouse.com>

On Mon, Mar 31, 2014 at 04:49:28PM +0100, Chris Wilson wrote:
> On Mon, Mar 31, 2014 at 06:21:24PM +0300, ville.syrjala@linux.intel.com wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > 
> > Pull all the gmch platform hotplug interrupt handling into one
> > function.
> > 
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > ---
> >  drivers/gpu/drm/i915/i915_irq.c | 71 +++++++++++++++++++----------------------
> >  1 file changed, 32 insertions(+), 39 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
> > index 0858189..6d26719 100644
> > --- a/drivers/gpu/drm/i915/i915_irq.c
> > +++ b/drivers/gpu/drm/i915/i915_irq.c
> > @@ -1647,6 +1647,34 @@ static void valleyview_pipestat_irq_handler(struct drm_device *dev, u32 iir)
> >  		gmbus_irq_handler(dev);
> >  }
> >  
> > +static void i9xx_hpd_irq_handler(struct drm_device *dev, u32 iir)
> > +{
> > +	drm_i915_private_t *dev_priv = dev->dev_private;
> > +	u32 hotplug_status;
> > +
> > +	if ((iir & I915_DISPLAY_PORT_INTERRUPT) == 0)
> > +		return;
> > +
> > +	hotplug_status = I915_READ(PORT_HOTPLUG_STAT);
> > +
> > +	if (IS_G4X(dev)) {
> > +		u32 hotplug_trigger = hotplug_status & HOTPLUG_INT_STATUS_G4X;
> > +
> > +		intel_hpd_irq_handler(dev, hotplug_trigger, hpd_status_g4x);
> > +	} else {
> > +		u32 hotplug_trigger = hotplug_status & HOTPLUG_INT_STATUS_I915;
> > +
> > +		intel_hpd_irq_handler(dev, hotplug_trigger, hpd_status_i915);
> > +	}
> > +
> > +	if ((IS_G4X(dev) || IS_VALLEYVIEW(dev)) &&
> > +	    hotplug_status & DP_AUX_CHANNEL_MASK_INT_STATUS_G4X)
> > +		dp_aux_irq_handler(dev);
> > +
> > +	I915_WRITE(PORT_HOTPLUG_STAT, hotplug_status);
> > +	POSTING_READ(PORT_HOTPLUG_STAT);
> > +}
> 
> Hmm, after some thought I am in favour of the function as a readibility
> improvement. However, I would prefer to have the iir check inlined
> into the caller.

I had it like that originally, but I moved it into the function when I
realized all the callers have the exact same check, and it looked a bit
out of place next to the other "sub" irq handlers which do the IIR
checks themselves.

But I'm not really attached to the idea, so I can change it back if
that's the consensus.

-- 
Ville Syrjälä
Intel OTC

  reply	other threads:[~2014-03-31 16:36 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-31 15:21 [PATCH 0/7] drm/i915: Pile of display related patches ville.syrjala
2014-03-31 15:21 ` [PATCH 1/7] drm/i915: Refactor gmch hpd irq handling ville.syrjala
2014-03-31 15:49   ` Chris Wilson
2014-03-31 16:35     ` Ville Syrjälä [this message]
2014-03-31 16:56       ` Daniel Vetter
2014-03-31 20:57         ` Chris Wilson
2014-04-01  7:54     ` [PATCH v2 " ville.syrjala
2014-04-01  8:11       ` Chris Wilson
2014-04-01  8:15         ` Daniel Vetter
2014-03-31 15:21 ` [PATCH 2/7] drm/i915: Move DP M/N setup from update_pll to mode_set for gmch platforms ville.syrjala
2014-04-02 17:27   ` Jesse Barnes
2014-03-31 15:21 ` [PATCH 3/7] drm/i915: Split dp post_disable hooks ville.syrjala
2014-04-01  7:03   ` Jani Nikula
2014-04-01  7:37     ` Daniel Vetter
2014-03-31 15:21 ` [PATCH 4/7] drm/i915: Warn when DPIO read returns 0xffffffff ville.syrjala
2014-04-02 17:28   ` Jesse Barnes
2014-04-03  9:29   ` Daniel Vetter
2014-03-31 15:21 ` [PATCH 5/7] drm/i915: Provide a bit more info when pipestat bits are wrong ville.syrjala
2014-04-02 17:28   ` Jesse Barnes
2014-04-02 21:35   ` Damien Lespiau
2014-04-03 10:28     ` [PATCH v2 " ville.syrjala
2014-04-03 10:54       ` Damien Lespiau
2014-04-03 15:24         ` Daniel Vetter
2014-03-31 15:21 ` [PATCH 6/7] drm/i915: Fix framecount offset ville.syrjala
2014-04-02 17:29   ` Jesse Barnes
2014-04-03  9:30     ` Daniel Vetter
2014-04-03 11:04       ` Damien Lespiau
2014-04-03 15:26         ` Daniel Vetter
2014-03-31 15:21 ` [PATCH 7/7] drm/i915: Use enum plane instaad of numbers ville.syrjala
2014-03-31 17:31   ` Daniel Vetter
2014-03-31 17:33     ` Daniel Vetter
2014-03-31 18:29       ` [PATCH] drm/i915: Kill crtc->plane checks from the primary plane update hooks ville.syrjala
2014-03-31 20:37         ` Daniel Vetter

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=20140331163524.GX21652@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=chris@chris-wilson.co.uk \
    --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