summaryrefslogtreecommitdiff
path: root/fw/esp32/components/eos/include/power.h
blob: 2590b800915941c4516f253591f65d0434974f8d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdint.h>

#define EOS_PWR_GPIO_NET        8
#define EOS_PWR_GPIO_APP        10
#define EOS_PWR_GPIO_MODEM      16

#define EOS_PWR_DEV_NONE        0
#define EOS_PWR_DEV_NET         ((uint32_t)1 << EOS_PWR_GPIO_NET)
#define EOS_PWR_DEV_APP         ((uint32_t)1 << EOS_PWR_GPIO_APP)
#define EOS_PWR_DEV_MODEM       ((uint32_t)1 << EOS_PWR_GPIO_MODEM)
#define EOS_PWR_DEV_ALL         (EOS_PWR_DEV_NET | EOS_PWR_DEV_APP | EOS_PWR_DEV_MODEM)

#define EOS_PWR_SMODE_TICKLESS  1
#define EOS_PWR_SMODE_LIGHT     2
#define EOS_PWR_SMODE_DEEP      3

void eos_power_init(void);
void eos_power_run(void);
void eos_power_sys_sleep(uint8_t mode);
void eos_power_sys_wake(uint8_t mode) ;
uint32_t eos_power_wakeup_source(void);

void eos_power_sleep_req(uint8_t mode, uint32_t dev);
void eos_power_sleep_rdy(uint32_t dev);
void eos_power_wake(uint32_t dev);