From: Deepak S <deepak.s@linux.intel.com>
To: Chris Wilson <chris@chris-wilson.co.uk>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/i915: Add PM interrupt details and RPS thresholds to debugfs
Date: Thu, 27 Mar 2014 20:26:40 +0530 [thread overview]
Message-ID: <53343C28.5000103@linux.intel.com> (raw)
In-Reply-To: <1395911174-8563-1-git-send-email-chris@chris-wilson.co.uk>
On Thursday 27 March 2014 02:36 PM, Chris Wilson wrote:
> When trying to determine whether RPS is working as intended, more
> information is better. In particular, what interrupts are being
> generated and the various thresholds for generating them.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> ---
> drivers/gpu/drm/i915/i915_debugfs.c | 16 +++++++++++++++-
> 1 file changed, 15 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
> index e0c991122dd2..4a2bcadadaf8 100644
> --- a/drivers/gpu/drm/i915/i915_debugfs.c
> +++ b/drivers/gpu/drm/i915/i915_debugfs.c
> @@ -1095,6 +1095,7 @@ static int i915_cur_delayinfo(struct seq_file *m, void *unused)
> u32 gt_perf_status = I915_READ(GEN6_GT_PERF_STATUS);
> u32 rp_state_limits = I915_READ(GEN6_RP_STATE_LIMITS);
> u32 rp_state_cap = I915_READ(GEN6_RP_STATE_CAP);
> + u32 rpmodectl, rpinclimit, rpdeclimit;
> u32 rpstat, cagf, reqf;
> u32 rpupei, rpcurup, rpprevup;
> u32 rpdownei, rpcurdown, rpprevdown;
> @@ -1115,6 +1116,10 @@ static int i915_cur_delayinfo(struct seq_file *m, void *unused)
> reqf >>= 25;
> reqf *= GT_FREQUENCY_MULTIPLIER;
>
> + rpmodectl = I915_READ(GEN6_RP_CONTROL);
> + rpinclimit = I915_READ(GEN6_RP_UP_THRESHOLD);
> + rpdeclimit = I915_READ(GEN6_RP_DOWN_THRESHOLD);
> +
> rpstat = I915_READ(GEN6_RPSTAT1);
> rpupei = I915_READ(GEN6_RP_CUR_UP_EI);
> rpcurup = I915_READ(GEN6_RP_CUR_UP);
> @@ -1131,14 +1136,23 @@ static int i915_cur_delayinfo(struct seq_file *m, void *unused)
> gen6_gt_force_wake_put(dev_priv, FORCEWAKE_ALL);
> mutex_unlock(&dev->struct_mutex);
>
> + seq_printf(m, "PM IER=0x%08x IMR=0x%08x ISR=0x%08x IIR=0x%08x, MASK=0x%08x\n",
> + I915_READ(GEN6_PMIER),
> + I915_READ(GEN6_PMIMR),
> + I915_READ(GEN6_PMISR),
> + I915_READ(GEN6_PMIIR),
> + I915_READ(GEN6_PMINTRMSK));
> seq_printf(m, "GT_PERF_STATUS: 0x%08x\n", gt_perf_status);
> - seq_printf(m, "RPSTAT1: 0x%08x\n", rpstat);
> seq_printf(m, "Render p-state ratio: %d\n",
> (gt_perf_status & 0xff00) >> 8);
> seq_printf(m, "Render p-state VID: %d\n",
> gt_perf_status & 0xff);
> seq_printf(m, "Render p-state limit: %d\n",
> rp_state_limits & 0xff);
> + seq_printf(m, "RPSTAT1: 0x%08x\n", rpstat);
> + seq_printf(m, "RPMODECTL: 0x%08x\n", rpmodectl);
> + seq_printf(m, "RPINCLIMIT: 0x%08x\n", rpinclimit);
> + seq_printf(m, "RPDECLIMIT: 0x%08x\n", rpdeclimit);
> seq_printf(m, "RPNSWREQ: %dMHz\n", reqf);
> seq_printf(m, "CAGF: %dMHz\n", cagf);
> seq_printf(m, "RP CUR UP EI: %dus\n", rpupei &
Agreed more information better for debugging :)
Reviewed-by: Deepak S <deepak.s@linux.intel.com>
prev parent reply other threads:[~2014-03-27 14:56 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-27 9:06 [PATCH] drm/i915: Add PM interrupt details and RPS thresholds to debugfs Chris Wilson
2014-03-27 13:54 ` Daniel Vetter
2014-03-27 14:56 ` Deepak S [this message]
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=53343C28.5000103@linux.intel.com \
--to=deepak.s@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.