From: Oliver Hartkopp <socketcan@hartkopp.net>
To: Jesse Barnes <jbarnes@virtuousgeek.org>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/i915/ilk: special case enabling of PCU_EVENT interrupt
Date: Tue, 26 Aug 2014 07:26:19 +0200 [thread overview]
Message-ID: <53FC1A7B.8010700@hartkopp.net> (raw)
In-Reply-To: <1409009095-3621-1-git-send-email-jbarnes@virtuousgeek.org>
On 26.08.2014 01:24, Jesse Barnes wrote:
> This happens in irq_postinstall before we've set the pm._irqs_disabled flag,
> but shouldn't warn. So add a nowarn variant to allow this to happen w/o
> a backtrace and keep the rest of the IRQ tracking code happy.
>
> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Reported-by: Oliver Hartkopp <socketcan@hartkopp.net>
Tested-by: Oliver Hartkopp <socketcan@hartkopp.net>
Yeah. That fixed it.
Thanks Jesse!
[ 2.900147] Linux agpgart interface v0.103
[ 2.900475] agpgart-intel 0000:00:00.0: Intel HD Graphics Chipset
[ 2.900579] agpgart-intel 0000:00:00.0: detected gtt size: 2097152K total, 262144K mappable
[ 2.901354] agpgart-intel 0000:00:00.0: detected 32768K stolen memory
[ 2.901743] agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0xe0000000
[ 2.901995] [drm] Initialized drm 1.1.0 20060810
[ 2.904212] [drm] Memory usable by graphics device = 2048M
[ 2.904295] [drm] Replacing VGA console driver
[ 2.904961] Console: switching to colour dummy device 80x25
[ 2.937950] i915 0000:00:02.0: irq 24 for MSI/MSI-X
[ 2.937962] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 2.937965] [drm] Driver supports precise vblank timestamp query.
[ 2.938310] vgaarb: device changed decodes: PCI:0000:00:02.0,olddecodes=io+mem,decodes=io+mem:owns=io+mem
[ 3.030687] fbcon: inteldrmfb (fb0) is primary device
[ 3.494467] tsc: Refined TSC clocksource calibration: 2792.999 MHz
[ 4.176644] [drm:intel_dp_start_link_train] *ERROR* too many full retries, give up
[ 4.495814] Switched to clocksource tsc
[ 4.529922] Console: switching to colour frame buffer device 240x67
[ 4.536702] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[ 4.536769] i915 0000:00:02.0: registered panic notifier
[ 4.548333] ACPI: Video Device [VID2] (multi-head: yes rom: no post: no)
[ 4.900233] acpi device:45: registered as cooling_device0
[ 4.924178] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:02/input/input4
[ 4.924371] [drm] Initialized i915 1.6.0 20140725 for 0000:00:02.0 on minor 0
Btw. do you know what
[drm:intel_dp_start_link_train] *ERROR* too many full retries, give up
is about?
Regards,
Oliver
> ---
> drivers/gpu/drm/i915/i915_irq.c | 18 ++++++++++++------
> 1 files changed, 12 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
> index d5445e7..ec1d9fe 100644
> --- a/drivers/gpu/drm/i915/i915_irq.c
> +++ b/drivers/gpu/drm/i915/i915_irq.c
> @@ -132,6 +132,16 @@ static const u32 hpd_status_i915[] = { /* i915 and valleyview are the same */
>
> /* For display hotplug interrupt */
> static void
> +ironlake_enable_display_irq_nowarn(struct drm_i915_private *dev_priv, u32 mask)
> +{
> + if ((dev_priv->irq_mask & mask) != 0) {
> + dev_priv->irq_mask &= ~mask;
> + I915_WRITE(DEIMR, dev_priv->irq_mask);
> + POSTING_READ(DEIMR);
> + }
> +}
> +
> +static void
> ironlake_enable_display_irq(struct drm_i915_private *dev_priv, u32 mask)
> {
> assert_spin_locked(&dev_priv->irq_lock);
> @@ -139,11 +149,7 @@ ironlake_enable_display_irq(struct drm_i915_private *dev_priv, u32 mask)
> if (WARN_ON(!intel_irqs_enabled(dev_priv)))
> return;
>
> - if ((dev_priv->irq_mask & mask) != 0) {
> - dev_priv->irq_mask &= ~mask;
> - I915_WRITE(DEIMR, dev_priv->irq_mask);
> - POSTING_READ(DEIMR);
> - }
> + ironlake_enable_display_irq_nowarn(dev_priv, mask);
> }
>
> static void
> @@ -3665,7 +3671,7 @@ static int ironlake_irq_postinstall(struct drm_device *dev)
> * setup is guaranteed to run in single-threaded context. But we
> * need it to make the assert_spin_locked happy. */
> spin_lock_irqsave(&dev_priv->irq_lock, irqflags);
> - ironlake_enable_display_irq(dev_priv, DE_PCU_EVENT);
> + ironlake_enable_display_irq_nowarn(dev_priv, DE_PCU_EVENT);
> spin_unlock_irqrestore(&dev_priv->irq_lock, irqflags);
> }
>
>
next prev parent reply other threads:[~2014-08-26 5:26 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-25 23:24 [PATCH] drm/i915/ilk: special case enabling of PCU_EVENT interrupt Jesse Barnes
2014-08-26 5:26 ` Oliver Hartkopp [this message]
2014-08-26 7:23 ` Daniel Vetter
2014-08-26 18:52 ` Jesse Barnes
2014-08-26 19:03 ` Oliver Hartkopp
2014-08-26 19:10 ` Jesse Barnes
2014-08-26 20:51 ` Daniel Vetter
2014-08-26 21:18 ` Jesse Barnes
2014-08-26 21:33 ` Daniel Vetter
2014-08-27 6:30 ` Oliver Hartkopp
2014-08-27 19:59 ` Jesse Barnes
2014-08-27 21:33 ` Daniel Vetter
2014-08-27 21:36 ` Jesse Barnes
2014-08-29 7:08 ` Sun, Yi
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=53FC1A7B.8010700@hartkopp.net \
--to=socketcan@hartkopp.net \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jbarnes@virtuousgeek.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.