diff --git a/components/esp_hw_support/periph_ctrl.c b/components/esp_hw_support/periph_ctrl.c index 8a226b236f..2bdf993232 100644 --- a/components/esp_hw_support/periph_ctrl.c +++ b/components/esp_hw_support/periph_ctrl.c @@ -42,7 +42,7 @@ void periph_module_reset(periph_module_t periph) portEXIT_CRITICAL_SAFE(&periph_spinlock); } -#if CONFIG_ESP32_WIFI_ENABLED +#if CONFIG_ESP32_WIFI_ENABLED || CONFIG_BT_ENABLED IRAM_ATTR void wifi_bt_common_module_enable(void) { portENTER_CRITICAL_SAFE(&periph_spinlock); diff --git a/components/hal/esp32c2/include/hal/clk_gate_ll.h b/components/hal/esp32c2/include/hal/clk_gate_ll.h index 8bc09c3ca1..e9e215b34c 100644 --- a/components/hal/esp32c2/include/hal/clk_gate_ll.h +++ b/components/hal/esp32c2/include/hal/clk_gate_ll.h @@ -98,6 +98,8 @@ static inline uint32_t periph_ll_get_rst_en_mask(periph_module_t periph, bool en // Don't assert reset on secure boot, otherwise AES is held in reset return SYSTEM_CRYPTO_SHA_RST; } + case PERIPH_MODEM_RPA_MODULE: + return BLE_RPA_REST_BIT; default: return 0; } @@ -132,6 +134,7 @@ static uint32_t periph_ll_get_rst_en_reg(periph_module_t periph) case PERIPH_WIFI_BT_COMMON_MODULE: case PERIPH_BT_BASEBAND_MODULE: case PERIPH_BT_LC_MODULE: + case PERIPH_MODEM_RPA_MODULE: return SYSTEM_WIFI_RST_EN_REG; case PERIPH_SHA_MODULE: