1 /****************************************************************************** 2 * Copyright (c) 2022 Telink Semiconductor (Shanghai) Co., Ltd. ("TELINK") 3 * All rights reserved. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 * 17 *****************************************************************************/ 18 #pragma once 19 20 ////////////////////////////////////////////////////////////////////////////// 21 /** 22 * @brief Definition for Device info 23 */ 24 #include "drivers.h" 25 #include "tl_common.h" 26 27 #define BQB_TEST_EN 0 28 //BQB Test 29 #if BQB_TEST_EN 30 #define BQB_TEST_PHY_EN 1 31 #define BQB_TEST_CONN_UPD_EN 1 32 #define BQB_TEST_CHN_MAP_EN 1 33 #else 34 #define BQB_TEST_PHY_EN 0 35 #define BQB_TEST_CONN_UPD_EN 0 36 #define BQB_TEST_CHN_MAP_EN 0 37 #endif 38 39 40 /////////////////// Feature //////////////////////////// 41 #ifndef LL_MULTI_SLAVE_MAC_ENABLE 42 #define LL_MULTI_SLAVE_MAC_ENABLE 0 43 #endif 44 45 ////////////////////////////////////////////////////////////////////// 46 //note both the following two macro XXX_PRIVATE_XXX and XXX_NORMAL_XXX 47 //CAN NOT be set 1 at the same time.One is private,another is standard. 48 #ifndef LL_FEATURE_PRIVATE_BIS_SYNC_RECEIVER 49 #define LL_FEATURE_PRIVATE_BIS_SYNC_RECEIVER 0 50 #endif 51 52 #ifndef LL_FEATURE_NORMAL_BIS_SYNC_RECEIVER 53 #define LL_FEATURE_NORMAL_BIS_SYNC_RECEIVER 1 54 #endif 55 ////////////////////////////////////////////////////////////////////// 56 57 58 #if(MCU_CORE_TYPE == MCU_CORE_825x) 59 #define FIX_HW_CRC24_EN 1 60 #define HW_ECDH_EN 0 61 #elif(MCU_CORE_TYPE == MCU_CORE_827x) 62 #define FIX_HW_CRC24_EN 0 63 #define HW_ECDH_EN 1 64 #elif(MCU_CORE_TYPE == MCU_CORE_9518) 65 #define FIX_HW_CRC24_EN 0 66 #define HW_ECDH_EN 1 67 #else 68 #error "unsupported mcu type !" 69 #endif 70 71 //conn param update/map update 72 #ifndef BLS_PROC_MASTER_UPDATE_REQ_IN_IRQ_ENABLE 73 #define BLS_PROC_MASTER_UPDATE_REQ_IN_IRQ_ENABLE 0 //TODO: 74 #endif 75 76 77 #ifndef LE_AUTHENTICATED_PAYLOAD_TIMEOUT_SUPPORT_EN 78 #define LE_AUTHENTICATED_PAYLOAD_TIMEOUT_SUPPORT_EN 0 79 #endif 80 81 82 //Link layer feature enable flag default setting 83 #ifndef LL_FEATURE_SUPPORT_LE_DATA_LENGTH_EXTENSION 84 #define LL_FEATURE_SUPPORT_LE_DATA_LENGTH_EXTENSION 1 85 #endif 86 87 #ifndef LL_FEATURE_SUPPORT_LL_PRIVACY 88 #define LL_FEATURE_SUPPORT_LL_PRIVACY 0 //TODO: legAdv and slave role conn support now 89 #endif 90 91 #ifndef LL_FEATURE_SUPPORT_LE_2M_PHY 92 #define LL_FEATURE_SUPPORT_LE_2M_PHY 1 93 #endif 94 95 #ifndef LL_FEATURE_SUPPORT_LE_CODED_PHY 96 #define LL_FEATURE_SUPPORT_LE_CODED_PHY 1 97 #endif 98 99 #ifndef LL_FEATURE_SUPPORT_LE_AOA_AOD 100 #define LL_FEATURE_SUPPORT_LE_AOA_AOD 0 101 #endif 102 103 #ifndef LL_FEATURE_SUPPORT_LE_EXTENDED_ADVERTISING 104 #define LL_FEATURE_SUPPORT_LE_EXTENDED_ADVERTISING 1 105 #endif 106 107 #ifndef LL_FEATURE_SUPPORT_LE_EXTENDED_SCANNING 108 #define LL_FEATURE_SUPPORT_LE_EXTENDED_SCANNING 1 109 #endif 110 111 #ifndef LL_FEATURE_SUPPORT_LE_EXTENDED_INITIATE 112 #define LL_FEATURE_SUPPORT_LE_EXTENDED_INITIATE 1 113 #endif 114 115 #ifndef LL_FEATURE_SUPPORT_LE_PERIODIC_ADVERTISING 116 #define LL_FEATURE_SUPPORT_LE_PERIODIC_ADVERTISING 1 117 #endif 118 119 #ifndef LL_FEATURE_SUPPORT_LE_PERIODIC_ADVERTISING_SYNC 120 #define LL_FEATURE_SUPPORT_LE_PERIODIC_ADVERTISING_SYNC 1 121 #endif 122 123 #ifndef LL_FEATURE_SUPPORT_CHANNEL_SELECTION_ALGORITHM2 124 #define LL_FEATURE_SUPPORT_CHANNEL_SELECTION_ALGORITHM2 1 125 #endif 126 127 128 129 130 131 132 //core_5.2 feature begin 133 #ifndef LL_FEATURE_SUPPORT_CONNECTED_ISOCHRONOUS_STREAM_MASTER 134 #define LL_FEATURE_SUPPORT_CONNECTED_ISOCHRONOUS_STREAM_MASTER 1 135 #endif 136 137 #ifndef LL_FEATURE_SUPPORT_CONNECTED_ISOCHRONOUS_STREAM_SLAVE 138 #define LL_FEATURE_SUPPORT_CONNECTED_ISOCHRONOUS_STREAM_SLAVE 1 139 #endif 140 141 #ifndef LL_FEATURE_SUPPORT_ISOCHRONOUS_BROADCASTER 142 #define LL_FEATURE_SUPPORT_ISOCHRONOUS_BROADCASTER 1 143 #endif 144 145 #ifndef LL_FEATURE_SUPPORT_SYNCHRONIZED_RECEIVER 146 #define LL_FEATURE_SUPPORT_SYNCHRONIZED_RECEIVER 1 147 #endif 148 149 #ifndef LL_FEATURE_SUPPORT_ISOCHRONOUS_CHANNELS 150 #define LL_FEATURE_SUPPORT_ISOCHRONOUS_CHANNELS 1 151 #endif 152 153 #ifndef LL_FEATURE_SUPPORT_ISOCHRONOUS_TEST_MODE 154 #define LL_FEATURE_SUPPORT_ISOCHRONOUS_TEST_MODE 1 155 #endif 156 //core_5.2 feature end 157 158 159 160 #ifndef BQB_LOWER_TESTER_ENABLE 161 #define BQB_LOWER_TESTER_ENABLE 0 162 #endif 163 164 165 166 #ifndef HCI_NEW_FIFO_FEATURE_ENABLE 167 #define HCI_NEW_FIFO_FEATURE_ENABLE 1 168 #endif 169 170 171 #ifndef HCI_SEND_NUM_OF_CMP_AFT_ACK 172 #define HCI_SEND_NUM_OF_CMP_AFT_ACK 0 173 #endif 174 175 176 #ifndef L2CAP_DATA_2_HCI_DATA_BUFFER_ENABLE 177 #define L2CAP_DATA_2_HCI_DATA_BUFFER_ENABLE 0 //just for debug 178 #endif 179 180 #ifndef L2CAP_CREDIT_BASED_FLOW_CONTROL_MODE_EN 181 #define L2CAP_CREDIT_BASED_FLOW_CONTROL_MODE_EN 0 182 #endif 183 184 185 #ifndef UPPER_TESTER_DBG_EN 186 #define UPPER_TESTER_DBG_EN 1 187 #endif 188 189 #ifndef UPPER_TESTER_HCI_LOG_EN 190 #define UPPER_TESTER_HCI_LOG_EN 1 191 #endif 192 193 194 195 196