diff --git a/components/esp_coex/include/esp_coex_i154.h b/components/esp_coex/include/esp_coex_i154.h index f817e901400..ee20845770a 100644 --- a/components/esp_coex/include/esp_coex_i154.h +++ b/components/esp_coex/include/esp_coex_i154.h @@ -1,11 +1,13 @@ /* - * SPDX-FileCopyrightText: 2023-2025 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2023-2026 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ #ifndef __COEXIST_I154_H__ #define __COEXIST_I154_H__ +#include + /** * @brief 802.15.4 coex event */ @@ -63,4 +65,10 @@ void esp_coex_ieee802154_status_enable(void); */ void esp_coex_ieee802154_status_disable(void); +/** + * @brief Configure the 802.15.4 force Rx state + * @param enable true to enable, false to disable + */ +void esp_coex_ieee802154_force_rx_enable(bool enable); + #endif diff --git a/components/esp_coex/lib b/components/esp_coex/lib index 79e618f033e..ddc56fa524a 160000 --- a/components/esp_coex/lib +++ b/components/esp_coex/lib @@ -1 +1 @@ -Subproject commit 79e618f033e926d134decc6d95bb1b1850bd032c +Subproject commit ddc56fa524a38df3098d2f36475fbe3eefe9b4f4 diff --git a/components/ieee802154/driver/esp_ieee802154_dev.c b/components/ieee802154/driver/esp_ieee802154_dev.c index 6fb12b0db89..1594a660a64 100644 --- a/components/ieee802154/driver/esp_ieee802154_dev.c +++ b/components/ieee802154/driver/esp_ieee802154_dev.c @@ -925,12 +925,19 @@ esp_err_t ieee802154_mac_init(void) ESP_RETURN_ON_FALSE(ieee802154_sleep_init() == ESP_OK, ESP_FAIL, IEEE802154_TAG, "IEEE802154 MAC sleep init failed"); +#if CONFIG_ESP_COEX_EXTERNAL_COEXIST_ENABLE + esp_coex_ieee802154_force_rx_enable(true); +#endif + return ret; } esp_err_t ieee802154_mac_deinit(void) { esp_err_t ret = ESP_OK; +#if CONFIG_ESP_COEX_EXTERNAL_COEXIST_ENABLE + esp_coex_ieee802154_force_rx_enable(false); +#endif if (s_ieee802154_isr_handle) { ret = esp_intr_free(s_ieee802154_isr_handle); s_ieee802154_isr_handle = NULL;