1 // Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 #ifndef __BLUEDROID_USER_CONFIG_H__ 16 #define __BLUEDROID_USER_CONFIG_H__ 17 18 /* All the configuration from SDK defined here */ 19 #include "bt_common.h" 20 #include "bt_user_config.h" 21 22 /********************************************************** 23 * Thread/Task reference 24 **********************************************************/ 25 #ifdef CONFIG_BT_BTU_TASK_STACK_SIZE 26 #define UC_BTU_TASK_STACK_SIZE CONFIG_BT_BTU_TASK_STACK_SIZE 27 #else 28 #define UC_BTU_TASK_STACK_SIZE 4096 29 #endif 30 31 32 /********************************************************** 33 * Profile reference 34 **********************************************************/ 35 //Classic BT reference 36 #ifdef CONFIG_BT_CLASSIC_ENABLED 37 #define UC_BT_CLASSIC_ENABLED CONFIG_BT_CLASSIC_ENABLED 38 #else 39 #define UC_BT_CLASSIC_ENABLED 0 40 #endif 41 42 //A2DP 43 #ifdef CONFIG_BT_A2DP_ENABLE 44 #define UC_BT_A2DP_ENABLED CONFIG_BT_A2DP_ENABLE 45 #else 46 #define UC_BT_A2DP_ENABLED 0 47 #endif 48 49 //SPP 50 #ifdef CONFIG_BT_SPP_ENABLED 51 #define UC_BT_SPP_ENABLED CONFIG_BT_SPP_ENABLED 52 #else 53 #define UC_BT_SPP_ENABLED 0 54 #endif 55 56 //HFP(AG) 57 #ifdef CONFIG_BT_HFP_AG_ENABLE 58 #define UC_BT_HFP_AG_ENABLED CONFIG_BT_HFP_AG_ENABLE 59 #else 60 #define UC_BT_HFP_AG_ENABLED 0 61 #endif 62 63 //HFP(Client) 64 #ifdef CONFIG_BT_HFP_CLIENT_ENABLE 65 #define UC_BT_HFP_CLIENT_ENABLED CONFIG_BT_HFP_CLIENT_ENABLE 66 #else 67 #define UC_BT_HFP_CLIENT_ENABLED 0 68 #endif 69 70 //HID HOST(BT) 71 #ifdef CONFIG_BT_HID_HOST_ENABLED 72 #define UC_BT_HID_HOST_ENABLED CONFIG_BT_HID_HOST_ENABLED 73 #else 74 #define UC_BT_HID_HOST_ENABLED 0 75 #endif 76 77 //SSP 78 #ifdef CONFIG_BT_SSP_ENABLED 79 #define UC_BT_SSP_ENABLED CONFIG_BT_SSP_ENABLED 80 #else 81 #define UC_BT_SSP_ENABLED 0 82 #endif 83 84 //BLE 85 #ifdef CONFIG_BT_BLE_ENABLED 86 #define UC_BT_BLE_ENABLED CONFIG_BT_BLE_ENABLED 87 #else 88 #define UC_BT_BLE_ENABLED 0 89 #endif 90 91 #ifdef CONFIG_BT_BLE_RPA_SUPPORTED 92 #define UC_BT_BLE_RPA_SUPPORTED CONFIG_BT_BLE_RPA_SUPPORTED 93 #else 94 #define UC_BT_BLE_RPA_SUPPORTED 0 95 #endif 96 97 #ifdef CONFIG_BT_BLE_50_FEATURES_SUPPORTED 98 #define UC_BT_BLE_50_FEATURES_SUPPORTED CONFIG_BT_BLE_50_FEATURES_SUPPORTED 99 #else 100 #define UC_BT_BLE_50_FEATURES_SUPPORTED 0 101 #endif 102 103 #ifdef CONFIG_BT_BLE_42_FEATURES_SUPPORTED 104 #define UC_BT_BLE_42_FEATURES_SUPPORTED 1 105 #else 106 #define UC_BT_BLE_42_FEATURES_SUPPORTED 1 107 #endif 108 109 //GATTS 110 #ifdef CONFIG_BT_GATTS_ENABLE 111 #define UC_BT_GATTS_ENABLE CONFIG_BT_GATTS_ENABLE 112 #else 113 #define UC_BT_GATTS_ENABLE 0 114 #endif 115 116 //GATTC 117 #ifdef CONFIG_BT_GATTC_ENABLE 118 #define UC_BT_GATTC_ENABLE 1 119 #else 120 #define UC_BT_GATTC_ENABLE 0 121 #endif 122 123 //GATTC CACHE 124 #ifdef CONFIG_BT_GATTC_CACHE_NVS_FLASH 125 #define UC_BT_GATTC_CACHE_NVS_FLASH_ENABLED CONFIG_BT_GATTC_CACHE_NVS_FLASH 126 #else 127 #define UC_BT_GATTC_CACHE_NVS_FLASH_ENABLED 0 128 #endif 129 130 #ifdef CONFIG_BT_GATTC_CONNECT_RETRY_COUNT 131 #define UC_BT_GATTC_CONNECT_RETRY_COUNT CONFIG_BT_GATTC_CONNECT_RETRY_COUNT 132 #else 133 #define UC_BT_GATTC_CONNECT_RETRY_COUNT 0 134 #endif 135 136 137 //SMP 138 #ifdef CONFIG_BT_SMP_ENABLE 139 #define UC_BT_SMP_ENABLE CONFIG_BT_SMP_ENABLE 140 #else 141 #define UC_BT_SMP_ENABLE 0 142 #endif 143 144 //SMP_SLAVE_CON_PARAMS_UPD_ENABLE 145 #ifdef CONFIG_BT_SMP_SLAVE_CON_PARAMS_UPD_ENABLE 146 #define UC_BT_SMP_SLAVE_CON_PARAMS_UPD_ENABLE CONFIG_BT_SMP_SLAVE_CON_PARAMS_UPD_ENABLE 147 #else 148 #define UC_BT_SMP_SLAVE_CON_PARAMS_UPD_ENABLE 0 149 #endif 150 151 #if CONFIG_BT_CTRL_ESP32 152 //BTDM_BLE_ADV_REPORT_FLOW_CTRL_SUPP 153 #ifdef CONFIG_BTDM_BLE_ADV_REPORT_FLOW_CTRL_SUPP 154 #define UC_BTDM_BLE_ADV_REPORT_FLOW_CTRL_SUPP CONFIG_BTDM_BLE_ADV_REPORT_FLOW_CTRL_SUPP 155 #else 156 #define UC_BTDM_BLE_ADV_REPORT_FLOW_CTRL_SUPP 0 157 #endif 158 159 //SMP_SLAVE_CON_PARAMS_UPD_ENABLE 160 #ifdef CONFIG_BTDM_BLE_ADV_REPORT_FLOW_CTRL_NUM 161 #define UC_BTDM_BLE_ADV_REPORT_FLOW_CTRL_NUM CONFIG_BTDM_BLE_ADV_REPORT_FLOW_CTRL_NUM 162 #else 163 #define UC_BTDM_BLE_ADV_REPORT_FLOW_CTRL_NUM 100 164 #endif 165 166 //BTDM_BLE_ADV_REPORT_FLOW_CTRL_SUPP 167 #ifdef CONFIG_BTDM_BLE_ADV_REPORT_DISCARD_THRSHOLD 168 #define UC_BTDM_BLE_ADV_REPORT_DISCARD_THRSHOLD CONFIG_BTDM_BLE_ADV_REPORT_DISCARD_THRSHOLD 169 #else 170 #define UC_BTDM_BLE_ADV_REPORT_DISCARD_THRSHOLD 20 171 #endif 172 173 #endif //CONFIG_BT_CTRL_ESP32 174 175 #if (CONFIG_BT_CTRL_ESP32C3 || CONFIG_BT_CTRL_ESP32S3) 176 //BTDM_BLE_ADV_REPORT_FLOW_CTRL_SUPP 177 #ifdef CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP 178 #define UC_BTDM_BLE_ADV_REPORT_FLOW_CTRL_SUPP CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP 179 #else 180 #define UC_BTDM_BLE_ADV_REPORT_FLOW_CTRL_SUPP 0 181 #endif 182 183 //SMP_SLAVE_CON_PARAMS_UPD_ENABLE 184 #ifdef CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM 185 #define UC_BTDM_BLE_ADV_REPORT_FLOW_CTRL_NUM CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM 186 #else 187 #define UC_BTDM_BLE_ADV_REPORT_FLOW_CTRL_NUM 100 188 #endif 189 190 //BTDM_BLE_ADV_REPORT_FLOW_CTRL_SUPP 191 #ifdef CONFIG_BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD 192 #define UC_BTDM_BLE_ADV_REPORT_DISCARD_THRSHOLD CONFIG_BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD 193 #else 194 #define UC_BTDM_BLE_ADV_REPORT_DISCARD_THRSHOLD 20 195 #endif 196 197 #endif //(CONFIG_BT_CTRL_ESP32C3 || CONFIG_BT_CTRL_ESP32S3) 198 199 //BT ACL CONNECTIONS 200 #ifdef CONFIG_BT_ACL_CONNECTIONS 201 #define UC_BT_ACL_CONNECTIONS CONFIG_BT_ACL_CONNECTIONS 202 #else 203 #define UC_BT_ACL_CONNECTIONS 5 204 #endif 205 206 #ifdef CONFIG_BT_MULTI_CONNECTION_ENBALE 207 #define UC_BT_MULTI_CONNECTION_ENBALE CONFIG_BT_MULTI_CONNECTION_ENBALE 208 #else 209 #define UC_BT_MULTI_CONNECTION_ENBALE 0 210 #endif 211 212 //BT_BLE_ESTAB_LINK_CONN_TOUT 213 #ifdef CONFIG_BT_BLE_ESTAB_LINK_CONN_TOUT 214 #define UC_BT_BLE_ESTAB_LINK_CONN_TOUT CONFIG_BT_BLE_ESTAB_LINK_CONN_TOUT 215 #else 216 #define UC_BT_BLE_ESTAB_LINK_CONN_TOUT 30 217 #endif 218 219 220 //HOST QUEUE CONGEST CHECK 221 #ifdef CONFIG_BT_BLE_HOST_QUEUE_CONGESTION_CHECK 222 #define UC_BT_BLE_HOST_QUEUE_CONGESTION_CHECK CONFIG_BT_BLE_HOST_QUEUE_CONGESTION_CHECK 223 #else 224 #define UC_BT_BLE_HOST_QUEUE_CONGESTION_CHECK 0 225 #endif 226 227 #ifdef CONFIG_BT_GATTS_PPCP_CHAR_GAP 228 #define UC_CONFIG_BT_GATTS_PPCP_CHAR_GAP CONFIG_BT_GATTS_PPCP_CHAR_GAP 229 #else 230 #define UC_CONFIG_BT_GATTS_PPCP_CHAR_GAP 0 231 #endif 232 233 234 #ifdef CONFIG_BT_GATT_MAX_SR_PROFILES 235 #define UC_CONFIG_BT_GATT_MAX_SR_PROFILES CONFIG_BT_GATT_MAX_SR_PROFILES 236 #else 237 #define UC_CONFIG_BT_GATT_MAX_SR_PROFILES 8 238 #endif 239 240 241 #ifdef CONFIG_BT_GATTS_SEND_SERVICE_CHANGE_MODE 242 #define UC_BT_GATTS_SEND_SERVICE_CHANGE_MODE CONFIG_BT_GATTS_SEND_SERVICE_CHANGE_MODE 243 #else 244 #define UC_BT_GATTS_SEND_SERVICE_CHANGE_MODE 0 245 #endif 246 247 #ifdef CONFIG_BT_BLE_ACT_SCAN_REP_ADV_SCAN 248 #define UC_BT_BLE_ACT_SCAN_REP_ADV_SCAN CONFIG_BT_BLE_ACT_SCAN_REP_ADV_SCAN 249 #else 250 #define UC_BT_BLE_ACT_SCAN_REP_ADV_SCAN 0 251 #endif 252 253 //SCO VOICE OVER HCI 254 #ifdef CONFIG_BT_HFP_AUDIO_DATA_PATH_HCI 255 #define UC_BT_HFP_AUDIO_DATA_PATH_HCI CONFIG_BT_HFP_AUDIO_DATA_PATH_HCI 256 #else 257 #define UC_BT_HFP_AUDIO_DATA_PATH_HCI 0 258 #endif 259 260 //Wide Band Speech 261 #ifdef CONFIG_BT_HFP_WBS_ENABLE 262 #define UC_BT_HFP_WBS_ENABLE CONFIG_BT_HFP_WBS_ENABLE 263 #else 264 #define UC_BT_HFP_WBS_ENABLE 0 265 #endif 266 267 /********************************************************** 268 * Memory reference 269 **********************************************************/ 270 271 //MEMORY ALLOCATOR 272 #ifdef CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST 273 #define UC_HEAP_ALLOCATION_FROM_SPIRAM_FIRST CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST 274 #else 275 #define UC_HEAP_ALLOCATION_FROM_SPIRAM_FIRST 0 276 #endif 277 278 //MEMORY DEBUG 279 #ifdef CONFIG_BT_BLUEDROID_MEM_DEBUG 280 #define UC_BT_BLUEDROID_MEM_DEBUG CONFIG_BT_BLUEDROID_MEM_DEBUG 281 #else 282 #define UC_BT_BLUEDROID_MEM_DEBUG 0 283 #endif 284 285 286 /********************************************************** 287 * Trace reference 288 **********************************************************/ 289 290 #ifdef CONFIG_BT_LOG_HCI_TRACE_LEVEL 291 #define UC_BT_LOG_HCI_TRACE_LEVEL CONFIG_BT_LOG_HCI_TRACE_LEVEL 292 #else 293 #define UC_BT_LOG_HCI_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 294 #endif 295 296 #ifdef CONFIG_BT_LOG_BTM_TRACE_LEVEL 297 #define UC_BT_LOG_BTM_TRACE_LEVEL CONFIG_BT_LOG_BTM_TRACE_LEVEL 298 #else 299 #define UC_BT_LOG_BTM_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 300 #endif 301 302 #ifdef CONFIG_BT_LOG_L2CAP_TRACE_LEVEL 303 #define UC_BT_LOG_L2CAP_TRACE_LEVEL CONFIG_BT_LOG_L2CAP_TRACE_LEVEL 304 #else 305 #define UC_BT_LOG_L2CAP_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 306 #endif 307 308 #ifdef CONFIG_BT_LOG_RFCOMM_TRACE_LEVEL 309 #define UC_BT_LOG_RFCOMM_TRACE_LEVEL CONFIG_BT_LOG_RFCOMM_TRACE_LEVEL 310 #else 311 #define UC_BT_LOG_RFCOMM_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 312 #endif 313 314 #ifdef CONFIG_BT_LOG_SDP_TRACE_LEVEL 315 #define UC_BT_LOG_SDP_TRACE_LEVEL CONFIG_BT_LOG_SDP_TRACE_LEVEL 316 #else 317 #define UC_BT_LOG_SDP_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 318 #endif 319 320 #ifdef CONFIG_BT_LOG_GAP_TRACE_LEVEL 321 #define UC_BT_LOG_GAP_TRACE_LEVEL CONFIG_BT_LOG_GAP_TRACE_LEVEL 322 #else 323 #define UC_BT_LOG_GAP_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 324 #endif 325 326 #ifdef CONFIG_BT_LOG_BNEP_TRACE_LEVEL 327 #define UC_BT_LOG_BNEP_TRACE_LEVEL CONFIG_BT_LOG_BNEP_TRACE_LEVEL 328 #else 329 #define UC_BT_LOG_BNEP_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 330 #endif 331 332 #ifdef CONFIG_BT_LOG_PAN_TRACE_LEVEL 333 #define UC_BT_LOG_PAN_TRACE_LEVEL CONFIG_BT_LOG_PAN_TRACE_LEVEL 334 #else 335 #define UC_BT_LOG_PAN_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 336 #endif 337 338 #ifdef CONFIG_BT_LOG_A2D_TRACE_LEVEL 339 #define UC_BT_LOG_A2D_TRACE_LEVEL CONFIG_BT_LOG_A2D_TRACE_LEVEL 340 #else 341 #define UC_BT_LOG_A2D_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 342 #endif 343 344 #ifdef CONFIG_BT_LOG_AVDT_TRACE_LEVEL 345 #define UC_BT_LOG_AVDT_TRACE_LEVEL CONFIG_BT_LOG_AVDT_TRACE_LEVEL 346 #else 347 #define UC_BT_LOG_AVDT_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 348 #endif 349 350 #ifdef CONFIG_BT_LOG_AVCT_TRACE_LEVEL 351 #define UC_BT_LOG_AVCT_TRACE_LEVEL CONFIG_BT_LOG_AVCT_TRACE_LEVEL 352 #else 353 #define UC_BT_LOG_AVCT_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 354 #endif 355 356 #ifdef CONFIG_BT_LOG_AVRC_TRACE_LEVEL 357 #define UC_BT_LOG_AVRC_TRACE_LEVEL CONFIG_BT_LOG_AVRC_TRACE_LEVEL 358 #else 359 #define UC_BT_LOG_AVRC_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 360 #endif 361 362 #ifdef CONFIG_BT_LOG_MCA_TRACE_LEVEL 363 #define UC_BT_LOG_MCA_TRACE_LEVEL CONFIG_BT_LOG_MCA_TRACE_LEVEL 364 #else 365 #define UC_BT_LOG_MCA_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 366 #endif 367 368 #ifdef CONFIG_BT_LOG_HIDH_TRACE_LEVEL 369 #define UC_BT_LOG_HIDH_TRACE_LEVEL CONFIG_BT_LOG_HIDH_TRACE_LEVEL 370 #else 371 #define UC_BT_LOG_HIDH_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 372 #endif 373 374 #ifdef CONFIG_BT_LOG_APPL_TRACE_LEVEL 375 #define UC_BT_LOG_APPL_TRACE_LEVEL CONFIG_BT_LOG_APPL_TRACE_LEVEL 376 #else 377 #define UC_BT_LOG_APPL_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 378 #endif 379 380 #ifdef CONFIG_BT_LOG_GATT_TRACE_LEVEL 381 #define UC_BT_LOG_GATT_TRACE_LEVEL CONFIG_BT_LOG_GATT_TRACE_LEVEL 382 #else 383 #define UC_BT_LOG_GATT_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 384 #endif 385 386 #ifdef CONFIG_BT_LOG_SMP_TRACE_LEVEL 387 #define UC_BT_LOG_SMP_TRACE_LEVEL CONFIG_BT_LOG_SMP_TRACE_LEVEL 388 #else 389 #define UC_BT_LOG_SMP_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 390 #endif 391 392 #ifdef CONFIG_BT_LOG_BTIF_TRACE_LEVEL 393 #define UC_BT_LOG_BTIF_TRACE_LEVEL CONFIG_BT_LOG_BTIF_TRACE_LEVEL 394 #else 395 #define UC_BT_LOG_BTIF_TRACE_LEVEL UC_TRACE_LEVEL_WARNING 396 #endif 397 398 #endif /* __BLUEDROID_USER_CONFIG_H__ */ 399