]> granicus.if.org Git - esp-idf/blob - components/bt/Kconfig
esp32: Allow SPIRAM_MALLOC_RESERVE_INTERNAL to span multiple regions of memory
[esp-idf] / components / bt / Kconfig
1 menu Bluetooth
2
3
4 config BT_ENABLED
5     bool "Bluetooth"
6     help
7         Select this option to enable Bluetooth and show the submenu with Bluetooth configuration choices.
8
9 choice BTDM_CONTROLLER_PINNED_TO_CORE_CHOICE
10     prompt "The cpu core which bluetooth controller run"
11     depends on BT_ENABLED && !FREERTOS_UNICORE
12     help
13         Specify the cpu core to run bluetooth controller.
14         Can not specify no-affinity.
15
16 config BTDM_CONTROLLER_PINNED_TO_CORE_0
17     bool "Core 0 (PRO CPU)"
18 config BTDM_CONTROLLER_PINNED_TO_CORE_1
19     bool "Core 1 (APP CPU)"
20     depends on !FREERTOS_UNICORE
21 endchoice
22
23 config BTDM_CONTROLLER_PINNED_TO_CORE
24     int
25     default 0 if BTDM_CONTROLLER_PINNED_TO_CORE_0
26     default 1 if BTDM_CONTROLLER_PINNED_TO_CORE_1
27     default 0
28
29 choice BTDM_CONTROLLER_HCI_MODE_CHOICE
30     prompt "HCI mode"
31     depends on BT_ENABLED
32     help
33         Speicify HCI mode as VHCI or UART(H4)
34
35 config BTDM_CONTROLLER_HCI_MODE_VHCI
36     bool "VHCI"
37     help
38         Normal option. Mostly, choose this VHCI when bluetooth host run on ESP32, too.
39
40 config BTDM_CONTROLLER_HCI_MODE_UART_H4
41     bool "UART(H4)"
42     help
43         If use external bluetooth host which run on other hardware and use UART as the HCI interface,
44         choose this option.
45 endchoice
46
47 menu "HCI UART(H4) Options"
48     visible if BTDM_CONTROLLER_HCI_MODE_UART_H4
49
50 config BT_HCI_UART_NO
51     int "UART Number for HCI"
52     depends on BTDM_CONTROLLER_HCI_MODE_UART_H4
53     range 1 2
54     default 1
55     help
56         Uart number for HCI. The available uart is UART1 and UART2.
57
58 config BT_HCI_UART_BAUDRATE
59     int "UART Baudrate for HCI"
60     depends on BTDM_CONTROLLER_HCI_MODE_UART_H4
61     range 115200 921600
62     default 921600
63     help
64         UART Baudrate for HCI. Please use standard baudrate.
65 endmenu
66
67 menu "MODEM SLEEP Options"
68     visible if BT_ENABLED
69
70 config BTDM_CONTROLLER_MODEM_SLEEP
71     bool "Bluetooth modem sleep"
72     depends on BT_ENABLED
73     default n
74     help
75         Enable/disable bluetooth controller low power mode.
76         Note that currently there is problem in the combination use of bluetooth modem sleep and Dynamic Frequency Scaling(DFS). So do not enable DFS if bluetooth modem sleep is in use.
77
78 choice BTDM_MODEM_SLEEP_MODE
79     prompt "Bluetooth Modem sleep mode"
80     depends on BTDM_CONTROLLER_MODEM_SLEEP
81     help
82         To select which strategy to use for modem sleep
83
84 config BTDM_MODEM_SLEEP_MODE_ORIG
85     bool "ORIG Mode(sleep with low power clock)"
86     help
87         ORIG mode is a deep sleep mode that can be used for dual mode controller. In this mode, bluetooth controller sleeps between BR/EDR frames and BLE events. A low power clock is used to maintain bluetooth reference clock.
88 config BTDM_MODEM_SLEEP_MODE_EVED
89     bool "EVED Mode "
90     help
91         This mode is for BLE only.
92 endchoice
93
94 choice BTDM_LOW_POWER_CLOCK
95     prompt "Bluetooth low power clock"
96     depends on BTDM_MODEM_SLEEP_MODE_ORIG
97     help
98         Select the low power clock source for bluetooth controller
99
100 config BTDM_LPCLK_SEL_MAIN_XTAL
101     bool "Main crystal"
102 config BTDM_LPCLK_SEL_EXT_32K_XTAL
103     bool "External 32kHz crystal"
104     depends on ESP32_RTC_CLOCK_SOURCE_EXTERNAL_CRYSTAL
105 endchoice
106
107 endmenu
108
109 menuconfig BLUEDROID_ENABLED
110     bool "Bluedroid Enable"
111     depends on BTDM_CONTROLLER_HCI_MODE_VHCI
112     default y
113     help
114         This enables the default Bluedroid Bluetooth stack
115
116 choice BLUEDROID_PINNED_TO_CORE_CHOICE
117     prompt "The cpu core which Bluedroid run"
118     depends on BLUEDROID_ENABLED && !FREERTOS_UNICORE
119     help
120         Which the cpu core to run Bluedroid. Can choose core0 and core1.
121         Can not specify no-affinity.
122
123 config BLUEDROID_PINNED_TO_CORE_0
124     bool "Core 0 (PRO CPU)"
125 config BLUEDROID_PINNED_TO_CORE_1
126     bool "Core 1 (APP CPU)"
127     depends on !FREERTOS_UNICORE
128 endchoice
129
130 config BLUEDROID_PINNED_TO_CORE
131     int
132     depends on BLUEDROID_ENABLED
133     default 0 if BLUEDROID_PINNED_TO_CORE_0
134     default 1 if BLUEDROID_PINNED_TO_CORE_1
135     default 0
136
137 config BTC_TASK_STACK_SIZE
138     int "Bluetooth event (callback to application) task stack size"
139     depends on BLUEDROID_ENABLED
140     default 3072
141     help
142         This select btc task stack size
143
144 config BLUEDROID_MEM_DEBUG
145     bool "Bluedroid memory debug"
146     depends on BLUEDROID_ENABLED
147     default n
148     help
149         Bluedroid memory debug
150
151 config CLASSIC_BT_ENABLED
152     bool "Classic Bluetooth"
153     depends on BLUEDROID_ENABLED
154     default n
155     help
156         For now this option needs "SMP_ENABLE" to be set to yes
157
158 config BT_SSP_ENABLE
159    bool "Enable Secure Simple Pairing"
160    depends on CLASSIC_BT_ENABLED
161    default CLASSIC_BT_ENABLED
162
163 config A2DP_ENABLE
164     bool "A2DP"
165     depends on CLASSIC_BT_ENABLED
166     default n
167     help
168         Advanced Audio Distrubution Profile
169
170 config A2DP_SINK_TASK_STACK_SIZE
171     int "A2DP sink (audio stream decoding) task stack size"
172     depends on A2DP_ENABLE
173     default 2048
174
175 config A2DP_SOURCE_TASK_STACK_SIZE
176     int "A2DP source (audio stream encoding) task stack size"
177     depends on A2DP_ENABLE
178     default 2048
179
180 config BT_SPP_ENABLED
181     bool "SPP"
182     depends on CLASSIC_BT_ENABLED
183     default n
184     help
185         This enables the Serial Port Profile
186
187 config HFP_ENABLE
188     bool "Hands Free/Handset Profile"
189     depends on CLASSIC_BT_ENABLED
190     default n
191
192 choice HFP_ROLE
193     prompt "Hands-free Profile Role configuration"
194     depends on HFP_ENABLE
195
196 config HFP_CLIENT_ENABLE
197     bool "Hands Free Unit"
198 endchoice
199
200 choice HFP_AUDIO_DATA_PATH
201     prompt "audio(SCO) data path"
202     depends on HFP_ENABLE
203
204 config HFP_AUDIO_DATA_PATH_PCM
205     bool "PCM"
206     help
207         This enables the Serial Port Profile
208 config HFP_AUDIO_DATA_PATH_HCI
209     bool "HCI"
210     help
211         This enables the Serial Port Profile
212 endchoice
213
214 config GATTS_ENABLE
215     bool "Include GATT server module(GATTS)"
216     depends on BLUEDROID_ENABLED
217     default y
218     help
219         This option can be disabled when the app work only on gatt client mode
220
221 config GATTC_ENABLE
222     bool "Include GATT client module(GATTC)"
223     depends on BLUEDROID_ENABLED
224     default y
225     help
226         This option can be close when the app work only on gatt server mode
227
228 config GATTC_CACHE_NVS_FLASH
229     bool "Save gattc cache data to nvs flash"
230     depends on GATTC_ENABLE
231     default n
232     help
233         This select can save gattc cache data to nvs flash
234
235 config BLE_SMP_ENABLE
236    bool "Include BLE security module(SMP)"
237    depends on BLUEDROID_ENABLED
238    default y
239    help
240        This option can be close when the app not used the ble security connect.
241
242 config BT_STACK_NO_LOG
243     bool "Disable BT debug logs (minimize bin size)"
244     depends on BLUEDROID_ENABLED
245     default n
246     help
247         This select can save the rodata code size
248
249 menu "BT DEBUG LOG LEVEL"
250     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
251
252 choice HCI_INITIAL_TRACE_LEVEL
253     prompt "HCI layer"
254     default HCI_TRACE_LEVEL_WARNING
255     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
256     help
257         Define BT trace level for HCI layer
258
259 config HCI_TRACE_LEVEL_NONE
260     bool "NONE"
261 config HCI_TRACE_LEVEL_ERROR
262     bool "ERROR"
263 config HCI_TRACE_LEVEL_WARNING
264     bool "WARNING"
265 config HCI_TRACE_LEVEL_API
266     bool "API"
267 config HCI_TRACE_LEVEL_EVENT
268     bool "EVENT"
269 config HCI_TRACE_LEVEL_DEBUG
270     bool "DEBUG"
271 config HCI_TRACE_LEVEL_VERBOSE
272     bool "VERBOSE"
273 endchoice
274
275 config HCI_INITIAL_TRACE_LEVEL
276     int
277     depends on BLUEDROID_ENABLED
278     default 0 if HCI_TRACE_LEVEL_NONE
279     default 1 if HCI_TRACE_LEVEL_ERROR
280     default 2 if HCI_TRACE_LEVEL_WARNING
281     default 3 if HCI_TRACE_LEVEL_API
282     default 4 if HCI_TRACE_LEVEL_EVENT
283     default 5 if HCI_TRACE_LEVEL_DEBUG
284     default 6 if HCI_TRACE_LEVEL_VERBOSE
285     default 2
286
287 choice BTM_INITIAL_TRACE_LEVEL
288     prompt "BTM layer"
289     default BTM_TRACE_LEVEL_WARNING
290     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
291     help
292         Define BT trace level for BTM layer
293
294 config BTM_TRACE_LEVEL_NONE
295     bool "NONE"
296 config BTM_TRACE_LEVEL_ERROR
297     bool "ERROR"
298 config BTM_TRACE_LEVEL_WARNING
299     bool "WARNING"
300 config BTM_TRACE_LEVEL_API
301     bool "API"
302 config BTM_TRACE_LEVEL_EVENT
303     bool "EVENT"
304 config BTM_TRACE_LEVEL_DEBUG
305     bool "DEBUG"
306 config BTM_TRACE_LEVEL_VERBOSE
307     bool "VERBOSE"
308 endchoice
309
310 config BTM_INITIAL_TRACE_LEVEL
311     int
312     depends on BLUEDROID_ENABLED
313     default 0 if BTM_TRACE_LEVEL_NONE
314     default 1 if BTM_TRACE_LEVEL_ERROR
315     default 2 if BTM_TRACE_LEVEL_WARNING
316     default 3 if BTM_TRACE_LEVEL_API
317     default 4 if BTM_TRACE_LEVEL_EVENT
318     default 5 if BTM_TRACE_LEVEL_DEBUG
319     default 6 if BTM_TRACE_LEVEL_VERBOSE
320     default 2
321
322 choice L2CAP_INITIAL_TRACE_LEVEL
323     prompt "L2CAP layer"
324     default L2CAP_TRACE_LEVEL_WARNING
325     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
326     help
327         Define BT trace level for L2CAP layer
328
329 config L2CAP_TRACE_LEVEL_NONE
330     bool "NONE"
331 config L2CAP_TRACE_LEVEL_ERROR
332     bool "ERROR"
333 config L2CAP_TRACE_LEVEL_WARNING
334     bool "WARNING"
335 config L2CAP_TRACE_LEVEL_API
336     bool "API"
337 config L2CAP_TRACE_LEVEL_EVENT
338     bool "EVENT"
339 config L2CAP_TRACE_LEVEL_DEBUG
340     bool "DEBUG"
341 config L2CAP_TRACE_LEVEL_VERBOSE
342     bool "VERBOSE"
343 endchoice
344
345 config L2CAP_INITIAL_TRACE_LEVEL
346     int
347     depends on BLUEDROID_ENABLED
348     default 0 if L2CAP_TRACE_LEVEL_NONE
349     default 1 if L2CAP_TRACE_LEVEL_ERROR
350     default 2 if L2CAP_TRACE_LEVEL_WARNING
351     default 3 if L2CAP_TRACE_LEVEL_API
352     default 4 if L2CAP_TRACE_LEVEL_EVENT
353     default 5 if L2CAP_TRACE_LEVEL_DEBUG
354     default 6 if L2CAP_TRACE_LEVEL_VERBOSE
355     default 2
356
357 choice RFCOMM_INITIAL_TRACE_LEVEL
358     prompt "RFCOMM layer"
359     default RFCOMM_TRACE_LEVEL_WARNING
360     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
361     help
362         Define BT trace level for RFCOMM layer
363
364 config RFCOMM_TRACE_LEVEL_NONE
365     bool "NONE"
366 config RFCOMM_TRACE_LEVEL_ERROR
367     bool "ERROR"
368 config RFCOMM_TRACE_LEVEL_WARNING
369     bool "WARNING"
370 config RFCOMM_TRACE_LEVEL_API
371     bool "API"
372 config RFCOMM_TRACE_LEVEL_EVENT
373     bool "EVENT"
374 config RFCOMM_TRACE_LEVEL_DEBUG
375     bool "DEBUG"
376 config RFCOMM_TRACE_LEVEL_VERBOSE
377     bool "VERBOSE"
378 endchoice
379
380 config RFCOMM_INITIAL_TRACE_LEVEL
381     int
382     depends on BLUEDROID_ENABLED
383     default 0 if RFCOMM_TRACE_LEVEL_NONE
384     default 1 if RFCOMM_TRACE_LEVEL_ERROR
385     default 2 if RFCOMM_TRACE_LEVEL_WARNING
386     default 3 if RFCOMM_TRACE_LEVEL_API
387     default 4 if RFCOMM_TRACE_LEVEL_EVENT
388     default 5 if RFCOMM_TRACE_LEVEL_DEBUG
389     default 6 if RFCOMM_TRACE_LEVEL_VERBOSE
390     default 2
391
392 choice SDP_INITIAL_TRACE_LEVEL
393     prompt "SDP layer"
394     default SDP_TRACE_LEVEL_WARNING
395     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
396     help
397         Define BT trace level for SDP layer
398
399 config SDP_TRACE_LEVEL_NONE
400     bool "NONE"
401 config SDP_TRACE_LEVEL_ERROR
402     bool "ERROR"
403 config SDP_TRACE_LEVEL_WARNING
404     bool "WARNING"
405 config SDP_TRACE_LEVEL_API
406     bool "API"
407 config SDP_TRACE_LEVEL_EVENT
408     bool "EVENT"
409 config SDP_TRACE_LEVEL_DEBUG
410     bool "DEBUG"
411 config SDP_TRACE_LEVEL_VERBOSE
412     bool "VERBOSE"
413 endchoice
414
415 config SDP_INITIAL_TRACE_LEVEL
416     int
417     depends on BLUEDROID_ENABLED
418     default 0 if SDP_TRACE_LEVEL_NONE
419     default 1 if SDP_TRACE_LEVEL_ERROR
420     default 2 if SDP_TRACE_LEVEL_WARNING
421     default 3 if SDP_TRACE_LEVEL_API
422     default 4 if SDP_TRACE_LEVEL_EVENT
423     default 5 if SDP_TRACE_LEVEL_DEBUG
424     default 6 if SDP_TRACE_LEVEL_VERBOSE
425     default 2
426
427 choice GAP_INITIAL_TRACE_LEVEL
428     prompt "GAP layer"
429     default GAP_TRACE_LEVEL_WARNING
430     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
431     help
432         Define BT trace level for GAP layer
433
434 config GAP_TRACE_LEVEL_NONE
435     bool "NONE"
436 config GAP_TRACE_LEVEL_ERROR
437     bool "ERROR"
438 config GAP_TRACE_LEVEL_WARNING
439     bool "WARNING"
440 config GAP_TRACE_LEVEL_API
441     bool "API"
442 config GAP_TRACE_LEVEL_EVENT
443     bool "EVENT"
444 config GAP_TRACE_LEVEL_DEBUG
445     bool "DEBUG"
446 config GAP_TRACE_LEVEL_VERBOSE
447     bool "VERBOSE"
448 endchoice
449
450 config GAP_INITIAL_TRACE_LEVEL
451     int
452     depends on BLUEDROID_ENABLED
453     default 0 if GAP_TRACE_LEVEL_NONE
454     default 1 if GAP_TRACE_LEVEL_ERROR
455     default 2 if GAP_TRACE_LEVEL_WARNING
456     default 3 if GAP_TRACE_LEVEL_API
457     default 4 if GAP_TRACE_LEVEL_EVENT
458     default 5 if GAP_TRACE_LEVEL_DEBUG
459     default 6 if GAP_TRACE_LEVEL_VERBOSE
460     default 2
461
462 choice BNEP_INITIAL_TRACE_LEVEL
463     prompt "BNEP layer"
464     default BNEP_TRACE_LEVEL_WARNING
465     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
466     help
467         Define BT trace level for BNEP layer
468
469 config BNEP_TRACE_LEVEL_NONE
470     bool "NONE"
471 config BNEP_TRACE_LEVEL_ERROR
472     bool "ERROR"
473 config BNEP_TRACE_LEVEL_WARNING
474     bool "WARNING"
475 config BNEP_TRACE_LEVEL_API
476     bool "API"
477 config BNEP_TRACE_LEVEL_EVENT
478     bool "EVENT"
479 config BNEP_TRACE_LEVEL_DEBUG
480     bool "DEBUG"
481 config BNEP_TRACE_LEVEL_VERBOSE
482     bool "VERBOSE"
483 endchoice
484
485 config BNEP_INITIAL_TRACE_LEVEL
486     int
487     depends on BLUEDROID_ENABLED
488     default 0 if BNEP_TRACE_LEVEL_NONE
489     default 1 if BNEP_TRACE_LEVEL_ERROR
490     default 2 if BNEP_TRACE_LEVEL_WARNING
491     default 3 if BNEP_TRACE_LEVEL_API
492     default 4 if BNEP_TRACE_LEVEL_EVENT
493     default 5 if BNEP_TRACE_LEVEL_DEBUG
494     default 6 if BNEP_TRACE_LEVEL_VERBOSE
495     default 2
496
497 choice PAN_INITIAL_TRACE_LEVEL
498     prompt "PAN layer"
499     default PAN_TRACE_LEVEL_WARNING
500     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
501     help
502         Define BT trace level for PAN layer
503
504 config PAN_TRACE_LEVEL_NONE
505     bool "NONE"
506 config PAN_TRACE_LEVEL_ERROR
507     bool "ERROR"
508 config PAN_TRACE_LEVEL_WARNING
509     bool "WARNING"
510 config PAN_TRACE_LEVEL_API
511     bool "API"
512 config PAN_TRACE_LEVEL_EVENT
513     bool "EVENT"
514 config PAN_TRACE_LEVEL_DEBUG
515     bool "DEBUG"
516 config PAN_TRACE_LEVEL_VERBOSE
517     bool "VERBOSE"
518 endchoice
519
520 config PAN_INITIAL_TRACE_LEVEL
521     int
522     depends on BLUEDROID_ENABLED
523     default 0 if PAN_TRACE_LEVEL_NONE
524     default 1 if PAN_TRACE_LEVEL_ERROR
525     default 2 if PAN_TRACE_LEVEL_WARNING
526     default 3 if PAN_TRACE_LEVEL_API
527     default 4 if PAN_TRACE_LEVEL_EVENT
528     default 5 if PAN_TRACE_LEVEL_DEBUG
529     default 6 if PAN_TRACE_LEVEL_VERBOSE
530     default 2
531
532 choice A2D_INITIAL_TRACE_LEVEL
533     prompt "A2D layer"
534     default A2D_TRACE_LEVEL_WARNING
535     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
536     help
537         Define BT trace level for A2D layer
538
539 config A2D_TRACE_LEVEL_NONE
540     bool "NONE"
541 config A2D_TRACE_LEVEL_ERROR
542     bool "ERROR"
543 config A2D_TRACE_LEVEL_WARNING
544     bool "WARNING"
545 config A2D_TRACE_LEVEL_API
546     bool "API"
547 config A2D_TRACE_LEVEL_EVENT
548     bool "EVENT"
549 config A2D_TRACE_LEVEL_DEBUG
550     bool "DEBUG"
551 config A2D_TRACE_LEVEL_VERBOSE
552     bool "VERBOSE"
553 endchoice
554
555 config A2D_INITIAL_TRACE_LEVEL
556     int
557     depends on BLUEDROID_ENABLED
558     default 0 if A2D_TRACE_LEVEL_NONE
559     default 1 if A2D_TRACE_LEVEL_ERROR
560     default 2 if A2D_TRACE_LEVEL_WARNING
561     default 3 if A2D_TRACE_LEVEL_API
562     default 4 if A2D_TRACE_LEVEL_EVENT
563     default 5 if A2D_TRACE_LEVEL_DEBUG
564     default 6 if A2D_TRACE_LEVEL_VERBOSE
565     default 2
566
567 choice AVDT_INITIAL_TRACE_LEVEL
568     prompt "AVDT layer"
569     default AVDT_TRACE_LEVEL_WARNING
570     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
571     help
572         Define BT trace level for AVDT layer
573
574 config AVDT_TRACE_LEVEL_NONE
575     bool "NONE"
576 config AVDT_TRACE_LEVEL_ERROR
577     bool "ERROR"
578 config AVDT_TRACE_LEVEL_WARNING
579     bool "WARNING"
580 config AVDT_TRACE_LEVEL_API
581     bool "API"
582 config AVDT_TRACE_LEVEL_EVENT
583     bool "EVENT"
584 config AVDT_TRACE_LEVEL_DEBUG
585     bool "DEBUG"
586 config AVDT_TRACE_LEVEL_VERBOSE
587     bool "VERBOSE"
588 endchoice
589
590 config AVDT_INITIAL_TRACE_LEVEL
591     int
592     depends on BLUEDROID_ENABLED
593     default 0 if AVDT_TRACE_LEVEL_NONE
594     default 1 if AVDT_TRACE_LEVEL_ERROR
595     default 2 if AVDT_TRACE_LEVEL_WARNING
596     default 3 if AVDT_TRACE_LEVEL_API
597     default 4 if AVDT_TRACE_LEVEL_EVENT
598     default 5 if AVDT_TRACE_LEVEL_DEBUG
599     default 6 if AVDT_TRACE_LEVEL_VERBOSE
600     default 2
601
602 choice AVCT_INITIAL_TRACE_LEVEL
603     prompt "AVCT layer"
604     default AVCT_TRACE_LEVEL_WARNING
605     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
606     help
607         Define BT trace level for AVCT layer
608
609 config AVCT_TRACE_LEVEL_NONE
610     bool "NONE"
611 config AVCT_TRACE_LEVEL_ERROR
612     bool "ERROR"
613 config AVCT_TRACE_LEVEL_WARNING
614     bool "WARNING"
615 config AVCT_TRACE_LEVEL_API
616     bool "API"
617 config AVCT_TRACE_LEVEL_EVENT
618     bool "EVENT"
619 config AVCT_TRACE_LEVEL_DEBUG
620     bool "DEBUG"
621 config AVCT_TRACE_LEVEL_VERBOSE
622     bool "VERBOSE"
623 endchoice
624
625 config AVCT_INITIAL_TRACE_LEVEL
626     int
627     depends on BLUEDROID_ENABLED
628     default 0 if AVCT_TRACE_LEVEL_NONE
629     default 1 if AVCT_TRACE_LEVEL_ERROR
630     default 2 if AVCT_TRACE_LEVEL_WARNING
631     default 3 if AVCT_TRACE_LEVEL_API
632     default 4 if AVCT_TRACE_LEVEL_EVENT
633     default 5 if AVCT_TRACE_LEVEL_DEBUG
634     default 6 if AVCT_TRACE_LEVEL_VERBOSE
635     default 2
636
637 choice AVRC_INITIAL_TRACE_LEVEL
638     prompt "AVRC layer"
639     default AVRC_TRACE_LEVEL_WARNING
640     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
641     help
642         Define BT trace level for AVRC layer
643
644 config AVRC_TRACE_LEVEL_NONE
645     bool "NONE"
646 config AVRC_TRACE_LEVEL_ERROR
647     bool "ERROR"
648 config AVRC_TRACE_LEVEL_WARNING
649     bool "WARNING"
650 config AVRC_TRACE_LEVEL_API
651     bool "API"
652 config AVRC_TRACE_LEVEL_EVENT
653     bool "EVENT"
654 config AVRC_TRACE_LEVEL_DEBUG
655     bool "DEBUG"
656 config AVRC_TRACE_LEVEL_VERBOSE
657     bool "VERBOSE"
658 endchoice
659
660 config AVRC_INITIAL_TRACE_LEVEL
661     int
662     depends on BLUEDROID_ENABLED
663     default 0 if AVRC_TRACE_LEVEL_NONE
664     default 1 if AVRC_TRACE_LEVEL_ERROR
665     default 2 if AVRC_TRACE_LEVEL_WARNING
666     default 3 if AVRC_TRACE_LEVEL_API
667     default 4 if AVRC_TRACE_LEVEL_EVENT
668     default 5 if AVRC_TRACE_LEVEL_DEBUG
669     default 6 if AVRC_TRACE_LEVEL_VERBOSE
670     default 2
671
672 choice MCA_INITIAL_TRACE_LEVEL
673     prompt "MCA layer"
674     default MCA_TRACE_LEVEL_WARNING
675     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
676     help
677         Define BT trace level for MCA layer
678
679 config MCA_TRACE_LEVEL_NONE
680     bool "NONE"
681 config MCA_TRACE_LEVEL_ERROR
682     bool "ERROR"
683 config MCA_TRACE_LEVEL_WARNING
684     bool "WARNING"
685 config MCA_TRACE_LEVEL_API
686     bool "API"
687 config MCA_TRACE_LEVEL_EVENT
688     bool "EVENT"
689 config MCA_TRACE_LEVEL_DEBUG
690     bool "DEBUG"
691 config MCA_TRACE_LEVEL_VERBOSE
692     bool "VERBOSE"
693 endchoice
694
695 config MCA_INITIAL_TRACE_LEVEL
696     int
697     depends on BLUEDROID_ENABLED
698     default 0 if MCA_TRACE_LEVEL_NONE
699     default 1 if MCA_TRACE_LEVEL_ERROR
700     default 2 if MCA_TRACE_LEVEL_WARNING
701     default 3 if MCA_TRACE_LEVEL_API
702     default 4 if MCA_TRACE_LEVEL_EVENT
703     default 5 if MCA_TRACE_LEVEL_DEBUG
704     default 6 if MCA_TRACE_LEVEL_VERBOSE
705     default 2
706
707 choice HID_INITIAL_TRACE_LEVEL
708     prompt "HID layer"
709     default HID_TRACE_LEVEL_WARNING
710     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
711     help
712         Define BT trace level for HID layer
713
714 config HID_TRACE_LEVEL_NONE
715     bool "NONE"
716 config HID_TRACE_LEVEL_ERROR
717     bool "ERROR"
718 config HID_TRACE_LEVEL_WARNING
719     bool "WARNING"
720 config HID_TRACE_LEVEL_API
721     bool "API"
722 config HID_TRACE_LEVEL_EVENT
723     bool "EVENT"
724 config HID_TRACE_LEVEL_DEBUG
725     bool "DEBUG"
726 config HID_TRACE_LEVEL_VERBOSE
727     bool "VERBOSE"
728 endchoice
729
730 config HID_INITIAL_TRACE_LEVEL
731     int
732     depends on BLUEDROID_ENABLED
733     default 0 if HID_TRACE_LEVEL_NONE
734     default 1 if HID_TRACE_LEVEL_ERROR
735     default 2 if HID_TRACE_LEVEL_WARNING
736     default 3 if HID_TRACE_LEVEL_API
737     default 4 if HID_TRACE_LEVEL_EVENT
738     default 5 if HID_TRACE_LEVEL_DEBUG
739     default 6 if HID_TRACE_LEVEL_VERBOSE
740     default 2
741
742 choice APPL_INITIAL_TRACE_LEVEL
743     prompt "APPL layer"
744     default APPL_TRACE_LEVEL_WARNING
745     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
746     help
747         Define BT trace level for APPL layer
748
749 config APPL_TRACE_LEVEL_NONE
750     bool "NONE"
751 config APPL_TRACE_LEVEL_ERROR
752     bool "ERROR"
753 config APPL_TRACE_LEVEL_WARNING
754     bool "WARNING"
755 config APPL_TRACE_LEVEL_API
756     bool "API"
757 config APPL_TRACE_LEVEL_EVENT
758     bool "EVENT"
759 config APPL_TRACE_LEVEL_DEBUG
760     bool "DEBUG"
761 config APPL_TRACE_LEVEL_VERBOSE
762     bool "VERBOSE"
763 endchoice
764
765 config APPL_INITIAL_TRACE_LEVEL
766     int
767     depends on BLUEDROID_ENABLED
768     default 0 if APPL_TRACE_LEVEL_NONE
769     default 1 if APPL_TRACE_LEVEL_ERROR
770     default 2 if APPL_TRACE_LEVEL_WARNING
771     default 3 if APPL_TRACE_LEVEL_API
772     default 4 if APPL_TRACE_LEVEL_EVENT
773     default 5 if APPL_TRACE_LEVEL_DEBUG
774     default 6 if APPL_TRACE_LEVEL_VERBOSE
775     default 2
776
777 choice GATT_INITIAL_TRACE_LEVEL
778     prompt "GATT layer"
779     default GATT_TRACE_LEVEL_WARNING
780     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
781     help
782         Define BT trace level for GATT layer
783
784 config GATT_TRACE_LEVEL_NONE
785     bool "NONE"
786 config GATT_TRACE_LEVEL_ERROR
787     bool "ERROR"
788 config GATT_TRACE_LEVEL_WARNING
789     bool "WARNING"
790 config GATT_TRACE_LEVEL_API
791     bool "API"
792 config GATT_TRACE_LEVEL_EVENT
793     bool "EVENT"
794 config GATT_TRACE_LEVEL_DEBUG
795     bool "DEBUG"
796 config GATT_TRACE_LEVEL_VERBOSE
797     bool "VERBOSE"
798 endchoice
799
800 config GATT_INITIAL_TRACE_LEVEL
801     int
802     depends on BLUEDROID_ENABLED
803     default 0 if GATT_TRACE_LEVEL_NONE
804     default 1 if GATT_TRACE_LEVEL_ERROR
805     default 2 if GATT_TRACE_LEVEL_WARNING
806     default 3 if GATT_TRACE_LEVEL_API
807     default 4 if GATT_TRACE_LEVEL_EVENT
808     default 5 if GATT_TRACE_LEVEL_DEBUG
809     default 6 if GATT_TRACE_LEVEL_VERBOSE
810     default 2
811
812 choice SMP_INITIAL_TRACE_LEVEL
813     prompt "SMP layer"
814     default SMP_TRACE_LEVEL_WARNING
815     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
816     help
817         Define BT trace level for SMP layer
818
819 config SMP_TRACE_LEVEL_NONE
820     bool "NONE"
821 config SMP_TRACE_LEVEL_ERROR
822     bool "ERROR"
823 config SMP_TRACE_LEVEL_WARNING
824     bool "WARNING"
825 config SMP_TRACE_LEVEL_API
826     bool "API"
827 config SMP_TRACE_LEVEL_EVENT
828     bool "EVENT"
829 config SMP_TRACE_LEVEL_DEBUG
830     bool "DEBUG"
831 config SMP_TRACE_LEVEL_VERBOSE
832     bool "VERBOSE"
833 endchoice
834
835 config SMP_INITIAL_TRACE_LEVEL
836     int
837     depends on BLUEDROID_ENABLED
838     default 0 if SMP_TRACE_LEVEL_NONE
839     default 1 if SMP_TRACE_LEVEL_ERROR
840     default 2 if SMP_TRACE_LEVEL_WARNING
841     default 3 if SMP_TRACE_LEVEL_API
842     default 4 if SMP_TRACE_LEVEL_EVENT
843     default 5 if SMP_TRACE_LEVEL_DEBUG
844     default 6 if SMP_TRACE_LEVEL_VERBOSE
845     default 2
846
847 choice BTIF_INITIAL_TRACE_LEVEL
848     prompt "BTIF layer"
849     default BTIF_TRACE_LEVEL_WARNING
850     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
851     help
852         Define BT trace level for BTIF layer
853
854 config BTIF_TRACE_LEVEL_NONE
855     bool "NONE"
856 config BTIF_TRACE_LEVEL_ERROR
857     bool "ERROR"
858 config BTIF_TRACE_LEVEL_WARNING
859     bool "WARNING"
860 config BTIF_TRACE_LEVEL_API
861     bool "API"
862 config BTIF_TRACE_LEVEL_EVENT
863     bool "EVENT"
864 config BTIF_TRACE_LEVEL_DEBUG
865     bool "DEBUG"
866 config BTIF_TRACE_LEVEL_VERBOSE
867     bool "VERBOSE"
868 endchoice
869
870 config BTIF_INITIAL_TRACE_LEVEL
871     int
872     depends on BLUEDROID_ENABLED
873     default 0 if BTIF_TRACE_LEVEL_NONE
874     default 1 if BTIF_TRACE_LEVEL_ERROR
875     default 2 if BTIF_TRACE_LEVEL_WARNING
876     default 3 if BTIF_TRACE_LEVEL_API
877     default 4 if BTIF_TRACE_LEVEL_EVENT
878     default 5 if BTIF_TRACE_LEVEL_DEBUG
879     default 6 if BTIF_TRACE_LEVEL_VERBOSE
880     default 2
881
882 choice BTC_INITIAL_TRACE_LEVEL
883     prompt "BTC layer"
884     default BTC_TRACE_LEVEL_WARNING
885     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
886     help
887         Define BT trace level for BTC layer
888
889 config BTC_TRACE_LEVEL_NONE
890     bool "NONE"
891 config BTC_TRACE_LEVEL_ERROR
892     bool "ERROR"
893 config BTC_TRACE_LEVEL_WARNING
894     bool "WARNING"
895 config BTC_TRACE_LEVEL_API
896     bool "API"
897 config BTC_TRACE_LEVEL_EVENT
898     bool "EVENT"
899 config BTC_TRACE_LEVEL_DEBUG
900     bool "DEBUG"
901 config BTC_TRACE_LEVEL_VERBOSE
902     bool "VERBOSE"
903 endchoice
904
905 config BTC_INITIAL_TRACE_LEVEL
906     int
907     depends on BLUEDROID_ENABLED
908     default 0 if BTC_TRACE_LEVEL_NONE
909     default 1 if BTC_TRACE_LEVEL_ERROR
910     default 2 if BTC_TRACE_LEVEL_WARNING
911     default 3 if BTC_TRACE_LEVEL_API
912     default 4 if BTC_TRACE_LEVEL_EVENT
913     default 5 if BTC_TRACE_LEVEL_DEBUG
914     default 6 if BTC_TRACE_LEVEL_VERBOSE
915     default 2
916
917 choice OSI_INITIAL_TRACE_LEVEL
918     prompt "OSI layer"
919     default OSI_TRACE_LEVEL_WARNING
920     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
921     help
922         Define BT trace level for OSI layer
923
924 config OSI_TRACE_LEVEL_NONE
925     bool "NONE"
926 config OSI_TRACE_LEVEL_ERROR
927     bool "ERROR"
928 config OSI_TRACE_LEVEL_WARNING
929     bool "WARNING"
930 config OSI_TRACE_LEVEL_API
931     bool "API"
932 config OSI_TRACE_LEVEL_EVENT
933     bool "EVENT"
934 config OSI_TRACE_LEVEL_DEBUG
935     bool "DEBUG"
936 config OSI_TRACE_LEVEL_VERBOSE
937     bool "VERBOSE"
938 endchoice
939
940 config OSI_INITIAL_TRACE_LEVEL
941     int
942     depends on BLUEDROID_ENABLED
943     default 0 if OSI_TRACE_LEVEL_NONE
944     default 1 if OSI_TRACE_LEVEL_ERROR
945     default 2 if OSI_TRACE_LEVEL_WARNING
946     default 3 if OSI_TRACE_LEVEL_API
947     default 4 if OSI_TRACE_LEVEL_EVENT
948     default 5 if OSI_TRACE_LEVEL_DEBUG
949     default 6 if OSI_TRACE_LEVEL_VERBOSE
950     default 2
951
952 choice BLUFI_INITIAL_TRACE_LEVEL
953     prompt "BLUFI layer"
954     default BLUFI_TRACE_LEVEL_WARNING
955     depends on BLUEDROID_ENABLED && !BT_STACK_NO_LOG
956     help
957         Define BT trace level for BLUFI layer
958
959 config BLUFI_TRACE_LEVEL_NONE
960     bool "NONE"
961 config BLUFI_TRACE_LEVEL_ERROR
962     bool "ERROR"
963 config BLUFI_TRACE_LEVEL_WARNING
964     bool "WARNING"
965 config BLUFI_TRACE_LEVEL_API
966     bool "API"
967 config BLUFI_TRACE_LEVEL_EVENT
968     bool "EVENT"
969 config BLUFI_TRACE_LEVEL_DEBUG
970     bool "DEBUG"
971 config BLUFI_TRACE_LEVEL_VERBOSE
972     bool "VERBOSE"
973 endchoice
974
975 config BLUFI_INITIAL_TRACE_LEVEL
976     int
977     depends on BLUEDROID_ENABLED
978     default 0 if BLUFI_TRACE_LEVEL_NONE
979     default 1 if BLUFI_TRACE_LEVEL_ERROR
980     default 2 if BLUFI_TRACE_LEVEL_WARNING
981     default 3 if BLUFI_TRACE_LEVEL_API
982     default 4 if BLUFI_TRACE_LEVEL_EVENT
983     default 5 if BLUFI_TRACE_LEVEL_DEBUG
984     default 6 if BLUFI_TRACE_LEVEL_VERBOSE
985     default 2
986
987 endmenu #BT DEBUG LOG LEVEL
988
989
990 config BT_ACL_CONNECTIONS
991     int "BT/BLE MAX ACL CONNECTIONS(1~7)"
992     depends on BLUEDROID_ENABLED
993     range 1 7
994     default 4
995     help
996         Maximum BT/BLE connection count
997
998 config BT_ALLOCATION_FROM_SPIRAM_FIRST
999     bool "BT/BLE will first malloc the memory from the PSRAM"
1000     depends on BLUEDROID_ENABLED
1001     default n
1002     help
1003         This select can save the internal RAM if there have the PSRAM
1004
1005 config BT_BLE_DYNAMIC_ENV_MEMORY
1006     bool "Use dynamic memory allocation in BT/BLE stack"
1007     depends on BLUEDROID_ENABLED
1008     default n
1009     help
1010         This select can make the allocation of memory will become more flexible
1011
1012 config BLE_SCAN_DUPLICATE
1013     bool "BLE Scan Duplicate Options "
1014     depends on BLUEDROID_ENABLED
1015     default y
1016     help
1017         This select enables parameters setting of BLE scan duplicate.
1018
1019 config DUPLICATE_SCAN_CACHE_SIZE
1020     int "Maximum number of devices in scan duplicate filter"
1021     depends on BLE_SCAN_DUPLICATE
1022     range 10 200
1023     default 20
1024     help
1025         Maximum number of devices which can be recorded in scan duplicate filter.
1026         When the maximum amount of device in the filter is reached, the cache will be refreshed.
1027
1028 config BLE_MESH_SCAN_DUPLICATE_EN
1029     bool "Special duplicate scan mechanism for BLE Mesh scan"
1030     depends on BLE_SCAN_DUPLICATE
1031     default n
1032     help
1033         This enables the BLE scan duplicate for special BLE Mesh scan.
1034
1035 config MESH_DUPLICATE_SCAN_CACHE_SIZE
1036     int "Maximum number of Mesh adv packets in scan duplicate filter"
1037     depends on BLE_MESH_SCAN_DUPLICATE_EN
1038     range 10 200
1039     default 50
1040     help
1041         Maximum number of adv packets which can be recorded in duplicate scan cache for BLE Mesh.
1042         When the maximum amount of device in the filter is reached, the cache will be refreshed.
1043
1044 config SMP_ENABLE
1045    bool
1046    depends on BLUEDROID_ENABLED
1047    default CLASSIC_BT_ENABLED || BLE_SMP_ENABLE
1048
1049 # Memory reserved at start of DRAM for Bluetooth stack
1050 config BT_RESERVE_DRAM
1051     hex
1052     default 0x10000 if BT_ENABLED
1053     default 0
1054
1055 endmenu