Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
431d452a ZF |
2 | #ifndef PM_TRACE_H |
3 | #define PM_TRACE_H | |
eb71c87a | 4 | |
ba58d102 | 5 | #include <linux/types.h> |
eb71c87a | 6 | #ifdef CONFIG_PM_TRACE |
431d452a | 7 | #include <asm/pm-trace.h> |
eb71c87a | 8 | |
c5c6ba4e | 9 | extern int pm_trace_enabled; |
ba58d102 CY |
10 | extern bool pm_trace_rtc_abused; |
11 | ||
12 | static inline bool pm_trace_rtc_valid(void) | |
13 | { | |
14 | return !pm_trace_rtc_abused; | |
15 | } | |
c5c6ba4e | 16 | |
5af84b82 RW |
17 | static inline int pm_trace_is_enabled(void) |
18 | { | |
19 | return pm_trace_enabled; | |
20 | } | |
21 | ||
eb71c87a LT |
22 | struct device; |
23 | extern void set_trace_device(struct device *); | |
431d452a | 24 | extern void generate_pm_trace(const void *tracedata, unsigned int user); |
d33ac60b | 25 | extern int show_trace_dev_match(char *buf, size_t size); |
eb71c87a | 26 | |
44bf4cea NC |
27 | #define TRACE_DEVICE(dev) do { \ |
28 | if (pm_trace_enabled) \ | |
29 | set_trace_device(dev); \ | |
30 | } while(0) | |
eb71c87a LT |
31 | |
32 | #else | |
33 | ||
ba58d102 | 34 | static inline bool pm_trace_rtc_valid(void) { return true; } |
5af84b82 RW |
35 | static inline int pm_trace_is_enabled(void) { return 0; } |
36 | ||
eb71c87a LT |
37 | #define TRACE_DEVICE(dev) do { } while (0) |
38 | #define TRACE_RESUME(dev) do { } while (0) | |
431d452a | 39 | #define TRACE_SUSPEND(dev) do { } while (0) |
eb71c87a LT |
40 | |
41 | #endif | |
42 | ||
43 | #endif |