mirror of
https://github.com/espressif/esp-idf.git
synced 2026-04-27 19:13:21 +00:00
11268d8bfb
- feat(soc_caps): Enable BT Classic and BLE in esp32s31 - Add git submodule for ESP32-S31 bt controller lib files - changed sdkconfig.defaults and README for Bluetooth Classic examples - change(docs): Added vendor HCI documentations for ESP32-S31 - change(Bluedroid): Adapt to ESP32-S31 due to some API differences on Bluetooth controller from ESP32 - change(bt): Modify CMakeLists.txt to support the Bluetooth dual-mode architecture on ESP32-S31 - change(bt): Add ECC P-192 functions to tinycrypt
216 lines
8.7 KiB
Plaintext
216 lines
8.7 KiB
Plaintext
config BT_ALARM_MAX_NUM
|
|
int "Maximum number of Bluetooth alarms"
|
|
default 50
|
|
depends on (BT_BLUEDROID_ENABLED || BT_NIMBLE_ENABLED)
|
|
help
|
|
This option decides the maximum number of alarms which
|
|
could be used by Bluetooth host.
|
|
|
|
choice BT_SMP_CRYPTO_STACK
|
|
prompt "SMP cryptographic stack"
|
|
depends on (BT_BLE_SMP_ENABLE || BT_SMP_ENABLE || BT_NIMBLE_SECURITY_ENABLE || BT_LE_SECURITY_ENABLE || \
|
|
BT_CTRL_BREDR_ENABLE)
|
|
default BT_SMP_CRYPTO_STACK_TINYCRYPT
|
|
help
|
|
Select the cryptographic library to use for SMP operations (AES, AES-CMAC, ECDH P-256).
|
|
With BR/EDR controller enabled, mbedTLS also enables SHA-256 (for the BR/EDR port)
|
|
and ECDH for P-192 on the controller port.
|
|
|
|
config BT_SMP_CRYPTO_STACK_TINYCRYPT
|
|
bool "TinyCrypt"
|
|
help
|
|
Use TinyCrypt library for cryptographic operations.
|
|
TinyCrypt is a lightweight cryptographic library designed for constrained devices.
|
|
This can reduce code size compared to the native implementation.
|
|
This is the default option.
|
|
|
|
config BT_SMP_CRYPTO_STACK_MBEDTLS
|
|
# BT Classic requires ECC P-192, which is removed in mbedtls 4.1.0
|
|
depends on !BT_CTRL_BREDR_ENABLE
|
|
bool "mbedTLS"
|
|
select MBEDTLS_AES_C
|
|
select MBEDTLS_CMAC_C
|
|
select MBEDTLS_ECDH_C
|
|
select MBEDTLS_ECP_C
|
|
select MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
|
help
|
|
Use mbedTLS library for cryptographic operations.
|
|
This can provide hardware acceleration on supported platforms and reduce code size
|
|
by sharing crypto implementations with other components.
|
|
|
|
endchoice
|
|
|
|
menu "BT Logs"
|
|
menu "Log Sources"
|
|
menuconfig BT_LE_CONTROLLER_LOG_ENABLED
|
|
depends on SOC_ESP_NIMBLE_CONTROLLER
|
|
bool "Enable Controller logs"
|
|
default n
|
|
|
|
choice BT_LE_CONTROLLER_LOG_OUTPUT_MODE
|
|
depends on BT_LE_CONTROLLER_LOG_ENABLED
|
|
prompt "Controller log output mode"
|
|
default BT_LE_CONTROLLER_LOG_MODE_BLE_LOG_V2 if BLE_LOG_ENABLED
|
|
default BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED
|
|
|
|
config BT_LE_CONTROLLER_LOG_MODE_BLE_LOG_V2
|
|
depends on BLE_LOG_ENABLED
|
|
bool "BLE Log v2 mode"
|
|
help
|
|
Utilize BLE Log v2 for controller log
|
|
|
|
config BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED
|
|
depends on !BLE_LOG_ENABLED
|
|
bool "Legacy log mode (Deprecated)"
|
|
endchoice
|
|
|
|
if BT_LE_CONTROLLER_LOG_ENABLED && BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED
|
|
config BT_LE_CONTROLLER_LOG_CTRL_ENABLED
|
|
bool "Enable controller link layer logs"
|
|
default y
|
|
|
|
config BT_LE_CONTROLLER_LOG_HCI_ENABLED
|
|
bool "Enable controller HCI logs"
|
|
default y
|
|
|
|
config BT_LE_CONTROLLER_LOG_DUMP_ONLY
|
|
bool "Controller log dump mode only"
|
|
default y
|
|
help
|
|
Only operate in dump mode. Logs are cached internally only,
|
|
not output asynchronously.
|
|
|
|
config BT_LE_CONTROLLER_LOG_SPI_OUT_ENABLED
|
|
bool "Output controller logs to SPI bus (Experimental)"
|
|
depends on !BT_LE_CONTROLLER_LOG_DUMP_ONLY
|
|
select BT_BLE_LOG_SPI_OUT_ENABLED
|
|
default n
|
|
help
|
|
Output ble controller logs to SPI bus
|
|
|
|
config BT_LE_CONTROLLER_LOG_STORAGE_ENABLE
|
|
bool "Store controller logs to flash (Experimental)"
|
|
depends on !BT_LE_CONTROLLER_LOG_DUMP_ONLY
|
|
default n
|
|
help
|
|
Store ble controller logs to flash memory.
|
|
|
|
config BT_LE_CONTROLLER_LOG_PARTITION_SIZE
|
|
int "Controller log partition size (multiples of 4K)"
|
|
depends on BT_LE_CONTROLLER_LOG_STORAGE_ENABLE
|
|
default 65536
|
|
help
|
|
The size of ble controller log partition shall be a multiples of 4K.
|
|
The name of log partition shall be "bt_ctrl_log".
|
|
The partition type shall be ESP_PARTITION_TYPE_DATA.
|
|
The partition sub_type shall be ESP_PARTITION_SUBTYPE_ANY.
|
|
|
|
config BT_LE_LOG_CTRL_BUF1_SIZE
|
|
int "First controller log buffer size"
|
|
default 4096
|
|
help
|
|
Configure the size of the first BLE controller LOG buffer.
|
|
|
|
config BT_LE_LOG_CTRL_BUF2_SIZE
|
|
int "Second controller log buffer size"
|
|
default 1024
|
|
help
|
|
Configure the size of the second BLE controller LOG buffer.
|
|
|
|
config BT_LE_LOG_HCI_BUF_SIZE
|
|
int "HCI log buffer size"
|
|
default 4096
|
|
help
|
|
Configure the size of the BLE HCI LOG buffer.
|
|
endif
|
|
|
|
config BT_LE_CONTROLLER_LOG_OUTPUT_LEVEL
|
|
int "Controller log output level"
|
|
depends on BT_LE_CONTROLLER_LOG_ENABLED
|
|
range 0 5
|
|
default 2 if BT_LOG_CRITICAL_ONLY_CTRL
|
|
default 1
|
|
help
|
|
The output level of controller log.
|
|
|
|
config BT_LE_CONTROLLER_LOG_MOD_OUTPUT_SWITCH
|
|
hex "Controller log module output switch"
|
|
depends on BT_LE_CONTROLLER_LOG_ENABLED
|
|
range 0 0xFFFFFFFF
|
|
default 0xFFFFFFFF
|
|
help
|
|
Bitmask to enable/disable logging for individual controller
|
|
modules. 0xFFFFFFFF enables all modules.
|
|
|
|
config BT_LE_CONTROLLER_LOG_WRAP_PANIC_HANDLER_ENABLE
|
|
bool "Enable wrap panic handler"
|
|
depends on BT_LE_CONTROLLER_LOG_ENABLED
|
|
default n
|
|
help
|
|
Wrap esp_panic_handler to get controller logs when PC pointer exception crashes.
|
|
|
|
config BT_LE_CONTROLLER_LOG_TASK_WDT_USER_HANDLER_ENABLE
|
|
bool "Enable esp_task_wdt_isr_user_handler implementation"
|
|
depends on BT_LE_CONTROLLER_LOG_ENABLED
|
|
default n
|
|
help
|
|
Implement esp_task_wdt_isr_user_handler to get controller logs when task wdt issue is triggered.
|
|
endmenu
|
|
|
|
menuconfig BT_LOG_CRITICAL_ONLY
|
|
bool "Enable bandwidth-optimized log mode (critical logs only)"
|
|
default n
|
|
depends on !BT_STACK_NO_LOG
|
|
select BLE_LOG_ENABLED
|
|
select BLE_COMPRESSED_LOG_ENABLE
|
|
help
|
|
Enable bandwidth-optimized logging for the BLE Log Async Output
|
|
system. When enabled, only high-severity logs are captured and
|
|
log encoding is applied to reduce UART/SPI DMA bandwidth usage.
|
|
|
|
Each stack component below can be independently enabled.
|
|
Requires a DMA-backed output peripheral — configure in:
|
|
BLE Log Module → BLE Log peripheral choice.
|
|
|
|
if BT_LOG_CRITICAL_ONLY
|
|
config BT_LOG_CRITICAL_ONLY_CTRL
|
|
bool "Controller: bandwidth-optimized logging"
|
|
depends on SOC_ESP_NIMBLE_CONTROLLER || BT_CTRL_RUN_IN_FLASH_ONLY
|
|
select BT_LE_CONTROLLER_LOG_ENABLED if SOC_ESP_NIMBLE_CONTROLLER
|
|
select BT_CTRL_LE_LOG_EN if !SOC_ESP_NIMBLE_CONTROLLER
|
|
default y
|
|
help
|
|
Enable controller log output via the async transport with
|
|
a reduced output level for bandwidth optimization.
|
|
The controller log level defaults to 2 when active.
|
|
|
|
config BT_LOG_CRITICAL_ONLY_HOST
|
|
bool "Host: bandwidth-optimized logging"
|
|
select BLE_HOST_COMPRESSED_LOG_ENABLE if BT_BLUEDROID_ENABLED
|
|
default y
|
|
help
|
|
Enable host stack log encoding via the async transport.
|
|
For Bluedroid, the per-level compression options control
|
|
which severity levels are encoded — configure in:
|
|
Settings of BLE Log Compression → BLE Host log compression.
|
|
|
|
config BT_LOG_CRITICAL_ONLY_MESH
|
|
bool "Mesh: bandwidth-optimized logging"
|
|
depends on SOC_BLE_MESH_SUPPORTED && BLE_MESH
|
|
select BLE_MESH_COMPRESSED_LOG_ENABLE
|
|
default y
|
|
help
|
|
Enable mesh log encoding via the async transport.
|
|
The per-level compression options are configured in:
|
|
Settings of BLE Log Compression → BLE Mesh log compression.
|
|
endif # BT_LOG_CRITICAL_ONLY
|
|
|
|
source "$IDF_PATH/components/bt/common/ble_log/Kconfig.in"
|
|
endmenu
|
|
|
|
config BT_LE_USED_MEM_STATISTICS_ENABLED
|
|
bool "Enable used memory statistics"
|
|
default n
|
|
help
|
|
Used in internal tests only. Enable used memory statistics.
|