1
2menu "HCI Config"
3
4    choice BT_LE_HCI_INTERFACE
5        prompt "HCI mode"
6        default BT_LE_HCI_INTERFACE_USE_RAM
7
8        config BT_LE_HCI_INTERFACE_USE_RAM
9            bool "VHCI"
10            help
11                Use RAM as HCI interface
12        config BT_LE_HCI_INTERFACE_USE_UART
13            bool "UART(H4)"
14            help
15                Use UART as HCI interface
16    endchoice
17
18    choice BT_LE_UART_HCI_MODE_CHOICE
19        prompt "UART HCI mode"
20        depends on BT_LE_HCI_INTERFACE_USE_UART
21        default BT_LE_UART_HCI_NO_DMA_MODE
22        help
23            Specify UART HCI mode: DMA or No DMA
24
25        config BT_LE_UART_HCI_DMA_MODE
26            bool "UHCI(UART with DMA)(EXPERIMENTAL)"
27            help
28                UART HCI Mode with DMA functionality.
29
30        config BT_LE_UART_HCI_NO_DMA_MODE
31            bool "UART(NO DMA)"
32            help
33                UART HCI Mode without DMA functionality.
34    endchoice
35
36    config BT_LE_HCI_UART_PORT
37        int "HCI UART port"
38        depends on BT_LE_HCI_INTERFACE_USE_UART
39        default 1
40        help
41            Set the port number of HCI UART
42
43    config BT_LE_HCI_UART_FLOWCTRL
44        bool "HCI uart Hardware Flow ctrl"
45        depends on BT_LE_HCI_INTERFACE_USE_UART
46        default n
47
48    config BT_LE_HCI_UART_TX_PIN
49        int "HCI uart Tx gpio"
50        depends on BT_LE_HCI_INTERFACE_USE_UART
51        default 19
52
53    config BT_LE_HCI_UART_RX_PIN
54        int "HCI uart Rx gpio"
55        depends on BT_LE_HCI_INTERFACE_USE_UART
56        default 10
57
58    config BT_LE_HCI_UART_RTS_PIN
59        int "HCI uart RTS gpio"
60        depends on BT_LE_HCI_UART_FLOWCTRL
61        default 4
62
63    config BT_LE_HCI_UART_CTS_PIN
64        int "HCI uart CTS gpio"
65        depends on BT_LE_HCI_UART_FLOWCTRL
66        default 5
67
68    config BT_LE_HCI_UART_BAUD
69        int "HCI uart baudrate"
70        depends on BT_LE_HCI_INTERFACE_USE_UART
71        default 921600
72        help
73            HCI uart baud rate 115200 ~ 1000000
74
75    choice BT_LE_HCI_UART_PARITY
76        prompt "select uart parity"
77        depends on BT_LE_HCI_INTERFACE_USE_UART
78        default BT_LE_HCI_UART_UART_PARITY_DISABLE
79
80        config BT_LE_HCI_UART_UART_PARITY_DISABLE
81            bool "PARITY_DISABLE"
82            help
83                UART_PARITY_DISABLE
84        config BT_LE_HCI_UART_UART_PARITY_EVEN
85            bool "PARITY_EVEN"
86            help
87                UART_PARITY_EVEN
88        config BT_LE_HCI_UART_UART_PARITY_ODD
89            bool "PARITY_ODD"
90            help
91                UART_PARITY_ODD
92    endchoice
93
94    config BT_LE_HCI_UART_RX_BUFFER_SIZE
95        int "The size of rx ring buffer memory"
96        depends on BT_LE_UART_HCI_NO_DMA_MODE
97        default 512
98        help
99            The size of rx ring buffer memory
100
101    config BT_LE_HCI_UART_TX_BUFFER_SIZE
102        int "The size of tx ring buffer memory"
103        depends on BT_LE_UART_HCI_NO_DMA_MODE
104        default 256
105        help
106            The size of tx ring buffer memory
107
108    config BT_LE_HCI_TRANS_TASK_STACK_SIZE
109        int "HCI transport task stack size"
110        depends on !BT_LE_HCI_INTERFACE_USE_RAM
111        default 1024
112        help
113            This configures stack size of hci transport task
114
115    config BT_LE_HCI_TRANS_RX_MEM_NUM
116        int "The amount of rx memory received at the same time"
117        depends on BT_LE_UART_HCI_DMA_MODE
118        default 3
119        help
120            The amount of rx memory received at the same time
121
122    config BT_LE_HCI_LLDESCS_POOL_NUM
123        int "The amount of lldecs memory for driver dma mode"
124        depends on BT_LE_UART_HCI_DMA_MODE
125        default 20
126        help
127            The amount of lldecs memory for driver dma mode
128endmenu
129
130config BT_LE_CONTROLLER_NPL_OS_PORTING_SUPPORT
131    bool
132    default y
133    help
134        Enable NPL porting for controller.
135
136
137menuconfig BT_LE_50_FEATURE_SUPPORT
138    bool "Enable BLE 5 feature"
139    depends on !BT_NIMBLE_ENABLED
140    default y
141    help
142        Enable BLE 5 feature
143
144config BT_LE_LL_CFG_FEAT_LE_2M_PHY
145    bool "Enable 2M Phy"
146    depends on BT_LE_50_FEATURE_SUPPORT
147    default y
148    help
149        Enable 2M-PHY
150
151config BT_LE_LL_CFG_FEAT_LE_CODED_PHY
152    bool "Enable coded Phy"
153    depends on BT_LE_50_FEATURE_SUPPORT
154    default y
155    help
156        Enable coded-PHY
157
158config BT_LE_EXT_ADV
159    bool "Enable extended advertising"
160    depends on BT_LE_50_FEATURE_SUPPORT
161    default y
162    help
163        Enable this option to do extended advertising. Extended advertising
164        will be supported from BLE 5.0 onwards.
165
166if BT_LE_EXT_ADV
167    config BT_LE_MAX_EXT_ADV_INSTANCES
168        int "Maximum number of extended advertising instances."
169        range 0 4
170        default 1
171        depends on BT_LE_EXT_ADV
172        help
173            Change this option to set maximum number of extended advertising
174            instances. Minimum there is always one instance of
175            advertising. Enter how many more advertising instances you
176            want.
177            Each extended advertising instance will take about 0.5k DRAM.
178
179    config BT_LE_EXT_ADV_MAX_SIZE
180        int "Maximum length of the advertising data."
181        range 0 1650
182        default 1650
183        depends on BT_LE_EXT_ADV
184        help
185            Defines the length of the extended adv data. The value should not
186            exceed 1650.
187
188    config BT_LE_ENABLE_PERIODIC_ADV
189        bool "Enable periodic advertisement."
190        default y
191        depends on BT_LE_EXT_ADV
192        help
193            Enable this option to start periodic advertisement.
194
195    config BT_LE_PERIODIC_ADV_SYNC_TRANSFER
196        bool "Enable Transfer Sync Events"
197        depends on BT_LE_ENABLE_PERIODIC_ADV
198        default y
199        help
200            This enables controller transfer periodic sync events to host
201
202endif
203
204config BT_LE_MAX_PERIODIC_SYNCS
205    int "Maximum number of periodic advertising syncs"
206    depends on BT_LE_50_FEATURE_SUPPORT && !BT_NIMBLE_ENABLED
207
208    range 0 8
209    default 1 if BT_LE_ENABLE_PERIODIC_ADV
210    default 0
211    help
212        Set this option to set the upper limit for number of periodic sync
213        connections. This should be less than maximum connections allowed by
214        controller.
215
216config BT_LE_MAX_PERIODIC_ADVERTISER_LIST
217    int "Maximum number of periodic advertiser list"
218    depends on BT_LE_50_FEATURE_SUPPORT && !BT_NIMBLE_ENABLED
219    range 1 5
220    default 5
221    help
222        Set this option to set the upper limit for number of periodic advertiser list.
223
224config BT_LE_POWER_CONTROL_ENABLED
225    bool "Enable controller support for BLE Power Control"
226    depends on BT_LE_50_FEATURE_SUPPORT && !BT_NIMBLE_ENABLED
227    default n
228    help
229        Set this option to enable the Power Control feature on controller
230
231menu "Memory Settings"
232    depends on !BT_NIMBLE_ENABLED
233
234    config BT_LE_MSYS_1_BLOCK_COUNT
235        int "MSYS_1 Block Count"
236        default 12
237        help
238            MSYS is a system level mbuf registry. For prepare write & prepare
239            responses MBUFs are allocated out of msys_1 pool. For NIMBLE_MESH
240            enabled cases, this block count is increased by 8 than user defined
241            count.
242
243    config BT_LE_MSYS_1_BLOCK_SIZE
244        int "MSYS_1 Block Size"
245        default 256
246        help
247            Dynamic memory size of block 1
248
249    config BT_LE_MSYS_2_BLOCK_COUNT
250        int "MSYS_2 Block Count"
251        default 24
252        help
253            Dynamic memory count
254
255    config BT_LE_MSYS_2_BLOCK_SIZE
256        int "MSYS_2 Block Size"
257        default 320
258        help
259            Dynamic memory size of block 2
260
261    config BT_LE_ACL_BUF_COUNT
262        int "ACL Buffer count"
263        default 10
264        help
265            The number of ACL data buffers.
266
267    config BT_LE_ACL_BUF_SIZE
268        int "ACL Buffer size"
269        default 517
270        help
271            This is the maximum size of the data portion of HCI ACL data packets.
272            It does not include the HCI data header (of 4 bytes)
273
274    config BT_LE_HCI_EVT_BUF_SIZE
275        int "HCI Event Buffer size"
276        default 257 if BT_LE_EXT_ADV
277        default 70
278        help
279            This is the size of each HCI event buffer in bytes. In case of
280            extended advertising, packets can be fragmented. 257 bytes is the
281            maximum size of a packet.
282
283    config BT_LE_HCI_EVT_HI_BUF_COUNT
284        int "High Priority HCI Event Buffer count"
285        default 30
286        help
287            This is the high priority HCI events' buffer size. High-priority
288            event buffers are for everything except advertising reports. If there
289            are no free high-priority event buffers then host will try to allocate a
290            low-priority buffer instead
291
292    config BT_LE_HCI_EVT_LO_BUF_COUNT
293        int "Low Priority HCI Event Buffer count"
294        default 8
295        help
296            This is the low priority HCI events' buffer size. Low-priority event
297            buffers are only used for advertising reports. If there are no free
298            low-priority event buffers, then an incoming advertising report will
299            get dropped
300endmenu
301
302config BT_LE_CONTROLLER_TASK_STACK_SIZE
303    int "Controller task stack size"
304    default 5120 if BLE_MESH
305    default 4096
306    help
307        This configures stack size of NimBLE controller task
308
309menuconfig BT_LE_CONTROLLER_LOG_ENABLED
310    bool "Controller log enable"
311    default n
312    help
313        Enable controller log
314
315config BT_LE_CONTROLLER_LOG_CTRL_ENABLED
316    bool "enable controller log module"
317    depends on BT_LE_CONTROLLER_LOG_ENABLED
318    default y
319    help
320            Enable controller log module
321
322config BT_LE_CONTROLLER_LOG_HCI_ENABLED
323    bool "enable HCI log module"
324    depends on BT_LE_CONTROLLER_LOG_ENABLED
325    default y
326    help
327            Enable hci log module
328
329config BT_LE_CONTROLLER_LOG_DUMP_ONLY
330    bool "Controller log dump mode only"
331    depends on BT_LE_CONTROLLER_LOG_ENABLED
332    default y
333    help
334            Only operate in dump mode
335
336config BT_LE_CONTROLLER_LOG_STORAGE_ENABLE
337    bool "Store ble controller logs to flash(Experimental)"
338    depends on !BT_LE_CONTROLLER_LOG_DUMP_ONLY
339    depends on BT_LE_CONTROLLER_LOG_ENABLED
340    default n
341    help
342            Store ble controller logs to flash memory.
343
344config BT_LE_CONTROLLER_LOG_PARTITION_SIZE
345    int "size of ble controller log partition(Multiples of 4K)"
346    depends on BT_LE_CONTROLLER_LOG_STORAGE_ENABLE
347    default 65536
348    help
349            The size of ble controller log partition shall be a multiples of 4K.
350            The name of log partition shall be "bt_ctrl_log".
351            The partition type shall be ESP_PARTITION_TYPE_DATA.
352            The partition sub_type shall be ESP_PARTITION_SUBTYPE_ANY.
353
354config BT_LE_LOG_CTRL_BUF1_SIZE
355    int "size of the first BLE controller LOG buffer"
356    depends on BT_LE_CONTROLLER_LOG_ENABLED
357    default 4096
358    help
359            Configure the size of the first BLE controller LOG buffer.
360
361config BT_LE_LOG_CTRL_BUF2_SIZE
362    int "size of the second BLE controller LOG buffer"
363    depends on BT_LE_CONTROLLER_LOG_ENABLED
364    default 1024
365    help
366            Configure the size of the second BLE controller LOG buffer.
367
368config BT_LE_LOG_HCI_BUF_SIZE
369    int "size of the BLE HCI LOG buffer"
370    depends on BT_LE_CONTROLLER_LOG_ENABLED
371    default 4096
372    help
373            Configure the size of the BLE HCI LOG buffer.
374
375config BT_LE_LL_RESOLV_LIST_SIZE
376    int "BLE LL Resolving list size"
377    range 1 5
378    default 4
379    help
380        Configure the size of resolving list used in link layer.
381
382menuconfig BT_LE_SECURITY_ENABLE
383    bool "Enable BLE SM feature"
384    depends on !BT_NIMBLE_ENABLED
385    default y
386    help
387        Enable BLE sm feature
388
389config BT_LE_SM_LEGACY
390    bool "Security manager legacy pairing"
391    depends on BT_LE_SECURITY_ENABLE
392    default y
393    help
394        Enable security manager legacy pairing
395
396config BT_LE_SM_SC
397    bool "Security manager secure connections (4.2)"
398    depends on BT_LE_SECURITY_ENABLE
399    default y
400    help
401        Enable security manager secure connections
402
403config BT_LE_SM_SC_DEBUG_KEYS
404    bool "Use predefined public-private key pair"
405    default n
406    depends on BT_LE_SECURITY_ENABLE && BT_LE_SM_SC
407    help
408        If this option is enabled, SM uses predefined DH key pair as described
409        in Core Specification, Vol. 3, Part H, 2.3.5.6.1. This allows to
410        decrypt air traffic easily and thus should only be used for debugging.
411
412config BT_LE_LL_CFG_FEAT_LE_ENCRYPTION
413    bool "Enable LE encryption"
414    depends on BT_LE_SECURITY_ENABLE
415    default y
416    help
417        Enable encryption connection
418
419config BT_LE_CRYPTO_STACK_MBEDTLS
420    bool "Override TinyCrypt with mbedTLS for crypto computations"
421    default y
422    depends on !BT_NIMBLE_ENABLED
423    select MBEDTLS_CMAC_C
424    help
425        Enable this option to choose mbedTLS instead of TinyCrypt for crypto
426        computations.
427
428config BT_LE_WHITELIST_SIZE
429    int "BLE white list size"
430    range 1 15
431    default 12
432    depends on !BT_NIMBLE_ENABLED
433
434    help
435        BLE list size
436
437config BT_LE_LL_DUP_SCAN_LIST_COUNT
438    int "BLE duplicate scan list count"
439    range 5 100
440    default 20
441    help
442        config the max count of duplicate scan list
443
444config BT_LE_LL_SCA
445    int "BLE Sleep clock accuracy"
446    range 0 500
447    default 60
448    help
449        Sleep clock accuracy of our device (in ppm)
450
451config BT_LE_MAX_CONNECTIONS
452    int "Maximum number of concurrent connections"
453    depends on !BT_NIMBLE_ENABLED
454    range 1 35
455    default 3
456    help
457        Defines maximum number of concurrent BLE connections. For ESP32, user
458        is expected to configure BTDM_CTRL_BLE_MAX_CONN from controller menu
459        along with this option. Similarly for ESP32-C3 or ESP32-S3, user is expected to
460        configure BT_CTRL_BLE_MAX_ACT from controller menu.
461        Each connection will take about 1k DRAM.
462
463choice BT_LE_COEX_PHY_CODED_TX_RX_TLIM
464    prompt "Coexistence: limit on MAX Tx/Rx time for coded-PHY connection"
465    default BT_LE_COEX_PHY_CODED_TX_RX_TLIM_DIS
466    depends on ESP_COEX_SW_COEXIST_ENABLE
467    help
468        When using PHY-Coded in BLE connection, limitation on max tx/rx time can be applied to
469        better avoid dramatic performance deterioration of Wi-Fi.
470
471    config BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EN
472        bool "Force Enable"
473        help
474            Always enable the limitation on max tx/rx time for Coded-PHY connection
475
476    config BT_LE_COEX_PHY_CODED_TX_RX_TLIM_DIS
477        bool "Force Disable"
478        help
479            Disable the limitation on max tx/rx time for Coded-PHY connection
480endchoice
481
482config BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EFF
483    int
484    default 0 if !ESP_COEX_SW_COEXIST_ENABLE
485    default 1 if BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EN
486    default 0 if BT_LE_COEX_PHY_CODED_TX_RX_TLIM_DIS
487
488config BT_LE_SLEEP_ENABLE
489    bool "Enable BLE sleep"
490    default n
491    help
492        Enable BLE sleep
493
494choice BT_LE_LP_CLK_SRC
495    prompt "BLE low power clock source"
496    default BT_LE_LP_CLK_SRC_MAIN_XTAL
497    config BT_LE_LP_CLK_SRC_MAIN_XTAL
498        bool "Use main XTAL as RTC clock source"
499        help
500            User main XTAL as RTC clock source.
501            This option is recommended if external 32.768k XTAL is not available.
502            Using the external 32.768 kHz XTAL will have lower current consumption
503            in light sleep compared to using the main XTAL.
504
505    config BT_LE_LP_CLK_SRC_DEFAULT
506        bool "Use system RTC slow clock source"
507        help
508            Use the same slow clock source as system RTC
509            Using any clock source other than external 32.768 kHz XTAL supports only
510            legacy ADV and SCAN due to low clock accuracy.
511
512endchoice
513
514config BT_LE_USE_ESP_TIMER
515    bool "Enable Esp Timer for Callout"
516    depends on !BT_NIMBLE_ENABLED
517    default y
518    help
519        Set this option to use Esp Timer which has higher priority timer
520        instead of FreeRTOS timer
521
522config BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP
523    bool "BLE adv report flow control supported"
524    default y
525    help
526        The function is mainly used to enable flow control for advertising reports. When it is enabled,
527        advertising reports will be discarded by the controller if the number of unprocessed advertising
528        reports exceeds the size of BLE adv report flow control.
529
530config BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM
531    int "BLE adv report flow control number"
532    depends on BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP
533    range 50 1000
534    default 100
535    help
536        The number of unprocessed advertising report that bluetooth host can save.If you set
537        `BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM` to a small value, this may cause adv packets lost.
538        If you set `BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM` to a large value, bluetooth host may cache a
539        lot of adv packets and this may cause system memory run out. For example, if you set
540        it to 50, the maximum memory consumed by host is 35 * 50 bytes. Please set
541        `BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM` according to your system free memory and handle adv
542        packets as fast as possible, otherwise it will cause adv packets lost.
543
544config BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD
545    int "BLE adv lost event threshold value"
546    depends on BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP
547    range 1 1000
548    default 20
549    help
550        When adv report flow control is enabled, The ADV lost event will be generated when the number
551        of ADV packets lost in the controller reaches this threshold. It is better to set a larger value.
552        If you set `BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD` to a small value or printf every adv lost event, it
553        may cause adv packets lost more.
554
555config BT_LE_SCAN_DUPL
556    bool "BLE Scan Duplicate Options"
557    default y
558    help
559        This select enables parameters setting of BLE scan duplicate.
560
561choice BT_LE_SCAN_DUPL_TYPE
562    prompt "Scan Duplicate Type"
563    default BT_LE_SCAN_DUPL_TYPE_DEVICE
564    depends on BT_LE_SCAN_DUPL
565    help
566        Scan duplicate have three ways. one is "Scan Duplicate By Device Address", This way is to use
567        advertiser address filtering. The adv packet of the same address is only allowed to be reported once.
568        Another way is "Scan Duplicate By Device Address And Advertising Data". This way is to use advertising
569        data and device address filtering. All different adv packets with the same address are allowed to be
570        reported. The last way is "Scan Duplicate By Advertising Data". This way is to use advertising data
571        filtering. All same advertising data only allow to be reported once even though they are from
572        different devices.
573
574    config BT_LE_SCAN_DUPL_TYPE_DEVICE
575        bool "Scan Duplicate By Device Address"
576        help
577            This way is to use advertiser address filtering. The adv packet of the same address is only
578            allowed to be reported once
579
580    config BT_LE_SCAN_DUPL_TYPE_DATA
581        bool "Scan Duplicate By Advertising Data"
582        help
583            This way is to use advertising data filtering. All same advertising data only allow to be reported
584            once even though they are from different devices.
585
586    config BT_LE_SCAN_DUPL_TYPE_DATA_DEVICE
587        bool "Scan Duplicate By Device Address And Advertising Data"
588        help
589            This way is to use advertising data and device address filtering. All different adv packets with
590            the same address are allowed to be reported.
591endchoice
592
593config BT_LE_SCAN_DUPL_TYPE
594    int
595    depends on BT_LE_SCAN_DUPL
596    default 0 if BT_LE_SCAN_DUPL_TYPE_DEVICE
597    default 1 if BT_LE_SCAN_DUPL_TYPE_DATA
598    default 2 if BT_LE_SCAN_DUPL_TYPE_DATA_DEVICE
599    default 0
600
601config BT_LE_SCAN_DUPL_CACHE_REFRESH_PERIOD
602    int "Duplicate scan list refresh period (seconds)"
603    depends on BT_LE_SCAN_DUPL
604    range 0 1000
605    default 0
606    help
607        If the period value is non-zero, the controller will periodically clear the device information
608        stored in the scan duuplicate filter. If it is 0, the scan duuplicate filter will not be cleared
609        until the scanning is disabled. Duplicate advertisements for this period should not be sent to the
610        Host in advertising report events.
611        There are two scenarios where the ADV packet will be repeatedly reported:
612        1. The duplicate scan cache is full, the controller will delete the oldest device information and
613        add new device information.
614        2. When the refresh period is up, the controller will clear all device information and start filtering
615        again.
616
617config BT_LE_MSYS_INIT_IN_CONTROLLER
618    bool
619    default y
620
621config BT_LE_TX_CCA_ENABLED
622    bool "Enable TX CCA feature"
623    default n
624    help
625        Enable CCA feature to cancel sending the packet if the signal power is stronger than CCA threshold.
626
627config BT_LE_CCA_RSSI_THRESH
628    int "CCA RSSI threshold value"
629    depends on BT_LE_TX_CCA_ENABLED
630    range 20 100
631    default 20
632    help
633        Power threshold of CCA in unit of -1 dBm.
634
635choice BT_LE_DFT_TX_POWER_LEVEL_DBM
636    prompt "BLE default Tx power level(dBm)"
637    default BT_LE_DFT_TX_POWER_LEVEL_P9
638    help
639        Specify default Tx power level(dBm).
640    config BT_LE_DFT_TX_POWER_LEVEL_N24
641        bool "-24dBm"
642    config BT_LE_DFT_TX_POWER_LEVEL_N21
643        bool "-21dBm"
644    config BT_LE_DFT_TX_POWER_LEVEL_N18
645        bool "-18dBm"
646    config BT_LE_DFT_TX_POWER_LEVEL_N15
647        bool "-15dBm"
648    config BT_LE_DFT_TX_POWER_LEVEL_N12
649        bool "-12dBm"
650    config BT_LE_DFT_TX_POWER_LEVEL_N9
651        bool "-9dBm"
652    config BT_LE_DFT_TX_POWER_LEVEL_N6
653        bool "-6dBm"
654    config BT_LE_DFT_TX_POWER_LEVEL_N3
655        bool "-3dBm"
656    config BT_LE_DFT_TX_POWER_LEVEL_N0
657        bool "0dBm"
658    config BT_LE_DFT_TX_POWER_LEVEL_P3
659        bool "+3dBm"
660    config BT_LE_DFT_TX_POWER_LEVEL_P6
661        bool "+6dBm"
662    config BT_LE_DFT_TX_POWER_LEVEL_P9
663        bool "+9dBm"
664    config BT_LE_DFT_TX_POWER_LEVEL_P12
665        bool "+12dBm"
666    config BT_LE_DFT_TX_POWER_LEVEL_P15
667        bool "+15dBm"
668    config BT_LE_DFT_TX_POWER_LEVEL_P18
669        bool "+18dBm"
670    config BT_LE_DFT_TX_POWER_LEVEL_P20
671        bool "+20dBm"
672endchoice
673
674config BT_LE_DFT_TX_POWER_LEVEL_DBM_EFF
675    int
676    default -24 if BT_LE_DFT_TX_POWER_LEVEL_N24
677    default -21 if BT_LE_DFT_TX_POWER_LEVEL_N21
678    default -18 if BT_LE_DFT_TX_POWER_LEVEL_N18
679    default -15 if BT_LE_DFT_TX_POWER_LEVEL_N15
680    default -12 if BT_LE_DFT_TX_POWER_LEVEL_N12
681    default -9 if BT_LE_DFT_TX_POWER_LEVEL_N9
682    default -6 if BT_LE_DFT_TX_POWER_LEVEL_N6
683    default -3 if BT_LE_DFT_TX_POWER_LEVEL_N3
684    default 0 if BT_LE_DFT_TX_POWER_LEVEL_N0
685    default 3 if BT_LE_DFT_TX_POWER_LEVEL_P3
686    default 6 if BT_LE_DFT_TX_POWER_LEVEL_P6
687    default 9 if BT_LE_DFT_TX_POWER_LEVEL_P9
688    default 12 if BT_LE_DFT_TX_POWER_LEVEL_P12
689    default 15 if BT_LE_DFT_TX_POWER_LEVEL_P15
690    default 18 if BT_LE_DFT_TX_POWER_LEVEL_P18
691    default 20 if BT_LE_DFT_TX_POWER_LEVEL_P20
692    default 0
693
694config BT_LE_CTRL_CHECK_CONNECT_IND_ACCESS_ADDRESS
695    bool "Enable enhanced Access Address check in CONNECT_IND"
696    default n
697    help
698        Enabling this option will add stricter verification of the Access Address in the CONNECT_IND PDU.
699        This improves security by ensuring that only connection requests with valid Access Addresses are accepted.
700        If disabled, only basic checks are applied, improving compatibility.
701