cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

debug.h (1078B)


      1/* SPDX-License-Identifier: GPL-2.0-only */
      2/*
      3 * Tegra host1x Debug
      4 *
      5 * Copyright (c) 2011-2013 NVIDIA Corporation.
      6 */
      7#ifndef __HOST1X_DEBUG_H
      8#define __HOST1X_DEBUG_H
      9
     10#include <linux/debugfs.h>
     11#include <linux/seq_file.h>
     12
     13struct host1x;
     14
     15struct output {
     16	void (*fn)(void *ctx, const char *str, size_t len, bool cont);
     17	void *ctx;
     18	char buf[256];
     19};
     20
     21static inline void write_to_seqfile(void *ctx, const char *str, size_t len,
     22				    bool cont)
     23{
     24	seq_write((struct seq_file *)ctx, str, len);
     25}
     26
     27static inline void write_to_printk(void *ctx, const char *str, size_t len,
     28				   bool cont)
     29{
     30	if (cont)
     31		pr_cont("%s", str);
     32	else
     33		pr_info("%s", str);
     34}
     35
     36void __printf(2, 3) host1x_debug_output(struct output *o, const char *fmt, ...);
     37void __printf(2, 3) host1x_debug_cont(struct output *o, const char *fmt, ...);
     38
     39extern unsigned int host1x_debug_trace_cmdbuf;
     40
     41void host1x_debug_init(struct host1x *host1x);
     42void host1x_debug_deinit(struct host1x *host1x);
     43void host1x_debug_dump(struct host1x *host1x);
     44void host1x_debug_dump_syncpts(struct host1x *host1x);
     45
     46#endif