mirror of
https://github.com/espressif/esp-idf.git
synced 2024-09-20 10:46:02 -04:00
esp32: Register event handlers on the esp_wifi_init() call
This commit is contained in:
parent
55a6aca355
commit
a41b1a9d1f
@ -47,7 +47,6 @@ do{\
|
||||
|
||||
typedef esp_err_t (*system_event_handler_t)(system_event_t *e);
|
||||
|
||||
#ifdef CONFIG_WIFI_ENABLED
|
||||
static esp_err_t system_event_ap_start_handle_default(system_event_t *event);
|
||||
static esp_err_t system_event_ap_stop_handle_default(system_event_t *event);
|
||||
static esp_err_t system_event_sta_start_handle_default(system_event_t *event);
|
||||
@ -55,7 +54,6 @@ static esp_err_t system_event_sta_stop_handle_default(system_event_t *event);
|
||||
static esp_err_t system_event_sta_connected_handle_default(system_event_t *event);
|
||||
static esp_err_t system_event_sta_disconnected_handle_default(system_event_t *event);
|
||||
static esp_err_t system_event_sta_got_ip_default(system_event_t *event);
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_ETHERNET
|
||||
static esp_err_t system_event_eth_start_handle_default(system_event_t *event);
|
||||
@ -68,27 +66,25 @@ static esp_err_t system_event_eth_disconnected_handle_default(system_event_t *ev
|
||||
|
||||
Any entry in this table which is disabled by config will have a NULL handler.
|
||||
*/
|
||||
static const system_event_handler_t default_event_handlers[SYSTEM_EVENT_MAX] = {
|
||||
#ifdef CONFIG_WIFI_ENABLED
|
||||
static system_event_handler_t default_event_handlers[SYSTEM_EVENT_MAX] = {
|
||||
[SYSTEM_EVENT_WIFI_READY] = NULL,
|
||||
[SYSTEM_EVENT_SCAN_DONE] = NULL,
|
||||
[SYSTEM_EVENT_STA_START] = system_event_sta_start_handle_default,
|
||||
[SYSTEM_EVENT_STA_STOP] = system_event_sta_stop_handle_default,
|
||||
[SYSTEM_EVENT_STA_CONNECTED] = system_event_sta_connected_handle_default,
|
||||
[SYSTEM_EVENT_STA_DISCONNECTED] = system_event_sta_disconnected_handle_default,
|
||||
[SYSTEM_EVENT_STA_START] = NULL,
|
||||
[SYSTEM_EVENT_STA_STOP] = NULL,
|
||||
[SYSTEM_EVENT_STA_CONNECTED] = NULL,
|
||||
[SYSTEM_EVENT_STA_DISCONNECTED] = NULL,
|
||||
[SYSTEM_EVENT_STA_AUTHMODE_CHANGE] = NULL,
|
||||
[SYSTEM_EVENT_STA_GOT_IP] = system_event_sta_got_ip_default,
|
||||
[SYSTEM_EVENT_STA_GOT_IP] = NULL,
|
||||
[SYSTEM_EVENT_STA_WPS_ER_SUCCESS] = NULL,
|
||||
[SYSTEM_EVENT_STA_WPS_ER_FAILED] = NULL,
|
||||
[SYSTEM_EVENT_STA_WPS_ER_TIMEOUT] = NULL,
|
||||
[SYSTEM_EVENT_STA_WPS_ER_PIN] = NULL,
|
||||
[SYSTEM_EVENT_AP_START] = system_event_ap_start_handle_default,
|
||||
[SYSTEM_EVENT_AP_STOP] = system_event_ap_stop_handle_default,
|
||||
[SYSTEM_EVENT_AP_START] = NULL,
|
||||
[SYSTEM_EVENT_AP_STOP] = NULL,
|
||||
[SYSTEM_EVENT_AP_STACONNECTED] = NULL,
|
||||
[SYSTEM_EVENT_AP_STADISCONNECTED] = NULL,
|
||||
[SYSTEM_EVENT_AP_PROBEREQRECVED] = NULL,
|
||||
[SYSTEM_EVENT_AP_STA_GOT_IP6] = NULL,
|
||||
#endif
|
||||
#ifdef CONFIG_ETHERNET
|
||||
[SYSTEM_EVENT_ETH_START] = system_event_eth_start_handle_default,
|
||||
[SYSTEM_EVENT_ETH_STOP] = system_event_eth_stop_handle_default,
|
||||
@ -156,7 +152,6 @@ esp_err_t system_event_eth_disconnected_handle_default(system_event_t *event)
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_WIFI_ENABLED
|
||||
static esp_err_t system_event_sta_got_ip_default(system_event_t *event)
|
||||
{
|
||||
WIFI_API_CALL_CHECK("esp_wifi_internal_set_sta_ip", esp_wifi_internal_set_sta_ip(), ESP_OK);
|
||||
@ -250,7 +245,6 @@ esp_err_t system_event_sta_disconnected_handle_default(system_event_t *event)
|
||||
WIFI_API_CALL_CHECK("esp_wifi_internal_reg_rxcb", esp_wifi_internal_reg_rxcb(ESP_IF_WIFI_STA, NULL), ESP_OK);
|
||||
return ESP_OK;
|
||||
}
|
||||
#endif
|
||||
|
||||
static esp_err_t esp_system_event_debug(system_event_t *event)
|
||||
{
|
||||
@ -411,5 +405,13 @@ esp_err_t esp_event_process_default(system_event_t *event)
|
||||
|
||||
esp_err_t esp_wifi_init(wifi_init_config_t *config)
|
||||
{
|
||||
default_event_handlers[SYSTEM_EVENT_STA_START] = system_event_sta_start_handle_default;
|
||||
default_event_handlers[SYSTEM_EVENT_STA_STOP] = system_event_sta_stop_handle_default;
|
||||
default_event_handlers[SYSTEM_EVENT_STA_CONNECTED] = system_event_sta_connected_handle_default;
|
||||
default_event_handlers[SYSTEM_EVENT_STA_DISCONNECTED] = system_event_sta_disconnected_handle_default;
|
||||
default_event_handlers[SYSTEM_EVENT_STA_GOT_IP] = system_event_sta_got_ip_default;
|
||||
default_event_handlers[SYSTEM_EVENT_AP_START] = system_event_ap_start_handle_default;
|
||||
default_event_handlers[SYSTEM_EVENT_AP_STOP] = system_event_ap_stop_handle_default;
|
||||
|
||||
return esp_wifi_init_internal(config);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user