irqflags.h 710 B

12345678910111213141516171819202122232425262728293031323334
  1. #ifndef __ASM_SH_IRQFLAGS_H
  2. #define __ASM_SH_IRQFLAGS_H
  3. #ifdef CONFIG_SUPERH32
  4. #include "irqflags_32.h"
  5. #else
  6. #include "irqflags_64.h"
  7. #endif
  8. #define raw_local_save_flags(flags) \
  9. do { (flags) = __raw_local_save_flags(); } while (0)
  10. static inline int raw_irqs_disabled_flags(unsigned long flags)
  11. {
  12. return (flags != 0);
  13. }
  14. static inline int raw_irqs_disabled(void)
  15. {
  16. unsigned long flags = __raw_local_save_flags();
  17. return raw_irqs_disabled_flags(flags);
  18. }
  19. #define raw_local_irq_save(flags) \
  20. do { (flags) = __raw_local_irq_save(); } while (0)
  21. static inline void raw_local_irq_restore(unsigned long flags)
  22. {
  23. if ((flags & 0xf0) != 0xf0)
  24. raw_local_irq_enable();
  25. }
  26. #endif /* __ASM_SH_IRQFLAGS_H */