xref: /openbmc/linux/include/linux/pm-trace.h (revision 9cfc5c90)
1 #ifndef PM_TRACE_H
2 #define PM_TRACE_H
3 
4 #ifdef CONFIG_PM_TRACE
5 #include <asm/pm-trace.h>
6 #include <linux/types.h>
7 
8 extern int pm_trace_enabled;
9 
10 static inline int pm_trace_is_enabled(void)
11 {
12        return pm_trace_enabled;
13 }
14 
15 struct device;
16 extern void set_trace_device(struct device *);
17 extern void generate_pm_trace(const void *tracedata, unsigned int user);
18 extern int show_trace_dev_match(char *buf, size_t size);
19 
20 #define TRACE_DEVICE(dev) do { \
21 	if (pm_trace_enabled) \
22 		set_trace_device(dev); \
23 	} while(0)
24 
25 #else
26 
27 static inline int pm_trace_is_enabled(void) { return 0; }
28 
29 #define TRACE_DEVICE(dev) do { } while (0)
30 #define TRACE_RESUME(dev) do { } while (0)
31 #define TRACE_SUSPEND(dev) do { } while (0)
32 
33 #endif
34 
35 #endif
36