Home | History | Annotate | Download | only in include
      1 /******************************************************************************
      2  *
      3  *  Copyright (c) 2014 The Android Open Source Project
      4  *  Copyright (C) 1999-2012 Broadcom Corporation
      5  *
      6  *  Licensed under the Apache License, Version 2.0 (the "License");
      7  *  you may not use this file except in compliance with the License.
      8  *  You may obtain a copy of the License at:
      9  *
     10  *  http://www.apache.org/licenses/LICENSE-2.0
     11  *
     12  *  Unless required by applicable law or agreed to in writing, software
     13  *  distributed under the License is distributed on an "AS IS" BASIS,
     14  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     15  *  See the License for the specific language governing permissions and
     16  *  limitations under the License.
     17  *
     18  ******************************************************************************/
     19 
     20 #ifndef BT_TARGET_H
     21 #define BT_TARGET_H
     22 
     23 #ifndef BUILDCFG
     24 #define BUILDCFG
     25 #endif
     26 
     27 #if !defined(HAS_BDROID_BUILDCFG) && !defined(HAS_NO_BDROID_BUILDCFG)
     28 #error "An Android.mk file did not include bdroid_CFLAGS and possibly not bdorid_C_INCLUDES"
     29 #endif
     30 
     31 #ifdef HAS_BDROID_BUILDCFG
     32 #include "bdroid_buildcfg.h"
     33 #endif
     34 
     35 #include "bt_types.h"   /* This must be defined AFTER buildcfg.h */
     36 
     37 /* Include common GKI definitions used by this platform */
     38 #include "gki_target.h"
     39 #include "dyn_mem.h"    /* defines static and/or dynamic memory for components */
     40 
     41 //------------------Added from bdroid_buildcfg.h---------------------
     42 #ifndef L2CAP_EXTFEA_SUPPORTED_MASK
     43 #define L2CAP_EXTFEA_SUPPORTED_MASK (L2CAP_EXTFEA_ENH_RETRANS | L2CAP_EXTFEA_STREAM_MODE | L2CAP_EXTFEA_NO_CRC | L2CAP_EXTFEA_FIXED_CHNLS)
     44 #endif
     45 
     46 #ifndef BTUI_OPS_FORMATS
     47 #define BTUI_OPS_FORMATS (BTA_OP_VCARD21_MASK | BTA_OP_ANY_MASK)
     48 #endif
     49 
     50 #ifndef BTA_RFC_MTU_SIZE
     51 #define BTA_RFC_MTU_SIZE (L2CAP_MTU_SIZE-L2CAP_MIN_OFFSET-RFCOMM_DATA_OVERHEAD)
     52 #endif
     53 
     54 #ifndef SBC_NO_PCM_CPY_OPTION
     55 #define SBC_NO_PCM_CPY_OPTION FALSE
     56 #endif
     57 
     58 #ifndef BTA_INCLUDED
     59 #define BTA_INCLUDED TRUE
     60 #endif
     61 
     62 #ifndef BTA_PAN_INCLUDED
     63 #define BTA_PAN_INCLUDED TRUE
     64 #endif
     65 
     66 #ifndef BTA_HH_INCLUDED
     67 #define BTA_HH_INCLUDED TRUE
     68 #endif
     69 
     70 #ifndef BTA_HH_ROLE
     71 #define BTA_HH_ROLE BTA_MASTER_ROLE_PREF
     72 #endif
     73 
     74 #ifndef BTA_HH_LE_INCLUDED
     75 #define BTA_HH_LE_INCLUDED TRUE
     76 #endif
     77 
     78 #ifndef BTA_AR_INCLUDED
     79 #define BTA_AR_INCLUDED TRUE
     80 #endif
     81 
     82 #ifndef BTA_AV_INCLUDED
     83 #define BTA_AV_INCLUDED TRUE
     84 #endif
     85 
     86 #ifndef BTA_GATT_INCLUDED
     87 #define BTA_GATT_INCLUDED TRUE
     88 #endif
     89 
     90 #ifndef BTA_AV_SINK_INCLUDED
     91 #define BTA_AV_SINK_INCLUDED FALSE
     92 #endif
     93 
     94 #ifndef BTA_DISABLE_DELAY
     95 #define BTA_DISABLE_DELAY 200 /* in milliseconds */
     96 #endif
     97 
     98 // If the next wakeup time is less than this threshold, we should acquire
     99 // a wakelock instead of setting a wake alarm so we're not bouncing in
    100 // and out of suspend frequently.
    101 // in millisecond
    102 // TODO(zachoverflow): reinstate in alarm code
    103 #ifndef GKI_TIMER_INTERVAL_FOR_WAKELOCK
    104 #define GKI_TIMER_INTERVAL_FOR_WAKELOCK 3000
    105 #endif
    106 
    107 #ifndef BTA_SYS_TIMER_PERIOD
    108 #define BTA_SYS_TIMER_PERIOD  100
    109 #endif
    110 
    111 #ifndef SBC_FOR_EMBEDDED_LINUX
    112 #define SBC_FOR_EMBEDDED_LINUX TRUE
    113 #endif
    114 
    115 #ifndef AVDT_VERSION
    116 #define AVDT_VERSION  0x0102
    117 #endif
    118 
    119 #ifndef BTA_AG_AT_MAX_LEN
    120 #define BTA_AG_AT_MAX_LEN  512
    121 #endif
    122 
    123 #ifndef BTA_AVRCP_FF_RW_SUPPORT
    124 #define BTA_AVRCP_FF_RW_SUPPORT TRUE
    125 #endif
    126 
    127 #ifndef BTA_AG_SCO_PKT_TYPES
    128 #define BTA_AG_SCO_PKT_TYPES  (BTM_SCO_LINK_ONLY_MASK | BTM_SCO_PKT_TYPES_MASK_EV3 |  BTM_SCO_PKT_TYPES_MASK_NO_3_EV3 | BTM_SCO_PKT_TYPES_MASK_NO_2_EV5 | BTM_SCO_PKT_TYPES_MASK_NO_3_EV5)
    129 #endif
    130 
    131 #ifndef BTA_AV_RET_TOUT
    132 #define BTA_AV_RET_TOUT 15
    133 #endif
    134 
    135 #ifndef PORCHE_PAIRING_CONFLICT
    136 #define PORCHE_PAIRING_CONFLICT  TRUE
    137 #endif
    138 
    139 #ifndef BTA_AV_CO_CP_SCMS_T
    140 #define BTA_AV_CO_CP_SCMS_T  FALSE
    141 #endif
    142 
    143 /* This feature is used to eanble interleaved scan*/
    144 #ifndef BTA_HOST_INTERLEAVE_SEARCH
    145 #define BTA_HOST_INTERLEAVE_SEARCH FALSE
    146 #endif
    147 
    148 #ifndef BT_USE_TRACES
    149 #define BT_USE_TRACES  TRUE
    150 #endif
    151 
    152 #ifndef BT_TRACE_BTIF
    153 #define BT_TRACE_BTIF  TRUE
    154 #endif
    155 
    156 #ifndef BT_TRACE_VERBOSE
    157 #define BT_TRACE_VERBOSE  FALSE
    158 #endif
    159 
    160 #ifndef BTA_DM_SDP_DB_SIZE
    161 #define BTA_DM_SDP_DB_SIZE  8000
    162 #endif
    163 
    164 #ifndef HL_INCLUDED
    165 #define HL_INCLUDED  TRUE
    166 #endif
    167 
    168 #ifndef AG_VOICE_SETTINGS
    169 #define AG_VOICE_SETTINGS  HCI_DEFAULT_VOICE_SETTINGS
    170 #endif
    171 
    172 #ifndef BTIF_DM_OOB_TEST
    173 #define BTIF_DM_OOB_TEST  TRUE
    174 #endif
    175 
    176 // How long to wait before activating sniff mode after entering the
    177 // idle state for FTS, OPS connections
    178 #ifndef BTA_FTS_OPS_IDLE_TO_SNIFF_DELAY_MS
    179 #define BTA_FTS_OPS_IDLE_TO_SNIFF_DELAY_MS 7000
    180 #endif
    181 
    182 //------------------End added from bdroid_buildcfg.h---------------------
    183 
    184 
    185 /******************************************************************************
    186 **
    187 ** GKI Buffer Pools
    188 **
    189 ******************************************************************************/
    190 
    191 /* Receives HCI events from the lower-layer. */
    192 #ifndef HCI_CMD_POOL_ID
    193 #define HCI_CMD_POOL_ID             GKI_POOL_ID_2
    194 #endif
    195 
    196 #ifndef HCI_CMD_POOL_BUF_SIZE
    197 #define HCI_CMD_POOL_BUF_SIZE       GKI_BUF2_SIZE
    198 #endif
    199 
    200 /* Receives ACL data packets from thelower-layer. */
    201 #ifndef HCI_ACL_POOL_ID
    202 #define HCI_ACL_POOL_ID             GKI_POOL_ID_3
    203 #endif
    204 
    205 /* Maximum number of buffers available for ACL receive data. */
    206 #ifndef HCI_ACL_BUF_MAX
    207 #define HCI_ACL_BUF_MAX             GKI_BUF3_MAX
    208 #endif
    209 
    210 /* Receives SCO data packets from the lower-layer. */
    211 #ifndef HCI_SCO_POOL_ID
    212 #define HCI_SCO_POOL_ID             GKI_POOL_ID_6
    213 #endif
    214 
    215 /* Sends SDP data packets. */
    216 #ifndef SDP_POOL_ID
    217 #define SDP_POOL_ID                 3
    218 #endif
    219 
    220 /* Sends RFCOMM command packets. */
    221 #ifndef RFCOMM_CMD_POOL_ID
    222 #define RFCOMM_CMD_POOL_ID          GKI_POOL_ID_2
    223 #endif
    224 
    225 /* Sends RFCOMM data packets. */
    226 #ifndef RFCOMM_DATA_POOL_ID
    227 #define RFCOMM_DATA_POOL_ID         GKI_POOL_ID_3
    228 #endif
    229 
    230 #ifndef RFCOMM_DATA_POOL_BUF_SIZE
    231 #define RFCOMM_DATA_POOL_BUF_SIZE   GKI_BUF3_SIZE
    232 #endif
    233 
    234 /* Sends L2CAP packets to the peer and HCI messages to the controller. */
    235 #ifndef L2CAP_CMD_POOL_ID
    236 #define L2CAP_CMD_POOL_ID           GKI_POOL_ID_2
    237 #endif
    238 
    239 /* Sends L2CAP segmented packets in ERTM mode */
    240 #ifndef L2CAP_FCR_TX_POOL_ID
    241 #define L2CAP_FCR_TX_POOL_ID        HCI_ACL_POOL_ID
    242 #endif
    243 
    244 /* Receives L2CAP segmented packets in ERTM mode */
    245 #ifndef L2CAP_FCR_RX_POOL_ID
    246 #define L2CAP_FCR_RX_POOL_ID        HCI_ACL_POOL_ID
    247 #endif
    248 
    249 /* Number of ACL buffers to assign to LE
    250    if the HCI buffer pool is shared with BR/EDR */
    251 #ifndef L2C_DEF_NUM_BLE_BUF_SHARED
    252 #define L2C_DEF_NUM_BLE_BUF_SHARED      1
    253 #endif
    254 
    255 /* Used by BTM when it sends HCI commands to the controller. */
    256 #ifndef BTM_CMD_POOL_ID
    257 #define BTM_CMD_POOL_ID             GKI_POOL_ID_2
    258 #endif
    259 
    260 #ifndef OBX_LRG_DATA_POOL_SIZE
    261 #define OBX_LRG_DATA_POOL_SIZE      GKI_BUF4_SIZE
    262 #endif
    263 
    264 #ifndef OBX_LRG_DATA_POOL_ID
    265 #define OBX_LRG_DATA_POOL_ID        GKI_POOL_ID_4
    266 #endif
    267 /* Used to send data to L2CAP. */
    268 #ifndef GAP_DATA_POOL_ID
    269 #define GAP_DATA_POOL_ID            GKI_POOL_ID_3
    270 #endif
    271 
    272 #ifndef SPP_DB_SIZE
    273 #define SPP_DB_SIZE                 GKI_BUF3_SIZE
    274 #endif
    275 
    276 /* BNEP data and protocol messages. */
    277 #ifndef BNEP_POOL_ID
    278 #define BNEP_POOL_ID                GKI_POOL_ID_3
    279 #endif
    280 
    281 /* RPC pool for temporary trace message buffers. */
    282 #ifndef RPC_SCRATCH_POOL_ID
    283 #define RPC_SCRATCH_POOL_ID         GKI_POOL_ID_2
    284 #endif
    285 
    286 /* AVDTP pool for protocol messages */
    287 #ifndef AVDT_CMD_POOL_ID
    288 #define AVDT_CMD_POOL_ID            GKI_POOL_ID_2
    289 #endif
    290 
    291 /* AVDTP pool size for media packets in case of fragmentation */
    292 #ifndef AVDT_DATA_POOL_SIZE
    293 #define AVDT_DATA_POOL_SIZE         GKI_BUF3_SIZE
    294 #endif
    295 
    296 #ifndef PAN_POOL_ID
    297 #define PAN_POOL_ID                 GKI_POOL_ID_3
    298 /* Maximum amount of the shared buffer to allocate for PAN */
    299 #define PAN_POOL_MAX                (GKI_BUF3_MAX / 4)
    300 #endif
    301 
    302 /* AVCTP pool for protocol messages */
    303 #ifndef AVCT_CMD_POOL_ID
    304 #define AVCT_CMD_POOL_ID            GKI_POOL_ID_1
    305 #endif
    306 
    307 /* AVRCP pool for protocol messages */
    308 #ifndef AVRC_CMD_POOL_ID
    309 #define AVRC_CMD_POOL_ID            GKI_POOL_ID_1
    310 #endif
    311 
    312 /* AVRCP pool size for protocol messages */
    313 #ifndef AVRC_CMD_POOL_SIZE
    314 #define AVRC_CMD_POOL_SIZE          GKI_BUF1_SIZE
    315 #endif
    316 
    317 /* AVRCP Metadata pool for protocol messages */
    318 #ifndef AVRC_META_CMD_POOL_ID
    319 #define AVRC_META_CMD_POOL_ID       GKI_POOL_ID_2
    320 #endif
    321 
    322 /* AVRCP Metadata pool size for protocol messages */
    323 #ifndef AVRC_META_CMD_POOL_SIZE
    324 #define AVRC_META_CMD_POOL_SIZE     GKI_BUF2_SIZE
    325 #endif
    326 
    327 
    328 /* AVRCP buffer size for browsing channel messages */
    329 #ifndef AVRC_BROWSE_POOL_SIZE
    330 #define AVRC_BROWSE_POOL_SIZE     GKI_MAX_BUF_SIZE
    331 #endif
    332 
    333 #ifndef BTA_HL_LRG_DATA_POOL_ID
    334 #define BTA_HL_LRG_DATA_POOL_ID        GKI_POOL_ID_7
    335 #endif
    336 
    337 /* GATT Server Database pool ID */
    338 #ifndef GATT_DB_POOL_ID
    339 #define GATT_DB_POOL_ID                 GKI_POOL_ID_8
    340 #endif
    341 
    342 /* GATT Data sending buffer pool ID, use default ACL pool for fix channel data */
    343 #ifndef GATT_BUF_POOL_ID
    344 #define GATT_BUF_POOL_ID                HCI_ACL_POOL_ID
    345 #endif
    346 
    347 /******************************************************************************
    348 **
    349 ** Lower Layer Interface
    350 **
    351 ******************************************************************************/
    352 
    353 /* Macro for allocating buffer for HCI commands */
    354 #ifndef HCI_GET_CMD_BUF
    355 #if (!defined(HCI_USE_VARIABLE_SIZE_CMD_BUF) || (HCI_USE_VARIABLE_SIZE_CMD_BUF == FALSE))
    356 /* Allocate fixed-size buffer from HCI_CMD_POOL (default case) */
    357 #define HCI_GET_CMD_BUF(paramlen)    ((BT_HDR *)GKI_getpoolbuf (HCI_CMD_POOL_ID))
    358 #else
    359 /* Allocate smallest possible buffer (for platforms with limited RAM) */
    360 #define HCI_GET_CMD_BUF(paramlen)    ((BT_HDR *)GKI_getbuf ((UINT16)(BT_HDR_SIZE + HCIC_PREAMBLE_SIZE + (paramlen))))
    361 #endif
    362 #endif  /* HCI_GET_CMD_BUF */
    363 
    364 /******************************************************************************
    365 **
    366 ** HCI Services (H4)
    367 **
    368 ******************************************************************************/
    369 
    370 /* Use 2 second for low-resolution systems, override to 1 for high-resolution systems */
    371 #ifndef BT_1SEC_TIMEOUT
    372 #define BT_1SEC_TIMEOUT             (2)
    373 #endif
    374 
    375 /* Quick Timer */
    376 /* if L2CAP_FCR_INCLUDED is TRUE then it should have 100 millisecond resolution */
    377 /* if none of them is included then QUICK_TIMER_TICKS_PER_SEC is set to 0 to exclude quick timer */
    378 #ifndef QUICK_TIMER_TICKS_PER_SEC
    379 #define QUICK_TIMER_TICKS_PER_SEC   10       /* 100ms timer */
    380 #endif
    381 
    382 /******************************************************************************
    383 **
    384 ** BTM
    385 **
    386 ******************************************************************************/
    387 
    388 /* Cancel Inquiry on incoming SSP */
    389 #ifndef BTM_NO_SSP_ON_INQUIRY
    390 #define BTM_NO_SSP_ON_INQUIRY       FALSE
    391 #endif
    392 
    393 /* Includes SCO if TRUE */
    394 #ifndef BTM_SCO_INCLUDED
    395 #define BTM_SCO_INCLUDED            TRUE       /* TRUE includes SCO code */
    396 #endif
    397 
    398 /* Includes SCO if TRUE */
    399 #ifndef BTM_SCO_HCI_INCLUDED
    400 #define BTM_SCO_HCI_INCLUDED            FALSE       /* TRUE includes SCO over HCI code */
    401 #endif
    402 
    403 /* Includes WBS if TRUE */
    404 #ifndef BTM_WBS_INCLUDED
    405 #define BTM_WBS_INCLUDED            FALSE       /* TRUE includes WBS code */
    406 #endif
    407 
    408 /*  This is used to work around a controller bug that doesn't like Disconnect
    409 **  issued while there is a role switch in progress
    410 */
    411 #ifndef BTM_DISC_DURING_RS
    412 #define BTM_DISC_DURING_RS TRUE
    413 #endif
    414 
    415 /**************************
    416 ** Initial SCO TX credit
    417 *************************/
    418 /* max TX SCO data packet size */
    419 #ifndef BTM_SCO_DATA_SIZE_MAX
    420 #define BTM_SCO_DATA_SIZE_MAX       240
    421 #endif
    422 
    423 /* The size in bytes of the BTM inquiry database. */
    424 #ifndef BTM_INQ_DB_SIZE
    425 #define BTM_INQ_DB_SIZE             40
    426 #endif
    427 
    428 /* The default scan mode */
    429 #ifndef BTM_DEFAULT_SCAN_TYPE
    430 #define BTM_DEFAULT_SCAN_TYPE       BTM_SCAN_TYPE_INTERLACED
    431 #endif
    432 
    433 /* Should connections to unknown devices be allowed when not discoverable? */
    434 #ifndef BTM_ALLOW_CONN_IF_NONDISCOVER
    435 #define BTM_ALLOW_CONN_IF_NONDISCOVER   TRUE
    436 #endif
    437 
    438 /* Sets the Page_Scan_Window:  the length of time that the device is performing a page scan. */
    439 #ifndef BTM_DEFAULT_CONN_WINDOW
    440 #define BTM_DEFAULT_CONN_WINDOW     0x0012
    441 #endif
    442 
    443 /* Sets the Page_Scan_Activity:  the interval between the start of two consecutive page scans. */
    444 #ifndef BTM_DEFAULT_CONN_INTERVAL
    445 #define BTM_DEFAULT_CONN_INTERVAL   0x0800
    446 #endif
    447 
    448 /* When automatic inquiry scan is enabled, this sets the inquiry scan window. */
    449 #ifndef BTM_DEFAULT_DISC_WINDOW
    450 #define BTM_DEFAULT_DISC_WINDOW     0x0012
    451 #endif
    452 
    453 /* When automatic inquiry scan is enabled, this sets the inquiry scan interval. */
    454 #ifndef BTM_DEFAULT_DISC_INTERVAL
    455 #define BTM_DEFAULT_DISC_INTERVAL   0x0800
    456 #endif
    457 
    458 /* Default class of device
    459 * {SERVICE_CLASS, MAJOR_CLASS, MINOR_CLASS}
    460 *
    461 * SERVICE_CLASS:0x5A (Bit17 -Networking,Bit19 - Capturing,Bit20 -Object Transfer,Bit22 -Telephony)
    462 * MAJOR_CLASS:0x02 - PHONE
    463 * MINOR_CLASS:0x0C - SMART_PHONE
    464 *
    465 */
    466 #ifndef BTA_DM_COD
    467 #define BTA_DM_COD {0x5A, 0x02, 0x0C}
    468 #endif
    469 
    470 /* The number of SCO links. */
    471 #ifndef BTM_MAX_SCO_LINKS
    472 #define BTM_MAX_SCO_LINKS           3
    473 #endif
    474 
    475 /* The preferred type of SCO links (2-eSCO, 0-SCO). */
    476 #ifndef BTM_DEFAULT_SCO_MODE
    477 #define BTM_DEFAULT_SCO_MODE        2
    478 #endif
    479 
    480 /* The number of security records for peer devices. */
    481 #ifndef BTM_SEC_MAX_DEVICE_RECORDS
    482 #define BTM_SEC_MAX_DEVICE_RECORDS  100
    483 #endif
    484 
    485 /* The number of security records for services. */
    486 #ifndef BTM_SEC_MAX_SERVICE_RECORDS
    487 #define BTM_SEC_MAX_SERVICE_RECORDS 32
    488 #endif
    489 
    490 /* If True, force a retrieval of remote device name for each bond in case it's changed */
    491 #ifndef BTM_SEC_FORCE_RNR_FOR_DBOND
    492 #define BTM_SEC_FORCE_RNR_FOR_DBOND  FALSE
    493 #endif
    494 
    495 /* Maximum device name length used in btm database. */
    496 #ifndef BTM_MAX_REM_BD_NAME_LEN
    497 #define BTM_MAX_REM_BD_NAME_LEN     248
    498 #endif
    499 
    500 /* Maximum local device name length stored btm database.
    501   '0' disables storage of the local name in BTM */
    502 #ifndef BTM_MAX_LOC_BD_NAME_LEN
    503 #define BTM_MAX_LOC_BD_NAME_LEN     248
    504 #endif
    505 
    506 /* Fixed Default String. When this is defined as null string, the device's
    507  * product model name is used as the default local name.
    508  */
    509 #ifndef BTM_DEF_LOCAL_NAME
    510 #define BTM_DEF_LOCAL_NAME      ""
    511 #endif
    512 
    513 /* Maximum service name stored with security authorization (0 if not needed) */
    514 #ifndef BTM_SEC_SERVICE_NAME_LEN
    515 #define BTM_SEC_SERVICE_NAME_LEN    BT_MAX_SERVICE_NAME_LEN
    516 #endif
    517 
    518 /* Maximum length of the service name. */
    519 #ifndef BT_MAX_SERVICE_NAME_LEN
    520 #define BT_MAX_SERVICE_NAME_LEN     21
    521 #endif
    522 
    523 /* ACL buffer size in HCI Host Buffer Size command. */
    524 #ifndef BTM_ACL_BUF_SIZE
    525 #define BTM_ACL_BUF_SIZE            0
    526 #endif
    527 
    528 /* The maximum number of clients that can register with the power manager. */
    529 #ifndef BTM_MAX_PM_RECORDS
    530 #define BTM_MAX_PM_RECORDS          2
    531 #endif
    532 
    533 /* This is set to show debug trace messages for the power manager. */
    534 #ifndef BTM_PM_DEBUG
    535 #define BTM_PM_DEBUG                FALSE
    536 #endif
    537 
    538 /* This is set to TRUE if link is to be unparked due to BTM_CreateSCO API. */
    539 #ifndef BTM_SCO_WAKE_PARKED_LINK
    540 #define BTM_SCO_WAKE_PARKED_LINK    TRUE
    541 #endif
    542 
    543 /* If the user does not respond to security process requests within this many seconds,
    544  * a negative response would be sent automatically.
    545  * 30 is LMP response timeout value */
    546 #ifndef BTM_SEC_TIMEOUT_VALUE
    547 #define BTM_SEC_TIMEOUT_VALUE           35
    548 #endif
    549 
    550 /* Maximum number of callbacks that can be registered using BTM_RegisterForVSEvents */
    551 #ifndef BTM_MAX_VSE_CALLBACKS
    552 #define BTM_MAX_VSE_CALLBACKS           3
    553 #endif
    554 
    555 /******************************************
    556 **    Lisbon Features
    557 *******************************************/
    558 /* This is set to TRUE if the FEC is required for EIR packet. */
    559 #ifndef BTM_EIR_DEFAULT_FEC_REQUIRED
    560 #define BTM_EIR_DEFAULT_FEC_REQUIRED    TRUE
    561 #endif
    562 
    563 /* The IO capability of the local device (for Simple Pairing) */
    564 #ifndef BTM_LOCAL_IO_CAPS
    565 #define BTM_LOCAL_IO_CAPS               BTM_IO_CAP_IO
    566 #endif
    567 
    568 #ifndef BTM_LOCAL_IO_CAPS_BLE
    569 #define BTM_LOCAL_IO_CAPS_BLE           BTM_IO_CAP_KBDISP
    570 #endif
    571 
    572 /* The default MITM Protection Requirement (for Simple Pairing)
    573  * Possible values are BTM_AUTH_SP_YES or BTM_AUTH_SP_NO */
    574 #ifndef BTM_DEFAULT_AUTH_REQ
    575 #define BTM_DEFAULT_AUTH_REQ            BTM_AUTH_SP_NO
    576 #endif
    577 
    578 /* The default MITM Protection Requirement for dedicated bonding using Simple Pairing
    579  * Possible values are BTM_AUTH_AP_YES or BTM_AUTH_AP_NO */
    580 #ifndef BTM_DEFAULT_DD_AUTH_REQ
    581 #define BTM_DEFAULT_DD_AUTH_REQ            BTM_AUTH_AP_YES
    582 #endif
    583 
    584 /* Include Out-of-Band implementation for Simple Pairing */
    585 #ifndef BTM_OOB_INCLUDED
    586 #define BTM_OOB_INCLUDED                TRUE
    587 #endif
    588 
    589 /* TRUE to include Sniff Subrating */
    590 #ifndef BTM_SSR_INCLUDED
    591 #define BTM_SSR_INCLUDED                TRUE
    592 #endif
    593 
    594 /*************************
    595 ** End of Lisbon Features
    596 **************************/
    597 
    598 /* 4.1/4.2 secure connections feature */
    599 #ifndef SC_MODE_INCLUDED
    600 #define SC_MODE_INCLUDED                TRUE
    601 #endif
    602 
    603 /* Used for conformance testing ONLY */
    604 #ifndef BTM_BLE_CONFORMANCE_TESTING
    605 #define BTM_BLE_CONFORMANCE_TESTING           FALSE
    606 #endif
    607 
    608 /******************************************************************************
    609 **
    610 ** L2CAP
    611 **
    612 ******************************************************************************/
    613 
    614 /* The maximum number of simultaneous links that L2CAP can support. */
    615 #ifndef MAX_ACL_CONNECTIONS
    616 #define MAX_L2CAP_LINKS             7
    617 #else
    618 #define MAX_L2CAP_LINKS             MAX_ACL_CONNECTIONS
    619 #endif
    620 
    621 /* The maximum number of simultaneous channels that L2CAP can support. */
    622 #ifndef MAX_L2CAP_CHANNELS
    623 #define MAX_L2CAP_CHANNELS          16
    624 #endif
    625 
    626 /* The maximum number of simultaneous applications that can register with L2CAP. */
    627 #ifndef MAX_L2CAP_CLIENTS
    628 #define MAX_L2CAP_CLIENTS           15
    629 #endif
    630 
    631 /* The number of seconds of link inactivity before a link is disconnected. */
    632 #ifndef L2CAP_LINK_INACTIVITY_TOUT
    633 #define L2CAP_LINK_INACTIVITY_TOUT  4
    634 #endif
    635 
    636 /* The number of seconds of link inactivity after bonding before a link is disconnected. */
    637 #ifndef L2CAP_BONDING_TIMEOUT
    638 #define L2CAP_BONDING_TIMEOUT       3
    639 #endif
    640 
    641 /* The time from the HCI connection complete to disconnect if no channel is established. */
    642 #ifndef L2CAP_LINK_STARTUP_TOUT
    643 #define L2CAP_LINK_STARTUP_TOUT     60
    644 #endif
    645 
    646 /* The L2CAP MTU; must be in accord with the HCI ACL pool size. */
    647 #ifndef L2CAP_MTU_SIZE
    648 #define L2CAP_MTU_SIZE              1691
    649 #endif
    650 
    651 /* The L2CAP MPS over Bluetooth; must be in accord with the FCR tx pool size and ACL down buffer size. */
    652 #ifndef L2CAP_MPS_OVER_BR_EDR
    653 #define L2CAP_MPS_OVER_BR_EDR       1010
    654 #endif
    655 
    656 /* If host flow control enabled, this is the number of buffers the controller can have unacknowledged. */
    657 #ifndef L2CAP_HOST_FC_ACL_BUFS
    658 #define L2CAP_HOST_FC_ACL_BUFS      20
    659 #endif
    660 
    661 /* This is set to enable L2CAP to  take the ACL link out of park mode when ACL data is to be sent. */
    662 #ifndef L2CAP_WAKE_PARKED_LINK
    663 #define L2CAP_WAKE_PARKED_LINK      TRUE
    664 #endif
    665 
    666 /* Whether link wants to be the master or the slave. */
    667 #ifndef L2CAP_DESIRED_LINK_ROLE
    668 #define L2CAP_DESIRED_LINK_ROLE     HCI_ROLE_SLAVE
    669 #endif
    670 
    671 /* Include Non-Flushable Packet Boundary Flag feature of Lisbon */
    672 #ifndef L2CAP_NON_FLUSHABLE_PB_INCLUDED
    673 #define L2CAP_NON_FLUSHABLE_PB_INCLUDED     TRUE
    674 #endif
    675 
    676 /* Minimum number of ACL credit for high priority link */
    677 #ifndef L2CAP_HIGH_PRI_MIN_XMIT_QUOTA
    678 #define L2CAP_HIGH_PRI_MIN_XMIT_QUOTA       5
    679 #endif
    680 
    681 /* used for monitoring HCI ACL credit management */
    682 #ifndef L2CAP_HCI_FLOW_CONTROL_DEBUG
    683 #define L2CAP_HCI_FLOW_CONTROL_DEBUG        TRUE
    684 #endif
    685 
    686 /* Used for calculating transmit buffers off of */
    687 #ifndef L2CAP_NUM_XMIT_BUFFS
    688 #define L2CAP_NUM_XMIT_BUFFS                HCI_ACL_BUF_MAX
    689 #endif
    690 
    691 /* Unicast Connectionless Data */
    692 #ifndef L2CAP_UCD_INCLUDED
    693 #define L2CAP_UCD_INCLUDED                  FALSE
    694 #endif
    695 
    696 /* Unicast Connectionless Data MTU */
    697 #ifndef L2CAP_UCD_MTU
    698 #define L2CAP_UCD_MTU                       L2CAP_MTU_SIZE
    699 #endif
    700 
    701 /* Unicast Connectionless Data Idle Timeout */
    702 #ifndef L2CAP_UCD_IDLE_TIMEOUT
    703 #define L2CAP_UCD_IDLE_TIMEOUT              2
    704 #endif
    705 
    706 /* Unicast Connectionless Data Idle Timeout */
    707 #ifndef L2CAP_UCD_CH_PRIORITY
    708 #define L2CAP_UCD_CH_PRIORITY               L2CAP_CHNL_PRIORITY_MEDIUM
    709 #endif
    710 
    711 /* Used for features using fixed channels; set to zero if no fixed channels supported (BLE, etc.) */
    712 /* Excluding L2CAP signaling channel and UCD */
    713 #ifndef L2CAP_NUM_FIXED_CHNLS
    714 #define L2CAP_NUM_FIXED_CHNLS               32
    715 #endif
    716 
    717 /* First fixed channel supported */
    718 #ifndef L2CAP_FIRST_FIXED_CHNL
    719 #define L2CAP_FIRST_FIXED_CHNL              4
    720 #endif
    721 
    722 #ifndef L2CAP_LAST_FIXED_CHNL
    723 #define L2CAP_LAST_FIXED_CHNL           (L2CAP_FIRST_FIXED_CHNL + L2CAP_NUM_FIXED_CHNLS - 1)
    724 #endif
    725 
    726 /* Round Robin service channels in link */
    727 #ifndef L2CAP_ROUND_ROBIN_CHANNEL_SERVICE
    728 #define L2CAP_ROUND_ROBIN_CHANNEL_SERVICE   TRUE
    729 #endif
    730 
    731 /* Used for calculating transmit buffers off of */
    732 #ifndef L2CAP_NUM_XMIT_BUFFS
    733 #define L2CAP_NUM_XMIT_BUFFS                HCI_ACL_BUF_MAX
    734 #endif
    735 
    736 /* used for monitoring eL2CAP data flow */
    737 #ifndef L2CAP_ERTM_STATS
    738 #define L2CAP_ERTM_STATS                    FALSE
    739 #endif
    740 
    741 /* Used for conformance testing ONLY:  When TRUE lets scriptwrapper overwrite info response */
    742 #ifndef L2CAP_CONFORMANCE_TESTING
    743 #define L2CAP_CONFORMANCE_TESTING           FALSE
    744 #endif
    745 
    746 /*
    747  * Max bytes per connection to buffer locally before dropping the
    748  * connection if local client does not receive it  - default is 1MB
    749  */
    750 #ifndef L2CAP_MAX_RX_BUFFER
    751 #define L2CAP_MAX_RX_BUFFER                 0x100000
    752 #endif
    753 
    754 
    755 #ifndef TIMER_PARAM_TYPE
    756 #define TIMER_PARAM_TYPE    UINT32
    757 #endif
    758 
    759 /******************************************************************************
    760 **
    761 ** BLE
    762 **
    763 ******************************************************************************/
    764 
    765 #ifndef BLE_INCLUDED
    766 #define BLE_INCLUDED            TRUE
    767 #endif
    768 
    769 #ifndef BLE_ANDROID_CONTROLLER_SCAN_FILTER
    770 #define BLE_ANDROID_CONTROLLER_SCAN_FILTER            TRUE
    771 #endif
    772 
    773 #ifndef LOCAL_BLE_CONTROLLER_ID
    774 #define LOCAL_BLE_CONTROLLER_ID         (1)
    775 #endif
    776 
    777 /*
    778  * Toggles support for general LE privacy features such as remote address
    779  * resolution, local address rotation etc.
    780  */
    781 #ifndef BLE_PRIVACY_SPT
    782 #define BLE_PRIVACY_SPT         TRUE
    783 #endif
    784 
    785 /*
    786  * Enables or disables support for local privacy (ex. address rotation)
    787  */
    788 #ifndef BLE_LOCAL_PRIVACY_ENABLED
    789 #define BLE_LOCAL_PRIVACY_ENABLED         TRUE
    790 #endif
    791 
    792 /*
    793  * Toggles support for vendor specific extensions such as RPA offloading,
    794  * feature discovery, multi-adv etc.
    795  */
    796 #ifndef BLE_VND_INCLUDED
    797 #define BLE_VND_INCLUDED        FALSE
    798 #endif
    799 
    800 #ifndef BTM_BLE_ADV_TX_POWER
    801 #define BTM_BLE_ADV_TX_POWER {-21, -15, -7, 1, 9}
    802 #endif
    803 
    804 
    805 #ifndef BLE_BATCH_SCAN_INCLUDED
    806 #define BLE_BATCH_SCAN_INCLUDED  TRUE
    807 #endif
    808 
    809 /******************************************************************************
    810 **
    811 ** ATT/GATT Protocol/Profile Settings
    812 **
    813 ******************************************************************************/
    814 #ifndef BTA_GATT_INCLUDED
    815 #if BLE_INCLUDED == TRUE
    816 #define BTA_GATT_INCLUDED TRUE
    817 #else
    818 #define BTA_GATT_INCLUDED FALSE
    819 #endif
    820 #endif
    821 
    822 #if BTA_GATT_INCLUDED == TRUE && BLE_INCLUDED == FALSE
    823 #error "can't have GATT without BLE"
    824 #endif
    825 
    826 #ifndef BLE_LLT_INCLUDED
    827 #define BLE_LLT_INCLUDED    TRUE
    828 #endif
    829 
    830 #ifndef ATT_INCLUDED
    831 #define ATT_INCLUDED         TRUE
    832 #endif
    833 
    834 #ifndef ATT_DEBUG
    835 #define ATT_DEBUG           TRUE
    836 #endif
    837 
    838 #ifndef BLE_PERIPHERAL_MODE_SUPPORT
    839 #define BLE_PERIPHERAL_MODE_SUPPORT  TRUE
    840 #endif
    841 
    842 #ifndef BLE_DELAY_REQUEST_ENC
    843 /* This flag is to work around IPHONE problem, We need to wait for iPhone ready
    844    before send encryption request to iPhone */
    845 #define BLE_DELAY_REQUEST_ENC        FALSE
    846 #endif
    847 
    848 #ifndef GAP_TRANSPORT_SUPPORTED
    849 #define GAP_TRANSPORT_SUPPORTED      GATT_TRANSPORT_LE_BR_EDR
    850 #endif
    851 
    852 #ifndef GATTP_TRANSPORT_SUPPORTED
    853 #define GATTP_TRANSPORT_SUPPORTED    GATT_TRANSPORT_LE_BR_EDR
    854 #endif
    855 
    856 #ifndef GATT_MAX_SR_PROFILES
    857 #define GATT_MAX_SR_PROFILES        32 /* max is 32 */
    858 #endif
    859 
    860 #ifndef GATT_MAX_APPS
    861 #define GATT_MAX_APPS            32 /* note: 2 apps used internally GATT and GAP */
    862 #endif
    863 
    864 #ifndef GATT_MAX_PHY_CHANNEL
    865 #define GATT_MAX_PHY_CHANNEL        7
    866 #endif
    867 
    868 /* Used for conformance testing ONLY */
    869 #ifndef GATT_CONFORMANCE_TESTING
    870 #define GATT_CONFORMANCE_TESTING           FALSE
    871 #endif
    872 
    873 /* number of background connection device allowence, ideally to be the same as WL size
    874 */
    875 #ifndef GATT_MAX_BG_CONN_DEV
    876 #define GATT_MAX_BG_CONN_DEV        32
    877 #endif
    878 
    879 /******************************************************************************
    880 **
    881 ** SMP
    882 **
    883 ******************************************************************************/
    884 #ifndef SMP_INCLUDED
    885 #if BLE_INCLUDED == TRUE
    886 #define SMP_INCLUDED         TRUE
    887 #else
    888 #define SMP_INCLUDED         FALSE
    889 #endif
    890 #endif
    891 
    892 #if SMP_INCLUDED == TRUE && BLE_INCLUDED == FALSE
    893 #error "can't have SMP without BLE"
    894 #endif
    895 
    896 #ifndef SMP_DEBUG
    897 #define SMP_DEBUG            FALSE
    898 #endif
    899 
    900 #ifndef SMP_DEFAULT_AUTH_REQ
    901 #define SMP_DEFAULT_AUTH_REQ    SMP_AUTH_NB_ENC_ONLY
    902 #endif
    903 
    904 #ifndef SMP_MAX_ENC_KEY_SIZE
    905 #define SMP_MAX_ENC_KEY_SIZE    16
    906 #endif
    907 
    908 #ifndef SMP_MIN_ENC_KEY_SIZE
    909 #define SMP_MIN_ENC_KEY_SIZE    7
    910 #endif
    911 
    912 /* minimum link timeout after SMP pairing is done, leave room for key exchange
    913    and racing condition for the following service connection.
    914    Prefer greater than 0 second, and no less than default inactivity link idle
    915    timer(L2CAP_LINK_INACTIVITY_TOUT) in l2cap) */
    916 #ifndef SMP_LINK_TOUT_MIN
    917 #if (L2CAP_LINK_INACTIVITY_TOUT > 0)
    918 #define SMP_LINK_TOUT_MIN               L2CAP_LINK_INACTIVITY_TOUT
    919 #else
    920 #define SMP_LINK_TOUT_MIN               2
    921 #endif
    922 #endif
    923 /******************************************************************************
    924 **
    925 ** SDP
    926 **
    927 ******************************************************************************/
    928 
    929 /* This is set to enable SDP server functionality. */
    930 #ifndef SDP_SERVER_ENABLED
    931 #define SDP_SERVER_ENABLED          TRUE
    932 #endif
    933 
    934 /* The maximum number of SDP records the server can support. */
    935 #ifndef SDP_MAX_RECORDS
    936 #define SDP_MAX_RECORDS             30
    937 #endif
    938 
    939 /* The maximum number of attributes in each record. */
    940 #ifndef SDP_MAX_REC_ATTR
    941 #define SDP_MAX_REC_ATTR            25
    942 #endif
    943 
    944 #ifndef SDP_MAX_PAD_LEN
    945 #define SDP_MAX_PAD_LEN             600
    946 #endif
    947 
    948 /* The maximum length, in bytes, of an attribute. */
    949 #ifndef SDP_MAX_ATTR_LEN
    950 #define SDP_MAX_ATTR_LEN            400
    951 #endif
    952 
    953 /* The maximum number of attribute filters supported by SDP databases. */
    954 #ifndef SDP_MAX_ATTR_FILTERS
    955 #define SDP_MAX_ATTR_FILTERS        15
    956 #endif
    957 
    958 /* The maximum number of UUID filters supported by SDP databases. */
    959 #ifndef SDP_MAX_UUID_FILTERS
    960 #define SDP_MAX_UUID_FILTERS        3
    961 #endif
    962 
    963 /* This is set to enable SDP client functionality. */
    964 #ifndef SDP_CLIENT_ENABLED
    965 #define SDP_CLIENT_ENABLED          TRUE
    966 #endif
    967 
    968 /* The maximum number of record handles retrieved in a search. */
    969 #ifndef SDP_MAX_DISC_SERVER_RECS
    970 #define SDP_MAX_DISC_SERVER_RECS    21
    971 #endif
    972 
    973 /* The size of a scratchpad buffer, in bytes, for storing the response to an attribute request. */
    974 #ifndef SDP_MAX_LIST_BYTE_COUNT
    975 #define SDP_MAX_LIST_BYTE_COUNT     4096
    976 #endif
    977 
    978 /* The maximum number of parameters in an SDP protocol element. */
    979 #ifndef SDP_MAX_PROTOCOL_PARAMS
    980 #define SDP_MAX_PROTOCOL_PARAMS     2
    981 #endif
    982 
    983 /* The maximum number of simultaneous client and server connections. */
    984 #ifndef SDP_MAX_CONNECTIONS
    985 #define SDP_MAX_CONNECTIONS         4
    986 #endif
    987 
    988 /* The MTU size for the L2CAP configuration. */
    989 #ifndef SDP_MTU_SIZE
    990 #define SDP_MTU_SIZE                672
    991 #endif
    992 
    993 /* The flush timeout for the L2CAP configuration. */
    994 #ifndef SDP_FLUSH_TO
    995 #define SDP_FLUSH_TO                0xFFFF
    996 #endif
    997 
    998 /* The name for security authorization. */
    999 #ifndef SDP_SERVICE_NAME
   1000 #define SDP_SERVICE_NAME            "Service Discovery"
   1001 #endif
   1002 
   1003 /* The security level for BTM. */
   1004 #ifndef SDP_SECURITY_LEVEL
   1005 #define SDP_SECURITY_LEVEL          BTM_SEC_NONE
   1006 #endif
   1007 
   1008 /******************************************************************************
   1009 **
   1010 ** RFCOMM
   1011 **
   1012 ******************************************************************************/
   1013 
   1014 /* The maximum number of ports supported. */
   1015 #ifndef MAX_RFC_PORTS
   1016 #define MAX_RFC_PORTS               30
   1017 #endif
   1018 
   1019 /* The maximum simultaneous links to different devices. */
   1020 #ifndef MAX_ACL_CONNECTIONS
   1021 #define MAX_BD_CONNECTIONS          7
   1022 #else
   1023 #define MAX_BD_CONNECTIONS          MAX_ACL_CONNECTIONS
   1024 #endif
   1025 
   1026 /* The port receive queue low watermark level, in bytes. */
   1027 #ifndef PORT_RX_LOW_WM
   1028 #define PORT_RX_LOW_WM              (BTA_RFC_MTU_SIZE * PORT_RX_BUF_LOW_WM)
   1029 #endif
   1030 
   1031 /* The port receive queue high watermark level, in bytes. */
   1032 #ifndef PORT_RX_HIGH_WM
   1033 #define PORT_RX_HIGH_WM             (BTA_RFC_MTU_SIZE * PORT_RX_BUF_HIGH_WM)
   1034 #endif
   1035 
   1036 /* The port receive queue critical watermark level, in bytes. */
   1037 #ifndef PORT_RX_CRITICAL_WM
   1038 #define PORT_RX_CRITICAL_WM         (BTA_RFC_MTU_SIZE * PORT_RX_BUF_CRITICAL_WM)
   1039 #endif
   1040 
   1041 /* The port receive queue low watermark level, in number of buffers. */
   1042 #ifndef PORT_RX_BUF_LOW_WM
   1043 #define PORT_RX_BUF_LOW_WM          4
   1044 #endif
   1045 
   1046 /* The port receive queue high watermark level, in number of buffers. */
   1047 #ifndef PORT_RX_BUF_HIGH_WM
   1048 #define PORT_RX_BUF_HIGH_WM         10
   1049 #endif
   1050 
   1051 /* The port receive queue critical watermark level, in number of buffers. */
   1052 #ifndef PORT_RX_BUF_CRITICAL_WM
   1053 #define PORT_RX_BUF_CRITICAL_WM     15
   1054 #endif
   1055 
   1056 /* The port transmit queue high watermark level, in bytes. */
   1057 #ifndef PORT_TX_HIGH_WM
   1058 #define PORT_TX_HIGH_WM             (BTA_RFC_MTU_SIZE * PORT_TX_BUF_HIGH_WM)
   1059 #endif
   1060 
   1061 /* The port transmit queue critical watermark level, in bytes. */
   1062 #ifndef PORT_TX_CRITICAL_WM
   1063 #define PORT_TX_CRITICAL_WM         (BTA_RFC_MTU_SIZE * PORT_TX_BUF_CRITICAL_WM)
   1064 #endif
   1065 
   1066 /* The port transmit queue high watermark level, in number of buffers. */
   1067 #ifndef PORT_TX_BUF_HIGH_WM
   1068 #define PORT_TX_BUF_HIGH_WM         10
   1069 #endif
   1070 
   1071 /* The port transmit queue high watermark level, in number of buffers. */
   1072 #ifndef PORT_TX_BUF_CRITICAL_WM
   1073 #define PORT_TX_BUF_CRITICAL_WM     15
   1074 #endif
   1075 
   1076 /* The RFCOMM multiplexer preferred flow control mechanism. */
   1077 #ifndef PORT_FC_DEFAULT
   1078 #define PORT_FC_DEFAULT             PORT_FC_CREDIT
   1079 #endif
   1080 
   1081 /* The maximum number of credits receiver sends to peer when using credit-based flow control. */
   1082 #ifndef PORT_CREDIT_RX_MAX
   1083 #define PORT_CREDIT_RX_MAX          16
   1084 #endif
   1085 
   1086 /* The credit low watermark level. */
   1087 #ifndef PORT_CREDIT_RX_LOW
   1088 #define PORT_CREDIT_RX_LOW          8
   1089 #endif
   1090 
   1091 /* if application like BTA, Java or script test engine is running on other than BTU thread, */
   1092 /* PORT_SCHEDULE_LOCK shall be defined as GKI_sched_lock() or GKI_disable() */
   1093 #ifndef PORT_SCHEDULE_LOCK
   1094 #define PORT_SCHEDULE_LOCK          GKI_disable()
   1095 #endif
   1096 
   1097 /* if application like BTA, Java or script test engine is running on other than BTU thread, */
   1098 /* PORT_SCHEDULE_LOCK shall be defined as GKI_sched_unlock() or GKI_enable() */
   1099 #ifndef PORT_SCHEDULE_UNLOCK
   1100 #define PORT_SCHEDULE_UNLOCK        GKI_enable()
   1101 #endif
   1102 
   1103 /******************************************************************************
   1104 **
   1105 ** OBEX
   1106 **
   1107 ******************************************************************************/
   1108 #define OBX_14_INCLUDED             FALSE
   1109 
   1110 /* The maximum number of registered servers. */
   1111 #ifndef OBX_NUM_SERVERS
   1112 #define OBX_NUM_SERVERS             12
   1113 #endif
   1114 
   1115 /* The maximum number of active clients. */
   1116 #ifndef OBX_NUM_CLIENTS
   1117 #define OBX_NUM_CLIENTS             8
   1118 #endif
   1119 
   1120 /* This option is application when OBX_14_INCLUDED=TRUE
   1121    Pool ID where to reassemble the SDU.
   1122    This Pool will allow buffers to be used that are larger than
   1123    the L2CAP_MAX_MTU. */
   1124 #ifndef OBX_USER_RX_POOL_ID
   1125 #define OBX_USER_RX_POOL_ID     OBX_LRG_DATA_POOL_ID
   1126 #endif
   1127 
   1128 /* This option is application when OBX_14_INCLUDED=TRUE
   1129    Pool ID where to hold the SDU.
   1130    This Pool will allow buffers to be used that are larger than
   1131    the L2CAP_MAX_MTU. */
   1132 #ifndef OBX_USER_TX_POOL_ID
   1133 #define OBX_USER_TX_POOL_ID     OBX_LRG_DATA_POOL_ID
   1134 #endif
   1135 
   1136 /* This option is application when OBX_14_INCLUDED=TRUE
   1137 GKI Buffer Pool ID used to hold MPS segments during SDU reassembly
   1138 */
   1139 #ifndef OBX_FCR_RX_POOL_ID
   1140 #define OBX_FCR_RX_POOL_ID      HCI_ACL_POOL_ID
   1141 #endif
   1142 
   1143 /* This option is application when OBX_14_INCLUDED=TRUE
   1144 GKI Buffer Pool ID used to hold MPS segments used in (re)transmissions.
   1145 L2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool.
   1146 Note:  This pool needs to have enough buffers to hold two times the window size negotiated
   1147  in the L2CA_SetFCROptions (2 * tx_win_size)  to allow for retransmissions.
   1148  The size of each buffer must be able to hold the maximum MPS segment size passed in
   1149  L2CA_SetFCROptions plus BT_HDR (8) + HCI preamble (4) + L2CAP_MIN_OFFSET (11 - as of BT 2.1 + EDR Spec).
   1150 */
   1151 #ifndef OBX_FCR_TX_POOL_ID
   1152 #define OBX_FCR_TX_POOL_ID      HCI_ACL_POOL_ID
   1153 #endif
   1154 
   1155 /* This option is application when OBX_14_INCLUDED=TRUE
   1156 Size of the transmission window when using enhanced retransmission mode. Not used
   1157 in basic and streaming modes. Range: 1 - 63
   1158 */
   1159 #ifndef OBX_FCR_OPT_TX_WINDOW_SIZE_BR_EDR
   1160 #define OBX_FCR_OPT_TX_WINDOW_SIZE_BR_EDR       20
   1161 #endif
   1162 
   1163 /* This option is application when OBX_14_INCLUDED=TRUE
   1164 Number of transmission attempts for a single I-Frame before taking
   1165 Down the connection. Used In ERTM mode only. Value is Ignored in basic and
   1166 Streaming modes.
   1167 Range: 0, 1-0xFF
   1168 0 - infinite retransmissions
   1169 1 - single transmission
   1170 */
   1171 #ifndef OBX_FCR_OPT_MAX_TX_B4_DISCNT
   1172 #define OBX_FCR_OPT_MAX_TX_B4_DISCNT    20
   1173 #endif
   1174 
   1175 /* This option is application when OBX_14_INCLUDED=TRUE
   1176 Retransmission Timeout
   1177 Range: Minimum 2000 (2 secs) on BR/EDR when supporting PBF.
   1178  */
   1179 #ifndef OBX_FCR_OPT_RETX_TOUT
   1180 #define OBX_FCR_OPT_RETX_TOUT           2000
   1181 #endif
   1182 
   1183 /* This option is application when OBX_14_INCLUDED=TRUE
   1184 Monitor Timeout
   1185 Range: Minimum 12000 (12 secs) on BR/EDR when supporting PBF.
   1186 */
   1187 #ifndef OBX_FCR_OPT_MONITOR_TOUT
   1188 #define OBX_FCR_OPT_MONITOR_TOUT        12000
   1189 #endif
   1190 
   1191 /* This option is application when OBX_14_INCLUDED=TRUE
   1192 Maximum PDU payload size.
   1193 Suggestion: The maximum amount of data that will fit into a 3-DH5 packet.
   1194 Range: 2 octets
   1195 */
   1196 #ifndef OBX_FCR_OPT_MAX_PDU_SIZE
   1197 #define OBX_FCR_OPT_MAX_PDU_SIZE        L2CAP_MPS_OVER_BR_EDR
   1198 #endif
   1199 
   1200 
   1201 /******************************************************************************
   1202 **
   1203 ** BNEP
   1204 **
   1205 ******************************************************************************/
   1206 
   1207 #ifndef BNEP_INCLUDED
   1208 #define BNEP_INCLUDED               TRUE
   1209 #endif
   1210 
   1211 /* BNEP status API call is used mainly to get the L2CAP handle */
   1212 #ifndef BNEP_SUPPORTS_STATUS_API
   1213 #define BNEP_SUPPORTS_STATUS_API            TRUE
   1214 #endif
   1215 
   1216 /*
   1217 ** When BNEP connection changes roles after the connection is established
   1218 ** we will do an authentication check again on the new role
   1219 */
   1220 #ifndef BNEP_DO_AUTH_FOR_ROLE_SWITCH
   1221 #define BNEP_DO_AUTH_FOR_ROLE_SWITCH        TRUE
   1222 #endif
   1223 
   1224 
   1225 /* Maximum number of protocol filters supported. */
   1226 #ifndef BNEP_MAX_PROT_FILTERS
   1227 #define BNEP_MAX_PROT_FILTERS       5
   1228 #endif
   1229 
   1230 /* Maximum number of multicast filters supported. */
   1231 #ifndef BNEP_MAX_MULTI_FILTERS
   1232 #define BNEP_MAX_MULTI_FILTERS      5
   1233 #endif
   1234 
   1235 /* Minimum MTU size. */
   1236 #ifndef BNEP_MIN_MTU_SIZE
   1237 #define BNEP_MIN_MTU_SIZE           L2CAP_MTU_SIZE
   1238 #endif
   1239 
   1240 /* Preferred MTU size. */
   1241 #ifndef BNEP_MTU_SIZE
   1242 #define BNEP_MTU_SIZE               BNEP_MIN_MTU_SIZE
   1243 #endif
   1244 
   1245 /* Maximum number of buffers allowed in transmit data queue. */
   1246 #ifndef BNEP_MAX_XMITQ_DEPTH
   1247 #define BNEP_MAX_XMITQ_DEPTH        20
   1248 #endif
   1249 
   1250 /* Maximum number BNEP of connections supported. */
   1251 #ifndef BNEP_MAX_CONNECTIONS
   1252 #define BNEP_MAX_CONNECTIONS        7
   1253 #endif
   1254 
   1255 
   1256 /******************************************************************************
   1257 **
   1258 ** AVDTP
   1259 **
   1260 ******************************************************************************/
   1261 
   1262 #ifndef AVDT_INCLUDED
   1263 #define AVDT_INCLUDED               TRUE
   1264 #endif
   1265 
   1266 /* Include reporting capability in AVDTP */
   1267 #ifndef AVDT_REPORTING
   1268 #define AVDT_REPORTING              TRUE
   1269 #endif
   1270 
   1271 /* Include multiplexing capability in AVDTP */
   1272 #ifndef AVDT_MULTIPLEXING
   1273 #define AVDT_MULTIPLEXING           TRUE
   1274 #endif
   1275 
   1276 /* Number of simultaneous links to different peer devices. */
   1277 #ifndef AVDT_NUM_LINKS
   1278 #define AVDT_NUM_LINKS              2
   1279 #endif
   1280 
   1281 /* Number of simultaneous stream endpoints. */
   1282 #ifndef AVDT_NUM_SEPS
   1283 #define AVDT_NUM_SEPS               3
   1284 #endif
   1285 
   1286 /* Number of transport channels setup per media stream(audio or video) */
   1287 #ifndef AVDT_NUM_CHANNELS
   1288 
   1289 #if AVDT_REPORTING == TRUE
   1290 /* signaling, media and reporting channels */
   1291 #define AVDT_NUM_CHANNELS   3
   1292 #else
   1293 /* signaling and media channels */
   1294 #define AVDT_NUM_CHANNELS   2
   1295 #endif  // AVDT_REPORTING
   1296 
   1297 #endif  // AVDT_NUM_CHANNELS
   1298 
   1299 /* Number of transport channels setup by AVDT for all media streams
   1300  * AVDT_NUM_CHANNELS * Number of simultaneous streams.
   1301  */
   1302 #ifndef AVDT_NUM_TC_TBL
   1303 #define AVDT_NUM_TC_TBL             6
   1304 #endif
   1305 
   1306 /* Maximum size in bytes of the codec capabilities information element. */
   1307 #ifndef AVDT_CODEC_SIZE
   1308 #define AVDT_CODEC_SIZE             10
   1309 #endif
   1310 
   1311 /* Maximum size in bytes of the content protection information element. */
   1312 #ifndef AVDT_PROTECT_SIZE
   1313 #define AVDT_PROTECT_SIZE           90
   1314 #endif
   1315 
   1316 /* Maximum number of GKI buffers in the fragment queue (for video frames).
   1317  * Must be less than the number of buffers in the buffer pool of size AVDT_DATA_POOL_SIZE */
   1318 #ifndef AVDT_MAX_FRAG_COUNT
   1319 #define AVDT_MAX_FRAG_COUNT         15
   1320 #endif
   1321 
   1322 /******************************************************************************
   1323 **
   1324 ** PAN
   1325 **
   1326 ******************************************************************************/
   1327 
   1328 #ifndef PAN_INCLUDED
   1329 #define PAN_INCLUDED                     TRUE
   1330 #endif
   1331 
   1332 /* This will enable the PANU role */
   1333 #ifndef PAN_SUPPORTS_ROLE_PANU
   1334 #define PAN_SUPPORTS_ROLE_PANU              TRUE
   1335 #endif
   1336 
   1337 /* This will enable the GN role */
   1338 #ifndef PAN_SUPPORTS_ROLE_GN
   1339 #define PAN_SUPPORTS_ROLE_GN                TRUE
   1340 #endif
   1341 
   1342 /* This will enable the NAP role */
   1343 #ifndef PAN_SUPPORTS_ROLE_NAP
   1344 #define PAN_SUPPORTS_ROLE_NAP               TRUE
   1345 #endif
   1346 
   1347 /* This is just for debugging purposes */
   1348 #ifndef PAN_SUPPORTS_DEBUG_DUMP
   1349 #define PAN_SUPPORTS_DEBUG_DUMP             TRUE
   1350 #endif
   1351 
   1352 /* Maximum number of PAN connections allowed */
   1353 #ifndef MAX_PAN_CONNS
   1354 #define MAX_PAN_CONNS                    7
   1355 #endif
   1356 
   1357 /* Default service name for NAP role */
   1358 #ifndef PAN_NAP_DEFAULT_SERVICE_NAME
   1359 #define PAN_NAP_DEFAULT_SERVICE_NAME    "Network Access Point Service"
   1360 #endif
   1361 
   1362 /* Default service name for GN role */
   1363 #ifndef PAN_GN_DEFAULT_SERVICE_NAME
   1364 #define PAN_GN_DEFAULT_SERVICE_NAME     "Group Network Service"
   1365 #endif
   1366 
   1367 /* Default service name for PANU role */
   1368 #ifndef PAN_PANU_DEFAULT_SERVICE_NAME
   1369 #define PAN_PANU_DEFAULT_SERVICE_NAME   "PAN User Service"
   1370 #endif
   1371 
   1372 /* Default description for NAP role service */
   1373 #ifndef PAN_NAP_DEFAULT_DESCRIPTION
   1374 #define PAN_NAP_DEFAULT_DESCRIPTION     "NAP"
   1375 #endif
   1376 
   1377 /* Default description for GN role service */
   1378 #ifndef PAN_GN_DEFAULT_DESCRIPTION
   1379 #define PAN_GN_DEFAULT_DESCRIPTION      "GN"
   1380 #endif
   1381 
   1382 /* Default description for PANU role service */
   1383 #ifndef PAN_PANU_DEFAULT_DESCRIPTION
   1384 #define PAN_PANU_DEFAULT_DESCRIPTION    "PANU"
   1385 #endif
   1386 
   1387 /* Default Security level for PANU role. */
   1388 #ifndef PAN_PANU_SECURITY_LEVEL
   1389 #define PAN_PANU_SECURITY_LEVEL          0
   1390 #endif
   1391 
   1392 /* Default Security level for GN role. */
   1393 #ifndef PAN_GN_SECURITY_LEVEL
   1394 #define PAN_GN_SECURITY_LEVEL            0
   1395 #endif
   1396 
   1397 /* Default Security level for NAP role. */
   1398 #ifndef PAN_NAP_SECURITY_LEVEL
   1399 #define PAN_NAP_SECURITY_LEVEL           0
   1400 #endif
   1401 
   1402 /******************************************************************************
   1403 **
   1404 ** GAP
   1405 **
   1406 ******************************************************************************/
   1407 
   1408 #ifndef GAP_INCLUDED
   1409 #define GAP_INCLUDED                TRUE
   1410 #endif
   1411 
   1412 /* This is set to enable use of GAP L2CAP connections. */
   1413 #ifndef GAP_CONN_INCLUDED
   1414 #define GAP_CONN_INCLUDED           TRUE
   1415 #endif
   1416 
   1417 /* This is set to enable posting event for data write */
   1418 #ifndef GAP_CONN_POST_EVT_INCLUDED
   1419 #define GAP_CONN_POST_EVT_INCLUDED  FALSE
   1420 #endif
   1421 
   1422 /* The maximum number of simultaneous GAP L2CAP connections. */
   1423 #ifndef GAP_MAX_CONNECTIONS
   1424 #define GAP_MAX_CONNECTIONS         30
   1425 #endif
   1426 
   1427 /* keep the raw data received from SDP server in database. */
   1428 #ifndef SDP_RAW_DATA_INCLUDED
   1429 #define SDP_RAW_DATA_INCLUDED       TRUE
   1430 #endif
   1431 
   1432 /* Inquiry duration in 1.28 second units. */
   1433 #ifndef SDP_DEBUG
   1434 #define SDP_DEBUG                   TRUE
   1435 #endif
   1436 
   1437 /******************************************************************************
   1438 **
   1439 ** HID
   1440 **
   1441 ******************************************************************************/
   1442 
   1443 #ifndef HID_DEV_SUBCLASS
   1444 #define HID_DEV_SUBCLASS            COD_MINOR_POINTING
   1445 #endif
   1446 
   1447 #ifndef HID_CONTROL_POOL_ID
   1448 #define HID_CONTROL_POOL_ID             2
   1449 #endif
   1450 
   1451 #ifndef HID_INTERRUPT_POOL_ID
   1452 #define HID_INTERRUPT_POOL_ID           2
   1453 #endif
   1454 
   1455 /*************************************************************************
   1456 ** Definitions for Both HID-Host & Device
   1457 */
   1458 #ifndef HID_MAX_SVC_NAME_LEN
   1459 #define HID_MAX_SVC_NAME_LEN  32
   1460 #endif
   1461 
   1462 #ifndef HID_MAX_SVC_DESCR_LEN
   1463 #define HID_MAX_SVC_DESCR_LEN 32
   1464 #endif
   1465 
   1466 #ifndef HID_MAX_PROV_NAME_LEN
   1467 #define HID_MAX_PROV_NAME_LEN 32
   1468 #endif
   1469 
   1470 /*************************************************************************
   1471 ** Definitions for HID-Host
   1472 */
   1473 #ifndef  HID_HOST_INCLUDED
   1474 #define HID_HOST_INCLUDED           TRUE
   1475 #endif
   1476 
   1477 #ifndef HID_HOST_MAX_DEVICES
   1478 #define HID_HOST_MAX_DEVICES        7
   1479 #endif
   1480 
   1481 #ifndef HID_HOST_MTU
   1482 #define HID_HOST_MTU                640
   1483 #endif
   1484 
   1485 #ifndef HID_HOST_FLUSH_TO
   1486 #define HID_HOST_FLUSH_TO                 0xffff
   1487 #endif
   1488 
   1489 #ifndef HID_HOST_MAX_CONN_RETRY
   1490 #define HID_HOST_MAX_CONN_RETRY     (3)
   1491 #endif
   1492 
   1493 #ifndef HID_HOST_REPAGE_WIN
   1494 #define HID_HOST_REPAGE_WIN          (2)
   1495 #endif
   1496 
   1497 /*************************************************************************
   1498  * A2DP Definitions
   1499  */
   1500 #ifndef A2D_INCLUDED
   1501 #define A2D_INCLUDED            TRUE
   1502 #endif
   1503 
   1504 /******************************************************************************
   1505 **
   1506 ** AVCTP
   1507 **
   1508 ******************************************************************************/
   1509 
   1510 /* Number of simultaneous ACL links to different peer devices. */
   1511 #ifndef AVCT_NUM_LINKS
   1512 #define AVCT_NUM_LINKS              2
   1513 #endif
   1514 
   1515 /* Number of simultaneous AVCTP connections. */
   1516 #ifndef AVCT_NUM_CONN
   1517 #define AVCT_NUM_CONN               3
   1518 #endif
   1519 
   1520 /******************************************************************************
   1521 **
   1522 ** AVRCP
   1523 **
   1524 ******************************************************************************/
   1525 
   1526 #ifndef AVRC_METADATA_INCLUDED
   1527 #define AVRC_METADATA_INCLUDED      TRUE
   1528 #endif
   1529 
   1530 #ifndef AVRC_ADV_CTRL_INCLUDED
   1531 #define AVRC_ADV_CTRL_INCLUDED      TRUE
   1532 #endif
   1533 
   1534 #ifndef AVRC_CTLR_INCLUDED
   1535 #define AVRC_CTLR_INCLUDED          TRUE
   1536 #endif
   1537 
   1538 /******************************************************************************
   1539 **
   1540 ** MCAP
   1541 **
   1542 ******************************************************************************/
   1543 #ifndef MCA_INCLUDED
   1544 #define MCA_INCLUDED                FALSE
   1545 #endif
   1546 
   1547 /* The MTU size for the L2CAP configuration on control channel. 48 is the minimal */
   1548 #ifndef MCA_CTRL_MTU
   1549 #define MCA_CTRL_MTU    60
   1550 #endif
   1551 
   1552 /* The maximum number of registered MCAP instances. */
   1553 #ifndef MCA_NUM_REGS
   1554 #define MCA_NUM_REGS    12
   1555 #endif
   1556 
   1557 /* The maximum number of control channels (to difference devices) per registered MCAP instances. */
   1558 #ifndef MCA_NUM_LINKS
   1559 #define MCA_NUM_LINKS   3
   1560 #endif
   1561 
   1562 /* The maximum number of MDEP (including HDP echo) per registered MCAP instances. */
   1563 #ifndef MCA_NUM_DEPS
   1564 #define MCA_NUM_DEPS    13
   1565 #endif
   1566 
   1567 /* The maximum number of MDL link per control channel. */
   1568 #ifndef MCA_NUM_MDLS
   1569 #define MCA_NUM_MDLS    4
   1570 #endif
   1571 
   1572 /* Pool ID where to reassemble the SDU. */
   1573 #ifndef MCA_USER_RX_POOL_ID
   1574 #define MCA_USER_RX_POOL_ID     HCI_ACL_POOL_ID
   1575 #endif
   1576 
   1577 /* Pool ID where to hold the SDU. */
   1578 #ifndef MCA_USER_TX_POOL_ID
   1579 #define MCA_USER_TX_POOL_ID     HCI_ACL_POOL_ID
   1580 #endif
   1581 
   1582 /*
   1583 GKI Buffer Pool ID used to hold MPS segments during SDU reassembly
   1584 */
   1585 #ifndef MCA_FCR_RX_POOL_ID
   1586 #define MCA_FCR_RX_POOL_ID      HCI_ACL_POOL_ID
   1587 #endif
   1588 
   1589 /*
   1590 GKI Buffer Pool ID used to hold MPS segments used in (re)transmissions.
   1591 L2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool.
   1592 Note:  This pool needs to have enough buffers to hold two times the window size negotiated
   1593  in the tL2CAP_FCR_OPTIONS (2 * tx_win_size)  to allow for retransmissions.
   1594  The size of each buffer must be able to hold the maximum MPS segment size passed in
   1595  tL2CAP_FCR_OPTIONS plus BT_HDR (8) + HCI preamble (4) + L2CAP_MIN_OFFSET (11 - as of BT 2.1 + EDR Spec).
   1596 */
   1597 #ifndef MCA_FCR_TX_POOL_ID
   1598 #define MCA_FCR_TX_POOL_ID      HCI_ACL_POOL_ID
   1599 #endif
   1600 
   1601 /* MCAP control channel FCR Option:
   1602 Size of the transmission window when using enhanced retransmission mode.
   1603 1 is defined by HDP specification for control channel.
   1604 */
   1605 #ifndef MCA_FCR_OPT_TX_WINDOW_SIZE
   1606 #define MCA_FCR_OPT_TX_WINDOW_SIZE      1
   1607 #endif
   1608 
   1609 /* MCAP control channel FCR Option:
   1610 Number of transmission attempts for a single I-Frame before taking
   1611 Down the connection. Used In ERTM mode only. Value is Ignored in basic and
   1612 Streaming modes.
   1613 Range: 0, 1-0xFF
   1614 0 - infinite retransmissions
   1615 1 - single transmission
   1616 */
   1617 #ifndef MCA_FCR_OPT_MAX_TX_B4_DISCNT
   1618 #define MCA_FCR_OPT_MAX_TX_B4_DISCNT    20
   1619 #endif
   1620 
   1621 /* MCAP control channel FCR Option: Retransmission Timeout
   1622 The AVRCP specification set a value in the range of 300 - 2000 ms
   1623 Timeout (in msecs) to detect Lost I-Frames. Only used in Enhanced retransmission mode.
   1624 Range: Minimum 2000 (2 secs) when supporting PBF.
   1625  */
   1626 #ifndef MCA_FCR_OPT_RETX_TOUT
   1627 #define MCA_FCR_OPT_RETX_TOUT           2000
   1628 #endif
   1629 
   1630 /* MCAP control channel FCR Option: Monitor Timeout
   1631 The AVRCP specification set a value in the range of 300 - 2000 ms
   1632 Timeout (in msecs) to detect Lost S-Frames. Only used in Enhanced retransmission mode.
   1633 Range: Minimum 12000 (12 secs) when supporting PBF.
   1634 */
   1635 #ifndef MCA_FCR_OPT_MONITOR_TOUT
   1636 #define MCA_FCR_OPT_MONITOR_TOUT        12000
   1637 #endif
   1638 
   1639 /* MCAP control channel FCR Option: Maximum PDU payload size.
   1640 The maximum number of payload octets that the local device can receive in a single PDU.
   1641 */
   1642 #ifndef MCA_FCR_OPT_MPS_SIZE
   1643 #define MCA_FCR_OPT_MPS_SIZE            1000
   1644 #endif
   1645 
   1646 /* Shared transport */
   1647 #ifndef NFC_SHARED_TRANSPORT_ENABLED
   1648 #define NFC_SHARED_TRANSPORT_ENABLED    FALSE
   1649 #endif
   1650 
   1651 /******************************************************************************
   1652 **
   1653 ** Sleep Mode (Low Power Mode)
   1654 **
   1655 ******************************************************************************/
   1656 
   1657 #ifndef HCILP_INCLUDED
   1658 #define HCILP_INCLUDED                  TRUE
   1659 #endif
   1660 
   1661 /******************************************************************************
   1662 **
   1663 ** APPL - Application Task
   1664 **
   1665 ******************************************************************************/
   1666 
   1667 #define L2CAP_FEATURE_REQ_ID      73
   1668 #define L2CAP_FEATURE_RSP_ID     173
   1669 
   1670 /******************************************************************************
   1671 **
   1672 ** BTA
   1673 **
   1674 ******************************************************************************/
   1675 /* BTA EIR canned UUID list (default is dynamic) */
   1676 #ifndef BTA_EIR_CANNED_UUID_LIST
   1677 #define BTA_EIR_CANNED_UUID_LIST FALSE
   1678 #endif
   1679 
   1680 /* Number of supported customer UUID in EIR */
   1681 #ifndef BTA_EIR_SERVER_NUM_CUSTOM_UUID
   1682 #define BTA_EIR_SERVER_NUM_CUSTOM_UUID     8
   1683 #endif
   1684 
   1685 /* CHLD override for bluedroid */
   1686 #ifndef BTA_AG_CHLD_VAL_ECC
   1687 #define BTA_AG_CHLD_VAL_ECC  "(0,1,1x,2,2x,3)"
   1688 #endif
   1689 
   1690 #ifndef BTA_AG_CHLD_VAL
   1691 #define BTA_AG_CHLD_VAL  "(0,1,2,3)"
   1692 #endif
   1693 
   1694 /* Set the CIND to match HFP 1.5 */
   1695 #ifndef BTA_AG_CIND_INFO
   1696 #define BTA_AG_CIND_INFO "(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"service\",(0-1)),(\"signal\",(0-5)),(\"roam\",(0,1)),(\"battchg\",(0-5)),(\"callheld\",(0-2))"
   1697 #endif
   1698 
   1699 #ifndef BTA_DM_AVOID_A2DP_ROLESWITCH_ON_INQUIRY
   1700 #define BTA_DM_AVOID_A2DP_ROLESWITCH_ON_INQUIRY TRUE
   1701 #endif
   1702 
   1703 /******************************************************************************
   1704 **
   1705 ** Tracing:  Include trace header file here.
   1706 **
   1707 ******************************************************************************/
   1708 
   1709 /* Enable/disable BTSnoop memory logging */
   1710 #ifndef BTSNOOP_MEM
   1711 #define BTSNOOP_MEM TRUE
   1712 #endif
   1713 
   1714 #include "bt_trace.h"
   1715 
   1716 #endif /* BT_TARGET_H */
   1717