16f0e6c15SFrederic Weisbecker /* SPDX-License-Identifier: GPL-2.0 */
26f0e6c15SFrederic Weisbecker #ifndef _LINUX_CONTEXT_TRACKING_IRQ_H
36f0e6c15SFrederic Weisbecker #define _LINUX_CONTEXT_TRACKING_IRQ_H
46f0e6c15SFrederic Weisbecker 
56f0e6c15SFrederic Weisbecker #ifdef CONFIG_CONTEXT_TRACKING_IDLE
66f0e6c15SFrederic Weisbecker void ct_irq_enter(void);
76f0e6c15SFrederic Weisbecker void ct_irq_exit(void);
86f0e6c15SFrederic Weisbecker void ct_irq_enter_irqson(void);
96f0e6c15SFrederic Weisbecker void ct_irq_exit_irqson(void);
10*493c1822SFrederic Weisbecker void ct_nmi_enter(void);
11*493c1822SFrederic Weisbecker void ct_nmi_exit(void);
126f0e6c15SFrederic Weisbecker #else
ct_irq_enter(void)136f0e6c15SFrederic Weisbecker static inline void ct_irq_enter(void) { }
ct_irq_exit(void)146f0e6c15SFrederic Weisbecker static inline void ct_irq_exit(void) { }
ct_irq_enter_irqson(void)156f0e6c15SFrederic Weisbecker static inline void ct_irq_enter_irqson(void) { }
ct_irq_exit_irqson(void)166f0e6c15SFrederic Weisbecker static inline void ct_irq_exit_irqson(void) { }
ct_nmi_enter(void)17*493c1822SFrederic Weisbecker static inline void ct_nmi_enter(void) { }
ct_nmi_exit(void)18*493c1822SFrederic Weisbecker static inline void ct_nmi_exit(void) { }
196f0e6c15SFrederic Weisbecker #endif
206f0e6c15SFrederic Weisbecker 
216f0e6c15SFrederic Weisbecker #endif
22