aboutsummaryrefslogtreecommitdiff
path: root/drivers/gpu/host1x/debug.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2022-05-13 12:42:23 +1000
committerDave Airlie <airlied@redhat.com>2022-05-13 13:14:34 +1000
commit5756c29bfa816dfde24e0719002d225ab96a0cd6 (patch)
treea88c0cf1398bfd590ecd72730607f1fa35eaae5a /drivers/gpu/host1x/debug.c
parentf83493f7d34da258310ecd3d07f0cc78f884c954 (diff)
parentcb7e1abc2c73633e1eefa168ab2dad6e838899c9 (diff)
Merge tag 'drm/tegra/for-5.19-rc1' of https://gitlab.freedesktop.org/drm/tegra into drm-next
drm/tegra: Changes for v5.19-rc1 Only a few fixes this time, and some debuggability improvements. Signed-off-by: Dave Airlie <airlied@redhat.com> From: Thierry Reding <thierry.reding@gmail.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220506164004.3922226-1-thierry.reding@gmail.com
Diffstat (limited to 'drivers/gpu/host1x/debug.c')
-rw-r--r--drivers/gpu/host1x/debug.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/gpu/host1x/debug.c b/drivers/gpu/host1x/debug.c
index 18d9c8d206e3..34c2e36d09e9 100644
--- a/drivers/gpu/host1x/debug.c
+++ b/drivers/gpu/host1x/debug.c
@@ -75,7 +75,7 @@ static int show_channel(struct host1x_channel *ch, void *data, bool show_fifo)
return 0;
}
-static void show_syncpts(struct host1x *m, struct output *o)
+static void show_syncpts(struct host1x *m, struct output *o, bool show_all)
{
struct list_head *pos;
unsigned int i;
@@ -97,7 +97,10 @@ static void show_syncpts(struct host1x *m, struct output *o)
waiters++;
spin_unlock(&m->syncpt[i].intr.lock);
- if (!min && !max && !waiters)
+ if (!kref_read(&m->syncpt[i].ref))
+ continue;
+
+ if (!show_all && !min && !max && !waiters)
continue;
host1x_debug_output(o,
@@ -124,7 +127,7 @@ static void show_all(struct host1x *m, struct output *o, bool show_fifo)
unsigned int i;
host1x_hw_show_mlocks(m, o);
- show_syncpts(m, o);
+ show_syncpts(m, o, true);
host1x_debug_output(o, "---- channels ----\n");
for (i = 0; i < m->info->nb_channels; ++i) {
@@ -241,5 +244,5 @@ void host1x_debug_dump_syncpts(struct host1x *host1x)
.fn = write_to_printk
};
- show_syncpts(host1x, &o);
+ show_syncpts(host1x, &o, false);
}