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
next prev parent 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 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.