AIROC™ BTSDK v4.0 - Documentation | ||||
Defines the interface for device low power managment. More...
Typedefs | |
typedef enum wiced_bt_lpm_poll_type_e | wiced_bt_lpm_poll_type_t |
typedef enum wiced_bt_lpm_pmu_sleep_type_t | wiced_bt_lpm_pmu_sleep_type_t |
The sleep type of the power managment modole (PMU) | |
typedef uint32_t(* | wiced_bt_lpm_callback_fp )(wiced_bt_lpm_poll_type_t type, uint32_t context) |
This typedef is what is expected when registering a function as a callback. More... | |
Enumerations | |
enum | { WICED_BT_LPM_WAKE_SOURCE_GPIO = (1 << 8), WICED_BT_LPM_WAKE_SOURCE_LHL = WICED_BT_LPM_WAKE_SOURCE_GPIO, WICED_BT_LPM_WAKE_SOURCE_KEYSCAN = (1 << 6), WICED_BT_LPM_WAKE_SOURCE_QUAD = (1 << 7), WICED_BT_LPM_WAKE_SOURCE_MASK = (WICED_BT_LPM_WAKE_SOURCE_GPIO | WICED_BT_LPM_WAKE_SOURCE_KEYSCAN | WICED_BT_LPM_WAKE_SOURCE_QUAD) } |
The wake up sources. More... | |
enum | wiced_bt_lpm_poll_type_e { WICED_BT_LOW_POWER_MODE_POLL_TYPE_SLEEP = 0, WICED_BT_LOW_POWER_MODE_POLL_TYPE_SDS = 2 } |
enum | wiced_bt_lpm_pmu_sleep_type_t { WICED_BT_PMU_SLEEP_NOT_ALLOWED = 0, WICED_BT_PMU_SLEEP_SDS_ALLOWED = 2, WICED_BT_PMU_SLEEP_NO_SDS = 5 } |
The sleep type of the power managment modole (PMU) More... | |
Functions | |
void | wiced_hal_lpm_init (void) |
Initialize device low power management module. More... | |
void | wiced_hal_lpm_enable_wake_from (uint32_t sources) |
Enables wake up from the given sources. More... | |
void | wiced_hal_lpm_register_for_wake_notification (uint8_t(*fn)(void *), void *data) |
Allows an application to register for wake notification that the wake source are enabled by wiced_hal_lpm_enable_wake_from(uint32_t sources). More... | |
wiced_bool_t | wiced_hal_lpm_register_for_low_power_queries (wiced_bt_lpm_callback_fp callback, uint32_t context) |
Adds the given object to the list of objects that need to be queried for sleep and SDS. More... | |
Defines the interface for device low power managment.
typedef uint32_t(* wiced_bt_lpm_callback_fp)(wiced_bt_lpm_poll_type_t type, uint32_t context) |
This typedef is what is expected when registering a function as a callback.
This callback function is expected to respond with time to sleep or if it is ok to enter shutdown sleep (SDS) or not.
when poll type is WICED_BT_LOW_POWER_MODE_POLL_TYPE_SLEEP, return value 0 indicates do not sleep; return value non-zero indicates the sleep time allowed. when poll type is WICED_BT_LOW_POWER_MODE_POLL_TYPE_SDS, return value WICED_BT_PMU_SLEEP_SDS_ALLOWED indicates OK to enter SDS. return value WICED_BT_PMU_SLEEP_NO_SDS indicates do not enter SDS;
anonymous enum |
The wake up sources.
The sleep type of the power managment modole (PMU)
void wiced_hal_lpm_enable_wake_from | ( | uint32_t | sources | ) |
Enables wake up from the given sources.
sources | - The WICED_BT_LPM_WAKE_SOURCE_* sources for wake. See bellowed: enum { /// Wake from GPIO WICED_BT_LPM_WAKE_SOURCE_GPIO = (1 << 8), /// Wake from LHL is the same as waking from GPIO WICED_BT_LPM_WAKE_SOURCE_LHL = WICED_BT_LPM_WAKE_SOURCE_GPIO, /// Wake from keyscan WICED_BT_LPM_WAKE_SOURCE_KEYSCAN = (1 << 6), /// Wake from wuadrature sensor WICED_BT_LPM_WAKE_SOURCE_QUAD = (1 << 7), /// All wake HID sources WICED_BT_LPM_WAKE_SOURCE_MASK = (WICED_BT_LPM_WAKE_SOURCE_GPIO | WICED_BT_LPM_WAKE_SOURCE_KEYSCAN | WICED_BT_LPM_WAKE_SOURCE_QUAD) }; |
void wiced_hal_lpm_init | ( | void | ) |
Initialize device low power management module.
none |
wiced_bool_t wiced_hal_lpm_register_for_low_power_queries | ( | wiced_bt_lpm_callback_fp | callback, |
uint32_t | context | ||
) |
Adds the given object to the list of objects that need to be queried for sleep and SDS.
callback | - The callback that needs to be invoked to check for sleep/SDS OK. The callback should decide very quickly and return within a few 10s of uS. |
context | - Any arbitrary context that the callback function may need later. Will be passed in as is when the callback is invoked. |
void wiced_hal_lpm_register_for_wake_notification | ( | uint8_t(*)(void *) | fn, |
void * | data | ||
) |
Allows an application to register for wake notification that the wake source are enabled by wiced_hal_lpm_enable_wake_from(uint32_t sources).
fn | - Pointer to function that will handle the wake notification |
data | - An opaque data that is handed to callback. |