18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci#ifndef _ASM_NMI_H 38c2ecf20Sopenharmony_ci#define _ASM_NMI_H 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci#ifdef CONFIG_PPC_WATCHDOG 68c2ecf20Sopenharmony_ciextern void arch_touch_nmi_watchdog(void); 78c2ecf20Sopenharmony_ci#else 88c2ecf20Sopenharmony_cistatic inline void arch_touch_nmi_watchdog(void) {} 98c2ecf20Sopenharmony_ci#endif 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci#if defined(CONFIG_NMI_IPI) && defined(CONFIG_STACKTRACE) 128c2ecf20Sopenharmony_ciextern void arch_trigger_cpumask_backtrace(const cpumask_t *mask, 138c2ecf20Sopenharmony_ci bool exclude_self); 148c2ecf20Sopenharmony_ci#define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace 158c2ecf20Sopenharmony_ci#endif 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ciextern void hv_nmi_check_nonrecoverable(struct pt_regs *regs); 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci#endif /* _ASM_NMI_H */ 20