1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef __UM_IRQFLAGS_H 3#define __UM_IRQFLAGS_H 4 5extern int get_signals(void); 6extern int set_signals(int enable); 7extern void block_signals(void); 8extern void unblock_signals(void); 9 10#define arch_local_save_flags arch_local_save_flags 11static inline unsigned long arch_local_save_flags(void) 12{ 13 return get_signals(); 14} 15 16#define arch_local_irq_restore arch_local_irq_restore 17static inline void arch_local_irq_restore(unsigned long flags) 18{ 19 set_signals(flags); 20} 21 22#define arch_local_irq_enable arch_local_irq_enable 23static inline void arch_local_irq_enable(void) 24{ 25 unblock_signals(); 26} 27 28#define arch_local_irq_disable arch_local_irq_disable 29static inline void arch_local_irq_disable(void) 30{ 31 block_signals(); 32} 33 34#define ARCH_IRQ_DISABLED 0 35#define ARCh_IRQ_ENABLED (SIGIO|SIGVTALRM) 36 37#include <asm-generic/irqflags.h> 38 39#endif 40