aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/host1x/debug.h
diff options
context:
space:
mode:
authorMikko Perttunen <mperttunen@nvidia.com>2017-09-28 15:50:41 +0300
committerThierry Reding <treding@nvidia.com>2017-10-20 14:19:52 +0200
commiteb2ee1a28db17155bcee4630e36ea1759b7e10dc (patch)
tree63942452c69d2a896ca682cfe623ff9c963523b0 /drivers/gpu/host1x/debug.h
parentgpu: host1x: Enable gather filter (diff)
downloadlinux-dev-eb2ee1a28db17155bcee4630e36ea1759b7e10dc.tar.xz
linux-dev-eb2ee1a28db17155bcee4630e36ea1759b7e10dc.zip
gpu: host1x: Improve debug disassembly formatting
The host1x driver prints out "disassembly" dumps of the command FIFO and gather contents on submission timeouts. However, the output has been quite difficult to read with unnecessary newlines and occasional missing parentheses. Fix these problems by using pr_cont to remove unnecessary newlines and by fixing other small issues. Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com> Reviewed-by: Dmitry Osipenko <digetx@gmail.com> Tested-by: Dmitry Osipenko <digetx@gmail.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'drivers/gpu/host1x/debug.h')
-rw-r--r--drivers/gpu/host1x/debug.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/drivers/gpu/host1x/debug.h b/drivers/gpu/host1x/debug.h
index 4595b2e0799f..990cce47e737 100644
--- a/drivers/gpu/host1x/debug.h
+++ b/drivers/gpu/host1x/debug.h
@@ -24,22 +24,28 @@
struct host1x;
struct output {
- void (*fn)(void *ctx, const char *str, size_t len);
+ void (*fn)(void *ctx, const char *str, size_t len, bool cont);
void *ctx;
char buf[256];
};
-static inline void write_to_seqfile(void *ctx, const char *str, size_t len)
+static inline void write_to_seqfile(void *ctx, const char *str, size_t len,
+ bool cont)
{
seq_write((struct seq_file *)ctx, str, len);
}
-static inline void write_to_printk(void *ctx, const char *str, size_t len)
+static inline void write_to_printk(void *ctx, const char *str, size_t len,
+ bool cont)
{
- pr_info("%s", str);
+ if (cont)
+ pr_cont("%s", str);
+ else
+ pr_info("%s", str);
}
void __printf(2, 3) host1x_debug_output(struct output *o, const char *fmt, ...);
+void __printf(2, 3) host1x_debug_cont(struct output *o, const char *fmt, ...);
extern unsigned int host1x_debug_trace_cmdbuf;