1 #ifndef __GENIE_SAL_LPM_H__ 2 #define __GENIE_SAL_LPM_H__ 3 #include <types.h> 4 5 typedef void (*genie_io_wakeup_cb)(void *arg); 6 7 enum io_pol 8 { 9 FALLING = 0, 10 RISING = 1, 11 ACT_LOW = 2, 12 ACT_HIGH = 3, 13 }; 14 15 void genie_sal_sleep_enable(); 16 void genie_sal_sleep_disable(); 17 int genie_sal_sleep_enter_standby(); 18 int genie_sal_sleep_wakup_io_set(uint8_t port, uint8_t pol); 19 bool genie_sal_sleep_wakeup_io_get_status(uint8_t port); 20 int genie_sal_io_wakeup_cb_register(genie_io_wakeup_cb cb); 21 int genie_sal_io_wakeup_cb_unregister(); 22 23 #endif 24