1/****************************************************************************** 2 * 3 * Copyright (C) 1999-2012 Broadcom Corporation 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 19#ifndef BT_TARGET_H 20#define BT_TARGET_H 21 22#ifndef BUILDCFG 23#define BUILDCFG 24#endif 25#include "data_types.h" 26 27 28#ifndef BTIF_HSAG_SERVICE_NAME 29#define BTIF_HSAG_SERVICE_NAME ("Headset Gateway") 30#endif 31 32#ifndef BTIF_HFAG_SERVICE_NAME 33#define BTIF_HFAG_SERVICE_NAME ("Handsfree Gateway") 34#endif 35 36 37#ifdef BUILDCFG 38 39#if !defined(HAS_BDROID_BUILDCFG) && !defined(HAS_NO_BDROID_BUILDCFG) 40#error "An Android.mk file did not include bdroid_CFLAGS and possibly not bdorid_C_INCLUDES" 41#endif 42 43#ifdef HAS_BDROID_BUILDCFG 44#include "bdroid_buildcfg.h" 45#endif 46 47#endif 48 49/* Include common GKI definitions used by this platform */ 50#include "gki_target.h" 51 52#include "bt_types.h" /* This must be defined AFTER buildcfg.h */ 53#include "dyn_mem.h" /* defines static and/or dynamic memory for components */ 54 55 56//------------------Added from bdroid_buildcfg.h--------------------- 57#ifndef UNV_INCLUDED 58#define UNV_INCLUDED FALSE 59#endif 60 61#ifndef GATT_PTS 62#define GATT_PTS FALSE 63#endif 64 65#ifndef L2CAP_INCLUDED 66#define L2CAP_INCLUDED TRUE 67#endif 68 69#ifndef L2CAP_EXTFEA_SUPPORTED_MASK 70#define L2CAP_EXTFEA_SUPPORTED_MASK (L2CAP_EXTFEA_ENH_RETRANS | L2CAP_EXTFEA_STREAM_MODE | L2CAP_EXTFEA_NO_CRC | L2CAP_EXTFEA_FIXED_CHNLS) 71#endif 72 73#ifndef BTUI_OPS_FORMATS 74#define BTUI_OPS_FORMATS (BTA_OP_VCARD21_MASK | BTA_OP_ANY_MASK) 75#endif 76 77#ifndef BTA_RFC_MTU_SIZE 78#define BTA_RFC_MTU_SIZE (L2CAP_MTU_SIZE-L2CAP_MIN_OFFSET-RFCOMM_DATA_OVERHEAD) 79#endif 80 81#ifndef BTA_DUN_MTU 82#define BTA_DUN_MTU BTA_RFC_MTU_SIZE 83#endif 84 85#ifndef BTA_SPP_MTU 86#define BTA_SPP_MTU BTA_RFC_MTU_SIZE 87#endif 88 89#ifndef BTA_FAX_MTU 90#define BTA_FAX_MTU BTA_RFC_MTU_SIZE 91#endif 92 93#ifndef SDP_RAW_PDU_INCLUDED 94#define SDP_RAW_PDU_INCLUDED TRUE 95#endif 96 97#ifndef GATTS_APPU_USE_GATT_TRACE 98#define GATTS_APPU_USE_GATT_TRACE FALSE 99#endif 100 101#ifndef SMP_HOST_ENCRYPT_INCLUDED 102#define SMP_HOST_ENCRYPT_INCLUDED FALSE 103#endif 104 105#ifndef SAP_INCLUDED 106#define SAP_INCLUDED FALSE 107#endif 108 109#ifndef SBC_NO_PCM_CPY_OPTION 110#define SBC_NO_PCM_CPY_OPTION FALSE 111#endif 112 113#ifndef BTA_INCLUDED 114#define BTA_INCLUDED TRUE 115#endif 116 117#ifndef BTA_AG_INCLUDED 118#define BTA_AG_INCLUDED TRUE 119#endif 120 121#ifndef BTA_CT_INCLUDED 122#define BTA_CT_INCLUDED FALSE 123#endif 124 125#ifndef BTA_CG_INCLUDED 126#define BTA_CG_INCLUDED FALSE 127#endif 128 129#ifndef BTA_DG_INCLUDED 130#define BTA_DG_INCLUDED FALSE 131#endif 132 133#ifndef BTA_FT_INCLUDED 134#define BTA_FT_INCLUDED FALSE 135#endif 136 137#ifndef BTA_OP_INCLUDED 138#define BTA_OP_INCLUDED FALSE 139#endif 140 141#ifndef BTA_PR_INCLUDED 142#define BTA_PR_INCLUDED FALSE 143#endif 144 145#ifndef BTA_SS_INCLUDED 146#define BTA_SS_INCLUDED FALSE 147#endif 148 149#ifndef BTA_DM_INCLUDED 150#define BTA_DM_INCLUDED TRUE 151#endif 152 153 154#ifndef BTA_DI_INCLUDED 155#define BTA_DI_INCLUDED FALSE 156#endif 157 158#ifndef BTA_BI_INCLUDED 159#define BTA_BI_INCLUDED FALSE 160#endif 161 162#ifndef BTA_SC_INCLUDED 163#define BTA_SC_INCLUDED FALSE 164#endif 165 166#ifndef BTA_PAN_INCLUDED 167#define BTA_PAN_INCLUDED TRUE 168#endif 169 170#ifndef BTA_FS_INCLUDED 171#define BTA_FS_INCLUDED TRUE 172#endif 173 174#ifndef BTA_AC_INCLUDED 175#define BTA_AC_INCLUDED FALSE 176#endif 177 178#ifndef BTA_HD_INCLUDED 179#define BTA_HD_INCLUDED FALSE 180#endif 181 182#ifndef BTA_HH_INCLUDED 183#define BTA_HH_INCLUDED TRUE 184#endif 185 186#ifndef BTA_HH_ROLE 187#define BTA_HH_ROLE BTA_MASTER_ROLE_PREF 188#endif 189 190#ifndef BTA_HH_LE_INCLUDED 191#define BTA_HH_LE_INCLUDED TRUE 192#endif 193 194#ifndef BTA_AR_INCLUDED 195#define BTA_AR_INCLUDED TRUE 196#endif 197 198#ifndef BTA_AV_INCLUDED 199#define BTA_AV_INCLUDED TRUE 200#endif 201 202#ifndef BTA_AV_VDP_INCLUDED 203#define BTA_AV_VDP_INCLUDED FALSE 204#endif 205 206#ifndef BTA_AVK_INCLUDED 207#define BTA_AVK_INCLUDED FALSE 208#endif 209 210#ifndef BTA_PBS_INCLUDED 211#define BTA_PBS_INCLUDED FALSE 212#endif 213 214#ifndef BTA_PBC_INCLUDED 215#define BTA_PBC_INCLUDED FALSE 216#endif 217 218#ifndef BTA_FM_INCLUDED 219#define BTA_FM_INCLUDED FALSE 220#endif 221 222#ifndef BTA_FM_DEBUG 223#define BTA_FM_DEBUG FALSE 224#endif 225 226#ifndef BTA_FMTX_INCLUDED 227#define BTA_FMTX_INCLUDED FALSE 228#endif 229 230#ifndef BTA_FMTX_DEBUG 231#define BTA_FMTX_DEBUG FALSE 232#endif 233 234#ifndef BTA_FMTX_FMRX_SWITCH_WORKAROUND 235#define BTA_FMTX_FMRX_SWITCH_WORKAROUND FALSE 236#endif 237 238#ifndef BTA_FMTX_US_FCC_RULES 239#define BTA_FMTX_US_FCC_RULES FALSE 240#endif 241 242#ifndef BTA_HS_INCLUDED 243#define BTA_HS_INCLUDED FALSE 244#endif 245 246#ifndef BTA_MSE_INCLUDED 247#define BTA_MSE_INCLUDED FALSE 248#endif 249 250#ifndef BTA_MCE_INCLUDED 251#define BTA_MCE_INCLUDED FALSE 252#endif 253 254#ifndef BTA_PLAYBACK_INCLUDED 255#define BTA_PLAYBACK_INCLUDED FALSE 256#endif 257 258#ifndef BTA_SSR_INCLUDED 259#define BTA_SSR_INCLUDED FALSE 260#endif 261 262#ifndef BTA_JV_INCLUDED 263#define BTA_JV_INCLUDED FALSE 264#endif 265 266#ifndef BTA_GATT_INCLUDED 267#define BTA_GATT_INCLUDED TRUE 268#endif 269 270#ifndef BTA_DISABLE_DELAY 271#define BTA_DISABLE_DELAY 200 /* in milliseconds */ 272#endif 273 274#ifndef RPC_TRACE_ONLY 275#define RPC_TRACE_ONLY FALSE 276#endif 277 278#ifndef ANDROID_APP_INCLUDED 279#define ANDROID_APP_INCLUDED TRUE 280#endif 281 282#ifndef ANDROID_USE_LOGCAT 283#define ANDROID_USE_LOGCAT TRUE 284#endif 285 286#ifndef LINUX_GKI_INCLUDED 287#define LINUX_GKI_INCLUDED TRUE 288#endif 289 290#ifndef BTA_SYS_TIMER_PERIOD 291#define BTA_SYS_TIMER_PERIOD 100 292#endif 293 294#ifndef GKI_SHUTDOWN_EVT 295#define GKI_SHUTDOWN_EVT APPL_EVT_7 296#endif 297 298#ifndef GKI_PTHREAD_JOINABLE 299#define GKI_PTHREAD_JOINABLE TRUE 300#endif 301 302#ifndef LINUX_DRV_INCLUDED 303#define LINUX_DRV_INCLUDED TRUE 304#endif 305 306#ifndef LINUX_OS 307#define LINUX_OS TRUE 308#endif 309 310#ifndef BTM_APP_DEV_INIT 311#define BTM_APP_DEV_INIT bte_main_post_reset_init 312#endif 313 314#ifndef SBC_FOR_EMBEDDED_LINUX 315#define SBC_FOR_EMBEDDED_LINUX TRUE 316#endif 317 318#ifndef BTA_DM_REMOTE_DEVICE_NAME_LENGTH 319#define BTA_DM_REMOTE_DEVICE_NAME_LENGTH 248 320#endif 321 322#ifndef AVDT_VERSION 323#define AVDT_VERSION 0x0102 324#endif 325 326#ifndef BTA_AG_AT_MAX_LEN 327#define BTA_AG_AT_MAX_LEN 512 328#endif 329 330#ifndef BTA_AVRCP_FF_RW_SUPPORT 331#define BTA_AVRCP_FF_RW_SUPPORT TRUE 332#endif 333 334#ifndef BTA_AG_SCO_PKT_TYPES 335#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) 336#endif 337 338#ifndef BTA_AV_RET_TOUT 339#define BTA_AV_RET_TOUT 15 340#endif 341 342#ifndef PORCHE_PAIRING_CONFLICT 343#define PORCHE_PAIRING_CONFLICT TRUE 344#endif 345 346#ifndef BTA_AV_CO_CP_SCMS_T 347#define BTA_AV_CO_CP_SCMS_T FALSE 348#endif 349 350#ifndef AVDT_CONNECT_CP_ONLY 351#define AVDT_CONNECT_CP_ONLY FALSE 352#endif 353 354/* This feature is used to eanble interleaved scan*/ 355#ifndef BTA_HOST_INTERLEAVE_SEARCH 356#define BTA_HOST_INTERLEAVE_SEARCH FALSE 357#endif 358 359/* This feature is used to skip query of ble read remote features*/ 360#ifndef BTA_SKIP_BLE_READ_REMOTE_FEAT 361#define BTA_SKIP_BLE_READ_REMOTE_FEAT FALSE 362#endif 363 364#ifndef BT_TRACE_PROTOCOL 365#define BT_TRACE_PROTOCOL TRUE 366#endif 367 368#ifndef BT_USE_TRACES 369#define BT_USE_TRACES TRUE 370#endif 371 372#ifndef BT_TRACE_BTIF 373#define BT_TRACE_BTIF TRUE 374#endif 375 376#ifndef BTTRC_INCLUDED 377#define BTTRC_INCLUDED FALSE 378#endif 379 380#ifndef BT_TRACE_VERBOSE 381#define BT_TRACE_VERBOSE FALSE 382#endif 383 384#ifndef BTTRC_PARSER_INCLUDED 385#define BTTRC_PARSER_INCLUDED FALSE 386#endif 387 388#ifndef MAX_TRACE_RAM_SIZE 389#define MAX_TRACE_RAM_SIZE 10000 390#endif 391 392#ifndef OBX_INITIAL_TRACE_LEVEL 393#define OBX_INITIAL_TRACE_LEVEL BT_TRACE_LEVEL_ERROR 394#endif 395 396#ifndef PBAP_ZERO_VCARD_IN_DB 397#define PBAP_ZERO_VCARD_IN_DB FALSE 398#endif 399 400#ifndef BTA_DM_SDP_DB_SIZE 401#define BTA_DM_SDP_DB_SIZE 8000 402#endif 403 404#ifndef FTS_REJECT_INVALID_OBEX_SET_PATH_REQ 405#define FTS_REJECT_INVALID_OBEX_SET_PATH_REQ FALSE 406#endif 407 408#ifndef HL_INCLUDED 409#define HL_INCLUDED TRUE 410#endif 411 412#ifndef NO_GKI_RUN_RETURN 413#define NO_GKI_RUN_RETURN TRUE 414#endif 415 416#ifndef AG_VOICE_SETTINGS 417#define AG_VOICE_SETTINGS HCI_DEFAULT_VOICE_SETTINGS 418#endif 419 420#ifndef BTIF_DM_OOB_TEST 421#define BTIF_DM_OOB_TEST TRUE 422#endif 423 424//------------------End added from bdroid_buildcfg.h--------------------- 425 426 427 428/* #define BYPASS_AVDATATRACE */ 429 430/****************************************************************************** 431** 432** Platform-Specific 433** 434******************************************************************************/ 435 436/* API macros for simulator */ 437 438#define BTAPI 439 440#ifndef BTE_BSE_WRAPPER 441#ifdef BTE_SIM_APP 442#undef BTAPI 443#define BTAPI __declspec(dllexport) 444#endif 445#endif 446 447#define BT_API BTAPI 448#define BTU_API BTAPI 449#define A2D_API BTAPI 450#define VDP_API BTAPI 451#define AVDT_API BTAPI 452#define AVCT_API BTAPI 453#define AVRC_API BTAPI 454#define BIP_API BTAPI 455#define BNEP_API BTAPI 456#define BPP_API BTAPI 457#define BTM_API BTAPI 458#define CTP_API BTAPI 459#define DUN_API BTAPI 460#define FTP_API BTAPI 461#define GAP_API BTAPI 462#define GOEP_API BTAPI 463#define HCI_API BTAPI 464#define HCRP_API BTAPI 465#define HID_API BTAPI 466#define HFP_API BTAPI 467#define HSP2_API BTAPI 468#define ICP_API BTAPI 469#define L2C_API BTAPI 470#define OBX_API BTAPI 471#define OPP_API BTAPI 472#define PAN_API BTAPI 473#define RFC_API BTAPI 474#define RPC_API BTAPI 475#define SDP_API BTAPI 476#define SPP_API BTAPI 477#define TCS_API BTAPI 478#define XML_API BTAPI 479#define BTA_API BTAPI 480#define SBC_API BTAPI 481#define MCE_API BTAPI 482#define MCA_API BTAPI 483#define GATT_API BTAPI 484#define SMP_API BTAPI 485 486 487/****************************************************************************** 488** 489** GKI Buffer Pools 490** 491******************************************************************************/ 492 493/* Receives HCI events from the lower-layer. */ 494#ifndef HCI_CMD_POOL_ID 495#define HCI_CMD_POOL_ID GKI_POOL_ID_2 496#endif 497 498#ifndef HCI_CMD_POOL_BUF_SIZE 499#define HCI_CMD_POOL_BUF_SIZE GKI_BUF2_SIZE 500#endif 501 502/* Receives ACL data packets from thelower-layer. */ 503#ifndef HCI_ACL_POOL_ID 504#define HCI_ACL_POOL_ID GKI_POOL_ID_3 505#endif 506 507#ifndef HCI_ACL_POOL_BUF_SIZE 508#define HCI_ACL_POOL_BUF_SIZE GKI_BUF3_SIZE 509#endif 510 511/* Maximum number of buffers available for ACL receive data. */ 512#ifndef HCI_ACL_BUF_MAX 513#define HCI_ACL_BUF_MAX GKI_BUF3_MAX 514#endif 515 516/* Receives SCO data packets from the lower-layer. */ 517#ifndef HCI_SCO_POOL_ID 518#define HCI_SCO_POOL_ID GKI_POOL_ID_6 519#endif 520 521/* Not used. */ 522#ifndef HCI_DATA_DESCR_POOL_ID 523#define HCI_DATA_DESCR_POOL_ID GKI_POOL_ID_0 524#endif 525 526/* Sends SDP data packets. */ 527#ifndef SDP_POOL_ID 528#define SDP_POOL_ID 3 529#endif 530 531/* Sends RFCOMM command packets. */ 532#ifndef RFCOMM_CMD_POOL_ID 533#define RFCOMM_CMD_POOL_ID GKI_POOL_ID_2 534#endif 535 536#ifndef RFCOMM_CMD_POOL_BUF_SIZE 537#define RFCOMM_CMD_POOL_BUF_SIZE GKI_BUF2_SIZE 538#endif 539 540/* Sends RFCOMM data packets. */ 541#ifndef RFCOMM_DATA_POOL_ID 542#define RFCOMM_DATA_POOL_ID GKI_POOL_ID_3 543#endif 544 545#ifndef RFCOMM_DATA_POOL_BUF_SIZE 546#define RFCOMM_DATA_POOL_BUF_SIZE GKI_BUF3_SIZE 547#endif 548 549/* Sends L2CAP packets to the peer and HCI messages to the controller. */ 550#ifndef L2CAP_CMD_POOL_ID 551#define L2CAP_CMD_POOL_ID GKI_POOL_ID_2 552#endif 553 554/* Sends L2CAP segmented packets in ERTM mode */ 555#ifndef L2CAP_FCR_TX_POOL_ID 556#define L2CAP_FCR_TX_POOL_ID HCI_ACL_POOL_ID 557#endif 558 559/* Receives L2CAP segmented packets in ERTM mode */ 560#ifndef L2CAP_FCR_RX_POOL_ID 561#define L2CAP_FCR_RX_POOL_ID HCI_ACL_POOL_ID 562#endif 563 564/* Number of ACL buffers to assign to LE 565 if the HCI buffer pool is shared with BR/EDR */ 566#ifndef L2C_DEF_NUM_BLE_BUF_SHARED 567#define L2C_DEF_NUM_BLE_BUF_SHARED 1 568#endif 569 570/* Used by BTM when it sends HCI commands to the controller. */ 571#ifndef BTM_CMD_POOL_ID 572#define BTM_CMD_POOL_ID GKI_POOL_ID_2 573#endif 574 575#ifndef OBX_CMD_POOL_SIZE 576#define OBX_CMD_POOL_SIZE GKI_BUF2_SIZE 577#endif 578 579#ifndef OBX_LRG_DATA_POOL_SIZE 580#define OBX_LRG_DATA_POOL_SIZE GKI_BUF4_SIZE 581#endif 582 583#ifndef OBX_LRG_DATA_POOL_ID 584#define OBX_LRG_DATA_POOL_ID GKI_POOL_ID_4 585#endif 586 587/* Used for CTP discovery database. */ 588#ifndef CTP_SDP_DB_POOL_ID 589#define CTP_SDP_DB_POOL_ID GKI_POOL_ID_3 590#endif 591 592/* Used to send data to L2CAP. */ 593#ifndef GAP_DATA_POOL_ID 594#define GAP_DATA_POOL_ID GKI_POOL_ID_3 595#endif 596 597/* Used for SPP inquiry and discovery databases. */ 598#ifndef SPP_DB_POOL_ID 599#define SPP_DB_POOL_ID GKI_POOL_ID_3 600#endif 601 602#ifndef SPP_DB_SIZE 603#define SPP_DB_SIZE GKI_BUF3_SIZE 604#endif 605 606/* BNEP data and protocol messages. */ 607#ifndef BNEP_POOL_ID 608#define BNEP_POOL_ID GKI_POOL_ID_3 609#endif 610 611/* RPC pool for temporary trace message buffers. */ 612#ifndef RPC_SCRATCH_POOL_ID 613#define RPC_SCRATCH_POOL_ID GKI_POOL_ID_2 614#endif 615 616/* RPC scratch buffer size (not related to RPC_SCRATCH_POOL_ID) */ 617#ifndef RPC_SCRATCH_BUF_SIZE 618#define RPC_SCRATCH_BUF_SIZE GKI_BUF3_SIZE 619#endif 620 621/* RPC pool for protocol messages */ 622#ifndef RPC_MSG_POOL_ID 623#define RPC_MSG_POOL_ID GKI_POOL_ID_3 624#endif 625 626#ifndef RPC_MSG_POOL_SIZE 627#define RPC_MSG_POOL_SIZE GKI_BUF3_SIZE 628#endif 629 630/* AVDTP pool for protocol messages */ 631#ifndef AVDT_CMD_POOL_ID 632#define AVDT_CMD_POOL_ID GKI_POOL_ID_2 633#endif 634 635/* AVDTP pool size for media packets in case of fragmentation */ 636#ifndef AVDT_DATA_POOL_SIZE 637#define AVDT_DATA_POOL_SIZE GKI_BUF3_SIZE 638#endif 639 640#ifndef PAN_POOL_ID 641#define PAN_POOL_ID GKI_POOL_ID_3 642#endif 643 644/* UNV pool for read/write serialization */ 645#ifndef UNV_MSG_POOL_ID 646#define UNV_MSG_POOL_ID GKI_POOL_ID_2 647#endif 648 649#ifndef UNV_MSG_POOL_SIZE 650#define UNV_MSG_POOL_SIZE GKI_BUF2_SIZE 651#endif 652 653/* AVCTP pool for protocol messages */ 654#ifndef AVCT_CMD_POOL_ID 655#define AVCT_CMD_POOL_ID GKI_POOL_ID_1 656#endif 657 658#ifndef AVCT_META_CMD_POOL_ID 659#define AVCT_META_CMD_POOL_ID GKI_POOL_ID_2 660#endif 661 662/* AVRCP pool for protocol messages */ 663#ifndef AVRC_CMD_POOL_ID 664#define AVRC_CMD_POOL_ID GKI_POOL_ID_1 665#endif 666 667/* AVRCP pool size for protocol messages */ 668#ifndef AVRC_CMD_POOL_SIZE 669#define AVRC_CMD_POOL_SIZE GKI_BUF1_SIZE 670#endif 671 672/* AVRCP Metadata pool for protocol messages */ 673#ifndef AVRC_META_CMD_POOL_ID 674#define AVRC_META_CMD_POOL_ID GKI_POOL_ID_2 675#endif 676 677/* AVRCP Metadata pool size for protocol messages */ 678#ifndef AVRC_META_CMD_POOL_SIZE 679#define AVRC_META_CMD_POOL_SIZE GKI_BUF2_SIZE 680#endif 681 682 683/* AVRCP buffer size for browsing channel messages */ 684#ifndef AVRC_BROWSE_POOL_SIZE 685#define AVRC_BROWSE_POOL_SIZE GKI_MAX_BUF_SIZE 686#endif 687 688/* HDP buffer size for the Pulse Oximeter */ 689#ifndef BTA_HL_LRG_DATA_POOL_SIZE 690#define BTA_HL_LRG_DATA_POOL_SIZE GKI_BUF7_SIZE 691#endif 692 693#ifndef BTA_HL_LRG_DATA_POOL_ID 694#define BTA_HL_LRG_DATA_POOL_ID GKI_POOL_ID_7 695#endif 696 697/* GATT Server Database pool ID */ 698#ifndef GATT_DB_POOL_ID 699#define GATT_DB_POOL_ID GKI_POOL_ID_8 700#endif 701 702/****************************************************************************** 703** 704** Lower Layer Interface 705** 706******************************************************************************/ 707 708/* Sends ACL data received over HCI to the upper stack. */ 709#ifndef HCI_ACL_DATA_TO_UPPER 710#define HCI_ACL_DATA_TO_UPPER(p) {((BT_HDR *)p)->event = BT_EVT_TO_BTU_HCI_ACL; GKI_send_msg (BTU_TASK, BTU_HCI_RCV_MBOX, p);} 711#endif 712 713/* Sends SCO data received over HCI to the upper stack. */ 714#ifndef HCI_SCO_DATA_TO_UPPER 715#define HCI_SCO_DATA_TO_UPPER(p) {((BT_HDR *)p)->event = BT_EVT_TO_BTU_HCI_SCO; GKI_send_msg (BTU_TASK, BTU_HCI_RCV_MBOX, p);} 716#endif 717 718/* Sends an HCI event received over HCI to theupper stack. */ 719#ifndef HCI_EVT_TO_UPPER 720#define HCI_EVT_TO_UPPER(p) {((BT_HDR *)p)->event = BT_EVT_TO_BTU_HCI_EVT; GKI_send_msg (BTU_TASK, BTU_HCI_RCV_MBOX, p);} 721#endif 722 723/* Macro for allocating buffer for HCI commands */ 724#ifndef HCI_GET_CMD_BUF 725#if (!defined(HCI_USE_VARIABLE_SIZE_CMD_BUF) || (HCI_USE_VARIABLE_SIZE_CMD_BUF == FALSE)) 726/* Allocate fixed-size buffer from HCI_CMD_POOL (default case) */ 727#define HCI_GET_CMD_BUF(paramlen) ((BT_HDR *)GKI_getpoolbuf (HCI_CMD_POOL_ID)) 728#else 729/* Allocate smallest possible buffer (for platforms with limited RAM) */ 730#define HCI_GET_CMD_BUF(paramlen) ((BT_HDR *)GKI_getbuf ((UINT16)(BT_HDR_SIZE + HCIC_PREAMBLE_SIZE + (paramlen)))) 731#endif 732#endif /* HCI_GET_CMD_BUF */ 733 734/****************************************************************************** 735** 736** HCI Services (H4) 737** 738******************************************************************************/ 739#ifndef HCISU_H4_INCLUDED 740#define HCISU_H4_INCLUDED TRUE 741#endif 742 743#ifdef __cplusplus 744extern "C" { 745#endif 746 747BT_API extern void bte_main_hci_send (BT_HDR *p_msg, UINT16 event); 748#if (HCISU_H4_INCLUDED == TRUE) 749BT_API extern void bte_main_lpm_allow_bt_device_sleep(void); 750#endif 751 752#ifdef __cplusplus 753} 754#endif 755 756/* Sends ACL data received from the upper stack to the BD/EDR HCI transport. */ 757#ifndef HCI_ACL_DATA_TO_LOWER 758#define HCI_ACL_DATA_TO_LOWER(p) bte_main_hci_send((BT_HDR *)(p), BT_EVT_TO_LM_HCI_ACL); 759#endif 760 761#ifndef HCI_BLE_ACL_DATA_TO_LOWER 762#define HCI_BLE_ACL_DATA_TO_LOWER(p) bte_main_hci_send((BT_HDR *)(p), (UINT16)(BT_EVT_TO_LM_HCI_ACL|LOCAL_BLE_CONTROLLER_ID)); 763#endif 764 765/* Sends SCO data received from the upper stack to the HCI transport. */ 766#ifndef HCI_SCO_DATA_TO_LOWER 767#define HCI_SCO_DATA_TO_LOWER(p) bte_main_hci_send((BT_HDR *)(p), BT_EVT_TO_LM_HCI_SCO); 768#endif 769 770/* Sends an HCI command received from the upper stack to the BD/EDR HCI transport. */ 771#ifndef HCI_CMD_TO_LOWER 772#define HCI_CMD_TO_LOWER(p) bte_main_hci_send((BT_HDR *)(p), BT_EVT_TO_LM_HCI_CMD); 773#endif 774 775/* Sends an LM Diagnosic command received from the upper stack to the HCI transport. */ 776#ifndef HCI_LM_DIAG_TO_LOWER 777#define HCI_LM_DIAG_TO_LOWER(p) bte_main_hci_send((BT_HDR *)(p), BT_EVT_TO_LM_DIAG); 778#endif 779 780/* Send HCISU a message to allow BT sleep */ 781#ifndef HCI_LP_ALLOW_BT_DEVICE_SLEEP 782#define HCI_LP_ALLOW_BT_DEVICE_SLEEP() bte_main_lpm_allow_bt_device_sleep() 783#endif 784 785/* If nonzero, the upper-layer sends at most this number of HCI commands to the lower-layer. */ 786#ifndef HCI_MAX_SIMUL_CMDS 787#define HCI_MAX_SIMUL_CMDS 0 788#endif 789 790/* Timeout for receiving response to HCI command */ 791#ifndef BTU_CMD_CMPL_TIMEOUT 792#define BTU_CMD_CMPL_TIMEOUT 8 793#endif 794 795/* If TRUE, BTU task will check HCISU again when HCI command timer expires */ 796#ifndef BTU_CMD_CMPL_TOUT_DOUBLE_CHECK 797#define BTU_CMD_CMPL_TOUT_DOUBLE_CHECK FALSE 798#endif 799 800/* Use 2 second for low-resolution systems, override to 1 for high-resolution systems */ 801#ifndef BT_1SEC_TIMEOUT 802#define BT_1SEC_TIMEOUT (2) 803#endif 804 805/* Quick Timer */ 806/* if L2CAP_FCR_INCLUDED is TRUE then it should have 100 millisecond resolution */ 807/* if none of them is included then QUICK_TIMER_TICKS_PER_SEC is set to 0 to exclude quick timer */ 808#ifndef QUICK_TIMER_TICKS_PER_SEC 809#define QUICK_TIMER_TICKS_PER_SEC 10 /* 10ms timer */ 810#endif 811 812/****************************************************************************** 813** 814** BTM 815** 816******************************************************************************/ 817/* if set to TRUE, stack will automatically send an HCI reset at start-up. To be 818set to FALSE for advanced start-up / shut-down procedures using USER_HW_ENABLE_API 819and USER_HW_DISABLE_API macros */ 820#ifndef BTM_AUTOMATIC_HCI_RESET 821#define BTM_AUTOMATIC_HCI_RESET FALSE 822#endif 823 824/* Include BTM Discovery database and code. */ 825#ifndef BTM_DISCOVERY_INCLUDED 826#define BTM_DISCOVERY_INCLUDED TRUE 827#endif 828 829/* Include inquiry code. */ 830#ifndef BTM_INQUIRY_INCLUDED 831#define BTM_INQUIRY_INCLUDED TRUE 832#endif 833 834/* Cancel Inquiry on incoming SSP */ 835#ifndef BTM_NO_SSP_ON_INQUIRY 836#define BTM_NO_SSP_ON_INQUIRY FALSE 837#endif 838 839/* Include periodic inquiry code (used when BTM_INQUIRY_INCLUDED is TRUE). */ 840#ifndef BTM_PERIODIC_INQ_INCLUDED 841#define BTM_PERIODIC_INQ_INCLUDED TRUE 842#endif 843 844/* Include security authorization code */ 845#ifndef BTM_AUTHORIZATION_INCLUDED 846#define BTM_AUTHORIZATION_INCLUDED TRUE 847#endif 848 849/* Includes SCO if TRUE */ 850#ifndef BTM_SCO_INCLUDED 851#define BTM_SCO_INCLUDED TRUE /* TRUE includes SCO code */ 852#endif 853 854/* Includes SCO if TRUE */ 855#ifndef BTM_SCO_HCI_INCLUDED 856#define BTM_SCO_HCI_INCLUDED FALSE /* TRUE includes SCO over HCI code */ 857#endif 858 859/* Includes WBS if TRUE */ 860#ifndef BTM_WBS_INCLUDED 861#define BTM_WBS_INCLUDED FALSE /* TRUE includes WBS code */ 862#endif 863 864/* Includes PCM2 support if TRUE */ 865#ifndef BTM_PCM2_INCLUDED 866#define BTM_PCM2_INCLUDED FALSE 867#endif 868 869/* This is used to work around a controller bug that doesn't like Disconnect 870** issued while there is a role switch in progress 871*/ 872#ifndef BTM_DISC_DURING_RS 873#define BTM_DISC_DURING_RS TRUE 874#endif 875 876/************************** 877** Initial SCO TX credit 878*************************/ 879/* max TX SCO data packet size */ 880#ifndef BTM_SCO_DATA_SIZE_MAX 881#define BTM_SCO_DATA_SIZE_MAX 240 882#endif 883 884/* maximum BTM buffering capacity */ 885#ifndef BTM_SCO_MAX_BUF_CAP 886#define BTM_SCO_MAX_BUF_CAP (BTM_SCO_INIT_XMIT_CREDIT * 4) 887#endif 888 889/* The size in bytes of the BTM inquiry database. */ 890#ifndef BTM_INQ_DB_SIZE 891#define BTM_INQ_DB_SIZE 40 892#endif 893 894/* This is set to enable automatic periodic inquiry at startup. */ 895#ifndef BTM_ENABLE_AUTO_INQUIRY 896#define BTM_ENABLE_AUTO_INQUIRY FALSE 897#endif 898 899/* This is set to always try to acquire the remote device name. */ 900#ifndef BTM_INQ_GET_REMOTE_NAME 901#define BTM_INQ_GET_REMOTE_NAME FALSE 902#endif 903 904/* The inquiry duration in 1.28 second units when auto inquiry is enabled. */ 905#ifndef BTM_DEFAULT_INQ_DUR 906#define BTM_DEFAULT_INQ_DUR 5 907#endif 908 909/* The inquiry mode when auto inquiry is enabled. */ 910#ifndef BTM_DEFAULT_INQ_MODE 911#define BTM_DEFAULT_INQ_MODE BTM_GENERAL_INQUIRY 912#endif 913 914/* The default periodic inquiry maximum delay when auto inquiry is enabled, in 1.28 second units. */ 915#ifndef BTM_DEFAULT_INQ_MAX_DELAY 916#define BTM_DEFAULT_INQ_MAX_DELAY 30 917#endif 918 919/* The default periodic inquiry minimum delay when auto inquiry is enabled, in 1.28 second units. */ 920#ifndef BTM_DEFAULT_INQ_MIN_DELAY 921#define BTM_DEFAULT_INQ_MIN_DELAY 20 922#endif 923 924/* The maximum age of entries in inquiry database in seconds ('0' disables feature). */ 925#ifndef BTM_INQ_MAX_AGE 926#define BTM_INQ_MAX_AGE 0 927#endif 928 929/* The maximum age of entries in inquiry database based on inquiry response failure ('0' disables feature). */ 930#ifndef BTM_INQ_AGE_BY_COUNT 931#define BTM_INQ_AGE_BY_COUNT 0 932#endif 933 934/* TRUE if controller does not support inquiry event filtering. */ 935#ifndef BTM_BYPASS_EVENT_FILTERING 936#define BTM_BYPASS_EVENT_FILTERING FALSE 937#endif 938 939/* TRUE if inquiry filtering is desired from BTM. */ 940#ifndef BTM_USE_INQ_RESULTS_FILTER 941#define BTM_USE_INQ_RESULTS_FILTER TRUE 942#endif 943 944/* The default scan mode */ 945#ifndef BTM_DEFAULT_SCAN_TYPE 946#define BTM_DEFAULT_SCAN_TYPE BTM_SCAN_TYPE_INTERLACED 947#endif 948 949/* Should connections to unknown devices be allowed when not discoverable? */ 950#ifndef BTM_ALLOW_CONN_IF_NONDISCOVER 951#define BTM_ALLOW_CONN_IF_NONDISCOVER TRUE 952#endif 953 954/* When connectable mode is set to TRUE, the device will respond to paging. */ 955#ifndef BTM_IS_CONNECTABLE 956#define BTM_IS_CONNECTABLE FALSE 957#endif 958 959/* Sets the Page_Scan_Window: the length of time that the device is performing a page scan. */ 960#ifndef BTM_DEFAULT_CONN_WINDOW 961#define BTM_DEFAULT_CONN_WINDOW 0x0012 962#endif 963 964/* Sets the Page_Scan_Activity: the interval between the start of two consecutive page scans. */ 965#ifndef BTM_DEFAULT_CONN_INTERVAL 966#define BTM_DEFAULT_CONN_INTERVAL 0x0800 967#endif 968 969/* This is set to automatically perform inquiry scan on startup. */ 970#ifndef BTM_IS_DISCOVERABLE 971#define BTM_IS_DISCOVERABLE FALSE 972#endif 973 974/* When automatic inquiry scan is enabled, this sets the discovery mode. */ 975#ifndef BTM_DEFAULT_DISC_MODE 976#define BTM_DEFAULT_DISC_MODE BTM_GENERAL_DISCOVERABLE 977#endif 978 979/* When automatic inquiry scan is enabled, this sets the inquiry scan window. */ 980#ifndef BTM_DEFAULT_DISC_WINDOW 981#define BTM_DEFAULT_DISC_WINDOW 0x0012 982#endif 983 984/* When automatic inquiry scan is enabled, this sets the inquiry scan interval. */ 985#ifndef BTM_DEFAULT_DISC_INTERVAL 986#define BTM_DEFAULT_DISC_INTERVAL 0x0800 987#endif 988 989/* Sets the period, in seconds, to automatically perform service discovery. */ 990#ifndef BTM_AUTO_DISCOVERY_PERIOD 991#define BTM_AUTO_DISCOVERY_PERIOD 0 992#endif 993 994/* The size in bytes of the BTM discovery database (if discovery is included). */ 995#ifndef BTM_DISCOVERY_DB_SIZE 996#define BTM_DISCOVERY_DB_SIZE 4000 997#endif 998 999/* Number of milliseconds to delay BTU task startup upon device initialization. */ 1000#ifndef BTU_STARTUP_DELAY 1001#define BTU_STARTUP_DELAY 0 1002#endif 1003 1004/* Whether BTA is included in BTU task. */ 1005#ifndef BTU_BTA_INCLUDED 1006#define BTU_BTA_INCLUDED TRUE 1007#endif 1008 1009/* Number of seconds to wait to send an HCI Reset command upon device initialization. */ 1010#ifndef BTM_FIRST_RESET_DELAY 1011#define BTM_FIRST_RESET_DELAY 0 1012#endif 1013 1014/* The number of seconds to wait for controller module to reset after issuing an HCI Reset command. */ 1015#ifndef BTM_AFTER_RESET_TIMEOUT 1016#define BTM_AFTER_RESET_TIMEOUT 0 1017#endif 1018 1019/* Default class of device 1020* {SERVICE_CLASS, MAJOR_CLASS, MINOR_CLASS} 1021* 1022* SERVICE_CLASS:0x5A (Bit17 -Networking,Bit19 - Capturing,Bit20 -Object Transfer,Bit22 -Telephony) 1023* MAJOR_CLASS:0x02 - PHONE 1024* MINOR_CLASS:0x0C - SMART_PHONE 1025* 1026*/ 1027#ifndef BTA_DM_COD 1028#define BTA_DM_COD {0x5A, 0x02, 0x0C} 1029#endif 1030 1031/* The number of SCO links. */ 1032#ifndef BTM_MAX_SCO_LINKS 1033#define BTM_MAX_SCO_LINKS 2 1034#endif 1035 1036/* The preferred type of SCO links (2-eSCO, 0-SCO). */ 1037#ifndef BTM_DEFAULT_SCO_MODE 1038#define BTM_DEFAULT_SCO_MODE 2 1039#endif 1040 1041/* The number of security records for peer devices. */ 1042#ifndef BTM_SEC_MAX_DEVICE_RECORDS 1043#define BTM_SEC_MAX_DEVICE_RECORDS 100 1044#endif 1045 1046/* The number of security records for services. */ 1047#ifndef BTM_SEC_MAX_SERVICE_RECORDS 1048#define BTM_SEC_MAX_SERVICE_RECORDS 32 1049#endif 1050 1051/* If True, force a retrieval of remote device name for each bond in case it's changed */ 1052#ifndef BTM_SEC_FORCE_RNR_FOR_DBOND 1053#define BTM_SEC_FORCE_RNR_FOR_DBOND FALSE 1054#endif 1055 1056/* Maximum device name length used in btm database. */ 1057#ifndef BTM_MAX_REM_BD_NAME_LEN 1058#define BTM_MAX_REM_BD_NAME_LEN 248 1059#endif 1060 1061/* Maximum local device name length stored btm database. 1062 '0' disables storage of the local name in BTM */ 1063#ifndef BTM_MAX_LOC_BD_NAME_LEN 1064#define BTM_MAX_LOC_BD_NAME_LEN 248 1065#endif 1066 1067/* Fixed Default String. When this is defined as null string, the device's 1068 * product model name is used as the default local name. 1069 */ 1070#ifndef BTM_DEF_LOCAL_NAME 1071#define BTM_DEF_LOCAL_NAME "" 1072#endif 1073 1074/* Maximum service name stored with security authorization (0 if not needed) */ 1075#ifndef BTM_SEC_SERVICE_NAME_LEN 1076#define BTM_SEC_SERVICE_NAME_LEN BT_MAX_SERVICE_NAME_LEN 1077#endif 1078 1079/* Maximum number of pending security callback */ 1080#ifndef BTM_SEC_MAX_CALLBACKS 1081#define BTM_SEC_MAX_CALLBACKS 7 1082#endif 1083 1084/* Maximum length of the service name. */ 1085#ifndef BT_MAX_SERVICE_NAME_LEN 1086#define BT_MAX_SERVICE_NAME_LEN 21 1087#endif 1088 1089/* ACL buffer size in HCI Host Buffer Size command. */ 1090#ifndef BTM_ACL_BUF_SIZE 1091#define BTM_ACL_BUF_SIZE 0 1092#endif 1093 1094/* This is set to use the BTM power manager. */ 1095#ifndef BTM_PWR_MGR_INCLUDED 1096#define BTM_PWR_MGR_INCLUDED TRUE 1097#endif 1098 1099/* The maximum number of clients that can register with the power manager. */ 1100#ifndef BTM_MAX_PM_RECORDS 1101#define BTM_MAX_PM_RECORDS 2 1102#endif 1103 1104/* This is set to show debug trace messages for the power manager. */ 1105#ifndef BTM_PM_DEBUG 1106#define BTM_PM_DEBUG FALSE 1107#endif 1108 1109/* This is set to TRUE if link is to be unparked due to BTM_CreateSCO API. */ 1110#ifndef BTM_SCO_WAKE_PARKED_LINK 1111#define BTM_SCO_WAKE_PARKED_LINK TRUE 1112#endif 1113 1114/* May be set to the the name of a function used for vendor specific chip initialization */ 1115#ifndef BTM_APP_DEV_INIT 1116/* #define BTM_APP_DEV_INIT myInitFunction() */ 1117#endif 1118 1119/* This is set to TRUE if the busy level change event is desired. (replace ACL change event) */ 1120#ifndef BTM_BUSY_LEVEL_CHANGE_INCLUDED 1121#define BTM_BUSY_LEVEL_CHANGE_INCLUDED TRUE 1122#endif 1123 1124/* If the user does not respond to security process requests within this many seconds, 1125 * a negative response would be sent automatically. 1126 * It's recommended to use a value between 30 and OBX_TIMEOUT_VALUE 1127 * 30 is LMP response timeout value */ 1128#ifndef BTM_SEC_TIMEOUT_VALUE 1129#define BTM_SEC_TIMEOUT_VALUE 35 1130#endif 1131 1132/* Maximum number of callbacks that can be registered using BTM_RegisterForVSEvents */ 1133#ifndef BTM_MAX_VSE_CALLBACKS 1134#define BTM_MAX_VSE_CALLBACKS 3 1135#endif 1136 1137/* Number of streams for dual stack */ 1138#ifndef BTM_SYNC_INFO_NUM_STR 1139#define BTM_SYNC_INFO_NUM_STR 2 1140#endif 1141 1142/* Number of streams for dual stack in BT Controller */ 1143#ifndef BTM_SYNC_INFO_NUM_STR_BTC 1144#define BTM_SYNC_INFO_NUM_STR_BTC 2 1145#endif 1146 1147/****************************************** 1148** Lisbon Features 1149*******************************************/ 1150/* This is set to TRUE if the server Extended Inquiry Response feature is desired. */ 1151/* server sends EIR to client */ 1152#ifndef BTM_EIR_SERVER_INCLUDED 1153#define BTM_EIR_SERVER_INCLUDED TRUE 1154#endif 1155 1156/* This is set to TRUE if the client Extended Inquiry Response feature is desired. */ 1157/* client inquiry to server */ 1158#ifndef BTM_EIR_CLIENT_INCLUDED 1159#define BTM_EIR_CLIENT_INCLUDED TRUE 1160#endif 1161 1162/* This is set to TRUE if the FEC is required for EIR packet. */ 1163#ifndef BTM_EIR_DEFAULT_FEC_REQUIRED 1164#define BTM_EIR_DEFAULT_FEC_REQUIRED TRUE 1165#endif 1166 1167/* User defined UUID look up table */ 1168#ifndef BTM_EIR_UUID_LKUP_TBL 1169#endif 1170 1171/* The IO capability of the local device (for Simple Pairing) */ 1172#ifndef BTM_LOCAL_IO_CAPS 1173#define BTM_LOCAL_IO_CAPS BTM_IO_CAP_IO 1174#endif 1175 1176/* The default MITM Protection Requirement (for Simple Pairing) 1177 * Possible values are BTM_AUTH_SP_YES or BTM_AUTH_SP_NO */ 1178#ifndef BTM_DEFAULT_AUTH_REQ 1179#define BTM_DEFAULT_AUTH_REQ BTM_AUTH_SP_NO 1180#endif 1181 1182/* The default MITM Protection Requirement for dedicated bonding using Simple Pairing 1183 * Possible values are BTM_AUTH_AP_YES or BTM_AUTH_AP_NO */ 1184#ifndef BTM_DEFAULT_DD_AUTH_REQ 1185#define BTM_DEFAULT_DD_AUTH_REQ BTM_AUTH_AP_YES 1186#endif 1187 1188/* Include Out-of-Band implementation for Simple Pairing */ 1189#ifndef BTM_OOB_INCLUDED 1190#define BTM_OOB_INCLUDED TRUE 1191#endif 1192 1193/* TRUE to include Sniff Subrating */ 1194#ifndef BTM_SSR_INCLUDED 1195#define BTM_SSR_INCLUDED TRUE 1196#endif 1197 1198/************************* 1199** End of Lisbon Features 1200**************************/ 1201 1202/* Used for conformance testing ONLY */ 1203#ifndef BTM_BLE_CONFORMANCE_TESTING 1204#define BTM_BLE_CONFORMANCE_TESTING FALSE 1205#endif 1206 1207/* Maximum number of consecutive HCI commands that can time out 1208* before it gets treated as H/w error*/ 1209#ifndef BTM_MAX_HCI_CMD_TOUT_BEFORE_RESTART 1210#define BTM_MAX_HCI_CMD_TOUT_BEFORE_RESTART 2 1211#endif 1212 1213/****************************************************************************** 1214** 1215** L2CAP 1216** 1217******************************************************************************/ 1218 1219/* Flow control and retransmission mode */ 1220 1221#ifndef L2CAP_FCR_INCLUDED 1222#define L2CAP_FCR_INCLUDED TRUE 1223#endif 1224 1225/* The maximum number of simultaneous links that L2CAP can support. */ 1226#ifndef MAX_ACL_CONNECTIONS 1227#define MAX_L2CAP_LINKS 7 1228#else 1229#define MAX_L2CAP_LINKS MAX_ACL_CONNECTIONS 1230#endif 1231 1232/* The maximum number of simultaneous channels that L2CAP can support. */ 1233#ifndef MAX_L2CAP_CHANNELS 1234#define MAX_L2CAP_CHANNELS 16 1235#endif 1236 1237/* The maximum number of simultaneous applications that can register with L2CAP. */ 1238#ifndef MAX_L2CAP_CLIENTS 1239#define MAX_L2CAP_CLIENTS 15 1240#endif 1241 1242/* The number of seconds of link inactivity before a link is disconnected. */ 1243#ifndef L2CAP_LINK_INACTIVITY_TOUT 1244#define L2CAP_LINK_INACTIVITY_TOUT 4 1245#endif 1246 1247/* The number of seconds of link inactivity after bonding before a link is disconnected. */ 1248#ifndef L2CAP_BONDING_TIMEOUT 1249#define L2CAP_BONDING_TIMEOUT 3 1250#endif 1251 1252/* The time from the HCI connection complete to disconnect if no channel is established. */ 1253#ifndef L2CAP_LINK_STARTUP_TOUT 1254#define L2CAP_LINK_STARTUP_TOUT 60 1255#endif 1256 1257/* The L2CAP MTU; must be in accord with the HCI ACL pool size. */ 1258#ifndef L2CAP_MTU_SIZE 1259#define L2CAP_MTU_SIZE 1691 1260#endif 1261 1262/* The L2CAP MPS over Bluetooth; must be in accord with the FCR tx pool size and ACL down buffer size. */ 1263#ifndef L2CAP_MPS_OVER_BR_EDR 1264#define L2CAP_MPS_OVER_BR_EDR 1010 1265#endif 1266 1267/* This is set to enable host flow control. */ 1268#ifndef L2CAP_HOST_FLOW_CTRL 1269#define L2CAP_HOST_FLOW_CTRL FALSE 1270#endif 1271 1272/* If host flow control enabled, this is the number of buffers the controller can have unacknowledged. */ 1273#ifndef L2CAP_HOST_FC_ACL_BUFS 1274#define L2CAP_HOST_FC_ACL_BUFS 20 1275#endif 1276 1277/* The percentage of the queue size allowed before a congestion event is sent to the L2CAP client (typically 120%). */ 1278#ifndef L2CAP_FWD_CONG_THRESH 1279#define L2CAP_FWD_CONG_THRESH 120 1280#endif 1281 1282/* This is set to enable L2CAP to take the ACL link out of park mode when ACL data is to be sent. */ 1283#ifndef L2CAP_WAKE_PARKED_LINK 1284#define L2CAP_WAKE_PARKED_LINK TRUE 1285#endif 1286 1287/* Whether link wants to be the master or the slave. */ 1288#ifndef L2CAP_DESIRED_LINK_ROLE 1289#define L2CAP_DESIRED_LINK_ROLE HCI_ROLE_SLAVE 1290#endif 1291 1292/* Include Non-Flushable Packet Boundary Flag feature of Lisbon */ 1293#ifndef L2CAP_NON_FLUSHABLE_PB_INCLUDED 1294#define L2CAP_NON_FLUSHABLE_PB_INCLUDED TRUE 1295#endif 1296 1297/* Minimum number of ACL credit for high priority link */ 1298#ifndef L2CAP_HIGH_PRI_MIN_XMIT_QUOTA 1299#define L2CAP_HIGH_PRI_MIN_XMIT_QUOTA 5 1300#endif 1301 1302/* used for monitoring HCI ACL credit management */ 1303#ifndef L2CAP_HCI_FLOW_CONTROL_DEBUG 1304#define L2CAP_HCI_FLOW_CONTROL_DEBUG TRUE 1305#endif 1306 1307/* Used for calculating transmit buffers off of */ 1308#ifndef L2CAP_NUM_XMIT_BUFFS 1309#define L2CAP_NUM_XMIT_BUFFS HCI_ACL_BUF_MAX 1310#endif 1311 1312/* Unicast Connectionless Data */ 1313#ifndef L2CAP_UCD_INCLUDED 1314#define L2CAP_UCD_INCLUDED FALSE 1315#endif 1316 1317/* Unicast Connectionless Data MTU */ 1318#ifndef L2CAP_UCD_MTU 1319#define L2CAP_UCD_MTU L2CAP_MTU_SIZE 1320#endif 1321 1322/* Unicast Connectionless Data Idle Timeout */ 1323#ifndef L2CAP_UCD_IDLE_TIMEOUT 1324#define L2CAP_UCD_IDLE_TIMEOUT 2 1325#endif 1326 1327/* Unicast Connectionless Data Idle Timeout */ 1328#ifndef L2CAP_UCD_CH_PRIORITY 1329#define L2CAP_UCD_CH_PRIORITY L2CAP_CHNL_PRIORITY_MEDIUM 1330#endif 1331 1332/* Max clients on Unicast Connectionless Data */ 1333#ifndef L2CAP_MAX_UCD_CLIENTS 1334#define L2CAP_MAX_UCD_CLIENTS 5 1335#endif 1336 1337/* Used for features using fixed channels; set to zero if no fixed channels supported (BLE, etc.) */ 1338/* Excluding L2CAP signaling channel and UCD */ 1339#ifndef L2CAP_NUM_FIXED_CHNLS 1340#define L2CAP_NUM_FIXED_CHNLS 4 1341#endif 1342 1343/* First fixed channel supported */ 1344#ifndef L2CAP_FIRST_FIXED_CHNL 1345#define L2CAP_FIRST_FIXED_CHNL 3 1346#endif 1347 1348#ifndef L2CAP_LAST_FIXED_CHNL 1349#define L2CAP_LAST_FIXED_CHNL (L2CAP_FIRST_FIXED_CHNL + L2CAP_NUM_FIXED_CHNLS - 1) 1350#endif 1351 1352/* Round Robin service channels in link */ 1353#ifndef L2CAP_ROUND_ROBIN_CHANNEL_SERVICE 1354#define L2CAP_ROUND_ROBIN_CHANNEL_SERVICE TRUE 1355#endif 1356 1357/* Used for calculating transmit buffers off of */ 1358#ifndef L2CAP_NUM_XMIT_BUFFS 1359#define L2CAP_NUM_XMIT_BUFFS HCI_ACL_BUF_MAX 1360#endif 1361 1362/* Used for features using fixed channels; set to zero if no fixed channels supported (BLE, etc.) */ 1363#ifndef L2CAP_NUM_FIXED_CHNLS 1364#define L2CAP_NUM_FIXED_CHNLS 1 1365#endif 1366 1367/* First fixed channel supported */ 1368#ifndef L2CAP_FIRST_FIXED_CHNL 1369#define L2CAP_FIRST_FIXED_CHNL 3 1370#endif 1371 1372#ifndef L2CAP_LAST_FIXED_CHNL 1373#define L2CAP_LAST_FIXED_CHNL (L2CAP_FIRST_FIXED_CHNL + L2CAP_NUM_FIXED_CHNLS - 1) 1374#endif 1375 1376/* used for monitoring eL2CAP data flow */ 1377#ifndef L2CAP_ERTM_STATS 1378#define L2CAP_ERTM_STATS FALSE 1379#endif 1380 1381/* USED FOR FCR TEST ONLY: When TRUE generates bad tx and rx packets */ 1382#ifndef L2CAP_CORRUPT_ERTM_PKTS 1383#define L2CAP_CORRUPT_ERTM_PKTS FALSE 1384#endif 1385 1386/* Used for conformance testing ONLY: When TRUE lets scriptwrapper overwrite info response */ 1387#ifndef L2CAP_CONFORMANCE_TESTING 1388#define L2CAP_CONFORMANCE_TESTING FALSE 1389#endif 1390 1391 1392#ifndef TIMER_PARAM_TYPE 1393#ifdef WIN2000 1394#define TIMER_PARAM_TYPE void * 1395#else 1396#define TIMER_PARAM_TYPE UINT32 1397#endif 1398#endif 1399 1400/****************************************************************************** 1401** 1402** BLE 1403** 1404******************************************************************************/ 1405 1406#ifndef BLE_INCLUDED 1407#define BLE_INCLUDED TRUE 1408#endif 1409 1410#ifndef LOCAL_BLE_CONTROLLER_ID 1411#define LOCAL_BLE_CONTROLLER_ID (1) 1412#endif 1413 1414/****************************************************************************** 1415** 1416** ATT/GATT Protocol/Profile Settings 1417** 1418******************************************************************************/ 1419#ifndef ATT_INCLUDED 1420#define ATT_INCLUDED TRUE 1421#endif 1422 1423#ifndef ATT_DEBUG 1424#define ATT_DEBUG TRUE 1425#endif 1426 1427#ifndef GATT_SERVER_ENABLED 1428#define GATT_SERVER_ENABLED TRUE 1429#endif 1430 1431#ifndef GATT_CLIENT_ENABLED 1432#define GATT_CLIENT_ENABLED TRUE 1433#endif 1434 1435#ifndef GATT_MAX_SR_PROFILES 1436#define GATT_MAX_SR_PROFILES 32 /* max is 32 */ 1437#endif 1438 1439#ifndef GATT_MAX_APPS 1440#define GATT_MAX_APPS 10 /* note: 2 apps used internally GATT and GAP */ 1441#endif 1442 1443#ifndef GATT_MAX_CL_PROFILES 1444#define GATT_MAX_CL_PROFILES 4 1445#endif 1446 1447#ifndef GATT_MAX_PHY_CHANNEL 1448#define GATT_MAX_PHY_CHANNEL 7 1449#endif 1450 1451/* Used for conformance testing ONLY */ 1452#ifndef GATT_CONFORMANCE_TESTING 1453#define GATT_CONFORMANCE_TESTING FALSE 1454#endif 1455 1456/* number of background connection device allowence, ideally to be the same as WL size 1457*/ 1458#ifndef GATT_MAX_BG_CONN_DEV 1459#define GATT_MAX_BG_CONN_DEV 32 1460#endif 1461 1462/****************************************************************************** 1463** 1464** SMP 1465** 1466******************************************************************************/ 1467#ifndef SMP_INCLUDED 1468#define SMP_INCLUDED TRUE 1469#endif 1470 1471#ifndef SMP_DEBUG 1472#define SMP_DEBUG TRUE 1473#endif 1474 1475#ifndef SMP_DEFAULT_AUTH_REQ 1476#define SMP_DEFAULT_AUTH_REQ SMP_AUTH_NB_ENC_ONLY 1477#endif 1478 1479#ifndef SMP_MAX_ENC_KEY_SIZE 1480#define SMP_MAX_ENC_KEY_SIZE 16 1481#endif 1482 1483#ifndef SMP_MIN_ENC_KEY_SIZE 1484#define SMP_MIN_ENC_KEY_SIZE 7 1485#endif 1486 1487/* Used for conformance testing ONLY */ 1488#ifndef SMP_CONFORMANCE_TESTING 1489#define SMP_CONFORMANCE_TESTING FALSE 1490#endif 1491 1492/****************************************************************************** 1493** 1494** SDP 1495** 1496******************************************************************************/ 1497 1498/* This is set to enable SDP server functionality. */ 1499#ifndef SDP_SERVER_ENABLED 1500#define SDP_SERVER_ENABLED TRUE 1501#endif 1502 1503/* The maximum number of SDP records the server can support. */ 1504#ifndef SDP_MAX_RECORDS 1505#define SDP_MAX_RECORDS 20 1506#endif 1507 1508/* The maximum number of attributes in each record. */ 1509#ifndef SDP_MAX_REC_ATTR 1510//#if defined(HID_DEV_INCLUDED) && (HID_DEV_INCLUDED==TRUE) 1511#define SDP_MAX_REC_ATTR 25 1512//#else 1513//#define SDP_MAX_REC_ATTR 13 1514//#endif 1515#endif 1516 1517#ifndef SDP_MAX_PAD_LEN 1518#define SDP_MAX_PAD_LEN 600 1519#endif 1520 1521/* The maximum length, in bytes, of an attribute. */ 1522#ifndef SDP_MAX_ATTR_LEN 1523//#if defined(HID_DEV_INCLUDED) && (HID_DEV_INCLUDED==TRUE) 1524//#define SDP_MAX_ATTR_LEN 80 1525//#else 1526//#define SDP_MAX_ATTR_LEN 100 1527//#endif 1528#define SDP_MAX_ATTR_LEN 400 1529#endif 1530 1531/* The maximum number of attribute filters supported by SDP databases. */ 1532#ifndef SDP_MAX_ATTR_FILTERS 1533#define SDP_MAX_ATTR_FILTERS 15 1534#endif 1535 1536/* The maximum number of UUID filters supported by SDP databases. */ 1537#ifndef SDP_MAX_UUID_FILTERS 1538#define SDP_MAX_UUID_FILTERS 3 1539#endif 1540 1541/* This is set to enable SDP client functionality. */ 1542#ifndef SDP_CLIENT_ENABLED 1543#define SDP_CLIENT_ENABLED TRUE 1544#endif 1545 1546/* The maximum number of record handles retrieved in a search. */ 1547#ifndef SDP_MAX_DISC_SERVER_RECS 1548#define SDP_MAX_DISC_SERVER_RECS 21 1549#endif 1550 1551/* The size of a scratchpad buffer, in bytes, for storing the response to an attribute request. */ 1552#ifndef SDP_MAX_LIST_BYTE_COUNT 1553#define SDP_MAX_LIST_BYTE_COUNT 4096 1554#endif 1555 1556/* The maximum number of parameters in an SDP protocol element. */ 1557#ifndef SDP_MAX_PROTOCOL_PARAMS 1558#define SDP_MAX_PROTOCOL_PARAMS 2 1559#endif 1560 1561/* The maximum number of simultaneous client and server connections. */ 1562#ifndef SDP_MAX_CONNECTIONS 1563#define SDP_MAX_CONNECTIONS 4 1564#endif 1565 1566/* The MTU size for the L2CAP configuration. */ 1567#ifndef SDP_MTU_SIZE 1568#define SDP_MTU_SIZE 256 1569#endif 1570 1571/* The flush timeout for the L2CAP configuration. */ 1572#ifndef SDP_FLUSH_TO 1573#define SDP_FLUSH_TO 0xFFFF 1574#endif 1575 1576/* The name for security authorization. */ 1577#ifndef SDP_SERVICE_NAME 1578#define SDP_SERVICE_NAME "Service Discovery" 1579#endif 1580 1581/* The security level for BTM. */ 1582#ifndef SDP_SECURITY_LEVEL 1583#define SDP_SECURITY_LEVEL BTM_SEC_NONE 1584#endif 1585 1586/* Device identification feature. */ 1587#ifndef SDP_DI_INCLUDED 1588#define SDP_DI_INCLUDED TRUE 1589#endif 1590 1591/****************************************************************************** 1592** 1593** RFCOMM 1594** 1595******************************************************************************/ 1596 1597#ifndef RFCOMM_INCLUDED 1598#define RFCOMM_INCLUDED TRUE 1599#endif 1600 1601/* The maximum number of ports supported. */ 1602#ifndef MAX_RFC_PORTS 1603#define MAX_RFC_PORTS 30 1604#endif 1605 1606/* The maximum simultaneous links to different devices. */ 1607#ifndef MAX_ACL_CONNECTIONS 1608#define MAX_BD_CONNECTIONS 7 1609#else 1610#define MAX_BD_CONNECTIONS MAX_ACL_CONNECTIONS 1611#endif 1612 1613/* The port receive queue low watermark level, in bytes. */ 1614#ifndef PORT_RX_LOW_WM 1615#define PORT_RX_LOW_WM (BTA_RFC_MTU_SIZE * PORT_RX_BUF_LOW_WM) 1616#endif 1617 1618/* The port receive queue high watermark level, in bytes. */ 1619#ifndef PORT_RX_HIGH_WM 1620#define PORT_RX_HIGH_WM (BTA_RFC_MTU_SIZE * PORT_RX_BUF_HIGH_WM) 1621#endif 1622 1623/* The port receive queue critical watermark level, in bytes. */ 1624#ifndef PORT_RX_CRITICAL_WM 1625#define PORT_RX_CRITICAL_WM (BTA_RFC_MTU_SIZE * PORT_RX_BUF_CRITICAL_WM) 1626#endif 1627 1628/* The port receive queue low watermark level, in number of buffers. */ 1629#ifndef PORT_RX_BUF_LOW_WM 1630#define PORT_RX_BUF_LOW_WM 4 1631#endif 1632 1633/* The port receive queue high watermark level, in number of buffers. */ 1634#ifndef PORT_RX_BUF_HIGH_WM 1635#define PORT_RX_BUF_HIGH_WM 10 1636#endif 1637 1638/* The port receive queue critical watermark level, in number of buffers. */ 1639#ifndef PORT_RX_BUF_CRITICAL_WM 1640#define PORT_RX_BUF_CRITICAL_WM 15 1641#endif 1642 1643/* The port transmit queue high watermark level, in bytes. */ 1644#ifndef PORT_TX_HIGH_WM 1645#define PORT_TX_HIGH_WM (BTA_RFC_MTU_SIZE * PORT_TX_BUF_HIGH_WM) 1646#endif 1647 1648/* The port transmit queue critical watermark level, in bytes. */ 1649#ifndef PORT_TX_CRITICAL_WM 1650#define PORT_TX_CRITICAL_WM (BTA_RFC_MTU_SIZE * PORT_TX_BUF_CRITICAL_WM) 1651#endif 1652 1653/* The port transmit queue high watermark level, in number of buffers. */ 1654#ifndef PORT_TX_BUF_HIGH_WM 1655#define PORT_TX_BUF_HIGH_WM 10 1656#endif 1657 1658/* The port transmit queue high watermark level, in number of buffers. */ 1659#ifndef PORT_TX_BUF_CRITICAL_WM 1660#define PORT_TX_BUF_CRITICAL_WM 15 1661#endif 1662 1663/* The RFCOMM multiplexer preferred flow control mechanism. */ 1664#ifndef PORT_FC_DEFAULT 1665#define PORT_FC_DEFAULT PORT_FC_CREDIT 1666#endif 1667 1668/* The maximum number of credits receiver sends to peer when using credit-based flow control. */ 1669#ifndef PORT_CREDIT_RX_MAX 1670#define PORT_CREDIT_RX_MAX 16 1671#endif 1672 1673/* The credit low watermark level. */ 1674#ifndef PORT_CREDIT_RX_LOW 1675#define PORT_CREDIT_RX_LOW 8 1676#endif 1677 1678/* Test code allowing l2cap FEC on RFCOMM.*/ 1679#ifndef PORT_ENABLE_L2CAP_FCR_TEST 1680#define PORT_ENABLE_L2CAP_FCR_TEST FALSE 1681#endif 1682 1683/* if application like BTA, Java or script test engine is running on other than BTU thread, */ 1684/* PORT_SCHEDULE_LOCK shall be defined as GKI_sched_lock() or GKI_disable() */ 1685#ifndef PORT_SCHEDULE_LOCK 1686#define PORT_SCHEDULE_LOCK GKI_disable() 1687#endif 1688 1689/* if application like BTA, Java or script test engine is running on other than BTU thread, */ 1690/* PORT_SCHEDULE_LOCK shall be defined as GKI_sched_unlock() or GKI_enable() */ 1691#ifndef PORT_SCHEDULE_UNLOCK 1692#define PORT_SCHEDULE_UNLOCK GKI_enable() 1693#endif 1694 1695/****************************************************************************** 1696** 1697** TCS 1698** 1699******************************************************************************/ 1700 1701#ifndef TCS_INCLUDED 1702#define TCS_INCLUDED FALSE 1703#endif 1704 1705/* If set to TRUE, gives lean TCS state machine configuration. */ 1706#ifndef TCS_LEAN 1707#define TCS_LEAN FALSE 1708#endif 1709 1710/* To include/exclude point-to-multipoint broadcast SETUP configuration. */ 1711#ifndef TCS_BCST_SETUP_INCLUDED 1712#define TCS_BCST_SETUP_INCLUDED TRUE 1713#endif 1714 1715/* To include/exclude supplementary services. */ 1716#ifndef TCS_SUPP_SVCS_INCLUDED 1717#define TCS_SUPP_SVCS_INCLUDED TRUE 1718#endif 1719 1720/* To include/exclude WUG master role. */ 1721#ifndef TCS_WUG_MASTER_INCLUDED 1722#define TCS_WUG_MASTER_INCLUDED TRUE 1723#endif 1724 1725/* To include/exclude WUG member role. */ 1726#ifndef TCS_WUG_MEMBER_INCLUDED 1727#define TCS_WUG_MEMBER_INCLUDED TRUE 1728#endif 1729 1730/* Maximum number of WUG members. */ 1731#ifndef TCS_MAX_WUG_MEMBERS 1732#define TCS_MAX_WUG_MEMBERS 7 1733#endif 1734 1735/* Broadcom specific acknowledgement message to ensure fast and robust operation of WUG FIMA procedure. */ 1736#ifndef TCS_WUG_LISTEN_ACPT_ACK_INCLUDED 1737#define TCS_WUG_LISTEN_ACPT_ACK_INCLUDED TRUE 1738#endif 1739 1740/* The number of simultaneous calls supported. */ 1741#ifndef TCS_MAX_NUM_SIMUL_CALLS 1742#define TCS_MAX_NUM_SIMUL_CALLS 3 1743#endif 1744 1745/* The number of devices the device can connect to. */ 1746#ifndef TCS_MAX_NUM_ACL_CONNS 1747#define TCS_MAX_NUM_ACL_CONNS 7 1748#endif 1749 1750/* The maximum length, in bytes, of the company specific information element. */ 1751#ifndef TCS_MAX_CO_SPEC_LEN 1752#define TCS_MAX_CO_SPEC_LEN 40 1753#endif 1754 1755/* The maximum length, in bytes, of the audio control information element . */ 1756#ifndef TCS_MAX_AUDIO_CTL_LEN 1757#define TCS_MAX_AUDIO_CTL_LEN 40 1758#endif 1759 1760/* (Dis)allow EDR ESCO */ 1761#ifndef TCS_AUDIO_USE_ESCO_EDR 1762#define TCS_AUDIO_USE_ESCO_EDR FALSE 1763#endif 1764 1765/****************************************************************************** 1766** 1767** OBX 1768** 1769******************************************************************************/ 1770#ifndef OBX_INCLUDED 1771#define OBX_INCLUDED FALSE 1772#endif 1773 1774#ifndef OBX_CLIENT_INCLUDED 1775#define OBX_CLIENT_INCLUDED TRUE 1776#endif 1777 1778#ifndef OBX_SERVER_INCLUDED 1779#define OBX_SERVER_INCLUDED TRUE 1780#endif 1781 1782/* TRUE to include OBEX authentication/MD5 code */ 1783#ifndef OBX_MD5_INCLUDED 1784#define OBX_MD5_INCLUDED TRUE 1785#endif 1786 1787/* TRUE to include OBEX authentication/MD5 test code */ 1788#ifndef OBX_MD5_TEST_INCLUDED 1789#define OBX_MD5_TEST_INCLUDED FALSE 1790#endif 1791 1792/* TRUE to include OBEX 1.4 enhancement (including Obex Over L2CAP) */ 1793#ifndef OBX_14_INCLUDED 1794#define OBX_14_INCLUDED FALSE 1795#endif 1796/* MD5 code is required to use OBEX 1.4 features (Reliable session) */ 1797#if (OBX_MD5_INCLUDED == FALSE) 1798#undef OBX_14_INCLUDED 1799#define OBX_14_INCLUDED FALSE 1800#endif 1801 1802/* L2CAP FCR/eRTM mode is required to use OBEX Over L2CAP */ 1803#if (L2CAP_FCR_INCLUDED == FALSE) 1804#undef OBX_14_INCLUDED 1805#define OBX_14_INCLUDED FALSE 1806#endif 1807 1808/* The timeout value (in seconds) for reliable sessions to remain in suspend. 0xFFFFFFFF for no timeout event. */ 1809#ifndef OBX_SESS_TIMEOUT_VALUE 1810#define OBX_SESS_TIMEOUT_VALUE 600 1811#endif 1812 1813/* The idle timeout value. 0 for no timeout event. */ 1814#ifndef OBX_TIMEOUT_VALUE 1815#define OBX_TIMEOUT_VALUE 60 1816#endif 1817 1818/* Timeout value used for disconnect */ 1819#ifndef OBX_DISC_TOUT_VALUE 1820#define OBX_DISC_TOUT_VALUE 5 1821#endif 1822 1823/* The maximum number of registered servers. */ 1824#ifndef OBX_NUM_SERVERS 1825#define OBX_NUM_SERVERS 12 1826#endif 1827 1828/* The maximum number of sessions per registered server. */ 1829#ifndef OBX_MAX_SR_SESSION 1830#define OBX_MAX_SR_SESSION 4 1831#endif 1832 1833/* The maximum number of sessions for all registered servers. 1834 * (must be equal or bigger than OBX_NUM_SERVERS) */ 1835#ifndef OBX_NUM_SR_SESSIONS 1836#define OBX_NUM_SR_SESSIONS 26 1837#endif 1838 1839/* The maximum number of sessions per registered server. 1840 * must be less than MAX_BD_CONNECTIONS */ 1841#ifndef OBX_MAX_SR_SESSION 1842#define OBX_MAX_SR_SESSION 4 1843#endif 1844 1845/* The maximum number of suspended sessions per registered servers. */ 1846#ifndef OBX_MAX_SUSPEND_SESSIONS 1847#define OBX_MAX_SUSPEND_SESSIONS 4 1848#endif 1849 1850/* The maximum number of active clients. */ 1851#ifndef OBX_NUM_CLIENTS 1852#define OBX_NUM_CLIENTS 8 1853#endif 1854 1855/* The maximum length of OBEX target header.*/ 1856#ifndef OBX_MAX_TARGET_LEN 1857#define OBX_MAX_TARGET_LEN 16 1858#endif 1859 1860/* The maximum length of authentication challenge realm.*/ 1861#ifndef OBX_MAX_REALM_LEN 1862#define OBX_MAX_REALM_LEN 30 1863#endif 1864 1865/* The maximum of GKI buffer queued at OBX before flow control L2CAP */ 1866#ifndef OBX_MAX_RX_QUEUE_COUNT 1867#define OBX_MAX_RX_QUEUE_COUNT 3 1868#endif 1869 1870/* This option is application when OBX_14_INCLUDED=TRUE 1871 Pool ID where to reassemble the SDU. 1872 This Pool will allow buffers to be used that are larger than 1873 the L2CAP_MAX_MTU. */ 1874#ifndef OBX_USER_RX_POOL_ID 1875#define OBX_USER_RX_POOL_ID OBX_LRG_DATA_POOL_ID 1876#endif 1877 1878/* This option is application when OBX_14_INCLUDED=TRUE 1879 Pool ID where to hold the SDU. 1880 This Pool will allow buffers to be used that are larger than 1881 the L2CAP_MAX_MTU. */ 1882#ifndef OBX_USER_TX_POOL_ID 1883#define OBX_USER_TX_POOL_ID OBX_LRG_DATA_POOL_ID 1884#endif 1885 1886/* This option is application when OBX_14_INCLUDED=TRUE 1887GKI Buffer Pool ID used to hold MPS segments during SDU reassembly 1888*/ 1889#ifndef OBX_FCR_RX_POOL_ID 1890#define OBX_FCR_RX_POOL_ID HCI_ACL_POOL_ID 1891#endif 1892 1893/* This option is application when OBX_14_INCLUDED=TRUE 1894GKI Buffer Pool ID used to hold MPS segments used in (re)transmissions. 1895L2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool. 1896Note: This pool needs to have enough buffers to hold two times the window size negotiated 1897 in the L2CA_SetFCROptions (2 * tx_win_size) to allow for retransmissions. 1898 The size of each buffer must be able to hold the maximum MPS segment size passed in 1899 L2CA_SetFCROptions plus BT_HDR (8) + HCI preamble (4) + L2CAP_MIN_OFFSET (11 - as of BT 2.1 + EDR Spec). 1900*/ 1901#ifndef OBX_FCR_TX_POOL_ID 1902#define OBX_FCR_TX_POOL_ID HCI_ACL_POOL_ID 1903#endif 1904 1905/* This option is application when OBX_14_INCLUDED=TRUE 1906Size of the transmission window when using enhanced retransmission mode. Not used 1907in basic and streaming modes. Range: 1 - 63 1908*/ 1909#ifndef OBX_FCR_OPT_TX_WINDOW_SIZE_BR_EDR 1910#define OBX_FCR_OPT_TX_WINDOW_SIZE_BR_EDR 20 1911#endif 1912 1913/* This option is application when OBX_14_INCLUDED=TRUE 1914Number of transmission attempts for a single I-Frame before taking 1915Down the connection. Used In ERTM mode only. Value is Ignored in basic and 1916Streaming modes. 1917Range: 0, 1-0xFF 19180 - infinite retransmissions 19191 - single transmission 1920*/ 1921#ifndef OBX_FCR_OPT_MAX_TX_B4_DISCNT 1922#define OBX_FCR_OPT_MAX_TX_B4_DISCNT 20 1923#endif 1924 1925/* This option is application when OBX_14_INCLUDED=TRUE 1926Retransmission Timeout 1927Range: Minimum 2000 (2 secs) on BR/EDR when supporting PBF. 1928 */ 1929#ifndef OBX_FCR_OPT_RETX_TOUT 1930#define OBX_FCR_OPT_RETX_TOUT 2000 1931#endif 1932 1933/* This option is application when OBX_14_INCLUDED=TRUE 1934Monitor Timeout 1935Range: Minimum 12000 (12 secs) on BR/EDR when supporting PBF. 1936*/ 1937#ifndef OBX_FCR_OPT_MONITOR_TOUT 1938#define OBX_FCR_OPT_MONITOR_TOUT 12000 1939#endif 1940 1941/****************************************************************************** 1942** 1943** BNEP 1944** 1945******************************************************************************/ 1946 1947#ifndef BNEP_INCLUDED 1948#define BNEP_INCLUDED TRUE 1949#endif 1950 1951/* Protocol filtering is an optional feature. Bydefault it will be turned on */ 1952#ifndef BNEP_SUPPORTS_PROT_FILTERS 1953#define BNEP_SUPPORTS_PROT_FILTERS TRUE 1954#endif 1955 1956/* Multicast filtering is an optional feature. Bydefault it will be turned on */ 1957#ifndef BNEP_SUPPORTS_MULTI_FILTERS 1958#define BNEP_SUPPORTS_MULTI_FILTERS TRUE 1959#endif 1960 1961/* BNEP status API call is used mainly to get the L2CAP handle */ 1962#ifndef BNEP_SUPPORTS_STATUS_API 1963#define BNEP_SUPPORTS_STATUS_API TRUE 1964#endif 1965 1966/* This is just a debug function */ 1967#ifndef BNEP_SUPPORTS_DEBUG_DUMP 1968#define BNEP_SUPPORTS_DEBUG_DUMP TRUE 1969#endif 1970 1971#ifndef BNEP_SUPPORTS_ALL_UUID_LENGTHS 1972#define BNEP_SUPPORTS_ALL_UUID_LENGTHS TRUE /* Otherwise it will support only 16bit UUIDs */ 1973#endif 1974 1975/* 1976** When BNEP connection changes roles after the connection is established 1977** we will do an authentication check again on the new role 1978*/ 1979#ifndef BNEP_DO_AUTH_FOR_ROLE_SWITCH 1980#define BNEP_DO_AUTH_FOR_ROLE_SWITCH TRUE 1981#endif 1982 1983 1984/* Maximum number of protocol filters supported. */ 1985#ifndef BNEP_MAX_PROT_FILTERS 1986#define BNEP_MAX_PROT_FILTERS 5 1987#endif 1988 1989/* Maximum number of multicast filters supported. */ 1990#ifndef BNEP_MAX_MULTI_FILTERS 1991#define BNEP_MAX_MULTI_FILTERS 5 1992#endif 1993 1994/* Minimum MTU size. */ 1995#ifndef BNEP_MIN_MTU_SIZE 1996#define BNEP_MIN_MTU_SIZE L2CAP_MTU_SIZE 1997#endif 1998 1999/* Preferred MTU size. */ 2000#ifndef BNEP_MTU_SIZE 2001#define BNEP_MTU_SIZE BNEP_MIN_MTU_SIZE 2002#endif 2003 2004/* Maximum size of user data, in bytes. */ 2005#ifndef BNEP_MAX_USER_DATA_SIZE 2006#define BNEP_MAX_USER_DATA_SIZE 1500 2007#endif 2008 2009/* Maximum number of buffers allowed in transmit data queue. */ 2010#ifndef BNEP_MAX_XMITQ_DEPTH 2011#define BNEP_MAX_XMITQ_DEPTH 20 2012#endif 2013 2014/* Maximum number BNEP of connections supported. */ 2015#ifndef BNEP_MAX_CONNECTIONS 2016#define BNEP_MAX_CONNECTIONS 7 2017#endif 2018 2019 2020/****************************************************************************** 2021** 2022** AVDTP 2023** 2024******************************************************************************/ 2025 2026#ifndef AVDT_INCLUDED 2027#define AVDT_INCLUDED TRUE 2028#endif 2029 2030/* Include reporting capability in AVDTP */ 2031#ifndef AVDT_REPORTING 2032#define AVDT_REPORTING TRUE 2033#endif 2034 2035/* Include multiplexing capability in AVDTP */ 2036#ifndef AVDT_MULTIPLEXING 2037#define AVDT_MULTIPLEXING TRUE 2038#endif 2039 2040/* Number of simultaneous links to different peer devices. */ 2041#ifndef AVDT_NUM_LINKS 2042#define AVDT_NUM_LINKS 2 2043#endif 2044 2045/* Number of simultaneous stream endpoints. */ 2046#ifndef AVDT_NUM_SEPS 2047#define AVDT_NUM_SEPS 3 2048#endif 2049 2050/* Number of transport channels setup per media stream(audio or video) */ 2051#ifndef AVDT_NUM_CHANNELS 2052 2053#if AVDT_REPORTING == TRUE 2054/* signaling, media and reporting channels */ 2055#define AVDT_NUM_CHANNELS 3 2056#else 2057/* signaling and media channels */ 2058#define AVDT_NUM_CHANNELS 2 2059#endif 2060 2061#endif 2062 2063/* Number of transport channels setup by AVDT for all media streams 2064 * AVDT_NUM_CHANNELS * Number of simultaneous streams. 2065 */ 2066#ifndef AVDT_NUM_TC_TBL 2067#define AVDT_NUM_TC_TBL 6 2068#endif 2069 2070 2071/* Maximum size in bytes of the codec capabilities information element. */ 2072#ifndef AVDT_CODEC_SIZE 2073#define AVDT_CODEC_SIZE 10 2074#endif 2075 2076/* Maximum size in bytes of the content protection information element. */ 2077#ifndef AVDT_PROTECT_SIZE 2078#define AVDT_PROTECT_SIZE 90 2079#endif 2080 2081/* Maximum number of GKI buffers in the fragment queue (for video frames). 2082 * Must be less than the number of buffers in the buffer pool of size AVDT_DATA_POOL_SIZE */ 2083#ifndef AVDT_MAX_FRAG_COUNT 2084#define AVDT_MAX_FRAG_COUNT 15 2085#endif 2086 2087/****************************************************************************** 2088** 2089** PAN 2090** 2091******************************************************************************/ 2092 2093#ifndef PAN_INCLUDED 2094#define PAN_INCLUDED TRUE 2095#endif 2096 2097/* This will enable the PANU role */ 2098#ifndef PAN_SUPPORTS_ROLE_PANU 2099#define PAN_SUPPORTS_ROLE_PANU TRUE 2100#endif 2101 2102/* This will enable the GN role */ 2103#ifndef PAN_SUPPORTS_ROLE_GN 2104#define PAN_SUPPORTS_ROLE_GN TRUE 2105#endif 2106 2107/* This will enable the NAP role */ 2108#ifndef PAN_SUPPORTS_ROLE_NAP 2109#define PAN_SUPPORTS_ROLE_NAP TRUE 2110#endif 2111 2112/* This is just for debugging purposes */ 2113#ifndef PAN_SUPPORTS_DEBUG_DUMP 2114#define PAN_SUPPORTS_DEBUG_DUMP TRUE 2115#endif 2116 2117 2118/* Maximum number of PAN connections allowed */ 2119#ifndef MAX_PAN_CONNS 2120#define MAX_PAN_CONNS 7 2121#endif 2122 2123/* Default service name for NAP role */ 2124#ifndef PAN_NAP_DEFAULT_SERVICE_NAME 2125#define PAN_NAP_DEFAULT_SERVICE_NAME "Network Access Point Service" 2126#endif 2127 2128/* Default service name for GN role */ 2129#ifndef PAN_GN_DEFAULT_SERVICE_NAME 2130#define PAN_GN_DEFAULT_SERVICE_NAME "Group Network Service" 2131#endif 2132 2133/* Default service name for PANU role */ 2134#ifndef PAN_PANU_DEFAULT_SERVICE_NAME 2135#define PAN_PANU_DEFAULT_SERVICE_NAME "PAN User Service" 2136#endif 2137 2138/* Default description for NAP role service */ 2139#ifndef PAN_NAP_DEFAULT_DESCRIPTION 2140#define PAN_NAP_DEFAULT_DESCRIPTION "NAP" 2141#endif 2142 2143/* Default description for GN role service */ 2144#ifndef PAN_GN_DEFAULT_DESCRIPTION 2145#define PAN_GN_DEFAULT_DESCRIPTION "GN" 2146#endif 2147 2148/* Default description for PANU role service */ 2149#ifndef PAN_PANU_DEFAULT_DESCRIPTION 2150#define PAN_PANU_DEFAULT_DESCRIPTION "PANU" 2151#endif 2152 2153/* Default Security level for PANU role. */ 2154#ifndef PAN_PANU_SECURITY_LEVEL 2155#define PAN_PANU_SECURITY_LEVEL 0 2156#endif 2157 2158/* Default Security level for GN role. */ 2159#ifndef PAN_GN_SECURITY_LEVEL 2160#define PAN_GN_SECURITY_LEVEL 0 2161#endif 2162 2163/* Default Security level for NAP role. */ 2164#ifndef PAN_NAP_SECURITY_LEVEL 2165#define PAN_NAP_SECURITY_LEVEL 0 2166#endif 2167 2168 2169 2170 2171/****************************************************************************** 2172** 2173** GAP 2174** 2175******************************************************************************/ 2176 2177#ifndef GAP_INCLUDED 2178#define GAP_INCLUDED TRUE 2179#endif 2180 2181/* This is set to enable use of GAP L2CAP connections. */ 2182#ifndef GAP_CONN_INCLUDED 2183#define GAP_CONN_INCLUDED TRUE 2184#endif 2185 2186/* This is set to enable posting event for data write */ 2187#ifndef GAP_CONN_POST_EVT_INCLUDED 2188#define GAP_CONN_POST_EVT_INCLUDED FALSE 2189#endif 2190 2191/* The maximum number of simultaneous GAP L2CAP connections. */ 2192#ifndef GAP_MAX_CONNECTIONS 2193#define GAP_MAX_CONNECTIONS 8 2194#endif 2195 2196/****************************************************************************** 2197** 2198** CTP 2199** 2200******************************************************************************/ 2201 2202#ifndef CTP_INCLUDED 2203#define CTP_INCLUDED FALSE 2204#endif 2205 2206/* To include CTP gateway functionality or not. */ 2207#ifndef CTP_GW_INCLUDED 2208#define CTP_GW_INCLUDED TRUE 2209#endif 2210 2211/* The number of terminals supported. */ 2212#ifndef CTP_MAX_NUM_TLS 2213#define CTP_MAX_NUM_TLS 7 2214#endif 2215 2216/* If the controller can not support sniff mode when the SCO is up, set this to FALSE. */ 2217#ifndef CTP_USE_SNIFF_ON_SCO 2218#define CTP_USE_SNIFF_ON_SCO FALSE 2219#endif 2220 2221/* When ACL link between TL and GW is idle for more than this amount of seconds, the ACL may be put to low power mode. */ 2222#ifndef CTP_TL_IDLE_TIMEOUT 2223#define CTP_TL_IDLE_TIMEOUT 90 2224#endif 2225 2226/* To include CTP terminal functionality or not. */ 2227#ifndef CTP_TL_INCLUDED 2228#define CTP_TL_INCLUDED TRUE 2229#endif 2230 2231/* To include CTP device discovery functionality or not. */ 2232#ifndef CTP_DISCOVERY_INCLUDED 2233#define CTP_DISCOVERY_INCLUDED TRUE 2234#endif 2235 2236/* set to TRUE for controllers that do not support multi-point */ 2237#ifndef CTP_TL_WAIT_DISC 2238#define CTP_TL_WAIT_DISC TRUE 2239#endif 2240 2241/* The CTP inquiry database size. */ 2242#ifndef CTP_INQ_DB_SIZE 2243#define CTP_INQ_DB_SIZE CTP_DISC_REC_SIZE 2244#endif 2245 2246/* The CTP discovery record size. */ 2247#ifndef CTP_DISC_REC_SIZE 2248#define CTP_DISC_REC_SIZE 60 2249#endif 2250 2251/* CTP TL would try to re-establish L2CAP channel after channel is disconnected for this amount of seconds. */ 2252#ifndef CTP_GUARD_LINK_LOST 2253#define CTP_GUARD_LINK_LOST 1 2254#endif 2255 2256/* The link policy bitmap. */ 2257#ifndef CTP_DEFAULT_LINK_POLICY 2258#define CTP_DEFAULT_LINK_POLICY 0x000F 2259#endif 2260 2261/* The minimum period interval used for the sniff and park modes. */ 2262#ifndef CTP_DEF_LOWPWR_MIN_PERIOD 2263#define CTP_DEF_LOWPWR_MIN_PERIOD 0x100 2264#endif 2265 2266/* The maximum period interval used for the sniff and park modes. */ 2267#ifndef CTP_DEF_LOWPWR_MAX_PERIOD 2268#define CTP_DEF_LOWPWR_MAX_PERIOD 0x1E0 2269#endif 2270 2271/* The number of baseband receive slot sniff attempts. */ 2272#ifndef CTP_DEF_LOWPWR_ATTEMPT 2273#define CTP_DEF_LOWPWR_ATTEMPT 0x200 2274#endif 2275 2276/* The number of baseband receive slots for sniff timeout. */ 2277#ifndef CTP_DEF_LOWPWR_TIMEOUT 2278#define CTP_DEF_LOWPWR_TIMEOUT 0x200 2279#endif 2280 2281/* This is set if CTP is to use park mode. */ 2282#ifndef CTP_PARK_INCLUDED 2283#define CTP_PARK_INCLUDED TRUE 2284#endif 2285 2286/* This is set if CTP is to use sniff mode. */ 2287#ifndef CTP_SNIFF_INCLUDED 2288#define CTP_SNIFF_INCLUDED TRUE 2289#endif 2290 2291/* To include CTP data exchange functionality or not. */ 2292#ifndef CTP_DATA_EXCHG_FEATURE 2293#define CTP_DATA_EXCHG_FEATURE FALSE 2294#endif 2295 2296/* To include CTP GW intercom functionality or not. */ 2297#ifndef CTP_GW_INTERCOM_FEATURE 2298#define CTP_GW_INTERCOM_FEATURE FALSE 2299#endif 2300 2301/* The MTU size for L2CAP channel. */ 2302#ifndef CTP_MTU_SIZE 2303#define CTP_MTU_SIZE 200 2304#endif 2305 2306/* The L2CAP PSM for the data exchange feature. */ 2307#ifndef CTP_DATA_EXCHG_PSM 2308#define CTP_DATA_EXCHG_PSM 13 2309#endif 2310 2311/* The flush timeout for L2CAP channels. */ 2312#ifndef CTP_FLUSH_TO 2313#define CTP_FLUSH_TO 0xFFFF 2314#endif 2315 2316/* The default service name for CTP. */ 2317#ifndef CTP_DEFAULT_SERVICE_NAME 2318#define CTP_DEFAULT_SERVICE_NAME "Cordless Telephony" 2319#endif 2320 2321/* The CTP security level. */ 2322#ifndef CTP_SECURITY_LEVEL 2323#define CTP_SECURITY_LEVEL (BTM_SEC_IN_AUTHORIZE | BTM_SEC_IN_AUTHENTICATE | BTM_SEC_IN_ENCRYPT) 2324#endif 2325 2326/* The number of lines to the external network. */ 2327#ifndef CTP_MAX_LINES 2328#define CTP_MAX_LINES 1 2329#endif 2330 2331/* Test if the number of resources in TCS is consistent with CTP setting. */ 2332#ifndef CTP_TEST_FULL_TCS 2333#define CTP_TEST_FULL_TCS TRUE 2334#endif 2335 2336/* The default inquiry mode. */ 2337#ifndef CTP_DEFAULT_INQUIRY_MODE 2338#define CTP_DEFAULT_INQUIRY_MODE BTM_GENERAL_INQUIRY 2339#endif 2340 2341/* The default inquiry duration. */ 2342#ifndef CTP_DEFAULT_INQ_DURATION 2343#define CTP_DEFAULT_INQ_DURATION 4 2344#endif 2345 2346/* The maximum number of inquiry responses. */ 2347#ifndef CTP_DEFAULT_INQ_MAX_RESP 2348#define CTP_DEFAULT_INQ_MAX_RESP 3 2349#endif 2350 2351/* When TL does not create another L2CAP channel within this period of time GW declares that it's "Connected Limited". */ 2352#ifndef CTP_TL_CONN_TIMEOUT 2353#define CTP_TL_CONN_TIMEOUT 5 2354#endif 2355 2356/* The delay for ACL to completely disconnect (for intercom) before sending the connect request to GW. */ 2357#ifndef CTP_RECONNECT_DELAY 2358#define CTP_RECONNECT_DELAY 5 2359#endif 2360 2361/* How many times to retry connection when it has failed. */ 2362#ifndef CTP_RETRY_ON_CONN_ERR 2363#define CTP_RETRY_ON_CONN_ERR 5 2364#endif 2365 2366/****************************************************************************** 2367** 2368** ICP 2369** 2370******************************************************************************/ 2371 2372#ifndef ICP_INCLUDED 2373#define ICP_INCLUDED FALSE 2374#endif 2375 2376/* The ICP default MTU. */ 2377#ifndef ICP_MTU_SIZE 2378#define ICP_MTU_SIZE 100 2379#endif 2380 2381/* The ICP security level. */ 2382#ifndef ICP_SECURITY_LEVEL 2383#define ICP_SECURITY_LEVEL BTM_SEC_NONE 2384#endif 2385 2386/* The default service name for ICP. */ 2387#ifndef ICP_DEFAULT_SERVICE_NAME 2388#define ICP_DEFAULT_SERVICE_NAME "Intercom" 2389#endif 2390 2391/* The flush timeout for L2CAP channels. */ 2392#ifndef ICP_FLUSH_TO 2393#define ICP_FLUSH_TO 0xFFFF 2394#endif 2395 2396/****************************************************************************** 2397** 2398** SPP 2399** 2400******************************************************************************/ 2401 2402#ifndef SPP_INCLUDED 2403#define SPP_INCLUDED FALSE 2404#endif 2405 2406/* The SPP default MTU. */ 2407#ifndef SPP_DEFAULT_MTU 2408#define SPP_DEFAULT_MTU 127 2409#endif 2410 2411/* The interval, in seconds, that a client tries to reconnect to a service. */ 2412#ifndef SPP_RETRY_CONN_INTERVAL 2413#define SPP_RETRY_CONN_INTERVAL 1 2414#endif 2415 2416/* The SPP discoverable mode: limited or general. */ 2417#ifndef SPP_DISCOVERABLE_MODE 2418#define SPP_DISCOVERABLE_MODE BTM_GENERAL_DISCOVERABLE 2419#endif 2420 2421/* The maximum number of inquiry results returned in by inquiry procedure. */ 2422#ifndef SPP_DEF_INQ_MAX_RESP 2423#define SPP_DEF_INQ_MAX_RESP 10 2424#endif 2425 2426/* The SPP discovery record size. */ 2427#ifndef SPP_DISC_REC_SIZE 2428#define SPP_DISC_REC_SIZE 60 2429#endif 2430 2431#ifndef SPP_MAX_RECS_PER_DEVICE 2432#define SPP_MAX_RECS_PER_DEVICE (SPP_DB_SIZE / SPP_DISC_REC_SIZE) 2433#endif 2434 2435/* Inquiry duration in 1.28 second units. */ 2436#ifndef SPP_DEF_INQ_DURATION 2437#define SPP_DEF_INQ_DURATION 9 2438#endif 2439 2440/* keep the raw data received from SDP server in database. */ 2441#ifndef SDP_RAW_DATA_INCLUDED 2442#define SDP_RAW_DATA_INCLUDED TRUE 2443#endif 2444 2445/* TRUE, to allow JV to create L2CAP connection on SDP PSM. */ 2446#ifndef SDP_FOR_JV_INCLUDED 2447#define SDP_FOR_JV_INCLUDED FALSE 2448#endif 2449 2450/* Inquiry duration in 1.28 second units. */ 2451#ifndef SDP_DEBUG 2452#define SDP_DEBUG TRUE 2453#endif 2454 2455/****************************************************************************** 2456** 2457** HSP2, HFP 2458** 2459******************************************************************************/ 2460 2461#ifndef HSP2_INCLUDED 2462#define HSP2_INCLUDED FALSE 2463#endif 2464 2465/* Include the ability to perform inquiry for peer devices. */ 2466#ifndef HSP2_INQUIRY_INCLUDED 2467#define HSP2_INQUIRY_INCLUDED TRUE 2468#endif 2469 2470/* Include Audio Gateway specific code. */ 2471#ifndef HSP2_AG_INCLUDED 2472#define HSP2_AG_INCLUDED TRUE 2473#endif 2474 2475/* Include Headset Specific Code. */ 2476#ifndef HSP2_HS_INCLUDED 2477#define HSP2_HS_INCLUDED TRUE 2478#endif 2479 2480/* Include the ability to open an SCO connection for In-Band Ringing. */ 2481#ifndef HSP2_IB_RING_INCLUDED 2482#define HSP2_IB_RING_INCLUDED TRUE 2483#endif 2484 2485/* Include the ability to repeat a ring. */ 2486#ifndef HSP2_AG_REPEAT_RING 2487#define HSP2_AG_REPEAT_RING TRUE 2488#endif 2489 2490#ifndef HSP2_APP_CLOSES_ON_CKPD 2491#define HSP2_APP_CLOSES_ON_CKPD FALSE 2492#endif 2493 2494 2495/* Include the ability to park a connection. */ 2496#ifndef HSP2_PARK_INCLUDED 2497#define HSP2_PARK_INCLUDED TRUE 2498#endif 2499 2500/* Include HSP State Machine debug trace messages. */ 2501#ifndef HSP2_FSM_DEBUG 2502#define HSP2_FSM_DEBUG TRUE 2503#endif 2504 2505/* The Module's Inquiry Scan Window. */ 2506#ifndef HSP2_INQ_SCAN_WINDOW 2507#define HSP2_INQ_SCAN_WINDOW 0 2508#endif 2509 2510/* The Module's Inquiry Scan Interval. */ 2511#ifndef HSP2_INQ_SCAN_INTERVAL 2512#define HSP2_INQ_SCAN_INTERVAL 0 2513#endif 2514 2515/* The Module's Page Scan Interval. */ 2516#ifndef HSP2_PAGE_SCAN_INTERVAL 2517#define HSP2_PAGE_SCAN_INTERVAL 0 2518#endif 2519 2520/* The Module's Page Scan Window. */ 2521#ifndef HSP2_PAGE_SCAN_WINDOW 2522#define HSP2_PAGE_SCAN_WINDOW 0 2523#endif 2524 2525/* The Park Mode's Minimum Beacon Period. */ 2526#ifndef HSP2_BEACON_MIN_PERIOD 2527#define HSP2_BEACON_MIN_PERIOD 450 2528#endif 2529 2530/* The Park Mode's Maximum Beacon Period. */ 2531#ifndef HSP2_BEACON_MAX_PERIOD 2532#define HSP2_BEACON_MAX_PERIOD 500 2533#endif 2534 2535/* The duration of the inquiry in seconds. */ 2536#ifndef HSP2_INQ_DURATION 2537#define HSP2_INQ_DURATION 4 2538#endif 2539 2540/* Maximum number of peer responses during an inquiry. */ 2541#ifndef HSP2_INQ_MAX_NUM_RESPS 2542#define HSP2_INQ_MAX_NUM_RESPS 3 2543#endif 2544 2545/* Maximum number of times to retry an inquiry prior to failure. */ 2546#ifndef HSP2_MAX_INQ_RETRY 2547#define HSP2_MAX_INQ_RETRY 6 2548#endif 2549 2550/* Maximum number of times to retry an RFCOMM connection prior to failure. */ 2551#ifndef HSP2_MAX_CONN_RETRY 2552#define HSP2_MAX_CONN_RETRY 3 2553#endif 2554 2555/* If the connect request failed for authentication reasons, do not retry */ 2556#ifndef HSP2_NO_RETRY_ON_AUTH_FAIL 2557#define HSP2_NO_RETRY_ON_AUTH_FAIL TRUE 2558#endif 2559 2560/* Maximum number of characters in an HSP2 device name. */ 2561#ifndef HSP2_MAX_NAME_LEN 2562#define HSP2_MAX_NAME_LEN 32 2563#endif 2564 2565/* The minimum speaker and/or microphone gain setting. */ 2566#ifndef HSP2_MIN_GAIN 2567#define HSP2_MIN_GAIN 0 2568#endif 2569 2570/* The maximum speaker and/or microphone setting. */ 2571#ifndef HSP2_MAX_GAIN 2572#define HSP2_MAX_GAIN 15 2573#endif 2574 2575/* The default value to send on an AT+CKPD. */ 2576#ifndef HSP2_KEYPRESS_DEFAULT 2577#define HSP2_KEYPRESS_DEFAULT 200 2578#endif 2579 2580/* Maximum amount a data that can be received per RFCOMM frame. */ 2581#ifndef HSP2_MAX_RFC_READ_LEN 2582#define HSP2_MAX_RFC_READ_LEN 128 2583#endif 2584 2585/* The time in seconds to wait for completion of a partial AT command or response from the peer. */ 2586#ifndef HSP2_AT_TO_INTERVAL 2587#define HSP2_AT_TO_INTERVAL 30 2588#endif 2589 2590/* The time to wait before repeating a ring to a peer Headset. */ 2591#ifndef HSP2_REPEAT_RING_TO 2592#define HSP2_REPEAT_RING_TO 4 2593#endif 2594 2595/* Time to wait for a response for an AT command */ 2596#ifndef HSP2_AT_RSP_TO 2597#define HSP2_AT_RSP_TO 20 2598#endif 2599 2600/* SCO packet type(s) to use (bitmask: see spec), 0 - device default (recommended) */ 2601#ifndef HSP2_SCO_PKT_TYPES 2602#define HSP2_SCO_PKT_TYPES ((UINT16)0x0000) 2603#endif 2604 2605/* The default settings of the SCO voice link. */ 2606#ifndef HSP2_DEFAULT_VOICE_SETTINGS 2607#define HSP2_DEFAULT_VOICE_SETTINGS (HCI_INP_CODING_LINEAR | HCI_INP_DATA_FMT_2S_COMPLEMENT | HCI_INP_SAMPLE_SIZE_16BIT | HCI_AIR_CODING_FORMAT_CVSD) 2608#endif 2609 2610#ifndef HSP2_MAX_AT_CMD_LENGTH 2611#define HSP2_MAX_AT_CMD_LENGTH 16 2612#endif 2613 2614#ifndef HSP2_MAX_AT_VAL_LENGTH 2615#if (defined(HFP_INCLUDED) && HFP_INCLUDED == TRUE) 2616#define HSP2_MAX_AT_VAL_LENGTH 310 2617#else 2618#define HSP2_MAX_AT_VAL_LENGTH 5 2619#endif 2620#endif 2621 2622 2623#ifndef HSP2_SDP_DB_SIZE 2624#define HSP2_SDP_DB_SIZE 300 2625#endif 2626 2627 2628/****************************************************************************** 2629** 2630** HFP 2631** 2632******************************************************************************/ 2633 2634#ifndef HFP_INCLUDED 2635#define HFP_INCLUDED FALSE 2636#endif 2637 2638/* Include Audio Gateway specific code. */ 2639#ifndef HFP_AG_INCLUDED 2640#define HFP_AG_INCLUDED TRUE 2641#endif 2642 2643/* Include Hand Free Specific Code. */ 2644#ifndef HFP_HF_INCLUDED 2645#define HFP_HF_INCLUDED TRUE 2646#endif 2647 2648/* Use AT interface instead of full blown API */ 2649#ifndef AT_INTERFACE 2650#define AT_INTERFACE FALSE 2651#endif 2652 2653/* HFP Manages SCO establishement for various procedures */ 2654#ifndef HFP_SCO_MGMT_INCLUDED 2655#define HFP_SCO_MGMT_INCLUDED TRUE 2656#endif 2657 2658/* CCAP compliant features and behavior desired */ 2659#ifndef CCAP_COMPLIANCE 2660#define CCAP_COMPLIANCE TRUE 2661#endif 2662 2663/* Caller ID string, part of +CLIP result code */ 2664#ifndef HFP_MAX_CLIP_INFO 2665#define HFP_MAX_CLIP_INFO 45 2666#endif 2667 2668#ifndef HFP_RPT_PEER_INFO_INCLUDED 2669#define HFP_RPT_PEER_INFO_INCLUDED TRUE /* Reporting of peer features enabled */ 2670#endif 2671 2672/****************************************************************************** 2673** 2674** HID 2675** 2676******************************************************************************/ 2677 2678/* HID Device Role Included */ 2679#ifndef HID_DEV_INCLUDED 2680#define HID_DEV_INCLUDED FALSE 2681#endif 2682 2683#ifndef HID_DEV_PM_INCLUDED 2684#define HID_DEV_PM_INCLUDED TRUE 2685#endif 2686 2687/* The HID Device is a virtual cable */ 2688#ifndef HID_DEV_VIRTUAL_CABLE 2689#define HID_DEV_VIRTUAL_CABLE TRUE 2690#endif 2691 2692/* The HID device initiates the reconnections */ 2693#ifndef HID_DEV_RECONN_INITIATE 2694#define HID_DEV_RECONN_INITIATE TRUE 2695#endif 2696 2697/* THe HID device is normally connectable */ 2698#ifndef HID_DEV_NORMALLY_CONN 2699#define HID_DEV_NORMALLY_CONN FALSE 2700#endif 2701 2702/* The device is battery powered */ 2703#ifndef HID_DEV_BATTERY_POW 2704#define HID_DEV_BATTERY_POW TRUE 2705#endif 2706 2707/* Device is capable of waking up the host */ 2708#ifndef HID_DEV_REMOTE_WAKE 2709#define HID_DEV_REMOTE_WAKE TRUE 2710#endif 2711 2712/* Device needs host to close SDP channel after SDP is over */ 2713#ifndef HID_DEV_SDP_DISABLE 2714#define HID_DEV_SDP_DISABLE TRUE 2715#endif 2716 2717#ifndef HID_DEV_MTU_SIZE 2718#define HID_DEV_MTU_SIZE 64 2719#endif 2720 2721#ifndef HID_DEV_FLUSH_TO 2722#define HID_DEV_FLUSH_TO 0xffff 2723#endif 2724 2725#ifndef HID_DEV_PAGE_SCAN_WIN 2726#define HID_DEV_PAGE_SCAN_WIN (0) 2727#endif 2728 2729#ifndef HID_DEV_PAGE_SCAN_INT 2730#define HID_DEV_PAGE_SCAN_INT (0) 2731#endif 2732 2733#ifndef HID_DEV_MAX_CONN_RETRY 2734#define HID_DEV_MAX_CONN_RETRY (15) 2735#endif 2736 2737#ifndef HID_DEV_REPAGE_WIN 2738#define HID_DEV_REPAGE_WIN (1) 2739#endif 2740 2741#ifndef HID_DEV_SVC_NAME 2742#define HID_DEV_SVC_NAME "HID" 2743#endif 2744 2745#ifndef HID_DEV_SVC_DESCR 2746#define HID_DEV_SVC_DESCR "3-button mouse and keyboard" 2747#endif 2748 2749#ifndef HID_DEV_PROVIDER_NAME 2750#define HID_DEV_PROVIDER_NAME "Widcomm" 2751#endif 2752 2753#ifndef HID_DEV_REL_NUM 2754#define HID_DEV_REL_NUM 0x0100 2755#endif 2756 2757#ifndef HID_DEV_PARSER_VER 2758#define HID_DEV_PARSER_VER 0x0111 2759#endif 2760 2761#ifndef HID_DEV_SUBCLASS 2762#define HID_DEV_SUBCLASS COD_MINOR_POINTING 2763#endif 2764 2765#ifndef HID_DEV_COUNTRY_CODE 2766#define HID_DEV_COUNTRY_CODE 0x33 2767#endif 2768 2769#ifndef HID_DEV_SUP_TOUT 2770#define HID_DEV_SUP_TOUT 0x8000 2771#endif 2772 2773#ifndef HID_DEV_NUM_LANGS 2774#define HID_DEV_NUM_LANGS 1 2775#endif 2776 2777#ifndef HID_DEV_INACT_TIMEOUT 2778#define HID_DEV_INACT_TIMEOUT 60 2779#endif 2780 2781#ifndef HID_DEV_BUSY_MODE_PARAMS 2782#define HID_DEV_BUSY_MODE_PARAMS { 320, 160, 10, 20, HCI_MODE_ACTIVE } 2783#endif 2784 2785#ifndef HID_DEV_IDLE_MODE_PARAMS 2786#define HID_DEV_IDLE_MODE_PARAMS { 320, 160, 10, 20, HCI_MODE_SNIFF } 2787#endif 2788 2789#ifndef HID_DEV_SUSP_MODE_PARAMS 2790#define HID_DEV_SUSP_MODE_PARAMS { 640, 320, 0, 0, HCI_MODE_PARK } 2791#endif 2792 2793#ifndef HID_DEV_MAX_DESCRIPTOR_SIZE 2794#define HID_DEV_MAX_DESCRIPTOR_SIZE 128 /* Max descriptor size */ 2795#endif 2796 2797#ifndef HID_DEV_LANGUAGELIST 2798#define HID_DEV_LANGUAGELIST {0x35, 0x06, 0x09, 0x04, 0x09, 0x09, 0x01, 0x00} 2799#endif 2800 2801#ifndef HID_DEV_LINK_SUPERVISION_TO 2802#define HID_DEV_LINK_SUPERVISION_TO 0x8000 2803#endif 2804 2805#ifndef HID_CONTROL_POOL_ID 2806#define HID_CONTROL_POOL_ID 2 2807#endif 2808 2809#ifndef HID_INTERRUPT_POOL_ID 2810#define HID_INTERRUPT_POOL_ID 2 2811#endif 2812 2813/************************************************************************* 2814** Definitions for Both HID-Host & Device 2815*/ 2816#ifndef HID_MAX_SVC_NAME_LEN 2817#define HID_MAX_SVC_NAME_LEN 32 2818#endif 2819 2820#ifndef HID_MAX_SVC_DESCR_LEN 2821#define HID_MAX_SVC_DESCR_LEN 32 2822#endif 2823 2824#ifndef HID_MAX_PROV_NAME_LEN 2825#define HID_MAX_PROV_NAME_LEN 32 2826#endif 2827 2828/************************************************************************* 2829** Definitions for HID-Host 2830*/ 2831#ifndef HID_HOST_INCLUDED 2832#define HID_HOST_INCLUDED TRUE 2833#endif 2834 2835#ifndef HID_HOST_MAX_DEVICES 2836#define HID_HOST_MAX_DEVICES 7 2837#endif 2838 2839#ifndef HID_HOST_MTU 2840#define HID_HOST_MTU 640 2841#endif 2842 2843#ifndef HID_HOST_FLUSH_TO 2844#define HID_HOST_FLUSH_TO 0xffff 2845#endif 2846 2847#ifndef HID_HOST_MAX_CONN_RETRY 2848#define HID_HOST_MAX_CONN_RETRY (3) 2849#endif 2850 2851#ifndef HID_HOST_REPAGE_WIN 2852#define HID_HOST_REPAGE_WIN (2) 2853#endif 2854 2855 2856/****************************************************************************** 2857** 2858** DUN and FAX 2859** 2860******************************************************************************/ 2861 2862#ifndef DUN_INCLUDED 2863#define DUN_INCLUDED FALSE 2864#endif 2865 2866 2867/****************************************************************************** 2868** 2869** GOEP 2870** 2871******************************************************************************/ 2872 2873#ifndef GOEP_INCLUDED 2874#define GOEP_INCLUDED FALSE 2875#endif 2876 2877/* This is set to enable GOEP non-blocking file system access functions. */ 2878#ifndef GOEP_FS_INCLUDED 2879#define GOEP_FS_INCLUDED FALSE 2880#endif 2881 2882/* GOEP authentication key size. */ 2883#ifndef GOEP_MAX_AUTH_KEY_SIZE 2884#define GOEP_MAX_AUTH_KEY_SIZE 16 2885#endif 2886 2887/* Maximum size of the realm authentication string. */ 2888#ifndef GOEP_MAX_AUTH_REALM_SIZE 2889#define GOEP_MAX_AUTH_REALM_SIZE 16 2890#endif 2891 2892/* Realm Character Set */ 2893#ifndef GOEP_REALM_CHARSET 2894#define GOEP_REALM_CHARSET 0 /* ASCII */ 2895#endif 2896 2897/* This is set to the maximum length of path name allowed in the system (_MAX_PATH). */ 2898#ifndef GOEP_MAX_PATH_SIZE 2899#define GOEP_MAX_PATH_SIZE 255 2900#endif 2901 2902/* Specifies whether or not client's user id is required during obex authentication */ 2903#ifndef GOEP_SERVER_USERID_REQUIRED 2904#define GOEP_SERVER_USERID_REQUIRED FALSE 2905#endif 2906 2907/* This is set to the maximum length of file name allowed in the system (_MAX_FNAME). */ 2908#ifndef GOEP_MAX_FILE_SIZE 2909#define GOEP_MAX_FILE_SIZE 128 2910#endif 2911 2912/* Character used as path separator */ 2913#ifndef GOEP_PATH_SEPARATOR 2914#define GOEP_PATH_SEPARATOR ((char) 0x5c) /* 0x2f ('/'), or 0x5c ('\') */ 2915#endif 2916 2917/****************************************************************************** 2918** 2919** OPP 2920** 2921******************************************************************************/ 2922 2923#ifndef OPP_INCLUDED 2924#define OPP_INCLUDED FALSE 2925#endif 2926 2927/* This is set to enable OPP client capabilities. */ 2928#ifndef OPP_CLIENT_INCLUDED 2929#define OPP_CLIENT_INCLUDED FALSE 2930#endif 2931 2932/* This is set to enable OPP server capabilities. */ 2933#ifndef OPP_SERVER_INCLUDED 2934#define OPP_SERVER_INCLUDED FALSE 2935#endif 2936 2937/* if the optional formating functions are to be included or not */ 2938#ifndef OPP_FORMAT_INCLUDED 2939#define OPP_FORMAT_INCLUDED FALSE 2940#endif 2941 2942/* Maximum number of client sessions allowed by server */ 2943#ifndef OPP_MAX_SRVR_SESS 2944#define OPP_MAX_SRVR_SESS 3 2945#endif 2946 2947/****************************************************************************** 2948** 2949** FTP 2950** 2951******************************************************************************/ 2952 2953#ifndef FTP_INCLUDED 2954#define FTP_INCLUDED FALSE 2955#endif 2956 2957/* This is set to enable FTP client capabilities. */ 2958#ifndef FTP_CLIENT_INCLUDED 2959#define FTP_CLIENT_INCLUDED TRUE 2960#endif 2961 2962/* This is set to enable FTP server capabilities. */ 2963#ifndef FTP_SERVER_INCLUDED 2964#define FTP_SERVER_INCLUDED TRUE 2965#endif 2966 2967/****************************************************************************** 2968** 2969** XML Parser 2970** 2971******************************************************************************/ 2972 2973#ifndef XML_STACK_SIZE 2974#define XML_STACK_SIZE 7 2975#endif 2976 2977/****************************************************************************** 2978** 2979** BPP Printer 2980** 2981******************************************************************************/ 2982#ifndef BPP_DEBUG 2983#define BPP_DEBUG FALSE 2984#endif 2985 2986#ifndef BPP_INCLUDED 2987#define BPP_INCLUDED FALSE 2988#endif 2989 2990#ifndef BPP_SND_INCLUDED 2991#define BPP_SND_INCLUDED FALSE 2992#endif 2993 2994/* Maximum number of senders allowed to connect simultaneously 2995** The maximum is 6 or (OBX_NUM_SERVERS / 2), whichever is smaller 2996*/ 2997#ifndef BPP_PR_MAX_CON 2998#define BPP_PR_MAX_CON 3 2999#endif 3000 3001/* Service Name. maximum length: 248 3002#ifndef BPP_SERVICE_NAME 3003#define BPP_SERVICE_NAME "Basic Printing" 3004#endif 3005 */ 3006/* Document Format Supported. ASCII comma-delimited list of MIME type:version string 3007#ifndef BPP_DOC_FORMAT_SUPPORTED 3008#define BPP_DOC_FORMAT_SUPPORTED "application/vnd.pwg-xhtml-print:1.0,application/vnd.hp-PCL:5E,application/PDF" 3009#endif 3010 3011#ifndef BPP_DOC_FORMAT_SUPPORTED_LEN 3012#define BPP_DOC_FORMAT_SUPPORTED_LEN 77 3013#endif 3014 */ 3015/* Character repertoires. 3016#ifndef BPP_CHARACTER_REPERTOIRES 3017#define BPP_CHARACTER_REPERTOIRES {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01} 3018#endif 3019 */ 3020/* XHTML formats. 3021#ifndef BPP_XHTML_PRINT_FORMATS 3022#define BPP_XHTML_PRINT_FORMATS "image/gif:89A,image/jpeg" 3023#endif 3024 3025#ifndef BPP_XHTML_PRINT_FORMATS_LEN 3026#define BPP_XHTML_PRINT_FORMATS_LEN 24 3027#endif 3028 */ 3029/* Color supported. 3030#ifndef BPP_COLOR_SUPORTED 3031#define BPP_COLOR_SUPORTED FALSE 3032#endif 3033 */ 3034/* 1284 ID string. First 2 bytes are the length. 3035#ifndef BPP_1284ID 3036#define BPP_1284ID "\x00\x48MANUFACTURER:ACME Manufacturing;COMMAND SET:PCL,MPL;MODEL:LaserBeam \?;" 3037#endif 3038 3039#ifndef BPP_1284ID_LEN 3040#define BPP_1284ID_LEN 72 3041#endif 3042 */ 3043/* Printer name. 3044#ifndef BPP_PRINTER_NAME 3045#define BPP_PRINTER_NAME "My Printer" 3046#endif 3047 3048#ifndef BPP_PRINTER_NAME_LEN 3049#define BPP_PRINTER_NAME_LEN 10 3050#endif 3051 */ 3052 3053/* Printer location. 3054#ifndef BPP_PRINTER_LOCATION 3055#define BPP_PRINTER_LOCATION "Hotel Lobby" 3056#endif 3057 3058#ifndef BPP_PRINTER_LOCATION_LEN 3059#define BPP_PRINTER_LOCATION_LEN 11 3060#endif 3061 */ 3062/* Duplex printing supported. 3063#ifndef BPP_DUPLEX_SUPPORTED 3064#define BPP_DUPLEX_SUPPORTED TRUE 3065#endif 3066 */ 3067 3068/* Media types supported. 3069#ifndef BPP_MEDIA_TYPES_SUPPORTED 3070#define BPP_MEDIA_TYPES_SUPPORTED "stationary,continuous-long,photographic-high-gloss,cardstock" 3071#endif 3072 3073#ifndef BPP_MEDIA_TYPES_SUPPORTED_LEN 3074#define BPP_MEDIA_TYPES_SUPPORTED_LEN 60 3075#endif 3076 */ 3077/* Maximum media with supported. 3078#ifndef BPP_MAX_MEDIA_WIDTH 3079#define BPP_MAX_MEDIA_WIDTH 205 3080#endif 3081 */ 3082/* Maximum media length supported. 3083#ifndef BPP_MAX_MEDIA_LENGTH 3084#define BPP_MAX_MEDIA_LENGTH 285 3085#endif 3086 */ 3087/* the maximum string len for the media size of medium loaded */ 3088#ifndef BPP_MEDIA_SIZE_LEN 3089#define BPP_MEDIA_SIZE_LEN 33 3090#endif 3091 3092/* Debug Trace the SOAP object, if TRUE */ 3093#ifndef BPP_TRACE_XML 3094#define BPP_TRACE_XML TRUE 3095#endif 3096 3097/* in case that the SOAP object does not all come in one OBEX packet, 3098 * this size of data may be kept in the BPP control block for continuing parsing. 3099 * The maximum is the size of the biggest GKI buffer (GKI_MAX_BUF_SIZE) */ 3100#ifndef BPP_SOAP_KEEP_SIZE 3101#define BPP_SOAP_KEEP_SIZE 200 3102#endif 3103 3104 3105/****************************************************************************** 3106** 3107** BIP 3108** 3109******************************************************************************/ 3110#ifndef BIP_INCLUDED 3111#define BIP_INCLUDED FALSE 3112#endif 3113 3114/* TRUE to include imaging initiator */ 3115#ifndef BIP_INITR_INCLUDED 3116#define BIP_INITR_INCLUDED FALSE 3117#endif 3118 3119/* TRUE to include imaging responder */ 3120#ifndef BIP_RSPDR_INCLUDED 3121#define BIP_RSPDR_INCLUDED FALSE 3122#endif 3123 3124/* TRUE to include image push feature */ 3125#ifndef BIP_PUSH_INCLUDED 3126#define BIP_PUSH_INCLUDED TRUE 3127#endif 3128 3129/* TRUE to include image pull feature */ 3130#ifndef BIP_PULL_INCLUDED 3131#define BIP_PULL_INCLUDED TRUE 3132#endif 3133 3134/* TRUE to include advanced image printing feature */ 3135#ifndef BIP_PRINTING_INCLUDED 3136#define BIP_PRINTING_INCLUDED TRUE 3137#endif 3138 3139/* TRUE to include automatic archive feature */ 3140#ifndef BIP_ARCHIVE_INCLUDED 3141#define BIP_ARCHIVE_INCLUDED TRUE 3142#endif 3143 3144/* TRUE to include remote camera feature */ 3145#ifndef BIP_CAMERA_INCLUDED 3146#define BIP_CAMERA_INCLUDED TRUE 3147#endif 3148 3149/* TRUE to include remote display feature */ 3150#ifndef BIP_DISPLAY_INCLUDED 3151#define BIP_DISPLAY_INCLUDED TRUE 3152#endif 3153 3154/* TRUE to include sanity check code for API functions */ 3155#ifndef BIP_SANITY_CHECKS 3156#define BIP_SANITY_CHECKS TRUE 3157#endif 3158 3159/* TRUE to show the received XML object in trace for conformance tests */ 3160#ifndef BIP_TRACE_XML 3161#define BIP_TRACE_XML TRUE 3162#endif 3163 3164/* in case that the received XML object is not complete, the XML parser state machine needs 3165 * to keep a copy of the data from the last '<' 3166 * This macro specifies the maximun amount of data for this purpose */ 3167#ifndef BIP_XML_CARRY_OVER_LEN 3168#define BIP_XML_CARRY_OVER_LEN 100 3169#endif 3170 3171/* minimum 4, maximum is 255. The value should be set to the maximum size of encoding string + 1. JPEG2000. 3172 * If vendor specific format is supported, it might be bigger than 9 */ 3173#ifndef BIP_IMG_ENCODE_SIZE 3174#define BIP_IMG_ENCODE_SIZE 9 3175#endif 3176 3177/* MIME type: text/plain */ 3178#ifndef BIP_TYPE_SIZE 3179#define BIP_TYPE_SIZE 20 3180#endif 3181 3182/* example: iso-8895-1 */ 3183#ifndef BIP_CHARSET_SIZE 3184#define BIP_CHARSET_SIZE 10 3185#endif 3186 3187/* friendly name */ 3188#ifndef BIP_FNAME_SIZE 3189#define BIP_FNAME_SIZE 20 3190#endif 3191 3192/* service name */ 3193#ifndef BIP_SNAME_SIZE 3194#define BIP_SNAME_SIZE 60 3195#endif 3196 3197/* temporary storage file name(for file system access, may include path) */ 3198#ifndef BIP_TEMP_NAME_SIZE 3199#define BIP_TEMP_NAME_SIZE 200 3200#endif 3201 3202/* image file name */ 3203#ifndef BIP_IMG_NAME_SIZE 3204#define BIP_IMG_NAME_SIZE 200 3205#endif 3206 3207/* attachment file name */ 3208#ifndef BIP_ATT_NAME_SIZE 3209#define BIP_ATT_NAME_SIZE 200 3210#endif 3211 3212/* object (image, attachment, thumbnail) file name (may be used for file system) */ 3213#ifndef BIP_OBJ_NAME_SIZE 3214#define BIP_OBJ_NAME_SIZE 200 3215#endif 3216 3217 3218 3219/****************************************************************************** 3220** 3221** HCRP 3222** 3223******************************************************************************/ 3224 3225#ifndef HCRP_INCLUDED 3226#define HCRP_INCLUDED FALSE 3227#endif 3228 3229/* This is set to enable server. */ 3230#ifndef HCRP_SERVER_INCLUDED 3231#define HCRP_SERVER_INCLUDED FALSE 3232#endif 3233 3234/* This is set to enable client. */ 3235#ifndef HCRP_CLIENT_INCLUDED 3236#define HCRP_CLIENT_INCLUDED FALSE 3237#endif 3238 3239/* TRUE enables the notification option of the profile. */ 3240#ifndef HCRP_NOTIFICATION_INCLUDED 3241#define HCRP_NOTIFICATION_INCLUDED TRUE 3242#endif 3243 3244/* TRUE enables the vendor specific option of the profile. */ 3245#ifndef HCRP_VENDOR_SPEC_INCLUDED 3246#define HCRP_VENDOR_SPEC_INCLUDED TRUE 3247#endif 3248 3249/* TRUE enables state machine traces. */ 3250#ifndef HCRP_FSM_DEBUG 3251#define HCRP_FSM_DEBUG FALSE 3252#endif 3253 3254/* TRUE enables protocol message traces. */ 3255#ifndef HCRP_PROTO_DEBUG 3256#define HCRP_PROTO_DEBUG FALSE 3257#endif 3258 3259/* Maximum length used to store the service name (Minimum 1). */ 3260#ifndef HCRP_MAX_SERVICE_NAME_LEN 3261#define HCRP_MAX_SERVICE_NAME_LEN 32 3262#endif 3263 3264/* Maximum length used to store the device name (Minimum 1). */ 3265#ifndef HCRP_MAX_DEVICE_NAME_LEN 3266#define HCRP_MAX_DEVICE_NAME_LEN 32 3267#endif 3268 3269/* Maximum length of device location (Minimum 1) */ 3270#ifndef HCRP_MAX_DEVICE_LOC_LEN 3271#define HCRP_MAX_DEVICE_LOC_LEN 32 3272#endif 3273 3274/* Maximum length used to store the friendly name (Minimum 1). */ 3275#ifndef HCRP_MAX_FRIENDLY_NAME_LEN 3276#define HCRP_MAX_FRIENDLY_NAME_LEN 32 3277#endif 3278 3279/* Maximum length used to store the 1284 id string (Minimum 2 byte length field). */ 3280#ifndef HCRP_MAX_SDP_1284_ID_LEN 3281#define HCRP_MAX_SDP_1284_ID_LEN 128 3282#endif 3283 3284/* Maximum length for parameters to be processed for vendor specific commands. */ 3285#ifndef HCRP_MAX_VEND_SPEC_LEN 3286#define HCRP_MAX_VEND_SPEC_LEN 4 3287#endif 3288 3289/* Number of seconds to wait for 2nd GAP to open. */ 3290#ifndef HCRP_OPEN_CHAN_TOUT 3291#define HCRP_OPEN_CHAN_TOUT 5 3292#endif 3293 3294/* Number of seconds to wait for 2nd GAP to close. */ 3295#ifndef HCRP_CLOSE_CHAN_TOUT 3296#define HCRP_CLOSE_CHAN_TOUT 3 3297#endif 3298 3299/* Number of seconds to wait for the application to respond to a protocol request. */ 3300#ifndef HCRP_APPL_RSP_TOUT 3301#define HCRP_APPL_RSP_TOUT 5 3302#endif 3303 3304/* Number of seconds to wait for the peer device to respond to a protocol request. */ 3305#ifndef HCRP_CMD_RSP_TOUT 3306#define HCRP_CMD_RSP_TOUT 7 3307#endif 3308 3309/* Number of seconds between subsequent credit requests to the server when the send watermark has been exceeded. */ 3310#ifndef HCRP_CREDIT_REQ_UPDATES 3311#define HCRP_CREDIT_REQ_UPDATES 1 3312#endif 3313 3314/* Maximum number of results to return in a HCRP_FindServices search. */ 3315#ifndef HCRP_MAX_SEARCH_RESULTS 3316#define HCRP_MAX_SEARCH_RESULTS 1 3317#endif 3318 3319/* Maximum number of bytes to be reserved for searching for the client's notification record. */ 3320#ifndef HCRP_MAX_NOTIF_DISC_BUF 3321#define HCRP_MAX_NOTIF_DISC_BUF 300 3322#endif 3323 3324/* Maximum number of clients the server will allow to be registered for notifications. */ 3325#ifndef HCRP_MAX_NOTIF_CLIENTS 3326#define HCRP_MAX_NOTIF_CLIENTS 3 3327#endif 3328 3329/* Spec says minimum of two notification retries. */ 3330#ifndef HCRP_NOTIF_NUM_RETRIES 3331#define HCRP_NOTIF_NUM_RETRIES 4 3332#endif 3333 3334/************************************************************************* 3335** Definitions for Multi-Client Server HCRP 3336** Note: Many of the above HCRP definitions are also used 3337** Maximum number of clients allowed to connect simultaneously 3338** Must be less than ((GAP_MAX_CONNECTIONS - 1) / 2) 3339*/ 3340#ifndef HCRPM_MAX_CLIENTS 3341#define HCRPM_MAX_CLIENTS 3 3342#endif 3343 3344 3345/****************************************************************************** 3346** 3347** PAN 3348** 3349******************************************************************************/ 3350 3351#ifndef PAN_INCLUDED 3352#define PAN_INCLUDED FALSE 3353#endif 3354 3355 3356/****************************************************************************** 3357** 3358** SAP 3359** 3360******************************************************************************/ 3361 3362#ifndef SAP_SERVER_INCLUDED 3363#define SAP_SERVER_INCLUDED FALSE 3364#endif 3365 3366 3367/************************************************************************* 3368 * A2DP Definitions 3369 */ 3370#ifndef A2D_INCLUDED 3371#define A2D_INCLUDED TRUE 3372#endif 3373 3374/* TRUE to include SBC utility functions */ 3375#ifndef A2D_SBC_INCLUDED 3376#define A2D_SBC_INCLUDED A2D_INCLUDED 3377#endif 3378 3379/* TRUE to include MPEG-1,2 (mp3) utility functions */ 3380#ifndef A2D_M12_INCLUDED 3381#define A2D_M12_INCLUDED A2D_INCLUDED 3382#endif 3383 3384/* TRUE to include MPEG-2,4 (aac) utility functions */ 3385#ifndef A2D_M24_INCLUDED 3386#define A2D_M24_INCLUDED A2D_INCLUDED 3387#endif 3388 3389/****************************************************************************** 3390** 3391** AVCTP 3392** 3393******************************************************************************/ 3394 3395#ifndef AVCT_INCLUDED 3396#define AVCT_INCLUDED TRUE 3397#endif 3398 3399/* Number of simultaneous ACL links to different peer devices. */ 3400#ifndef AVCT_NUM_LINKS 3401#define AVCT_NUM_LINKS 2 3402#endif 3403 3404/* Number of simultaneous AVCTP connections. */ 3405#ifndef AVCT_NUM_CONN 3406#define AVCT_NUM_CONN 3 3407#endif 3408 3409/* Pool ID where to reassemble the SDU. 3410 This Pool allows buffers to be used that are larger than 3411 the L2CAP_MAX_MTU. */ 3412#ifndef AVCT_BR_USER_RX_POOL_ID 3413#define AVCT_BR_USER_RX_POOL_ID HCI_ACL_POOL_ID 3414#endif 3415 3416/* Pool ID where to hold the SDU. 3417 This Pool allows buffers to be used that are larger than 3418 the L2CAP_MAX_MTU. */ 3419#ifndef AVCT_BR_USER_TX_POOL_ID 3420#define AVCT_BR_USER_TX_POOL_ID HCI_ACL_POOL_ID 3421#endif 3422 3423/* 3424GKI Buffer Pool ID used to hold MPS segments during SDU reassembly 3425*/ 3426#ifndef AVCT_BR_FCR_RX_POOL_ID 3427#define AVCT_BR_FCR_RX_POOL_ID HCI_ACL_POOL_ID 3428#endif 3429 3430/* 3431GKI Buffer Pool ID used to hold MPS segments used in (re)transmissions. 3432L2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool. 3433Note: This pool needs to have enough buffers to hold two times the window size negotiated 3434 in the tL2CAP_FCR_OPTIONS (2 * tx_win_size) to allow for retransmissions. 3435 The size of each buffer must be able to hold the maximum MPS segment size passed in 3436 tL2CAP_FCR_OPTIONS plus BT_HDR (8) + HCI preamble (4) + L2CAP_MIN_OFFSET (11 - as of BT 2.1 + EDR Spec). 3437*/ 3438#ifndef AVCT_BR_FCR_TX_POOL_ID 3439#define AVCT_BR_FCR_TX_POOL_ID HCI_ACL_POOL_ID 3440#endif 3441 3442/* AVCTP Browsing channel FCR Option: 3443Size of the transmission window when using enhanced retransmission mode. Not used 3444in basic and streaming modes. Range: 1 - 63 3445*/ 3446#ifndef AVCT_BR_FCR_OPT_TX_WINDOW_SIZE 3447#define AVCT_BR_FCR_OPT_TX_WINDOW_SIZE 10 3448#endif 3449 3450/* AVCTP Browsing channel FCR Option: 3451Number of transmission attempts for a single I-Frame before taking 3452Down the connection. Used In ERTM mode only. Value is Ignored in basic and 3453Streaming modes. 3454Range: 0, 1-0xFF 34550 - infinite retransmissions 34561 - single transmission 3457*/ 3458#ifndef AVCT_BR_FCR_OPT_MAX_TX_B4_DISCNT 3459#define AVCT_BR_FCR_OPT_MAX_TX_B4_DISCNT 20 3460#endif 3461 3462/* AVCTP Browsing channel FCR Option: Retransmission Timeout 3463The AVRCP specification set a value in the range of 300 - 2000 ms 3464Timeout (in msecs) to detect Lost I-Frames. Only used in Enhanced retransmission mode. 3465Range: Minimum 2000 (2 secs) when supporting PBF. 3466 */ 3467#ifndef AVCT_BR_FCR_OPT_RETX_TOUT 3468#define AVCT_BR_FCR_OPT_RETX_TOUT 2000 3469#endif 3470 3471/* AVCTP Browsing channel FCR Option: Monitor Timeout 3472The AVRCP specification set a value in the range of 300 - 2000 ms 3473Timeout (in msecs) to detect Lost S-Frames. Only used in Enhanced retransmission mode. 3474Range: Minimum 12000 (12 secs) when supporting PBF. 3475*/ 3476#ifndef AVCT_BR_FCR_OPT_MONITOR_TOUT 3477#define AVCT_BR_FCR_OPT_MONITOR_TOUT 12000 3478#endif 3479 3480/****************************************************************************** 3481** 3482** AVRCP 3483** 3484******************************************************************************/ 3485 3486#ifndef AVRC_INCLUDED 3487#define AVRC_INCLUDED TRUE 3488#endif 3489 3490#ifndef AVRC_METADATA_INCLUDED 3491#define AVRC_METADATA_INCLUDED TRUE 3492#endif 3493 3494#ifndef AVRC_ADV_CTRL_INCLUDED 3495#define AVRC_ADV_CTRL_INCLUDED TRUE 3496#endif 3497 3498/****************************************************************************** 3499** 3500** MCAP 3501** 3502******************************************************************************/ 3503#ifndef MCA_INCLUDED 3504#define MCA_INCLUDED FALSE 3505#endif 3506 3507/* TRUE to support Clock Synchronization OpCodes */ 3508#ifndef MCA_SYNC_INCLUDED 3509#define MCA_SYNC_INCLUDED FALSE 3510#endif 3511 3512/* The MTU size for the L2CAP configuration on control channel. 48 is the minimal */ 3513#ifndef MCA_CTRL_MTU 3514#define MCA_CTRL_MTU 60 3515#endif 3516 3517/* The maximum number of registered MCAP instances. */ 3518#ifndef MCA_NUM_REGS 3519#define MCA_NUM_REGS 12 3520#endif 3521 3522/* The maximum number of control channels (to difference devices) per registered MCAP instances. */ 3523#ifndef MCA_NUM_LINKS 3524#define MCA_NUM_LINKS 3 3525#endif 3526 3527/* The maximum number of MDEP (including HDP echo) per registered MCAP instances. */ 3528#ifndef MCA_NUM_DEPS 3529#define MCA_NUM_DEPS 13 3530#endif 3531 3532/* The maximum number of MDL link per control channel. */ 3533#ifndef MCA_NUM_MDLS 3534#define MCA_NUM_MDLS 4 3535#endif 3536 3537/* Pool ID where to reassemble the SDU. */ 3538#ifndef MCA_USER_RX_POOL_ID 3539#define MCA_USER_RX_POOL_ID HCI_ACL_POOL_ID 3540#endif 3541 3542/* Pool ID where to hold the SDU. */ 3543#ifndef MCA_USER_TX_POOL_ID 3544#define MCA_USER_TX_POOL_ID HCI_ACL_POOL_ID 3545#endif 3546 3547/* 3548GKI Buffer Pool ID used to hold MPS segments during SDU reassembly 3549*/ 3550#ifndef MCA_FCR_RX_POOL_ID 3551#define MCA_FCR_RX_POOL_ID HCI_ACL_POOL_ID 3552#endif 3553 3554/* 3555GKI Buffer Pool ID used to hold MPS segments used in (re)transmissions. 3556L2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool. 3557Note: This pool needs to have enough buffers to hold two times the window size negotiated 3558 in the tL2CAP_FCR_OPTIONS (2 * tx_win_size) to allow for retransmissions. 3559 The size of each buffer must be able to hold the maximum MPS segment size passed in 3560 tL2CAP_FCR_OPTIONS plus BT_HDR (8) + HCI preamble (4) + L2CAP_MIN_OFFSET (11 - as of BT 2.1 + EDR Spec). 3561*/ 3562#ifndef MCA_FCR_TX_POOL_ID 3563#define MCA_FCR_TX_POOL_ID HCI_ACL_POOL_ID 3564#endif 3565 3566/* MCAP control channel FCR Option: 3567Size of the transmission window when using enhanced retransmission mode. 35681 is defined by HDP specification for control channel. 3569*/ 3570#ifndef MCA_FCR_OPT_TX_WINDOW_SIZE 3571#define MCA_FCR_OPT_TX_WINDOW_SIZE 1 3572#endif 3573 3574/* MCAP control channel FCR Option: 3575Number of transmission attempts for a single I-Frame before taking 3576Down the connection. Used In ERTM mode only. Value is Ignored in basic and 3577Streaming modes. 3578Range: 0, 1-0xFF 35790 - infinite retransmissions 35801 - single transmission 3581*/ 3582#ifndef MCA_FCR_OPT_MAX_TX_B4_DISCNT 3583#define MCA_FCR_OPT_MAX_TX_B4_DISCNT 20 3584#endif 3585 3586/* MCAP control channel FCR Option: Retransmission Timeout 3587The AVRCP specification set a value in the range of 300 - 2000 ms 3588Timeout (in msecs) to detect Lost I-Frames. Only used in Enhanced retransmission mode. 3589Range: Minimum 2000 (2 secs) when supporting PBF. 3590 */ 3591#ifndef MCA_FCR_OPT_RETX_TOUT 3592#define MCA_FCR_OPT_RETX_TOUT 2000 3593#endif 3594 3595/* MCAP control channel FCR Option: Monitor Timeout 3596The AVRCP specification set a value in the range of 300 - 2000 ms 3597Timeout (in msecs) to detect Lost S-Frames. Only used in Enhanced retransmission mode. 3598Range: Minimum 12000 (12 secs) when supporting PBF. 3599*/ 3600#ifndef MCA_FCR_OPT_MONITOR_TOUT 3601#define MCA_FCR_OPT_MONITOR_TOUT 12000 3602#endif 3603 3604/* MCAP control channel FCR Option: Maximum PDU payload size. 3605The maximum number of payload octets that the local device can receive in a single PDU. 3606*/ 3607#ifndef MCA_FCR_OPT_MPS_SIZE 3608#define MCA_FCR_OPT_MPS_SIZE 1000 3609#endif 3610 3611/* Shared transport */ 3612#ifndef NFC_SHARED_TRANSPORT_ENABLED 3613#define NFC_SHARED_TRANSPORT_ENABLED FALSE 3614#endif 3615 3616/****************************************************************************** 3617** 3618** SER 3619** 3620******************************************************************************/ 3621 3622#ifndef SER_INCLUDED 3623#define SER_INCLUDED FALSE 3624#endif 3625 3626/* Task which runs the serial application. */ 3627#ifndef SER_TASK 3628#define SER_TASK BTE_APPL_TASK 3629#endif 3630 3631/* Mailbox used by serial application. */ 3632#ifndef SER_MBOX 3633#define SER_MBOX TASK_MBOX_1 3634#endif 3635 3636/* Mailbox mask. */ 3637#ifndef SER_MBOX_MASK 3638#define SER_MBOX_MASK TASK_MBOX_1_EVT_MASK 3639#endif 3640 3641/* TX path application event. */ 3642#ifndef SER_TX_PATH_APPL_EVT 3643#define SER_TX_PATH_APPL_EVT EVENT_MASK(APPL_EVT_3) 3644#endif 3645 3646/* RX path application event. */ 3647#ifndef SER_RX_PATH_APPL_EVT 3648#define SER_RX_PATH_APPL_EVT EVENT_MASK(APPL_EVT_4) 3649#endif 3650 3651/****************************************************************************** 3652** 3653** Sleep Mode (Low Power Mode) 3654** 3655******************************************************************************/ 3656 3657#ifndef HCILP_INCLUDED 3658#define HCILP_INCLUDED TRUE 3659#endif 3660 3661/****************************************************************************** 3662** 3663** RPC 3664** 3665******************************************************************************/ 3666 3667#ifndef RPC_INCLUDED 3668#define RPC_INCLUDED FALSE 3669#endif 3670 3671/* RPCT task mailbox ID for messages coming from rpcgen code. */ 3672#ifndef RPCT_MBOX 3673#define RPCT_MBOX TASK_MBOX_0 3674#endif 3675 3676/* RPCT task event for mailbox. */ 3677#ifndef RPCT_RPC_MBOX_EVT 3678#define RPCT_RPC_MBOX_EVT TASK_MBOX_0_EVT_MASK 3679#endif 3680 3681/* RPCT task event from driver indicating RX data is ready. */ 3682#ifndef RPCT_RX_READY_EVT 3683#define RPCT_RX_READY_EVT APPL_EVT_0 3684#endif 3685 3686/* RPCT task event from driver indicating data TX is done. */ 3687#ifndef RPCT_TX_DONE_EVT 3688#define RPCT_TX_DONE_EVT APPL_EVT_1 3689#endif 3690 3691/* RPCT task event indicating data is in the circular buffer. */ 3692#ifndef RPCT_UCBUF_EVT 3693#define RPCT_UCBUF_EVT APPL_EVT_2 3694#endif 3695 3696/* Task ID of RPCGEN task. */ 3697#ifndef RPCGEN_TASK 3698#define RPCGEN_TASK BTU_TASK 3699#endif 3700 3701/* RPCGEN task event for messages coming from RPCT. */ 3702#ifndef RPCGEN_MSG_EVT 3703#define RPCGEN_MSG_EVT TASK_MBOX_1_EVT_MASK 3704#endif 3705 3706#ifndef RPCGEN_MSG_MBOX 3707#define RPCGEN_MSG_MBOX TASK_MBOX_1 3708#endif 3709 3710/* Size of circular buffer used to store diagnostic messages. */ 3711#ifndef RPCT_UCBUF_SIZE 3712#define RPCT_UCBUF_SIZE 2000 3713#endif 3714 3715/****************************************************************************** 3716** 3717** SAP - Sample applications 3718** 3719******************************************************************************/ 3720 3721#ifndef MMI_INCLUDED 3722#define MMI_INCLUDED FALSE 3723#endif 3724 3725/****************************************************************************** 3726** 3727** APPL - Application Task 3728** 3729******************************************************************************/ 3730/* When TRUE indicates that an application task is to be run */ 3731#ifndef APPL_INCLUDED 3732#define APPL_INCLUDED TRUE 3733#endif 3734 3735/* When TRUE remote terminal code included (RPC MUST be included) */ 3736#ifndef RSI_INCLUDED 3737#define RSI_INCLUDED TRUE 3738#endif 3739 3740 3741 3742#define L2CAP_FEATURE_REQ_ID 73 3743#define L2CAP_FEATURE_RSP_ID 173 3744 3745 3746/****************************************************************************** 3747** 3748** BTA 3749** 3750******************************************************************************/ 3751/* BTA EIR canned UUID list (default is dynamic) */ 3752#ifndef BTA_EIR_CANNED_UUID_LIST 3753#define BTA_EIR_CANNED_UUID_LIST FALSE 3754#endif 3755 3756/* Number of supported customer UUID in EIR */ 3757#ifndef BTA_EIR_SERVER_NUM_CUSTOM_UUID 3758#define BTA_EIR_SERVER_NUM_CUSTOM_UUID 8 3759#endif 3760 3761/* CHLD override for bluedroid */ 3762#ifndef BTA_AG_CHLD_VAL_ECC 3763#define BTA_AG_CHLD_VAL_ECC "(0,1,1x,2,2x,3)" 3764#endif 3765 3766#ifndef BTA_AG_CHLD_VAL 3767#define BTA_AG_CHLD_VAL "(0,1,2,3)" 3768#endif 3769 3770/* Set the CIND to match HFP 1.5 */ 3771#ifndef BTA_AG_CIND_INFO 3772#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))" 3773#endif 3774 3775#ifndef BTA_DM_AVOID_A2DP_ROLESWITCH_ON_INQUIRY 3776#define BTA_DM_AVOID_A2DP_ROLESWITCH_ON_INQUIRY TRUE 3777#endif 3778 3779/****************************************************************************** 3780** 3781** BTE 3782** 3783******************************************************************************/ 3784#ifndef BTE_PLATFORM_IDLE 3785#define BTE_PLATFORM_IDLE 3786#endif 3787 3788#ifndef BTE_IDLE_TASK_INCLUDED 3789#define BTE_IDLE_TASK_INCLUDED FALSE 3790#endif 3791 3792#ifndef BTE_PLATFORM_INITHW 3793#define BTE_PLATFORM_INITHW 3794#endif 3795 3796#ifndef BTE_BTA_CODE_INCLUDED 3797#define BTE_BTA_CODE_INCLUDED FALSE 3798#endif 3799 3800/****************************************************************************** 3801** 3802** BTTRC 3803** 3804******************************************************************************/ 3805/* Whether to parse and display traces-> Platform specific implementation */ 3806#ifndef BTTRC_DISP 3807#define BTTRC_DISP BTTRC_DispOnInsight 3808#endif 3809 3810/****************************************************************************** 3811** 3812** Tracing: Include trace header file here. 3813** 3814******************************************************************************/ 3815 3816#include "bt_trace.h" 3817 3818#endif /* BT_TARGET_H */ 3819 3820