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