mbed library sources. Supersedes mbed-src.
Fork of mbed-dev by
Diff: platform/mbed_sleep.h
- Revision:
- 167:e84263d55307
- Parent:
- 160:d5399cc887bb
- Child:
- 174:b96e65c34a4d
--- a/platform/mbed_sleep.h Thu Jun 08 15:02:37 2017 +0100 +++ b/platform/mbed_sleep.h Wed Jun 21 17:46:44 2017 +0100 @@ -28,7 +28,8 @@ /** Send the microcontroller to sleep * * @note This function can be a noop if not implemented by the platform. - * @note This function will only put device to sleep in release mode (small profile or when NDEBUG is defined). + * @note This function will be a noop in debug mode (debug build profile when MBED_DEBUG is defined). + * @note This function will be a noop while uVisor is in use. * * The processor is setup ready for sleep, and sent to sleep using __WFI(). In this mode, the * system clock to the core is stopped until a reset or an interrupt occurs. This eliminates @@ -44,17 +45,20 @@ */ __INLINE static void sleep(void) { -#ifdef NDEBUG +#if !(defined(FEATURE_UVISOR) && defined(TARGET_UVISOR_SUPPORTED)) +#ifndef MBED_DEBUG #if DEVICE_SLEEP hal_sleep(); #endif /* DEVICE_SLEEP */ -#endif /* NDEBUG */ +#endif /* MBED_DEBUG */ +#endif /* !(defined(FEATURE_UVISOR) && defined(TARGET_UVISOR_SUPPORTED)) */ } /** Send the microcontroller to deep sleep * * @note This function can be a noop if not implemented by the platform. - * @note This function will only put device to sleep in release mode (small profile or when NDEBUG is defined). + * @note This function will be a noop in debug mode (debug build profile when MBED_DEBUG is defined) + * @note This function will be a noop while uVisor is in use. * * This processor is setup ready for deep sleep, and sent to sleep using __WFI(). This mode * has the same sleep features as sleep plus it powers down peripherals and clocks. All state @@ -69,11 +73,13 @@ */ __INLINE static void deepsleep(void) { -#ifdef NDEBUG +#if !(defined(FEATURE_UVISOR) && defined(TARGET_UVISOR_SUPPORTED)) +#ifndef MBED_DEBUG #if DEVICE_SLEEP hal_deepsleep(); #endif /* DEVICE_SLEEP */ -#endif /* NDEBUG */ +#endif /* MBED_DEBUG */ +#endif /* !(defined(FEATURE_UVISOR) && defined(TARGET_UVISOR_SUPPORTED)) */ } #ifdef __cplusplus