xref: /openbmc/linux/arch/powerpc/include/asm/nmi.h (revision df95d308)
1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
2c54b2bf1SAnton Blanchard #ifndef _ASM_NMI_H
3c54b2bf1SAnton Blanchard #define _ASM_NMI_H
4c54b2bf1SAnton Blanchard 
570412c55SNicholas Piggin #ifdef CONFIG_PPC_WATCHDOG
62104180aSNicholas Piggin extern void arch_touch_nmi_watchdog(void);
73a96570fSNicholas Piggin long soft_nmi_interrupt(struct pt_regs *regs);
8*df95d308SDouglas Anderson void watchdog_hardlockup_set_timeout_pct(u64 pct);
92104180aSNicholas Piggin #else
102104180aSNicholas Piggin static inline void arch_touch_nmi_watchdog(void) {}
11*df95d308SDouglas Anderson static inline void watchdog_hardlockup_set_timeout_pct(u64 pct) {}
122104180aSNicholas Piggin #endif
132104180aSNicholas Piggin 
1448015b63SMichael Ellerman #ifdef CONFIG_NMI_IPI
155cc05910SMichael Ellerman extern void arch_trigger_cpumask_backtrace(const cpumask_t *mask,
165cc05910SMichael Ellerman 					   bool exclude_self);
175cc05910SMichael Ellerman #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace
185cc05910SMichael Ellerman #endif
195cc05910SMichael Ellerman 
20ccd47702SNicholas Piggin extern void hv_nmi_check_nonrecoverable(struct pt_regs *regs);
21ccd47702SNicholas Piggin 
22c54b2bf1SAnton Blanchard #endif /* _ASM_NMI_H */
23