Create a new Common module documentation group for the new Global Interrupt macros.

pull/1469/head
Dean Camera 14 years ago
parent c263ea837a
commit d08116b02f

@ -49,6 +49,12 @@
* Macros to aid debugging of a user application. * Macros to aid debugging of a user application.
*/ */
/** \defgroup Group_GlobalInt Global Interrupt Macros
* \brief Convenience macros for the management of interrupts globally within the device.
*
* Macros and functions to create and control global interrupts within the device.
*/
#ifndef __LUFA_COMMON_H__ #ifndef __LUFA_COMMON_H__
#define __LUFA_COMMON_H__ #define __LUFA_COMMON_H__
@ -228,6 +234,8 @@
* \note This is supplied on some architectures where the standard library does not include a valid * \note This is supplied on some architectures where the standard library does not include a valid
* definition. If an existing definition exists, the definition here will be ignored. * definition. If an existing definition exists, the definition here will be ignored.
* *
* \ingroup Group_GlobalInt
*
* \param Name Unique name of the interrupt service routine. * \param Name Unique name of the interrupt service routine.
*/ */
#define ISR(Name, ...) void Name (void) __attribute__((__interrupt__)); void Name (void) #define ISR(Name, ...) void Name (void) __attribute__((__interrupt__)); void Name (void)
@ -280,6 +288,8 @@
* value can be stored before altering the global interrupt enable state, before restoring the * value can be stored before altering the global interrupt enable state, before restoring the
* flag(s) back to their previous values after a critical section using \ref SetGlobalInterruptMask(). * flag(s) back to their previous values after a critical section using \ref SetGlobalInterruptMask().
* *
* \ingroup Group_GlobalInt
*
* \return Mask containing the current Global Interrupt Enable Mask bit(s). * \return Mask containing the current Global Interrupt Enable Mask bit(s).
*/ */
static inline uint_reg_t GetGlobalInterruptMask(void) ATTR_ALWAYS_INLINE ATTR_WARN_UNUSED_RESULT; static inline uint_reg_t GetGlobalInterruptMask(void) ATTR_ALWAYS_INLINE ATTR_WARN_UNUSED_RESULT;
@ -300,6 +310,8 @@
* This can be combined with \ref GetGlobalInterruptMask() to save and restore the Global Interrupt Enable * This can be combined with \ref GetGlobalInterruptMask() to save and restore the Global Interrupt Enable
* Mask bit(s) of the device after a critical section has completed. * Mask bit(s) of the device after a critical section has completed.
* *
* \ingroup Group_GlobalInt
*
* \param[in] GlobalIntState Global Interrupt Enable Mask value to use * \param[in] GlobalIntState Global Interrupt Enable Mask value to use
*/ */
static inline void SetGlobalInterruptMask(const uint_reg_t GlobalIntState) ATTR_ALWAYS_INLINE; static inline void SetGlobalInterruptMask(const uint_reg_t GlobalIntState) ATTR_ALWAYS_INLINE;
@ -319,7 +331,10 @@
GCC_MEMORY_BARRIER(); GCC_MEMORY_BARRIER();
} }
/** Enables global interrupt handling for the device, allowing interrupts to be handled. */ /** Enables global interrupt handling for the device, allowing interrupts to be handled.
*
* \ingroup Group_GlobalInt
*/
static inline void GlobalInterruptEnable(void) ATTR_ALWAYS_INLINE; static inline void GlobalInterruptEnable(void) ATTR_ALWAYS_INLINE;
static inline void GlobalInterruptEnable(void) static inline void GlobalInterruptEnable(void)
{ {
@ -334,7 +349,10 @@
GCC_MEMORY_BARRIER(); GCC_MEMORY_BARRIER();
} }
/** Disabled global interrupt handling for the device, preventing interrupts from being handled. */ /** Disabled global interrupt handling for the device, preventing interrupts from being handled.
*
* \ingroup Group_GlobalInt
*/
static inline void GlobalInterruptDisable(void) ATTR_ALWAYS_INLINE; static inline void GlobalInterruptDisable(void) ATTR_ALWAYS_INLINE;
static inline void GlobalInterruptDisable(void) static inline void GlobalInterruptDisable(void)
{ {

Loading…
Cancel
Save