1 /*$Id: //dwh/bluetooth/DWC_ble154combo/firmware/rel/1.21a-SOW07PatchV4/firmware/shrd_utils/inc/ll_fw_config.h#1 $*/
2 /**
3  ********************************************************************************
4  * @file    ll_fw_config.h
5  * @brief   This file contains the major configurations to the BLE controller.
6  ******************************************************************************
7  * @copy
8  * This Synopsys DWC Bluetooth Low Energy Combo Link Layer/MAC software and
9  * associated documentation ( hereinafter the "Software") is an unsupported
10  * proprietary work of Synopsys, Inc. unless otherwise expressly agreed to in
11  * writing between Synopsys and you. The Software IS NOT an item of Licensed
12  * Software or a Licensed Product under any End User Software License Agreement
13  * or Agreement for Licensed Products with Synopsys or any supplement thereto.
14  * Synopsys is a registered trademark of Synopsys, Inc. Other names included in
15  * the SOFTWARE may be the trademarks of their respective owners.
16  *
17  * Synopsys MIT License:
18  * Copyright (c) 2020-Present Synopsys, Inc
19  *
20  * Permission is hereby granted, free of charge, to any person obtaining a copy of
21  * the Software), to deal in the Software without restriction, including without
22  * limitation the rights to use, copy, modify, merge, publish, distribute,
23  * sublicense, and/or sell copies of the Software, and to permit persons to whom
24  * the Software is furnished to do so, subject to the following conditions:
25  *
26  * The above copyright notice and this permission notice shall be included in all
27  * copies or substantial portions of the Software.
28  *
29  * THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
30  * IMPLIED, INCLUDING, BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
31  * FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT. IN NO EVENT SHALL THE
32  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
33  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE ARISING FROM,
34  * OUT OF, OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
35  *
36  * */
37 #ifndef INCLUDE_LL_FW_CONFIG_H
38 #define INCLUDE_LL_FW_CONFIG_H
39 
40 
41 /*************************** BLE Configuration *************************************/
42 /*Configurations of BLE will apply only when BLE is enabled*/
43 /* Roles configurations */
44 #define SUPPORT_EXPLCT_OBSERVER_ROLE                1 /* Enable\Disable Explicit observer role. Enable:1 - Disable:0 */
45 #define SUPPORT_EXPLCT_BROADCASTER_ROLE             1 /* Enable\Disable Explicit broadcaster role. Enable:1 - Disable:0 */
46 #define SUPPORT_MASTER_CONNECTION                   1 /* Enable\Disable Master connection role. Enable:1 - Disable:0 */
47 #define SUPPORT_SLAVE_CONNECTION                    1 /* Enable\Disable Slave connection role. Enable:1 - Disable:0 */
48 
49 /* Standard features configurations */
50 #define SUPPORT_LE_ENCRYPTION                       1 /* Enable\Disable Encryption feature. Enable:1 - Disable:0 */
51 #define SUPPORT_PRIVACY                             1 /* Enable\Disable Privacy feature. Enable:1 - Disable:0 */
52 
53 /* Capabilities configurations */
54 #define MAX_NUM_CNCRT_STAT_MCHNS                    8 /* Set maximum number of states the controller can support */
55 #define USE_NON_ACCURATE_32K_SLEEP_CLK              1 /* Allow to drive the sleep clock by sources other than the default crystal oscillator source.*/
56                                                        /*LL can use crystal oscillator or RTC or RCO to drive the sleep clock.This selection is done via "DEFAULT_SLEEP_CLOCK_SOURCE" macro. */
57 #define SUPPORT_LE_EXTENDED_ADVERTISING             1 /* Enable\Disable Extended advertising feature. Enable:1 - Disable:0 */
58 #define SUPPORT_LE_PERIODIC_ADVERTISING             1 /* Enable\Disable Periodic advertising feature. Enable:1 - Disable:0 */
59 #define SUPPORT_LE_POWER_CLASS_1                    1 /* Enable\Disable Low power class 1 feature. Enable:1 - Disable:0 */
60 #define SUPPORT_AOA_AOD                             1 /* Enable\Disable AOA_AOD feature. Enable:1 - Disable:0 */
61 #define SUPPORT_PERIODIC_SYNC_TRANSFER              1 /* Enable\Disable PAST feature. Enable:1 - Disable:0 */
62 #define SUPPORT_SLEEP_CLOCK_ACCURCY_UPDATES         1 /* Enable\Disable Sleep Clock Accuracy Updates Feature. Enable:1 - Disable:0 */
63 #define SUPPORT_CONNECTED_ISOCHRONOUS               1 /* Enable\Disable Connected Isochronous Channel Feature. Enable:1 - Disable:0 */
64 #define SUPPORT_BRD_ISOCHRONOUS                     1 /* Enable\Disable Broadcast Isochronous Channel Feature. Enable:1 - Disable:0 */
65 #define SUPPORT_SYNC_ISOCHRONOUS                    1 /* Enable\Disable Broadcast Isochronous Synchronizer Channel Feature. Enable:1 - Disable:0 */
66 #define SUPPORT_LE_POWER_CONTROL                    1 /* Enable\Disable LE Power Control Feature. Enable:1 - Disable:0 */
67 
68 /* 5.3 features */
69 #define SUPPORT_PERIODIC_ADV_ADI                    1
70 #define SUPPORT_CHANNEL_CLASSIFICATION              1
71 #define SUPPORT_LE_ENHANCED_CONN_UPDATE             1
72 
73 
74 #define SUPPORT_CSSA                                1 /* Enable\Disable Coding Selection Scheme on Advertising Feature. Enable:1 - Disable:0 */
75 #define SUPPORT_LE_PAWR_ADVERTISER_ROLE             0 /* Enable\Disable PAwR Advertiser role. Enable:1 - Disable:0 */
76 #define SUPPORT_LE_PAWR_SYNC_ROLE                   0 /* Enable\Disable PAwR Synchronizer role. Enable:1 - Disable:0 */
77 
78 /* Non-standard features configurations */
79 #define NUM_OF_CTSM_EMNGR_HNDLS                     1 /* Number of custom handles in event manager to be used for app specific needs */
80 #define SUPPORT_AUGMENTED_BLE_MODE                  1 /* Enable\Disable Augmented BLE Support. Enable:1 - Disable:0 */
81 #define SUPPORT_PTA                                 1 /* Enable\Disable PTA Feature. Enable:1 - Disable:0 */
82 
83 #define CHECK_ANY_MISSED_EVENT_ON_DEEP_SLEEP_EXIT   1 /* Enable\Disable calling event scheduler handler function at the end of deep sleep exit*/
84 
85 #define SUPPORT_AUTONOMOUS_POWER_CONTROL_REQ        1
86 #define LL_BASIC  0
87 
88 /*************************** MAC Configuration *************************************/
89 /*Configurations of MAC will apply only when MAC is enabled*/
90 #define FFD_DEVICE_CONFIG                           0 /* Enable\Disable FFD:1 - RFD:0 */
91 #ifdef SUPPORT_AUG_MAC_HCI_UART
92 #define RAL_NUMBER_OF_INSTANCE                      0 /* The Number of RAL instances supported */
93 #else
94 #define RAL_NUMBER_OF_INSTANCE                      0 /* The Number of RAL instances supported */
95 #endif
96 #define MAX_NUMBER_OF_INDIRECT_DATA                 0 /* The maximum number of supported indirect data buffers */
97 #define SUPPORT_OPENTHREAD_1_2                      0 /* Enable / disable FW parts related to new features introduced in openthread 1.2*/
98 #define SUPPORT_SEC                                 0 /* The MAC Security Supported : 1 - Not Supported:0 */
99 #define RADIO_CSMA                                  0 /* Enable\Disable CSMA Algorithm in Radio Layer, Must be Enabled if MAC_LAYER_BUILD */
100 #define SUPPORT_A_MAC                               0
101 #define SMPL_PRTCL_TEST_ENABLE                      0
102 
103 #endif /* INCLUDE_LL_FW_CONFIG_H */
104