forked from espressif/esp-idf
fix(wifi):fix modem state rx bcn failed when tbtt update, support modem state for coexist
This commit is contained in:
@@ -396,6 +396,15 @@ int coex_schm_flexible_period_set(uint8_t period);
|
||||
uint8_t coex_schm_flexible_period_get(void);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Get coexistence scheme phase by phase index.
|
||||
*
|
||||
* @param phase_idx Coexistence phase index
|
||||
*
|
||||
* @return Coexistence scheme phase
|
||||
*/
|
||||
void * coex_schm_get_phase_by_idx(int phase_idx);
|
||||
|
||||
/**
|
||||
* @brief Check the MD5 values of the coexistence adapter header files in IDF and WiFi library
|
||||
*
|
||||
|
@@ -529,7 +529,7 @@ pm_enable_active_timer = 0x40001b84;
|
||||
pm_enable_sleep_delay_timer = 0x40001b88;
|
||||
pm_local_tsf_process = 0x40001b8c;
|
||||
pm_set_beacon_filter = 0x40001b90;
|
||||
pm_is_in_wifi_slice_threshold = 0x40001b94;
|
||||
/*pm_is_in_wifi_slice_threshold = 0x40001b94;*/
|
||||
pm_is_waked = 0x40001b98;
|
||||
/*pm_keep_alive = 0x40001b9c;*/
|
||||
/* pm_on_beacon_rx = 0x40001ba0; */
|
||||
|
@@ -718,7 +718,7 @@ pm_enable_active_timer = 0x40001660;
|
||||
pm_enable_sleep_delay_timer = 0x40001664;
|
||||
pm_local_tsf_process = 0x40001668;
|
||||
pm_set_beacon_filter = 0x4000166c;
|
||||
pm_is_in_wifi_slice_threshold = 0x40001670;
|
||||
/*pm_is_in_wifi_slice_threshold = 0x40001670;*/
|
||||
pm_is_waked = 0x40001674;
|
||||
/*pm_keep_alive = 0x40001678;*/
|
||||
/* pm_on_beacon_rx = 0x4000167c; */
|
||||
|
@@ -116,7 +116,7 @@ pm_mac_sleep = 0x40000d5c;
|
||||
pm_enable_sleep_delay_timer = 0x40000d64;
|
||||
pm_local_tsf_process = 0x40000d68;
|
||||
pm_set_beacon_filter = 0x40000d6c;
|
||||
pm_is_in_wifi_slice_threshold = 0x40000d70;
|
||||
/*pm_is_in_wifi_slice_threshold = 0x40000d70;*/
|
||||
pm_is_waked = 0x40000d74;
|
||||
/*pm_keep_alive = 0x40000d78;*/
|
||||
/*pm_on_beacon_rx = 0x40000d7c;*/
|
||||
@@ -151,7 +151,7 @@ pm_is_twt_start = 0x40000dec;
|
||||
pm_twt_set_target_wdev_time = 0x40000df0;
|
||||
pm_twt_set_target_tsf = 0x40000df4;
|
||||
pm_enable_twt_keep_alive_timer = 0x40000df8;
|
||||
pm_mac_try_enable_modem_state = 0x40000dfc;
|
||||
/*pm_mac_try_enable_modem_state = 0x40000dfc;*/
|
||||
pm_beacon_monitor_tbtt_timeout_process = 0x40000e00;
|
||||
/*pm_update_next_tbtt = 0x40000e04;*/
|
||||
pm_twt_disallow_tx = 0x40000e08;
|
||||
|
@@ -66,7 +66,7 @@ pm_mac_sleep = 0x40000c84;
|
||||
pm_enable_sleep_delay_timer = 0x40000c8c;
|
||||
pm_local_tsf_process = 0x40000c90;
|
||||
//pm_set_beacon_filter = 0x40000c94;
|
||||
pm_is_in_wifi_slice_threshold = 0x40000c98;
|
||||
/*pm_is_in_wifi_slice_threshold = 0x40000c98;*/
|
||||
pm_is_waked = 0x40000c9c;
|
||||
//pm_keep_alive = 0x40000ca0;
|
||||
/* pm_on_beacon_rx = 0x40000ca4; */
|
||||
|
@@ -120,10 +120,10 @@ pm_mac_sleep = 0x40000cc8;
|
||||
pm_enable_sleep_delay_timer = 0x40000cd0;
|
||||
pm_local_tsf_process = 0x40000cd4;
|
||||
pm_set_beacon_filter = 0x40000cd8;
|
||||
pm_is_in_wifi_slice_threshold = 0x40000cdc;
|
||||
/*pm_is_in_wifi_slice_threshold = 0x40000cdc;*/
|
||||
pm_is_waked = 0x40000ce0;
|
||||
//pm_keep_alive = 0x40000ce4;
|
||||
pm_on_beacon_rx = 0x40000ce8;
|
||||
/*pm_on_beacon_rx = 0x40000ce8;*/
|
||||
pm_on_data_rx = 0x40000cec;
|
||||
pm_on_data_tx = 0x40000cf0;
|
||||
pm_on_tbtt = 0x40000cf4;
|
||||
@@ -155,7 +155,7 @@ pm_is_twt_start = 0x40000d58;
|
||||
pm_twt_set_target_wdev_time = 0x40000d5c;
|
||||
pm_twt_set_target_tsf = 0x40000d60;
|
||||
pm_enable_twt_keep_alive_timer = 0x40000d64;
|
||||
pm_mac_try_enable_modem_state = 0x40000d68;
|
||||
/*pm_mac_try_enable_modem_state = 0x40000d68;*/
|
||||
pm_beacon_monitor_tbtt_timeout_process = 0x40000d6c;
|
||||
pm_update_next_tbtt = 0x40000d70;
|
||||
pm_twt_disallow_tx = 0x40000d74;
|
||||
|
@@ -972,7 +972,7 @@ pm_enable_active_timer = 0x40005460;
|
||||
pm_enable_sleep_delay_timer = 0x4000546c;
|
||||
pm_local_tsf_process = 0x40005478;
|
||||
pm_set_beacon_filter = 0x40005484;
|
||||
pm_is_in_wifi_slice_threshold = 0x40005490;
|
||||
/*pm_is_in_wifi_slice_threshold = 0x40005490;*/
|
||||
pm_is_waked = 0x4000549c;
|
||||
/*pm_keep_alive = 0x400054a8;*/
|
||||
/* pm_on_beacon_rx = 0x400054b4; */
|
||||
|
@@ -594,6 +594,15 @@ static uint8_t coex_schm_flexible_period_get_wrapper(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
static void * coex_schm_get_phase_by_idx_wrapper(int phase_idx)
|
||||
{
|
||||
#if CONFIG_SW_COEXIST_ENABLE
|
||||
return coex_schm_get_phase_by_idx(phase_idx);
|
||||
#else
|
||||
return NULL;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void IRAM_ATTR esp_empty_wrapper(void)
|
||||
{
|
||||
|
||||
@@ -730,5 +739,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_register_cb = coex_schm_register_cb_wrapper,
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
@@ -535,6 +535,15 @@ static uint8_t coex_schm_flexible_period_get_wrapper(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
static void * coex_schm_get_phase_by_idx_wrapper(int phase_idx)
|
||||
{
|
||||
#if CONFIG_SW_COEXIST_ENABLE
|
||||
return coex_schm_get_phase_by_idx(phase_idx);
|
||||
#else
|
||||
return NULL;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void IRAM_ATTR esp_empty_wrapper(void)
|
||||
{
|
||||
|
||||
@@ -670,5 +679,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_register_cb = coex_schm_register_cb_wrapper,
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
@@ -552,6 +552,15 @@ static uint8_t coex_schm_flexible_period_get_wrapper(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
static void * coex_schm_get_phase_by_idx_wrapper(int phase_idx)
|
||||
{
|
||||
#if CONFIG_SW_COEXIST_ENABLE
|
||||
return coex_schm_get_phase_by_idx(phase_idx);
|
||||
#else
|
||||
return NULL;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void IRAM_ATTR esp_empty_wrapper(void)
|
||||
{
|
||||
|
||||
@@ -687,5 +696,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_register_cb = coex_schm_register_cb_wrapper,
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
@@ -610,6 +610,15 @@ static uint8_t coex_schm_flexible_period_get_wrapper(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
static void * coex_schm_get_phase_by_idx_wrapper(int phase_idx)
|
||||
{
|
||||
#if CONFIG_SW_COEXIST_ENABLE
|
||||
return coex_schm_get_phase_by_idx(phase_idx);
|
||||
#else
|
||||
return NULL;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void IRAM_ATTR esp_empty_wrapper(void)
|
||||
{
|
||||
|
||||
@@ -754,5 +763,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_register_cb = coex_schm_register_cb_wrapper,
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
@@ -541,6 +541,15 @@ static uint8_t coex_schm_flexible_period_get_wrapper(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
static void * coex_schm_get_phase_by_idx_wrapper(int phase_idx)
|
||||
{
|
||||
#if CONFIG_SW_COEXIST_ENABLE
|
||||
return coex_schm_get_phase_by_idx(phase_idx);
|
||||
#else
|
||||
return NULL;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void IRAM_ATTR esp_empty_wrapper(void)
|
||||
{
|
||||
|
||||
@@ -692,5 +701,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_register_cb = coex_schm_register_cb_wrapper,
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
@@ -610,6 +610,15 @@ static uint8_t coex_schm_flexible_period_get_wrapper(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
static void * coex_schm_get_phase_by_idx_wrapper(int phase_idx)
|
||||
{
|
||||
#if CONFIG_SW_COEXIST_ENABLE
|
||||
return coex_schm_get_phase_by_idx(phase_idx);
|
||||
#else
|
||||
return NULL;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void IRAM_ATTR esp_empty_wrapper(void)
|
||||
{
|
||||
|
||||
@@ -754,5 +763,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_register_cb = coex_schm_register_cb_wrapper,
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
@@ -554,6 +554,11 @@ static uint8_t coex_schm_flexible_period_get_wrapper(void)
|
||||
return 1;
|
||||
}
|
||||
|
||||
static void * coex_schm_get_phase_by_idx_wrapper(int phase_idx)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static void IRAM_ATTR esp_empty_wrapper(void)
|
||||
{
|
||||
|
||||
@@ -810,5 +815,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_register_cb = coex_schm_register_cb_wrapper,
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
@@ -589,6 +589,15 @@ static uint8_t coex_schm_flexible_period_get_wrapper(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
static void * coex_schm_get_phase_by_idx_wrapper(int phase_idx)
|
||||
{
|
||||
#if CONFIG_SW_COEXIST_ENABLE
|
||||
return coex_schm_get_phase_by_idx(phase_idx);
|
||||
#else
|
||||
return NULL;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void IRAM_ATTR esp_empty_wrapper(void)
|
||||
{
|
||||
|
||||
@@ -724,5 +733,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_register_cb = coex_schm_register_cb_wrapper,
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
@@ -606,6 +606,15 @@ static uint8_t coex_schm_flexible_period_get_wrapper(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
static void * coex_schm_get_phase_by_idx_wrapper(int phase_idx)
|
||||
{
|
||||
#if CONFIG_SW_COEXIST_ENABLE
|
||||
return coex_schm_get_phase_by_idx(phase_idx);
|
||||
#else
|
||||
return NULL;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void IRAM_ATTR esp_empty_wrapper(void)
|
||||
{
|
||||
|
||||
@@ -741,5 +750,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_register_cb = coex_schm_register_cb_wrapper,
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
@@ -155,6 +155,7 @@ typedef struct wifi_osi_funcs_t {
|
||||
#endif
|
||||
int (*_coex_schm_flexible_period_set)(uint8_t);
|
||||
uint8_t (*_coex_schm_flexible_period_get)(void);
|
||||
void * (*_coex_schm_get_phase_by_idx)(int);
|
||||
int32_t _magic;
|
||||
} wifi_osi_funcs_t;
|
||||
|
||||
|
Submodule components/esp_wifi/lib updated: d152ee7b81...58ebdbff17
Reference in New Issue
Block a user