From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Jani Nikula <jani.nikula@linux.intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 6/7] drm/i915: Enable pipeDMC fault interrupts on tgl+
Date: Thu, 6 Jun 2024 15:56:08 +0300 [thread overview]
Message-ID: <ZmGx6IsRDZSSdI8n@intel.com> (raw)
In-Reply-To: <87tti69u0f.fsf@intel.com>
On Thu, Jun 06, 2024 at 02:43:12PM +0300, Jani Nikula wrote:
> On Wed, 05 Jun 2024, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> >
> > PipeDMC has its own fault interrupt. Enable that so that
> > we can know if things are failing.
> >
> > While at it, define the other pipeDMC interrupt as well, even
> > though we're not currently using it.
> >
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > ---
> > drivers/gpu/drm/i915/display/intel_display_irq.c | 15 +++++++++++++--
> > drivers/gpu/drm/i915/i915_reg.h | 2 ++
> > 2 files changed, 15 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_display_irq.c b/drivers/gpu/drm/i915/display/intel_display_irq.c
> > index 219f7693207d..6eb14ffc3c1b 100644
> > --- a/drivers/gpu/drm/i915/display/intel_display_irq.c
> > +++ b/drivers/gpu/drm/i915/display/intel_display_irq.c
> > @@ -836,13 +836,24 @@ static u32 gen8_de_port_aux_mask(struct drm_i915_private *dev_priv)
> > static u32 gen8_de_pipe_fault_mask(struct drm_i915_private *dev_priv)
> > {
> > if (DISPLAY_VER(dev_priv) >= 13 || HAS_D12_PLANE_MINIMIZATION(dev_priv))
> > - return GEN9_PIPE_CURSOR_FAULT |
> > + return GEN12_PIPEDMC_FAULT |
> > + GEN9_PIPE_CURSOR_FAULT |
> > GEN11_PIPE_PLANE5_FAULT |
> > GEN9_PIPE_PLANE4_FAULT |
> > GEN9_PIPE_PLANE3_FAULT |
> > GEN9_PIPE_PLANE2_FAULT |
> > GEN9_PIPE_PLANE1_FAULT;
> > - else if (DISPLAY_VER(dev_priv) >= 11)
> > + else if (DISPLAY_VER(dev_priv) == 12)
> > + return GEN12_PIPEDMC_FAULT |
> > + GEN9_PIPE_CURSOR_FAULT |
> > + GEN11_PIPE_PLANE7_FAULT |
> > + GEN11_PIPE_PLANE6_FAULT |
> > + GEN11_PIPE_PLANE5_FAULT |
> > + GEN9_PIPE_PLANE4_FAULT |
> > + GEN9_PIPE_PLANE3_FAULT |
> > + GEN9_PIPE_PLANE2_FAULT |
> > + GEN9_PIPE_PLANE1_FAULT;
> > + else if (DISPLAY_VER(dev_priv) == 11)
> > return GEN9_PIPE_CURSOR_FAULT |
> > GEN11_PIPE_PLANE7_FAULT |
> > GEN11_PIPE_PLANE6_FAULT |
> > diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> > index b85e12bb4781..8cd5abc52a2d 100644
> > --- a/drivers/gpu/drm/i915/i915_reg.h
> > +++ b/drivers/gpu/drm/i915/i915_reg.h
> > @@ -2625,6 +2625,8 @@
> > #define GEN8_PIPE_FIFO_UNDERRUN REG_BIT(31)
> > #define GEN8_PIPE_CDCLK_CRC_ERROR REG_BIT(29)
> > #define GEN8_PIPE_CDCLK_CRC_DONE REG_BIT(28)
> > +#define GEN12_PIPEDMC_INTERRUPT REG_BIT(26) /* tgl+ */
> > +#define GEN12_PIPEDMC_FAULT REG_BIT(25) /* tgl+ */
>
> Marked as pipedmc gtt fault in the spec.
I did ponder about adding _GTT to all the fault bits, but it looks
like at least the plane fault bits are supposed to be set for both
GTT and ATS faults (despite still being named foo_gtt_fault in the
spec). It's not clear whether that same behaviour should hold for
other hardware units as well. So I decided to stick with the current
"no _GTT in the name" for all the non-ATS fault bits.
>
> There's also pipe dmc error at bit 17... but the description says
> "simple flp queue done interrupt"... *sigh*
Yeah, that'll need more digging at some point.
--
Ville Syrjälä
Intel
next prev parent reply other threads:[~2024-06-06 12:56 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-05 11:18 [PATCH 0/7] drm/i915: bdw+ pipe interrupt stuff Ville Syrjala
2024-06-05 11:18 ` [PATCH 1/7] drm/i915: Use REG_BIT() for bdw+ pipe interrupts Ville Syrjala
2024-06-05 11:18 ` [PATCH 2/7] drm/i915: Document bdw+ pipe interrupt bits Ville Syrjala
2024-06-05 11:18 ` [PATCH 3/7] drm/i915: Sort " Ville Syrjala
2024-06-05 11:18 ` [PATCH 4/7] drm/i915: Extend GEN9_PIPE_PLANE_FLIP_DONE() to cover all universal planes Ville Syrjala
2024-06-06 11:31 ` Jani Nikula
2024-06-05 11:18 ` [PATCH 5/7] drm/i915: Nuke the intermediate pipe fault bitmasks Ville Syrjala
2024-06-05 11:18 ` [PATCH 6/7] drm/i915: Enable pipeDMC fault interrupts on tgl+ Ville Syrjala
2024-06-06 11:43 ` Jani Nikula
2024-06-06 12:56 ` Ville Syrjälä [this message]
2024-06-05 11:18 ` [PATCH 7/7] drm/i915: Enable plane/pipeDMC ATS fault interrupts on mtl Ville Syrjala
2024-06-05 14:09 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: bdw+ pipe interrupt stuff Patchwork
2024-06-05 14:18 ` ✓ Fi.CI.BAT: success " Patchwork
2024-06-05 18:41 ` ✗ Fi.CI.IGT: failure " Patchwork
2024-06-06 11:44 ` [PATCH 0/7] " Jani Nikula
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=ZmGx6IsRDZSSdI8n@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jani.nikula@linux.intel.com \
/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;
as well as URLs for NNTP newsgroup(s).