summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorScott Shawcroft <scott@adafruit.com>2020-11-19 14:28:31 -0800
committerGitHub <noreply@github.com>2020-11-19 14:28:31 -0800
commit2f146090444492c344a0260faa151660f5ec3c7a (patch)
treef05b47805f3acbe4bcb038351fbf4e5db1a0c300
parent60c608b9273360516f668e42af991216a4c24f61 (diff)
parentdd108b755dc2bb886df14c9fcfcd4f09be61f2d4 (diff)
Merge pull request #3716 from jepler/keep-event-loop6.1.0-beta.1
esp32s2: don't delete the event loop
-rw-r--r--ports/esp32s2/common-hal/wifi/__init__.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/ports/esp32s2/common-hal/wifi/__init__.c b/ports/esp32s2/common-hal/wifi/__init__.c
index 2eb3719b4..f53e68fc2 100644
--- a/ports/esp32s2/common-hal/wifi/__init__.c
+++ b/ports/esp32s2/common-hal/wifi/__init__.c
@@ -88,14 +88,17 @@ static void event_handler(void* arg, esp_event_base_t event_base,
}
}
-static bool wifi_inited;
+static bool wifi_inited, wifi_ever_inited;
void common_hal_wifi_init(void) {
wifi_inited = true;
common_hal_wifi_radio_obj.base.type = &wifi_radio_type;
- ESP_ERROR_CHECK(esp_netif_init());
- ESP_ERROR_CHECK(esp_event_loop_create_default());
+ if (!wifi_ever_inited) {
+ ESP_ERROR_CHECK(esp_netif_init());
+ ESP_ERROR_CHECK(esp_event_loop_create_default());
+ }
+ wifi_ever_inited = true;
wifi_radio_obj_t* self = &common_hal_wifi_radio_obj;
self->netif = esp_netif_create_default_wifi_sta();
@@ -143,7 +146,6 @@ void wifi_reset(void) {
radio->handler_instance_got_ip));
ESP_ERROR_CHECK(esp_wifi_deinit());
esp_netif_destroy(radio->netif);
- ESP_ERROR_CHECK(esp_event_loop_delete_default());
radio->netif = NULL;
}