Branch data Line data Source code
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 : 84 : static inline bool pm_trace_rtc_valid(void) 13 : : { 14 [ - - - - : 84 : return !pm_trace_rtc_abused; - - + - ] 15 : : } 16 : : 17 : 0 : static inline int pm_trace_is_enabled(void) 18 : : { 19 [ # # # # : 0 : 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