From 668739a6755dfba0865f7d145cc060ce78ec17ac Mon Sep 17 00:00:00 2001 From: Zhang Hai Peng Date: Tue, 13 May 2025 16:13:48 +0800 Subject: [PATCH 1/5] fix(ble/bluedroid): Fixed BLE GAP appearance configuration check (cherry picked from commit 6552854cb5b0a9dc5c68f89e6fec438bcbd764c5) Co-authored-by: zhanghaipeng --- .../bt/host/bluedroid/api/esp_gap_ble_api.c | 78 ++----------------- .../api/include/api/esp_gap_ble_api.h | 12 ++- 2 files changed, 14 insertions(+), 76 deletions(-) diff --git a/components/bt/host/bluedroid/api/esp_gap_ble_api.c b/components/bt/host/bluedroid/api/esp_gap_ble_api.c index 57ead58af8..453b5ea7ca 100644 --- a/components/bt/host/bluedroid/api/esp_gap_ble_api.c +++ b/components/bt/host/bluedroid/api/esp_gap_ble_api.c @@ -300,83 +300,17 @@ esp_err_t esp_ble_gap_config_local_privacy (bool privacy_enable) esp_err_t esp_ble_gap_config_local_icon (uint16_t icon) { - esp_err_t ret; btc_msg_t msg = {0}; btc_ble_gap_args_t arg; ESP_BLUEDROID_STATUS_CHECK(ESP_BLUEDROID_STATUS_ENABLED); - switch (icon) { - case ESP_BLE_APPEARANCE_GENERIC_PHONE: - case ESP_BLE_APPEARANCE_GENERIC_COMPUTER: - case ESP_BLE_APPEARANCE_GENERIC_REMOTE: - case ESP_BLE_APPEARANCE_GENERIC_THERMOMETER: - case ESP_BLE_APPEARANCE_THERMOMETER_EAR: - case ESP_BLE_APPEARANCE_GENERIC_HEART_RATE: - case ESP_BLE_APPEARANCE_HEART_RATE_BELT: - case ESP_BLE_APPEARANCE_GENERIC_BLOOD_PRESSURE: - case ESP_BLE_APPEARANCE_BLOOD_PRESSURE_ARM: - case ESP_BLE_APPEARANCE_BLOOD_PRESSURE_WRIST: - case ESP_BLE_APPEARANCE_GENERIC_PULSE_OXIMETER: - case ESP_BLE_APPEARANCE_PULSE_OXIMETER_FINGERTIP: - case ESP_BLE_APPEARANCE_PULSE_OXIMETER_WRIST: - case ESP_BLE_APPEARANCE_GENERIC_GLUCOSE: - case ESP_BLE_APPEARANCE_GENERIC_WEIGHT: - case ESP_BLE_APPEARANCE_GENERIC_WALKING: - case ESP_BLE_APPEARANCE_WALKING_IN_SHOE: - case ESP_BLE_APPEARANCE_WALKING_ON_SHOE: - case ESP_BLE_APPEARANCE_WALKING_ON_HIP: - case ESP_BLE_APPEARANCE_GENERIC_WATCH: - case ESP_BLE_APPEARANCE_SPORTS_WATCH: - case ESP_BLE_APPEARANCE_GENERIC_EYEGLASSES: - case ESP_BLE_APPEARANCE_GENERIC_DISPLAY: - case ESP_BLE_APPEARANCE_GENERIC_MEDIA_PLAYER: - case ESP_BLE_APPEARANCE_GENERIC_BARCODE_SCANNER: - case ESP_BLE_APPEARANCE_HID_BARCODE_SCANNER: - case ESP_BLE_APPEARANCE_GENERIC_HID: - case ESP_BLE_APPEARANCE_HID_KEYBOARD: - case ESP_BLE_APPEARANCE_HID_MOUSE: - case ESP_BLE_APPEARANCE_HID_JOYSTICK: - case ESP_BLE_APPEARANCE_HID_GAMEPAD: - case ESP_BLE_APPEARANCE_HID_DIGITIZER_TABLET: - case ESP_BLE_APPEARANCE_HID_CARD_READER: - case ESP_BLE_APPEARANCE_HID_DIGITAL_PEN: - case ESP_BLE_APPEARANCE_UNKNOWN: - case ESP_BLE_APPEARANCE_GENERIC_CLOCK: - case ESP_BLE_APPEARANCE_GENERIC_TAG: - case ESP_BLE_APPEARANCE_GENERIC_KEYRING: - case ESP_BLE_APPEARANCE_GENERIC_CYCLING: - case ESP_BLE_APPEARANCE_CYCLING_COMPUTER: - case ESP_BLE_APPEARANCE_CYCLING_SPEED: - case ESP_BLE_APPEARANCE_CYCLING_CADENCE: - case ESP_BLE_APPEARANCE_CYCLING_POWER: - case ESP_BLE_APPEARANCE_CYCLING_SPEED_CADENCE: - case ESP_BLE_APPEARANCE_GENERIC_PERSONAL_MOBILITY_DEVICE: - case ESP_BLE_APPEARANCE_POWERED_WHEELCHAIR: - case ESP_BLE_APPEARANCE_MOBILITY_SCOOTER: - case ESP_BLE_APPEARANCE_GENERIC_CONTINUOUS_GLUCOSE_MONITOR: - case ESP_BLE_APPEARANCE_GENERIC_INSULIN_PUMP: - case ESP_BLE_APPEARANCE_INSULIN_PUMP_DURABLE_PUMP: - case ESP_BLE_APPEARANCE_INSULIN_PUMP_PATCH_PUMP: - case ESP_BLE_APPEARANCE_INSULIN_PEN: - case ESP_BLE_APPEARANCE_GENERIC_MEDICATION_DELIVERY: - case ESP_BLE_APPEARANCE_GENERIC_OUTDOOR_SPORTS: - case ESP_BLE_APPEARANCE_OUTDOOR_SPORTS_LOCATION: - case ESP_BLE_APPEARANCE_OUTDOOR_SPORTS_LOCATION_AND_NAV: - case ESP_BLE_APPEARANCE_OUTDOOR_SPORTS_LOCATION_POD: - case ESP_BLE_APPEARANCE_OUTDOOR_SPORTS_LOCATION_POD_AND_NAV: - case ESP_BLE_APPEARANCE_STANDALONE_SPEAKER: - msg.sig = BTC_SIG_API_CALL; - msg.pid = BTC_PID_GAP_BLE; - msg.act = BTC_GAP_BLE_ACT_CONFIG_LOCAL_ICON; - arg.cfg_local_icon.icon = icon; - ret = (btc_transfer_context(&msg, &arg, sizeof(btc_ble_gap_args_t), NULL, NULL) == BT_STATUS_SUCCESS ? ESP_OK : ESP_FAIL); - break; - default: - ret = ESP_ERR_INVALID_ARG; - break; - } - return ret; + msg.sig = BTC_SIG_API_CALL; + msg.pid = BTC_PID_GAP_BLE; + msg.act = BTC_GAP_BLE_ACT_CONFIG_LOCAL_ICON; + arg.cfg_local_icon.icon = icon; + + return (btc_transfer_context(&msg, &arg, sizeof(btc_ble_gap_args_t), NULL, NULL) == BT_STATUS_SUCCESS ? ESP_OK : ESP_FAIL); } esp_err_t esp_ble_gap_update_whitelist(bool add_remove, esp_bd_addr_t remote_bda, esp_ble_wl_addr_type_t wl_addr_type) diff --git a/components/bt/host/bluedroid/api/include/api/esp_gap_ble_api.h b/components/bt/host/bluedroid/api/include/api/esp_gap_ble_api.h index e35749a105..0c11b2c31c 100644 --- a/components/bt/host/bluedroid/api/include/api/esp_gap_ble_api.h +++ b/components/bt/host/bluedroid/api/include/api/esp_gap_ble_api.h @@ -2040,15 +2040,19 @@ esp_err_t esp_ble_gap_clear_rand_addr(void); esp_err_t esp_ble_gap_config_local_privacy (bool privacy_enable); /** - * @brief set local gap appearance icon + * @brief Set the local GAP appearance icon. * + * @note This API does not restrict the input icon value. + * If an undefined or incorrect icon value is used, the device icon may not display properly. * - * @param[in] icon - External appearance value, these values are defined by the Bluetooth SIG, please refer to + * For a complete list of valid appearance values, please refer to "2.6.2 Appearance Category ranges" at: * https://www.bluetooth.com/specifications/assigned-numbers/ * + * @param[in] icon - External appearance value (16-bit), as defined by the Bluetooth SIG. + * * @return - * - ESP_OK : success - * - other : failed + * - ESP_OK : Success + * - ESP_FAIL : Internal failure * */ esp_err_t esp_ble_gap_config_local_icon (uint16_t icon); From c27dbdf1a9ae09584e2c23b6d1475392ca920861 Mon Sep 17 00:00:00 2001 From: Zhang Hai Peng Date: Tue, 13 May 2025 16:13:51 +0800 Subject: [PATCH 2/5] docs(ble): clarify meaning of 0 value for esp_ble_gap_start_ext_scan() parameters (cherry picked from commit ebb76933d01870c2d5f4e05da3816240fac432e6) Co-authored-by: zhanghaipeng --- .../host/bluedroid/api/include/api/esp_gap_ble_api.h | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/components/bt/host/bluedroid/api/include/api/esp_gap_ble_api.h b/components/bt/host/bluedroid/api/include/api/esp_gap_ble_api.h index 0c11b2c31c..1c2240ff4c 100644 --- a/components/bt/host/bluedroid/api/include/api/esp_gap_ble_api.h +++ b/components/bt/host/bluedroid/api/include/api/esp_gap_ble_api.h @@ -2730,15 +2730,17 @@ esp_err_t esp_ble_gap_periodic_adv_stop(uint8_t instance); esp_err_t esp_ble_gap_set_ext_scan_params(const esp_ble_ext_scan_params_t *params); /** -* @brief This function is used to enable scanning. +* @brief Enables extended scanning. * -* @param[in] duration Scan duration time, where Time = N * 10 ms. Range: 0x0001 to 0xFFFF. -* @param[in] period Time interval from when the Controller started its last Scan Duration until it begins the subsequent Scan Duration. -* Time = N * 1.28 sec. Range: 0x0001 to 0xFFFF. +* @param[in] duration Scan duration in units of 10 ms. +* - Range: 0x0001 to 0xFFFF (Time = N * 10 ms). +* - 0x0000: Scan continuously until explicitly disabled. * +* @param[in] period Time interval between the start of consecutive scan durations, in units of 1.28 seconds. +* - Range: 0x0001 to 0xFFFF (Time = N * 1.28 sec). +* - 0x0000: Scan continuously. * @return - ESP_OK : success * - other : failed -* */ esp_err_t esp_ble_gap_start_ext_scan(uint32_t duration, uint16_t period); From 9c282d6e121019cdf91105a801949b89a64770ed Mon Sep 17 00:00:00 2001 From: Zhang Hai Peng Date: Tue, 13 May 2025 16:13:54 +0800 Subject: [PATCH 3/5] fix(ble/bluedroid): Change maximum length of attribute value to 517 (cherry picked from commit df8c1f7a96a42010349171819ba984916b997db2) Co-authored-by: zhanghaipeng --- components/bt/host/bluedroid/api/include/api/esp_gatt_defs.h | 2 +- components/bt/host/bluedroid/stack/include/stack/gatt_api.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/components/bt/host/bluedroid/api/include/api/esp_gatt_defs.h b/components/bt/host/bluedroid/api/include/api/esp_gatt_defs.h index f6beb5eaae..e8cc134ca7 100644 --- a/components/bt/host/bluedroid/api/include/api/esp_gatt_defs.h +++ b/components/bt/host/bluedroid/api/include/api/esp_gatt_defs.h @@ -478,7 +478,7 @@ typedef uint8_t esp_gatt_char_prop_t; * * This definition specifies the maximum number of bytes that a GATT attribute can hold. */ -#define ESP_GATT_MAX_ATTR_LEN 512 /*!< As same as GATT_MAX_ATTR_LEN. */ +#define ESP_GATT_MAX_ATTR_LEN 517 /*!< As same as GATT_MAX_ATTR_LEN. */ /** * @brief Enumerates the possible sources of a GATT service discovery. diff --git a/components/bt/host/bluedroid/stack/include/stack/gatt_api.h b/components/bt/host/bluedroid/stack/include/stack/gatt_api.h index fed2ea9a4e..6c63db6238 100644 --- a/components/bt/host/bluedroid/stack/include/stack/gatt_api.h +++ b/components/bt/host/bluedroid/stack/include/stack/gatt_api.h @@ -139,7 +139,7 @@ typedef UINT16 tGATT_DISCONN_REASON; /* max length of an attribute value */ #ifndef GATT_MAX_ATTR_LEN -#define GATT_MAX_ATTR_LEN 512 +#define GATT_MAX_ATTR_LEN GATT_MAX_MTU_SIZE #endif /* default GATT MTU size over LE link From 31fecc616dd8afc4e76a8a726207df69cd74ea6f Mon Sep 17 00:00:00 2001 From: Zhang Hai Peng Date: Tue, 13 May 2025 16:13:56 +0800 Subject: [PATCH 4/5] fix(ble/bluedroid): Added value len check in esp_ble_gatts_send_indicate() (cherry picked from commit bfa0fff2e58150f812c9c52e701864f0726c6ab8) Co-authored-by: Nebojsa Cvetkovic --- components/bt/host/bluedroid/api/esp_gatts_api.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/components/bt/host/bluedroid/api/esp_gatts_api.c b/components/bt/host/bluedroid/api/esp_gatts_api.c index 66fa5c6617..03c8186099 100644 --- a/components/bt/host/bluedroid/api/esp_gatts_api.c +++ b/components/bt/host/bluedroid/api/esp_gatts_api.c @@ -260,6 +260,11 @@ esp_err_t esp_ble_gatts_stop_service(uint16_t service_handle) esp_err_t esp_ble_gatts_send_indicate(esp_gatt_if_t gatts_if, uint16_t conn_id, uint16_t attr_handle, uint16_t value_len, uint8_t *value, bool need_confirm) { + if (value_len > ESP_GATT_MAX_ATTR_LEN) { + LOG_ERROR("%s, value_len > ESP_GATT_MAX_ATTR_LEN.", __func__); + return ESP_ERR_INVALID_SIZE; + } + btc_msg_t msg = {0}; btc_ble_gatts_args_t arg; @@ -272,7 +277,7 @@ esp_err_t esp_ble_gatts_send_indicate(esp_gatt_if_t gatts_if, uint16_t conn_id, } if (L2CA_CheckIsCongest(L2CAP_ATT_CID, p_tcb->peer_bda)) { - LOG_DEBUG("%s, the l2cap chanel is congest.", __func__); + LOG_DEBUG("%s, the l2cap channel is congest.", __func__); return ESP_FAIL; } From 0ac1d27ea7e679f3c318ed5c971da6be1c1dabec Mon Sep 17 00:00:00 2001 From: Zhang Hai Peng Date: Tue, 13 May 2025 16:13:59 +0800 Subject: [PATCH 5/5] fix(ble/bluedroid): Reduce Bluedroid host log output over SPI (cherry picked from commit 0586d103172c87723c7308f2cc6bfda48221f105) Co-authored-by: zhanghaipeng --- .../bluedroid/common/include/common/bt_trace.h | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/components/bt/host/bluedroid/common/include/common/bt_trace.h b/components/bt/host/bluedroid/common/include/common/bt_trace.h index 45b1275e67..9d2e2f0099 100644 --- a/components/bt/host/bluedroid/common/include/common/bt_trace.h +++ b/components/bt/host/bluedroid/common/include/common/bt_trace.h @@ -223,12 +223,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l #if (BT_BLE_LOG_SPI_OUT_HOST_ENABLED && !CLASSIC_BT_INCLUDED) #define BTM_TRACE_ERROR(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_ERROR, "BT_BTM", fmt, ## args); \ if (btm_cb.trace_level >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(BTM, ERROR)) BT_PRINT_E("BT_BTM", fmt, ## args); \ } #define BTM_TRACE_WARNING(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_WARN, "BT_BTM", fmt, ## args); \ if (btm_cb.trace_level >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(BTM, WARNING)) BT_PRINT_W("BT_BTM", fmt, ## args); \ } @@ -243,7 +241,6 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l } #define BTM_TRACE_DEBUG(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_BTM", fmt, ## args); \ if (btm_cb.trace_level >= BT_TRACE_LEVEL_DEBUG && BT_LOG_LEVEL_CHECK(BTM, DEBUG)) BT_PRINT_D("BT_BTM", fmt, ## args); \ } @@ -262,12 +259,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l #if (BT_BLE_LOG_SPI_OUT_HOST_ENABLED && !CLASSIC_BT_INCLUDED) #define L2CAP_TRACE_ERROR(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_ERROR, "BT_L2CAP", fmt, ## args); \ if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(L2CAP, ERROR)) BT_PRINT_E("BT_L2CAP", fmt, ## args); \ } #define L2CAP_TRACE_WARNING(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_WARN, "BT_L2CAP", fmt, ## args); \ if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(L2CAP, WARNING)) BT_PRINT_W("BT_L2CAP", fmt, ## args); \ } @@ -277,12 +272,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l } #define L2CAP_TRACE_EVENT(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_L2CAP", fmt, ## args); \ if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_EVENT && BT_LOG_LEVEL_CHECK(L2CAP, EVENT)) BT_PRINT_D("BT_L2CAP", fmt, ## args); \ } #define L2CAP_TRACE_DEBUG(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_L2CAP", fmt, ## args); \ if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_DEBUG && BT_LOG_LEVEL_CHECK(L2CAP, DEBUG)) BT_PRINT_D("BT_L2CAP", fmt, ## args); \ } @@ -317,12 +310,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l #if (BT_BLE_LOG_SPI_OUT_HOST_ENABLED && !CLASSIC_BT_INCLUDED) #define GAP_TRACE_ERROR(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_ERROR, "BT_GAP", fmt, ## args); \ if (gap_cb.trace_level >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(GAP, ERROR)) BT_PRINT_E("BT_GAP", fmt, ## args); \ } #define GAP_TRACE_WARNING(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_WARN, "BT_GAP", fmt, ## args); \ if (gap_cb.trace_level >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(GAP, WARNING)) BT_PRINT_W("BT_GAP", fmt, ## args); \ } @@ -332,7 +323,6 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l } #define GAP_TRACE_EVENT(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_GAP", fmt, ## args); \ if (gap_cb.trace_level >= BT_TRACE_LEVEL_EVENT && BT_LOG_LEVEL_CHECK(GAP, EVENT)) BT_PRINT_D("BT_GAP", fmt, ## args); \ } @@ -422,12 +412,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l #if (BT_BLE_LOG_SPI_OUT_HOST_ENABLED && !CLASSIC_BT_INCLUDED) #define GATT_TRACE_ERROR(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_ERROR, "BT_GATT", fmt, ## args); \ if (gatt_cb.trace_level >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(GATT, ERROR)) BT_PRINT_E("BT_GATT", fmt, ## args); \ } #define GATT_TRACE_WARNING(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_WARN, "BT_GATT", fmt, ## args); \ if (gatt_cb.trace_level >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(GATT, WARNING)) BT_PRINT_W("BT_GATT", fmt, ## args); \ } @@ -437,12 +425,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l } #define GATT_TRACE_EVENT(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_GATT", fmt, ## args); \ if (gatt_cb.trace_level >= BT_TRACE_LEVEL_EVENT && BT_LOG_LEVEL_CHECK(GATT, EVENT)) BT_PRINT_D("BT_GATT", fmt, ## args); \ } #define GATT_TRACE_DEBUG(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_GATT", fmt, ## args); \ if (gatt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG && BT_LOG_LEVEL_CHECK(GATT, DEBUG)) BT_PRINT_D("BT_GATT", fmt, ## args); \ } @@ -461,12 +447,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l #if (BT_BLE_LOG_SPI_OUT_HOST_ENABLED && !CLASSIC_BT_INCLUDED) #define SMP_TRACE_ERROR(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_ERROR, "BT_SMP", fmt, ## args); \ if (smp_cb.trace_level >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(SMP, ERROR)) BT_PRINT_E("BT_SMP", fmt, ## args); \ } #define SMP_TRACE_WARNING(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_WARN, "BT_SMP", fmt, ## args); \ if (smp_cb.trace_level >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(SMP, WARNING)) BT_PRINT_W("BT_SMP", fmt, ## args); \ } @@ -476,12 +460,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l } #define SMP_TRACE_EVENT(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_SMP", fmt, ## args); \ if (smp_cb.trace_level >= BT_TRACE_LEVEL_EVENT && BT_LOG_LEVEL_CHECK(SMP, EVENT)) BT_PRINT_D("BT_SMP", fmt, ## args); \ } #define SMP_TRACE_DEBUG(fmt, args...) { \ - ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_SMP", fmt, ## args); \ if (smp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG && BT_LOG_LEVEL_CHECK(SMP, DEBUG)) BT_PRINT_D("BT_SMP", fmt, ## args); \ }