1 /* SPDX-License-Identifier: GPL-2.0 */
2 // Copyright (C) 2005-2017 Andes Technology Corporation
5 #include <nds32_intrinsic.h>
7 #define arch_local_irq_disable() \
10 #define arch_local_irq_enable() \
12 static inline unsigned long arch_local_irq_save(void)
15 flags = __nds32__mfsr(NDS32_SR_PSW) & PSW_mskGIE;
20 static inline unsigned long arch_local_save_flags(void)
23 flags = __nds32__mfsr(NDS32_SR_PSW) & PSW_mskGIE;
27 static inline void arch_local_irq_restore(unsigned long flags)
33 static inline int arch_irqs_disabled_flags(unsigned long flags)
38 static inline int arch_irqs_disabled(void)
40 return arch_irqs_disabled_flags(arch_local_save_flags());