blob: 800ffce0db29e3d768f215aaf2e2f1dd31bf021f [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Frederic Weisbecker30102792014-08-16 18:47:15 +02002#ifndef _ASM_IRQ_WORK_H
3#define _ASM_IRQ_WORK_H
4
Borislav Petkovcd4d09e2016-01-26 22:12:04 +01005#include <asm/cpufeature.h>
Frederic Weisbecker30102792014-08-16 18:47:15 +02006
Thomas Gleixnera45525b2017-08-28 08:47:35 +02007#ifdef CONFIG_X86_LOCAL_APIC
Frederic Weisbecker30102792014-08-16 18:47:15 +02008static inline bool arch_irq_work_has_interrupt(void)
9{
Borislav Petkov93984fb2016-04-04 22:25:00 +020010 return boot_cpu_has(X86_FEATURE_APIC);
Frederic Weisbecker30102792014-08-16 18:47:15 +020011}
Thomas Gleixnera45525b2017-08-28 08:47:35 +020012extern void arch_irq_work_raise(void);
13#else
14static inline bool arch_irq_work_has_interrupt(void)
15{
16 return false;
17}
18#endif
Frederic Weisbecker30102792014-08-16 18:47:15 +020019
20#endif /* _ASM_IRQ_WORK_H */