Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of mbed-dev by
Diff: platform/mbed_critical.h
- Revision:
- 167:e84263d55307
- Parent:
- 160:d5399cc887bb
--- a/platform/mbed_critical.h Thu Jun 08 15:02:37 2017 +0100 +++ b/platform/mbed_critical.h Wed Jun 21 17:46:44 2017 +0100 @@ -33,7 +33,7 @@ /** Determine the current interrupts enabled state * * This function can be called to determine whether or not interrupts are currently enabled. - * \note + * @note * NOTE: * This function works for both cortex-A and cortex-M, although the underlyng implementation * differs. @@ -41,10 +41,21 @@ */ bool core_util_are_interrupts_enabled(void); +/** Determine if this code is executing from an interrupt + * + * This function can be called to determine if the code is running on interrupt context. + * @note + * NOTE: + * This function works for both cortex-A and cortex-M, although the underlyng implementation + * differs. + * @return true if in an isr, false otherwise + */ +bool core_util_is_isr_active(void); + /** Mark the start of a critical section * * This function should be called to mark the start of a critical section of code. - * \note + * @note * NOTES: * 1) The use of this style of critical section is targetted at C based implementations. * 2) These critical sections can be nested. @@ -57,7 +68,7 @@ /** Mark the end of a critical section * * This function should be called to mark the end of a critical section of code. - * \note + * @note * NOTES: * 1) The use of this style of critical section is targetted at C based implementations. * 2) These critical sections can be nested. @@ -82,7 +93,7 @@ * @param[in,out] expectedCurrentValue A pointer to some location holding the * expected current value of the data being set atomically. * The computed 'desiredValue' should be a function of this current value. - * @Note: This is an in-out parameter. In the + * @note: This is an in-out parameter. In the * failure case of atomic_cas (where the * destination isn't set), the pointee of expectedCurrentValue is * updated with the current value. @@ -105,7 +116,7 @@ * return true * } * - * @Note: In the failure case (where the destination isn't set), the value + * @note: In the failure case (where the destination isn't set), the value * pointed to by expectedCurrentValue is still updated with the current value. * This property helps writing concise code for the following incr: * @@ -135,7 +146,7 @@ * @param[in,out] expectedCurrentValue A pointer to some location holding the * expected current value of the data being set atomically. * The computed 'desiredValue' should be a function of this current value. - * @Note: This is an in-out parameter. In the + * @note: This is an in-out parameter. In the * failure case of atomic_cas (where the * destination isn't set), the pointee of expectedCurrentValue is * updated with the current value. @@ -158,7 +169,7 @@ * return true * } * - * @Note: In the failure case (where the destination isn't set), the value + * @note: In the failure case (where the destination isn't set), the value * pointed to by expectedCurrentValue is still updated with the current value. * This property helps writing concise code for the following incr: * @@ -188,7 +199,7 @@ * @param[in,out] expectedCurrentValue A pointer to some location holding the * expected current value of the data being set atomically. * The computed 'desiredValue' should be a function of this current value. - * @Note: This is an in-out parameter. In the + * @note: This is an in-out parameter. In the * failure case of atomic_cas (where the * destination isn't set), the pointee of expectedCurrentValue is * updated with the current value. @@ -211,7 +222,7 @@ * return true * } * - * @Note: In the failure case (where the destination isn't set), the value + * @note: In the failure case (where the destination isn't set), the value * pointed to by expectedCurrentValue is still updated with the current value. * This property helps writing concise code for the following incr: * @@ -241,7 +252,7 @@ * @param[in,out] expectedCurrentValue A pointer to some location holding the * expected current value of the data being set atomically. * The computed 'desiredValue' should be a function of this current value. - * @Note: This is an in-out parameter. In the + * @note: This is an in-out parameter. In the * failure case of atomic_cas (where the * destination isn't set), the pointee of expectedCurrentValue is * updated with the current value. @@ -264,7 +275,7 @@ * return true * } * - * @Note: In the failure case (where the destination isn't set), the value + * @note: In the failure case (where the destination isn't set), the value * pointed to by expectedCurrentValue is still updated with the current value. * This property helps writing concise code for the following incr: *