diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-06-18 04:30:22 -0400 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-06-23 18:22:35 -0400 |
commit | 9a851789e8a0cf38f9c04705a8e01b572e61f05f (patch) | |
tree | 5ed0d177d98de0fa93f889d84341ffb396516b50 | |
parent | 27e78a2a1f92e79707b4fb18cff1276088ef9178 (diff) |
drm/i915: debugfs for frontbuffer tracking
Useful to figure out whether stuck bits are due to the frontbuffer
tracking code as opposed to individual consumers (who have their own
bitmask tracking).
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
-rw-r--r-- | drivers/gpu/drm/i915/i915_debugfs.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c index 35a5defe7e29..495a6376cf39 100644 --- a/drivers/gpu/drm/i915/i915_debugfs.c +++ b/drivers/gpu/drm/i915/i915_debugfs.c | |||
@@ -1581,6 +1581,21 @@ static int i915_drpc_info(struct seq_file *m, void *unused) | |||
1581 | return ironlake_drpc_info(m); | 1581 | return ironlake_drpc_info(m); |
1582 | } | 1582 | } |
1583 | 1583 | ||
1584 | static int i915_frontbuffer_tracking(struct seq_file *m, void *unused) | ||
1585 | { | ||
1586 | struct drm_info_node *node = m->private; | ||
1587 | struct drm_device *dev = node->minor->dev; | ||
1588 | struct drm_i915_private *dev_priv = dev->dev_private; | ||
1589 | |||
1590 | seq_printf(m, "FB tracking busy bits: 0x%08x\n", | ||
1591 | dev_priv->fb_tracking.busy_bits); | ||
1592 | |||
1593 | seq_printf(m, "FB tracking flip bits: 0x%08x\n", | ||
1594 | dev_priv->fb_tracking.flip_bits); | ||
1595 | |||
1596 | return 0; | ||
1597 | } | ||
1598 | |||
1584 | static int i915_fbc_status(struct seq_file *m, void *unused) | 1599 | static int i915_fbc_status(struct seq_file *m, void *unused) |
1585 | { | 1600 | { |
1586 | struct drm_info_node *node = m->private; | 1601 | struct drm_info_node *node = m->private; |
@@ -5021,6 +5036,7 @@ static const struct drm_info_list i915_debugfs_list[] = { | |||
5021 | {"i915_drpc_info", i915_drpc_info, 0}, | 5036 | {"i915_drpc_info", i915_drpc_info, 0}, |
5022 | {"i915_emon_status", i915_emon_status, 0}, | 5037 | {"i915_emon_status", i915_emon_status, 0}, |
5023 | {"i915_ring_freq_table", i915_ring_freq_table, 0}, | 5038 | {"i915_ring_freq_table", i915_ring_freq_table, 0}, |
5039 | {"i915_frontbuffer_tracking", i915_frontbuffer_tracking, 0}, | ||
5024 | {"i915_fbc_status", i915_fbc_status, 0}, | 5040 | {"i915_fbc_status", i915_fbc_status, 0}, |
5025 | {"i915_ips_status", i915_ips_status, 0}, | 5041 | {"i915_ips_status", i915_ips_status, 0}, |
5026 | {"i915_sr_status", i915_sr_status, 0}, | 5042 | {"i915_sr_status", i915_sr_status, 0}, |