diff options
| author | Daniel Campora | 2015-05-22 19:53:33 +0200 |
|---|---|---|
| committer | Daniel Campora | 2015-05-22 19:53:33 +0200 |
| commit | ed56b0baba47e4d0697fdc2d81310a9a2c34c5df (patch) | |
| tree | 260ea9aa95a23870487e8b0b24df9f7d41a86269 /cc3200/serverstask.c | |
| parent | 18030bd85d77367162162496ee025b7d98ad3c41 (diff) | |
cc3200: Finally unlock the full wake on WLAN feature set.
Diffstat (limited to 'cc3200/serverstask.c')
| -rw-r--r-- | cc3200/serverstask.c | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/cc3200/serverstask.c b/cc3200/serverstask.c index 550f0c071..80f22987f 100644 --- a/cc3200/serverstask.c +++ b/cc3200/serverstask.c @@ -36,6 +36,7 @@ #include "telnet.h" #include "ftp.h" #include "pybwdt.h" +#include "modusocket.h" /****************************************************************************** @@ -58,6 +59,7 @@ typedef struct { DECLARE PRIVATE DATA ******************************************************************************/ static servers_Data_t servers_data = {.enabled = false, .do_disable = false, .do_enable = false}; +static volatile bool sleep_sockets = false; /****************************************************************************** DECLARE PRIVATE FUNCTIONS @@ -108,11 +110,17 @@ void TASK_Servers (void *pvParameters) { ftp_run(); } + // set the alive flag for the wdt + pybwdt_srv_alive(); + + if (sleep_sockets) { + sleep_sockets = false; + modusocket_enter_sleep(); + } + // move to the next cycle cycle = cycle ? false : true; HAL_Delay(SERVERS_CYCLE_TIME_MS); - // set the alive flag for the wdt - pybwdt_srv_alive(); } } @@ -133,8 +141,14 @@ bool servers_are_enabled (void) { return servers_data.enabled; } +void server_sleep_sockets (void) { + sleep_sockets = true; + HAL_Delay (SERVERS_CYCLE_TIME_MS + 1); +} + void servers_close_socket (int16_t *sd) { if (*sd > 0) { + modusocket_socket_delete(*sd); sl_Close(*sd); *sd = -1; } |
