1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef PM_TRACE_H 3 #define PM_TRACE_H 4 5 #include <linux/types.h> 6 #ifdef CONFIG_PM_TRACE 7 #include <asm/pm-trace.h> 8 9 extern int pm_trace_enabled; 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 } 16 17 static inline int pm_trace_is_enabled(void) 18 { 19 return pm_trace_enabled; 20 } 21 22 struct device; 23 extern void set_trace_device(struct device *); 24 extern void generate_pm_trace(const void *tracedata, unsigned int user); 25 extern int show_trace_dev_match(char *buf, size_t size); 26 27 #define TRACE_DEVICE(dev) do { \ 28 if (pm_trace_enabled) \ 29 set_trace_device(dev); \ 30 } while(0) 31 32 #else 33 34 static inline bool pm_trace_rtc_valid(void) { return true; } 35 static inline int pm_trace_is_enabled(void) { return 0; } 36 37 #define TRACE_DEVICE(dev) do { } while (0) 38 #define TRACE_RESUME(dev) do { } while (0) 39 #define TRACE_SUSPEND(dev) do { } while (0) 40 41 #endif 42 43 #endif 44
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.