3 * \brief ARM specific implementation of irq functions
8 * (c) 2008-2009 Adam Lackorzynski <adam@os.inf.tu-dresden.de>,
9 * Alexander Warg <warg@os.inf.tu-dresden.de>,
10 * Frank Mehnert <fm3@os.inf.tu-dresden.de>
11 * economic rights: Technische Universität Dresden (Germany)
12 * This file is part of TUD:OS and distributed under the terms of the
13 * GNU Lesser General Public License 2.1.
14 * Please see the COPYING-LGPL-2.1 file for details.
16 #ifndef __L4UTIL__ARCH_ARCH__IRQ_H__
17 #define __L4UTIL__ARCH_ARCH__IRQ_H__
21 #include <l4/sys/kdebug.h>
22 #include <l4/sys/compiler.h>
26 L4_INLINE void l4util_cli (void);
27 L4_INLINE void l4util_sti (void);
28 L4_INLINE void l4util_flags_save(l4_umword_t *flags);
29 L4_INLINE void l4util_flags_restore(l4_umword_t *flags);
31 /** \brief Disable all interrupts
41 /** \brief Enable all interrupts
56 * We probably need some primitive like in linux here which
57 * enable/disable interrupts on l4util_flags_restore
63 l4util_flags_save(l4_umword_t *flags)
66 enter_kdebug("l4util_flags_save");
69 /** \brief Restore processor flags. Can be used to restore the interrupt flag
74 l4util_flags_restore(l4_umword_t *flags)
77 enter_kdebug("l4util_flags_restore");
84 #endif /* ! __L4UTIL__ARCH_ARCH__IRQ_H__ */