mirror of
https://github.com/espressif/esp-idf.git
synced 2026-08-18 06:35:35 +03:00
fix(bt): keep BLE log ISR state in internal RAM
This commit is contained in:
@@ -27,12 +27,12 @@
|
||||
#define TAG "ble_log"
|
||||
#define BLE_LOG_LBM_WAIT_TIMEOUT_MS (1000)
|
||||
|
||||
BLE_LOG_STATIC volatile uint32_t lbm_ref_count = 0;
|
||||
BLE_LOG_STATIC bool lbm_inited = false;
|
||||
BLE_LOG_STATIC bool lbm_enabled = false;
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR volatile uint32_t lbm_ref_count = 0;
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR bool lbm_inited = false;
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR bool lbm_enabled = false;
|
||||
BLE_LOG_STATIC volatile bool flush_in_progress = false;
|
||||
BLE_LOG_STATIC ble_log_lbm_ctx_t *lbm_ctx = NULL;
|
||||
BLE_LOG_STATIC ble_log_stat_mgr_t *stat_mgr_ctx[BLE_LOG_SRC_MAX] = {0};
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR ble_log_lbm_ctx_t *lbm_ctx = NULL;
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR ble_log_stat_mgr_t *stat_mgr_ctx[BLE_LOG_SRC_MAX] = {0};
|
||||
|
||||
/* PRIVATE FUNCTION DECLARATION */
|
||||
BLE_LOG_STATIC
|
||||
|
||||
@@ -14,11 +14,11 @@
|
||||
#include "ble_log_lbm.h"
|
||||
|
||||
/* VARIABLE */
|
||||
BLE_LOG_STATIC bool rt_inited = false;
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR bool rt_inited = false;
|
||||
BLE_LOG_STATIC TaskHandle_t rt_task_handle = NULL;
|
||||
BLE_LOG_STATIC QueueHandle_t rt_queue_handle = NULL;
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR QueueHandle_t rt_queue_handle = NULL;
|
||||
#if CONFIG_BLE_LOG_TS_ENABLED
|
||||
BLE_LOG_STATIC bool rt_ts_enabled = false;
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR bool rt_ts_enabled = false;
|
||||
#if CONFIG_BLE_LOG_TS_TRIGGER_ESP_TIMER
|
||||
BLE_LOG_STATIC esp_timer_handle_t rt_ts_timer = NULL;
|
||||
#endif /* CONFIG_BLE_LOG_TS_TRIGGER_ESP_TIMER */
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
#include "ble_log_ts.h"
|
||||
|
||||
/* VARIABLE */
|
||||
BLE_LOG_STATIC bool ts_inited = false;
|
||||
BLE_LOG_STATIC ble_log_ts_info_t *ts_info = NULL;
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR bool ts_inited = false;
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR ble_log_ts_info_t *ts_info = NULL;
|
||||
|
||||
/* INTERFACE */
|
||||
bool ble_log_ts_init(void)
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
/* VARIABLE */
|
||||
#ifndef UNIT_TEST
|
||||
portMUX_TYPE ble_log_spin_lock = portMUX_INITIALIZER_UNLOCKED;
|
||||
BLE_LOG_DRAM_ATTR portMUX_TYPE ble_log_spin_lock = portMUX_INITIALIZER_UNLOCKED;
|
||||
#endif /* !UNIT_TEST */
|
||||
|
||||
/* INTERNAL INTERFACE */
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
#define BLE_LOG_INLINE inline
|
||||
|
||||
/* Section */
|
||||
#define BLE_LOG_DRAM_ATTR DRAM_ATTR
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32C2)
|
||||
#define BLE_LOG_IRAM_ATTR _SECTION_ATTR_IMPL(".ble_log_iram1", __COUNTER__)
|
||||
#else
|
||||
@@ -92,6 +93,7 @@ void ble_log_cas_release(volatile bool *cas_lock)
|
||||
#define BLE_LOG_INLINE
|
||||
|
||||
/* Section */
|
||||
#define BLE_LOG_DRAM_ATTR
|
||||
#define BLE_LOG_IRAM_ATTR
|
||||
|
||||
/* Memory operation */
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
/* VARIABLE */
|
||||
BLE_LOG_STATIC bool prph_inited = false;
|
||||
BLE_LOG_STATIC spi_device_handle_t dev_handle = NULL;
|
||||
BLE_LOG_STATIC uint32_t last_tx_done_ts = 0;
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR uint32_t last_tx_done_ts = 0;
|
||||
|
||||
/* PRIVATE FUNCTION DECLARATION */
|
||||
BLE_LOG_STATIC void spi_master_dma_tx_done_cb(spi_transaction_t *spi_trans);
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
#endif /* BLE_LOG_PRPH_UART_DMA_REDIR */
|
||||
|
||||
/* VARIABLE */
|
||||
BLE_LOG_STATIC bool prph_inited = false;
|
||||
BLE_LOG_STATIC BLE_LOG_DRAM_ATTR bool prph_inited = false;
|
||||
BLE_LOG_STATIC uhci_controller_handle_t dev_handle = NULL;
|
||||
#if BLE_LOG_PRPH_UART_DMA_REDIR
|
||||
BLE_LOG_STATIC bool uart_driver_inited = false;
|
||||
|
||||
Reference in New Issue
Block a user