root/arch/nds32/include/asm/irqflags.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. arch_local_irq_save
  2. arch_local_save_flags
  3. arch_local_irq_restore
  4. arch_irqs_disabled_flags

   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 // Copyright (C) 2005-2017 Andes Technology Corporation
   3 
   4 #include <asm/nds32.h>
   5 #include <nds32_intrinsic.h>
   6 
   7 #define arch_local_irq_disable()        \
   8         GIE_DISABLE();
   9 
  10 #define arch_local_irq_enable() \
  11         GIE_ENABLE();
  12 static inline unsigned long arch_local_irq_save(void)
  13 {
  14         unsigned long flags;
  15         flags = __nds32__mfsr(NDS32_SR_PSW) & PSW_mskGIE;
  16         GIE_DISABLE();
  17         return flags;
  18 }
  19 
  20 static inline unsigned long arch_local_save_flags(void)
  21 {
  22         unsigned long flags;
  23         flags = __nds32__mfsr(NDS32_SR_PSW) & PSW_mskGIE;
  24         return flags;
  25 }
  26 
  27 static inline void arch_local_irq_restore(unsigned long flags)
  28 {
  29         if(flags)
  30                 GIE_ENABLE();
  31 }
  32 
  33 static inline int arch_irqs_disabled_flags(unsigned long flags)
  34 {
  35         return !flags;
  36 }

/* [<][>][^][v][top][bottom][index][help] */