update credits
[librepilot.git] / flight / pios / posix / pios_irq.c
blob793df9ccfce65bd1c893f5bc8bc85695c46fe403
1 /**
2 ******************************************************************************
3 * @addtogroup PIOS PIOS Core hardware abstraction layer
4 * @{
5 * @addtogroup PIOS_IRQ IRQ Setup Functions
6 * @brief STM32 Hardware code to enable and disable interrupts
7 * @{
9 * @file pios_irq.c
10 * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
11 * Parts by Thorsten Klose (tk@midibox.org) (tk@midibox.org)
12 * @brief IRQ Enable/Disable routines
13 * @see The GNU Public License (GPL) Version 3
15 *****************************************************************************/
17 * This program is free software; you can redistribute it and/or modify
18 * it under the terms of the GNU General Public License as published by
19 * the Free Software Foundation; either version 3 of the License, or
20 * (at your option) any later version.
22 * This program is distributed in the hope that it will be useful, but
23 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
24 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
25 * for more details.
27 * You should have received a copy of the GNU General Public License along
28 * with this program; if not, write to the Free Software Foundation, Inc.,
29 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
32 /* Project Includes */
33 #include "pios.h"
35 #if defined(PIOS_INCLUDE_IRQ)
37 /* Private Function Prototypes */
39 /**
40 * Disables all interrupts (nested)
41 * \return < 0 On errors
43 int32_t PIOS_IRQ_Disable(void)
45 #if defined(PIOS_INCLUDE_FREERTOS)
46 taskENTER_CRITICAL();
47 #endif
48 return 0;
51 /**
52 * Enables all interrupts (nested)
53 * \return < 0 on errors
54 * \return -1 on nesting errors (PIOS_IRQ_Disable() hasn't been called before)
56 int32_t PIOS_IRQ_Enable(void)
58 #if defined(PIOS_INCLUDE_FREERTOS)
59 taskEXIT_CRITICAL();
60 #endif
61 return 0;
64 #endif /* if defined(PIOS_INCLUDE_IRQ) */
66 /**
67 * @}
68 * @}