bt_target.h revision b7a077b6aa2af20e9505a7baf0b1d6dfa2ad24e6
15738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 25738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 341d4a266ceca77bb09ab1bf5c04c30d15f3ded3aHemant Gupta * Copyright (c) 2014 The Android Open Source Project 45738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Copyright (C) 1999-2012 Broadcom Corporation 55738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 65738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 75738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * you may not use this file except in compliance with the License. 85738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * You may obtain a copy of the License at: 95738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * See the License for the specific language governing permissions and 165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * limitations under the License. 175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/ 195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_TARGET_H 215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_TARGET_H 225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BUILDCFG 245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BUILDCFG 255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if !defined(HAS_BDROID_BUILDCFG) && !defined(HAS_NO_BDROID_BUILDCFG) 285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#error "An Android.mk file did not include bdroid_CFLAGS and possibly not bdorid_C_INCLUDES" 295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifdef HAS_BDROID_BUILDCFG 325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bdroid_buildcfg.h" 335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3524ff5af9e40aaebc236bb6a16849c63bff0f23baSharvil Nanavati#include "bt_types.h" /* This must be defined AFTER buildcfg.h */ 365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include common GKI definitions used by this platform */ 385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "dyn_mem.h" /* defines static and/or dynamic memory for components */ 395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 407f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie//------------------Added from bdroid_buildcfg.h--------------------- 415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_EXTFEA_SUPPORTED_MASK 425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_EXTFEA_SUPPORTED_MASK (L2CAP_EXTFEA_ENH_RETRANS | L2CAP_EXTFEA_STREAM_MODE | L2CAP_EXTFEA_NO_CRC | L2CAP_EXTFEA_FIXED_CHNLS) 435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTUI_OPS_FORMATS 465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTUI_OPS_FORMATS (BTA_OP_VCARD21_MASK | BTA_OP_ANY_MASK) 475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_RFC_MTU_SIZE 505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_RFC_MTU_SIZE (L2CAP_MTU_SIZE-L2CAP_MIN_OFFSET-RFCOMM_DATA_OVERHEAD) 515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SBC_NO_PCM_CPY_OPTION 545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SBC_NO_PCM_CPY_OPTION FALSE 555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_INCLUDED 585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_INCLUDED TRUE 595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_PAN_INCLUDED 625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_PAN_INCLUDED TRUE 635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_HH_INCLUDED 665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_HH_INCLUDED TRUE 675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_HH_ROLE 705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_HH_ROLE BTA_MASTER_ROLE_PREF 715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 732e7fa68bfd9723b7ec7b6b0b128d89f31a2e06eeAndre Eisenbach#ifndef BTA_HH_LE_INCLUDED 742e7fa68bfd9723b7ec7b6b0b128d89f31a2e06eeAndre Eisenbach#define BTA_HH_LE_INCLUDED TRUE 752e7fa68bfd9723b7ec7b6b0b128d89f31a2e06eeAndre Eisenbach#endif 762e7fa68bfd9723b7ec7b6b0b128d89f31a2e06eeAndre Eisenbach 775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AR_INCLUDED 785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AR_INCLUDED TRUE 795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AV_INCLUDED 825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AV_INCLUDED TRUE 835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 857fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#ifndef BTA_GATT_INCLUDED 867fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#define BTA_GATT_INCLUDED TRUE 875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 896718c6d9fcfe373a679a529aca003d32062f81dclungtsai_lin#ifndef BTA_AV_SINK_INCLUDED 906718c6d9fcfe373a679a529aca003d32062f81dclungtsai_lin#define BTA_AV_SINK_INCLUDED FALSE 916718c6d9fcfe373a679a529aca003d32062f81dclungtsai_lin#endif 92f7dd9f5779680da37dc89e5df2b26d436487818cHemant Gupta 935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_DISABLE_DELAY 945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DISABLE_DELAY 200 /* in milliseconds */ 955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SBC_FOR_EMBEDDED_LINUX 985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SBC_FOR_EMBEDDED_LINUX TRUE 995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_VERSION 1025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_VERSION 0x0102 1035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_AT_MAX_LEN 1065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AG_AT_MAX_LEN 512 1075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AVRCP_FF_RW_SUPPORT 1105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AVRCP_FF_RW_SUPPORT TRUE 1115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_SCO_PKT_TYPES 1145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#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) 1155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AV_RET_TOUT 1185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AV_RET_TOUT 15 1195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORCHE_PAIRING_CONFLICT 1225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORCHE_PAIRING_CONFLICT TRUE 1235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AV_CO_CP_SCMS_T 1265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AV_CO_CP_SCMS_T FALSE 1275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1297f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie/* This feature is used to eanble interleaved scan*/ 1307f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie#ifndef BTA_HOST_INTERLEAVE_SEARCH 1317f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie#define BTA_HOST_INTERLEAVE_SEARCH FALSE 1327f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie#endif 1337f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie 1345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_USE_TRACES 1355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_USE_TRACES TRUE 1365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_TRACE_VERBOSE 1395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_TRACE_VERBOSE FALSE 1405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_DM_SDP_DB_SIZE 1435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_SDP_DB_SIZE 8000 1445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HL_INCLUDED 1475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HL_INCLUDED TRUE 1485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AG_VOICE_SETTINGS 1515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AG_VOICE_SETTINGS HCI_DEFAULT_VOICE_SETTINGS 1525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTIF_DM_OOB_TEST 1555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_DM_OOB_TEST TRUE 1565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1577f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie 1580963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana// How long to wait before activating sniff mode after entering the 1590963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana// idle state for FTS, OPS connections 1600963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana#ifndef BTA_FTS_OPS_IDLE_TO_SNIFF_DELAY_MS 1610963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana#define BTA_FTS_OPS_IDLE_TO_SNIFF_DELAY_MS 7000 1620963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana#endif 1630963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana 1647f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie//------------------End added from bdroid_buildcfg.h--------------------- 1655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 1685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16970ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov** Buffer sizes 1705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 1715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 1725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef BT_DEFAULT_BUFFER_SIZE 17470ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define BT_DEFAULT_BUFFER_SIZE (4096 + 16) 1755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef BT_SMALL_BUFFER_SIZE 17870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define BT_SMALL_BUFFER_SIZE 660 1795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 18170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* Receives HCI events from the lower-layer. */ 18270ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef HCI_CMD_BUF_SIZE 18370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define HCI_CMD_BUF_SIZE BT_SMALL_BUFFER_SIZE 1845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends SDP data packets. */ 1872e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef SDP_DATA_BUF_SIZE 18870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define SDP_DATA_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 1895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends RFCOMM command packets. */ 1922e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef RFCOMM_CMD_BUF_SIZE 19370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define RFCOMM_CMD_BUF_SIZE BT_SMALL_BUFFER_SIZE 1945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends RFCOMM data packets. */ 1972e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef RFCOMM_DATA_BUF_SIZE 19870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define RFCOMM_DATA_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 1995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends L2CAP packets to the peer and HCI messages to the controller. */ 2022e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef L2CAP_CMD_BUF_SIZE 20370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define L2CAP_CMD_BUF_SIZE BT_SMALL_BUFFER_SIZE 2045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2061d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef L2CAP_USER_TX_BUF_SIZE 20770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define L2CAP_USER_TX_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 2081d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 2091d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 2101d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef L2CAP_USER_RX_BUF_SIZE 21170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define L2CAP_USER_RX_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 2121d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 2131d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 2145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends L2CAP segmented packets in ERTM mode */ 2151d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef L2CAP_FCR_TX_BUF_SIZE 21670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define L2CAP_FCR_TX_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 2171d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 2181d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 2195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Receives L2CAP segmented packets in ERTM mode */ 22070ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef L2CAP_FCR_RX_BUF_SIZE 22170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define L2CAP_FCR_RX_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 2225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2242e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef L2CAP_FCR_ERTM_BUF_SIZE 2252e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define L2CAP_FCR_ERTM_BUF_SIZE (10240 + 24) 2262e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 2272e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 22870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* Number of ACL buffers to assign to LE */ 22970ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* 23070ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * TODO: Do we need this? 23170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * It was used when the HCI buffers were shared with BR/EDR. 23270ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov */ 23312c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach#ifndef L2C_DEF_NUM_BLE_BUF_SHARED 23412c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach#define L2C_DEF_NUM_BLE_BUF_SHARED 1 23512c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach#endif 23612c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach 2375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used by BTM when it sends HCI commands to the controller. */ 2382e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef BTM_CMD_BUF_SIZE 23970ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define BTM_CMD_BUF_SIZE BT_SMALL_BUFFER_SIZE 2408372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 2418372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 24270ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef OBX_LRG_DATA_BUF_SIZE 24370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define OBX_LRG_DATA_BUF_SIZE (8080 + 26) 2448372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 2452e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 2465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used to send data to L2CAP. */ 2472e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef GAP_DATA_BUF_SIZE 24870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define GAP_DATA_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 2495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SPP_DB_SIZE 25270ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define SPP_DB_SIZE BT_DEFAULT_BUFFER_SIZE 2535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* BNEP data and protocol messages. */ 2562e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef BNEP_BUF_SIZE 25770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define BNEP_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 2585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2602e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* AVDTP buffer size for protocol messages */ 2612e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef AVDT_CMD_BUF_SIZE 26270ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define AVDT_CMD_BUF_SIZE BT_SMALL_BUFFER_SIZE 2632e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 2642e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 26570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* AVDTP buffer size for media packets in case of fragmentation */ 26670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef AVDT_DATA_BUF_SIZE 26770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define AVDT_DATA_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 2685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2702e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef PAN_BUF_SIZE 27170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define PAN_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 2722e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 2732e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 27470ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* Maximum number of buffers to allocate for PAN */ 27570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef PAN_BUF_MAX 27670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define PAN_BUF_MAX 100 2775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2792e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* AVCTP buffer size for protocol messages */ 2802e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef AVCT_CMD_BUF_SIZE 28170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define AVCT_CMD_BUF_SIZE 288 2825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2842e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* AVRCP buffer size for protocol messages */ 2852e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef AVRC_CMD_BUF_SIZE 28670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define AVRC_CMD_BUF_SIZE 288 2875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2892e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* AVRCP Metadata buffer size for protocol messages */ 2902e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef AVRC_META_CMD_BUF_SIZE 29170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define AVRC_META_CMD_BUF_SIZE BT_SMALL_BUFFER_SIZE 2925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVRCP buffer size for browsing channel messages */ 29570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef AVRC_BROWSE_BUF_SIZE 29670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define AVRC_BROWSE_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 2975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2991d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef BTA_HL_USER_TX_BUF_SIZE 30070ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define BTA_HL_USER_TX_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 3011d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 3021d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 3032e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef BTA_HL_LRG_DATA_BUF_SIZE 3041d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define BTA_HL_LRG_DATA_BUF_SIZE (10240 + 24) 3052e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 3062e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 3072e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* GATT Server Database buffer size */ 3082e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef GATT_DB_BUF_SIZE 3092e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define GATT_DB_BUF_SIZE 128 3102e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 3112e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 31270ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* GATT Data sending buffer size */ 3132e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef GATT_DATA_BUF_SIZE 31470ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define GATT_DATA_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 31517b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach#endif 31617b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach 3175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 3185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Lower Layer Interface 3205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 3225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Macro for allocating buffer for HCI commands */ 3245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCI_GET_CMD_BUF 3255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (!defined(HCI_USE_VARIABLE_SIZE_CMD_BUF) || (HCI_USE_VARIABLE_SIZE_CMD_BUF == FALSE)) 32670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* Allocate fixed-size HCI_CMD buffer (default case) */ 327258c2538e3b62a8cdb403f2730c45d721e5292b4Pavlin Radoslavov#define HCI_GET_CMD_BUF(paramlen) ((BT_HDR *)osi_getbuf (HCI_CMD_BUF_SIZE)) 3285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 3295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Allocate smallest possible buffer (for platforms with limited RAM) */ 330258c2538e3b62a8cdb403f2730c45d721e5292b4Pavlin Radoslavov#define HCI_GET_CMD_BUF(paramlen) ((BT_HDR *)osi_getbuf ((UINT16)(BT_HDR_SIZE + HCIC_PREAMBLE_SIZE + (paramlen)))) 3315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* HCI_GET_CMD_BUF */ 3335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 3355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** HCI Services (H4) 3375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 3395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Use 2 second for low-resolution systems, override to 1 for high-resolution systems */ 3415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_1SEC_TIMEOUT 3425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_1SEC_TIMEOUT (2) 3435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Quick Timer */ 3465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* if L2CAP_FCR_INCLUDED is TRUE then it should have 100 millisecond resolution */ 3475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* if none of them is included then QUICK_TIMER_TICKS_PER_SEC is set to 0 to exclude quick timer */ 3485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef QUICK_TIMER_TICKS_PER_SEC 34918023290406f076c5c76cdffdbf8ee081450a42fChris Manton#define QUICK_TIMER_TICKS_PER_SEC 10 /* 100ms timer */ 3505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 3535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BTM 3555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 3575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Cancel Inquiry on incoming SSP */ 3595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_NO_SSP_ON_INQUIRY 36070ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define BTM_NO_SSP_ON_INQUIRY FALSE 3615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Includes SCO if TRUE */ 3645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_INCLUDED 36570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define BTM_SCO_INCLUDED TRUE /* TRUE includes SCO code */ 3665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Includes SCO if TRUE */ 3695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_HCI_INCLUDED 37070ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define BTM_SCO_HCI_INCLUDED FALSE /* TRUE includes SCO over HCI code */ 3715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Includes WBS if TRUE */ 3745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_WBS_INCLUDED 37570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define BTM_WBS_INCLUDED FALSE /* TRUE includes WBS code */ 3765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is used to work around a controller bug that doesn't like Disconnect 3795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** issued while there is a role switch in progress 3805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 3815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DISC_DURING_RS 3825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DISC_DURING_RS TRUE 3835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/************************** 3865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Initial SCO TX credit 3875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*************************/ 3885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* max TX SCO data packet size */ 3895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_DATA_SIZE_MAX 3905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SCO_DATA_SIZE_MAX 240 3915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The size in bytes of the BTM inquiry database. */ 3945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_INQ_DB_SIZE 3955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_INQ_DB_SIZE 40 3965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The default scan mode */ 3995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_SCAN_TYPE 4005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_SCAN_TYPE BTM_SCAN_TYPE_INTERLACED 4015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Should connections to unknown devices be allowed when not discoverable? */ 4045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_ALLOW_CONN_IF_NONDISCOVER 4055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_ALLOW_CONN_IF_NONDISCOVER TRUE 4065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sets the Page_Scan_Window: the length of time that the device is performing a page scan. */ 4095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_CONN_WINDOW 4105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_CONN_WINDOW 0x0012 4115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sets the Page_Scan_Activity: the interval between the start of two consecutive page scans. */ 4145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_CONN_INTERVAL 4155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_CONN_INTERVAL 0x0800 4165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* When automatic inquiry scan is enabled, this sets the inquiry scan window. */ 4195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_DISC_WINDOW 4205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_DISC_WINDOW 0x0012 4215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* When automatic inquiry scan is enabled, this sets the inquiry scan interval. */ 4245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_DISC_INTERVAL 4255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_DISC_INTERVAL 0x0800 4265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default class of device 4295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* {SERVICE_CLASS, MAJOR_CLASS, MINOR_CLASS} 4305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* 4315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* SERVICE_CLASS:0x5A (Bit17 -Networking,Bit19 - Capturing,Bit20 -Object Transfer,Bit22 -Telephony) 4325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* MAJOR_CLASS:0x02 - PHONE 4335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* MINOR_CLASS:0x0C - SMART_PHONE 4345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* 4355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 4365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_DM_COD 4375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_COD {0x5A, 0x02, 0x0C} 4385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of SCO links. */ 4415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_SCO_LINKS 44290a32530e8b9908f2af64ce98931684fa20c061bNitin Srivastava#define BTM_MAX_SCO_LINKS 3 4435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The preferred type of SCO links (2-eSCO, 0-SCO). */ 4465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_SCO_MODE 4475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_SCO_MODE 2 4485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of security records for peer devices. */ 4515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_MAX_DEVICE_RECORDS 4525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_MAX_DEVICE_RECORDS 100 4535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of security records for services. */ 4565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_MAX_SERVICE_RECORDS 4575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_MAX_SERVICE_RECORDS 32 4585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* If True, force a retrieval of remote device name for each bond in case it's changed */ 4615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_FORCE_RNR_FOR_DBOND 4625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_FORCE_RNR_FOR_DBOND FALSE 4635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum device name length used in btm database. */ 4665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_REM_BD_NAME_LEN 4675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_REM_BD_NAME_LEN 248 4685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum local device name length stored btm database. 4715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project '0' disables storage of the local name in BTM */ 4725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_LOC_BD_NAME_LEN 4735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_LOC_BD_NAME_LEN 248 4745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4761e5109b5cbf49810abd0c94c413ce07db52caacaMatthew Xie/* Fixed Default String. When this is defined as null string, the device's 4771e5109b5cbf49810abd0c94c413ce07db52caacaMatthew Xie * product model name is used as the default local name. 4781e5109b5cbf49810abd0c94c413ce07db52caacaMatthew Xie */ 4795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEF_LOCAL_NAME 4805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEF_LOCAL_NAME "" 4815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum service name stored with security authorization (0 if not needed) */ 4845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_SERVICE_NAME_LEN 4855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_SERVICE_NAME_LEN BT_MAX_SERVICE_NAME_LEN 4865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum length of the service name. */ 4895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_MAX_SERVICE_NAME_LEN 4905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_MAX_SERVICE_NAME_LEN 21 4915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* ACL buffer size in HCI Host Buffer Size command. */ 4945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_ACL_BUF_SIZE 4955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_ACL_BUF_SIZE 0 4965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of clients that can register with the power manager. */ 4995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_PM_RECORDS 5005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_PM_RECORDS 2 5015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to show debug trace messages for the power manager. */ 5045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_PM_DEBUG 5055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_PM_DEBUG FALSE 5065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to TRUE if link is to be unparked due to BTM_CreateSCO API. */ 5095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_WAKE_PARKED_LINK 5105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SCO_WAKE_PARKED_LINK TRUE 5115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* If the user does not respond to security process requests within this many seconds, 5145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * a negative response would be sent automatically. 5155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 30 is LMP response timeout value */ 5165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_TIMEOUT_VALUE 5175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_TIMEOUT_VALUE 35 5185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of callbacks that can be registered using BTM_RegisterForVSEvents */ 5215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_VSE_CALLBACKS 5225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_VSE_CALLBACKS 3 5235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************** 5265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Lisbon Features 5275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************/ 5285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to TRUE if the FEC is required for EIR packet. */ 5295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_EIR_DEFAULT_FEC_REQUIRED 5305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_EIR_DEFAULT_FEC_REQUIRED TRUE 5315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The IO capability of the local device (for Simple Pairing) */ 5345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_LOCAL_IO_CAPS 5355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_LOCAL_IO_CAPS BTM_IO_CAP_IO 5365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 53826fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach#ifndef BTM_LOCAL_IO_CAPS_BLE 53926fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach#define BTM_LOCAL_IO_CAPS_BLE BTM_IO_CAP_KBDISP 54026fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach#endif 54126fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach 5425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The default MITM Protection Requirement (for Simple Pairing) 5435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Possible values are BTM_AUTH_SP_YES or BTM_AUTH_SP_NO */ 5445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_AUTH_REQ 5455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_AUTH_REQ BTM_AUTH_SP_NO 5465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The default MITM Protection Requirement for dedicated bonding using Simple Pairing 5495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Possible values are BTM_AUTH_AP_YES or BTM_AUTH_AP_NO */ 5505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_DD_AUTH_REQ 5515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_DD_AUTH_REQ BTM_AUTH_AP_YES 5525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include Out-of-Band implementation for Simple Pairing */ 5555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_OOB_INCLUDED 5565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_OOB_INCLUDED TRUE 5575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* TRUE to include Sniff Subrating */ 5605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SSR_INCLUDED 5615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SSR_INCLUDED TRUE 5625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/************************* 5655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** End of Lisbon Features 5665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**************************/ 5675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 568b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach/* 4.1/4.2 secure connections feature */ 569b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach#ifndef SC_MODE_INCLUDED 570b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach#define SC_MODE_INCLUDED TRUE 571b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach#endif 572b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach 5735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for conformance testing ONLY */ 5745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_BLE_CONFORMANCE_TESTING 5755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_BLE_CONFORMANCE_TESTING FALSE 5765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 5795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 5805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** L2CAP 5815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 5825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 5835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous links that L2CAP can support. */ 5855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_ACL_CONNECTIONS 5865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_L2CAP_LINKS 7 5875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 5885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_L2CAP_LINKS MAX_ACL_CONNECTIONS 5895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous channels that L2CAP can support. */ 5925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_L2CAP_CHANNELS 593ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define MAX_L2CAP_CHANNELS 16 5945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous applications that can register with L2CAP. */ 5975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_L2CAP_CLIENTS 5985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_L2CAP_CLIENTS 15 5995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of seconds of link inactivity before a link is disconnected. */ 6025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_LINK_INACTIVITY_TOUT 6035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_LINK_INACTIVITY_TOUT 4 6045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of seconds of link inactivity after bonding before a link is disconnected. */ 6075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_BONDING_TIMEOUT 6085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_BONDING_TIMEOUT 3 6095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The time from the HCI connection complete to disconnect if no channel is established. */ 6125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_LINK_STARTUP_TOUT 6135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_LINK_STARTUP_TOUT 60 6145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 61670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* The L2CAP MTU; must be in accord with the HCI ACL buffer size. */ 6175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_MTU_SIZE 6185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_MTU_SIZE 1691 6195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 62170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* 62270ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * The L2CAP MPS over Bluetooth; must be in accord with the FCR tx buffer size 62370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * and ACL down buffer size. 62470ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov */ 6255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_MPS_OVER_BR_EDR 6265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_MPS_OVER_BR_EDR 1010 6275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* If host flow control enabled, this is the number of buffers the controller can have unacknowledged. */ 6305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_HOST_FC_ACL_BUFS 6315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_HOST_FC_ACL_BUFS 20 6325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to enable L2CAP to take the ACL link out of park mode when ACL data is to be sent. */ 6355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_WAKE_PARKED_LINK 6365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_WAKE_PARKED_LINK TRUE 6375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Whether link wants to be the master or the slave. */ 6405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_DESIRED_LINK_ROLE 6415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_DESIRED_LINK_ROLE HCI_ROLE_SLAVE 6425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include Non-Flushable Packet Boundary Flag feature of Lisbon */ 6455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_NON_FLUSHABLE_PB_INCLUDED 6465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_NON_FLUSHABLE_PB_INCLUDED TRUE 6475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Minimum number of ACL credit for high priority link */ 6505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_HIGH_PRI_MIN_XMIT_QUOTA 651689d66b6559dcb3a0ad7f6cc33b6129e50910253The Android Open Source Project#define L2CAP_HIGH_PRI_MIN_XMIT_QUOTA 5 6525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* used for monitoring HCI ACL credit management */ 6555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_HCI_FLOW_CONTROL_DEBUG 6565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_HCI_FLOW_CONTROL_DEBUG TRUE 6575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data */ 6605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_INCLUDED 6615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_INCLUDED FALSE 6625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data MTU */ 6655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_MTU 6665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_MTU L2CAP_MTU_SIZE 6675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data Idle Timeout */ 6705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_IDLE_TIMEOUT 6715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_IDLE_TIMEOUT 2 6725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data Idle Timeout */ 6755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_CH_PRIORITY 6765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_CH_PRIORITY L2CAP_CHNL_PRIORITY_MEDIUM 6775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for features using fixed channels; set to zero if no fixed channels supported (BLE, etc.) */ 6805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Excluding L2CAP signaling channel and UCD */ 6815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_NUM_FIXED_CHNLS 6828372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define L2CAP_NUM_FIXED_CHNLS 32 6835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* First fixed channel supported */ 6865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_FIRST_FIXED_CHNL 687444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#define L2CAP_FIRST_FIXED_CHNL 4 6885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_LAST_FIXED_CHNL 6915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_LAST_FIXED_CHNL (L2CAP_FIRST_FIXED_CHNL + L2CAP_NUM_FIXED_CHNLS - 1) 6925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Round Robin service channels in link */ 6955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_ROUND_ROBIN_CHANNEL_SERVICE 6965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_ROUND_ROBIN_CHANNEL_SERVICE TRUE 6975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* used for monitoring eL2CAP data flow */ 7005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_ERTM_STATS 7015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_ERTM_STATS FALSE 7025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for conformance testing ONLY: When TRUE lets scriptwrapper overwrite info response */ 7055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_CONFORMANCE_TESTING 7065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_CONFORMANCE_TESTING FALSE 7075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7098372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* 7108372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz * Max bytes per connection to buffer locally before dropping the 7118372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz * connection if local client does not receive it - default is 1MB 7128372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz */ 7138372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef L2CAP_MAX_RX_BUFFER 7148372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define L2CAP_MAX_RX_BUFFER 0x100000 7158372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 7168372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 7178372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 7185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 7195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 7205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BLE 7215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 7225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 7235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7244af5f3e8f77e3719fac425134b7a14e527d1523cGanesh Ganapathi Batta#ifndef BLE_INCLUDED 725ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define BLE_INCLUDED TRUE 7265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 728b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#ifndef BLE_ANDROID_CONTROLLER_SCAN_FILTER 729b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#define BLE_ANDROID_CONTROLLER_SCAN_FILTER TRUE 730b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#endif 731b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach 7325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef LOCAL_BLE_CONTROLLER_ID 7335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define LOCAL_BLE_CONTROLLER_ID (1) 7345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7363e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach/* 7373e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * Toggles support for general LE privacy features such as remote address 7383e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * resolution, local address rotation etc. 7393e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach */ 7407fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#ifndef BLE_PRIVACY_SPT 7410aee331900424ed23857ee2390fbb03338a60d91Chris Manton#define BLE_PRIVACY_SPT TRUE 7428b35b3fccc065730e6f0ee1050d3e4528e58ea37Zhihai Xu#endif 7438b35b3fccc065730e6f0ee1050d3e4528e58ea37Zhihai Xu 7443e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach/* 7453e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * Enables or disables support for local privacy (ex. address rotation) 7463e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach */ 7473e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach#ifndef BLE_LOCAL_PRIVACY_ENABLED 7483e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach#define BLE_LOCAL_PRIVACY_ENABLED TRUE 7493e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach#endif 7503e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach 7513e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach/* 7523e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * Toggles support for vendor specific extensions such as RPA offloading, 7533e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * feature discovery, multi-adv etc. 7543e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach */ 755ed534e330bf63c72e778fc8daae09ddd63c395b2Wei Wang#ifndef BLE_VND_INCLUDED 75616fe0822ccd3eb6f66d3afd9965d25a0a0cb4c30Prerepa Viswanadham#define BLE_VND_INCLUDED FALSE 757ed534e330bf63c72e778fc8daae09ddd63c395b2Wei Wang#endif 758d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com 759d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#ifndef BTM_BLE_ADV_TX_POWER 760d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#define BTM_BLE_ADV_TX_POWER {-21, -15, -7, 1, 9} 761d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#endif 762d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com 763d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com 764d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#ifndef BLE_BATCH_SCAN_INCLUDED 765d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#define BLE_BATCH_SCAN_INCLUDED TRUE 766d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#endif 767d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com 7685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 7695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 7705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** ATT/GATT Protocol/Profile Settings 7715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 7725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 773597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#ifndef BTA_GATT_INCLUDED 774597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#if BLE_INCLUDED == TRUE 775597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#define BTA_GATT_INCLUDED TRUE 776597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#else 777597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#define BTA_GATT_INCLUDED FALSE 778597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#endif 779597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#endif 780597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen 781597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#if BTA_GATT_INCLUDED == TRUE && BLE_INCLUDED == FALSE 782597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#error "can't have GATT without BLE" 783597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#endif 784597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen 7857fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#ifndef BLE_LLT_INCLUDED 7867fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#define BLE_LLT_INCLUDED TRUE 7877fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#endif 788e97508ef05277f7e2299793b51cd3df080a58527Chris Manton 7895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef ATT_INCLUDED 790ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define ATT_INCLUDED TRUE 7915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef ATT_DEBUG 794ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define ATT_DEBUG TRUE 7955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 797602162a13c6ed8abae53aee6deeda48b79f30911Zhihai Xu#ifndef BLE_PERIPHERAL_MODE_SUPPORT 7987fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#define BLE_PERIPHERAL_MODE_SUPPORT TRUE 799602162a13c6ed8abae53aee6deeda48b79f30911Zhihai Xu#endif 800602162a13c6ed8abae53aee6deeda48b79f30911Zhihai Xu 8015702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu#ifndef BLE_DELAY_REQUEST_ENC 8025702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu/* This flag is to work around IPHONE problem, We need to wait for iPhone ready 8035702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu before send encryption request to iPhone */ 8045702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu#define BLE_DELAY_REQUEST_ENC FALSE 8055702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu#endif 8065702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu 807a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#ifndef GAP_TRANSPORT_SUPPORTED 808a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#define GAP_TRANSPORT_SUPPORTED GATT_TRANSPORT_LE_BR_EDR 809a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#endif 810a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu 811a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#ifndef GATTP_TRANSPORT_SUPPORTED 812a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#define GATTP_TRANSPORT_SUPPORTED GATT_TRANSPORT_LE_BR_EDR 813a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#endif 814a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu 8155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_SR_PROFILES 8165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GATT_MAX_SR_PROFILES 32 /* max is 32 */ 8175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_APPS 820845961f2f710e5fdf1c08c0c1ccc1368eeb0f6c0Wei Wang#define GATT_MAX_APPS 32 /* note: 2 apps used internally GATT and GAP */ 8215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_PHY_CHANNEL 8248dc42c603f5571047878640705eee18fa5396f11Andre Eisenbach#define GATT_MAX_PHY_CHANNEL 7 8255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for conformance testing ONLY */ 8285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_CONFORMANCE_TESTING 8295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GATT_CONFORMANCE_TESTING FALSE 8305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* number of background connection device allowence, ideally to be the same as WL size 8335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 8345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_BG_CONN_DEV 8355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GATT_MAX_BG_CONN_DEV 32 8365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 8395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 8405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** SMP 8415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 8425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 8435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_INCLUDED 844a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#if BLE_INCLUDED == TRUE 845ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define SMP_INCLUDED TRUE 846a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#else 847a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#define SMP_INCLUDED FALSE 848a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#endif 849a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#endif 850a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen 851a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#if SMP_INCLUDED == TRUE && BLE_INCLUDED == FALSE 852a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#error "can't have SMP without BLE" 8535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_DEBUG 856a7246ca21d7570a725a9b7781649d194357e474cAndre Eisenbach#define SMP_DEBUG FALSE 8575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_DEFAULT_AUTH_REQ 8605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SMP_DEFAULT_AUTH_REQ SMP_AUTH_NB_ENC_ONLY 8615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_MAX_ENC_KEY_SIZE 8645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SMP_MAX_ENC_KEY_SIZE 16 8655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_MIN_ENC_KEY_SIZE 8685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SMP_MIN_ENC_KEY_SIZE 7 8695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 871444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji/* minimum link timeout after SMP pairing is done, leave room for key exchange 872444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji and racing condition for the following service connection. 873444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji Prefer greater than 0 second, and no less than default inactivity link idle 874444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji timer(L2CAP_LINK_INACTIVITY_TOUT) in l2cap) */ 875444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#ifndef SMP_LINK_TOUT_MIN 876444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#if (L2CAP_LINK_INACTIVITY_TOUT > 0) 877444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#define SMP_LINK_TOUT_MIN L2CAP_LINK_INACTIVITY_TOUT 878444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#else 879444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#define SMP_LINK_TOUT_MIN 2 880444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#endif 8815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 8835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 8845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** SDP 8855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 8865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 8875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to enable SDP server functionality. */ 8895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_SERVER_ENABLED 8905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_SERVER_ENABLED TRUE 8915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of SDP records the server can support. */ 8945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_RECORDS 8958372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define SDP_MAX_RECORDS 30 8965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of attributes in each record. */ 8995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_REC_ATTR 9005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_REC_ATTR 25 9015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_PAD_LEN 9045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_PAD_LEN 600 9055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum length, in bytes, of an attribute. */ 9085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_ATTR_LEN 9095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_ATTR_LEN 400 9105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of attribute filters supported by SDP databases. */ 9135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_ATTR_FILTERS 9145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_ATTR_FILTERS 15 9155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of UUID filters supported by SDP databases. */ 9185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_UUID_FILTERS 9195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_UUID_FILTERS 3 9205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to enable SDP client functionality. */ 9235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_CLIENT_ENABLED 9245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_CLIENT_ENABLED TRUE 9255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of record handles retrieved in a search. */ 9285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_DISC_SERVER_RECS 9295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_DISC_SERVER_RECS 21 9305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The size of a scratchpad buffer, in bytes, for storing the response to an attribute request. */ 9335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_LIST_BYTE_COUNT 9345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_LIST_BYTE_COUNT 4096 9355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of parameters in an SDP protocol element. */ 9385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_PROTOCOL_PARAMS 9395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_PROTOCOL_PARAMS 2 9405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous client and server connections. */ 9435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_CONNECTIONS 9445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_CONNECTIONS 4 9455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The MTU size for the L2CAP configuration. */ 9485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MTU_SIZE 949f8d46a639d847795bbe7b0a7878383da6318c064Matthew Xie#define SDP_MTU_SIZE 672 9505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The flush timeout for the L2CAP configuration. */ 9535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_FLUSH_TO 9545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_FLUSH_TO 0xFFFF 9555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The name for security authorization. */ 9585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_SERVICE_NAME 9595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_SERVICE_NAME "Service Discovery" 9605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The security level for BTM. */ 9635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_SECURITY_LEVEL 9645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_SECURITY_LEVEL BTM_SEC_NONE 9655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 9685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 9695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** RFCOMM 9705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 9715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 9725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of ports supported. */ 9745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_RFC_PORTS 9755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_RFC_PORTS 30 9765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum simultaneous links to different devices. */ 9795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_ACL_CONNECTIONS 9805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_BD_CONNECTIONS 7 9815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 9825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_BD_CONNECTIONS MAX_ACL_CONNECTIONS 9835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue low watermark level, in bytes. */ 9865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_LOW_WM 9875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_LOW_WM (BTA_RFC_MTU_SIZE * PORT_RX_BUF_LOW_WM) 9885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue high watermark level, in bytes. */ 9915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_HIGH_WM 9925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_HIGH_WM (BTA_RFC_MTU_SIZE * PORT_RX_BUF_HIGH_WM) 9935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue critical watermark level, in bytes. */ 9965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_CRITICAL_WM 9975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_CRITICAL_WM (BTA_RFC_MTU_SIZE * PORT_RX_BUF_CRITICAL_WM) 9985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue low watermark level, in number of buffers. */ 10015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_BUF_LOW_WM 10025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_BUF_LOW_WM 4 10035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue high watermark level, in number of buffers. */ 10065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_BUF_HIGH_WM 10075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_BUF_HIGH_WM 10 10085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue critical watermark level, in number of buffers. */ 10115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_BUF_CRITICAL_WM 10125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_BUF_CRITICAL_WM 15 10135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue high watermark level, in bytes. */ 10165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_HIGH_WM 10175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_HIGH_WM (BTA_RFC_MTU_SIZE * PORT_TX_BUF_HIGH_WM) 10185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue critical watermark level, in bytes. */ 10215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_CRITICAL_WM 10225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_CRITICAL_WM (BTA_RFC_MTU_SIZE * PORT_TX_BUF_CRITICAL_WM) 10235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue high watermark level, in number of buffers. */ 10265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_BUF_HIGH_WM 10275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_BUF_HIGH_WM 10 10285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue high watermark level, in number of buffers. */ 10315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_BUF_CRITICAL_WM 10325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_BUF_CRITICAL_WM 15 10335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The RFCOMM multiplexer preferred flow control mechanism. */ 10365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_FC_DEFAULT 10375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_FC_DEFAULT PORT_FC_CREDIT 10385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of credits receiver sends to peer when using credit-based flow control. */ 10415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_CREDIT_RX_MAX 10425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_CREDIT_RX_MAX 16 10435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The credit low watermark level. */ 10465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_CREDIT_RX_LOW 10475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_CREDIT_RX_LOW 8 10485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 10515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 10528372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz** OBEX 10538372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz** 10548372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz******************************************************************************/ 1055d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde 1056d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde/* The maximum number of registered servers. */ 1057d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#ifndef OBX_NUM_SERVERS 1058d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#define OBX_NUM_SERVERS 12 1059d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#endif 1060d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde 1061d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde/* The maximum number of active clients. */ 1062d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#ifndef OBX_NUM_CLIENTS 1063d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#define OBX_NUM_CLIENTS 8 1064d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#endif 1065d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde 106670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* 106770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Buffer size to reassemble the SDU. 106870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * It will allow buffers to be used that are larger than the L2CAP_MAX_MTU. 106970ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov */ 107070ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef OBX_USER_RX_BUF_SIZE 107170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define OBX_USER_RX_BUF_SIZE OBX_LRG_DATA_BUF_SIZE 10728372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 10738372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 107470ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* 107570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Buffer size to hold the SDU. 107670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * It will allow buffers to be used that are larger than the L2CAP_MAX_MTU. 107770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov */ 107870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef OBX_USER_TX_BUF_SIZE 107970ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define OBX_USER_TX_BUF_SIZE OBX_LRG_DATA_BUF_SIZE 10808372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 10818372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 108270ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* Buffer size used to hold MPS segments during SDU reassembly. */ 108370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef OBX_FCR_RX_BUF_SIZE 108470ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define OBX_FCR_RX_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 10858372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 10868372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 108770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* 108870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Buffer size used to hold MPS segments used in (re)transmissions. 108970ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * The size of each buffer must be able to hold the maximum MPS segment size 109070ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * passed in L2CA_SetFCROptions plus BT_HDR (8) + HCI preamble (4) + 109170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * L2CAP_MIN_OFFSET (11 - as of BT 2.1 + EDR Spec). 109270ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov */ 109370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef OBX_FCR_TX_BUF_SIZE 109470ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define OBX_FCR_TX_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 10958372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 10968372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 109770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* 109870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Size of the transmission window when using enhanced retransmission mode. 109970ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Not used in basic and streaming modes. Range: 1 - 63 110070ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov */ 11018372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_TX_WINDOW_SIZE_BR_EDR 11028372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_TX_WINDOW_SIZE_BR_EDR 20 11038372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 11048372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 110570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* 110670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Number of transmission attempts for a single I-Frame before taking 110770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Down the connection. Used In ERTM mode only. Value is Ignored in basic and 110870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Streaming modes. 110970ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Range: 0, 1-0xFF 111070ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * 0 - infinite retransmissions 111170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * 1 - single transmission 111270ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov */ 11138372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_MAX_TX_B4_DISCNT 11148372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_MAX_TX_B4_DISCNT 20 11158372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 11168372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 111770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* 111870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Retransmission Timeout 111970ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Range: Minimum 2000 (2 secs) on BR/EDR when supporting PBF. 11208372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz */ 11218372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_RETX_TOUT 11228372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_RETX_TOUT 2000 11238372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 11248372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 112570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* 112670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Monitor Timeout 112770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Range: Minimum 12000 (12 secs) on BR/EDR when supporting PBF. 112870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov */ 11298372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_MONITOR_TOUT 11308372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_MONITOR_TOUT 12000 11318372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 11328372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 113370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* 113470ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Maximum PDU payload size. 113570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Suggestion: The maximum amount of data that will fit into a 3-DH5 packet. 113670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Range: 2 octets 113770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov */ 11388372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_MAX_PDU_SIZE 11398372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_MAX_PDU_SIZE L2CAP_MPS_OVER_BR_EDR 11408372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 11418372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 11428372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 11438372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/****************************************************************************** 11448372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz** 11455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BNEP 11465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 11475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 11485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_INCLUDED 11505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_INCLUDED TRUE 11515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* BNEP status API call is used mainly to get the L2CAP handle */ 11545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_SUPPORTS_STATUS_API 11555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_SUPPORTS_STATUS_API TRUE 11565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* 11595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** When BNEP connection changes roles after the connection is established 11605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** we will do an authentication check again on the new role 11615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 11625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_DO_AUTH_FOR_ROLE_SWITCH 11635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_DO_AUTH_FOR_ROLE_SWITCH TRUE 11645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of protocol filters supported. */ 11685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_PROT_FILTERS 11695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_PROT_FILTERS 5 11705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of multicast filters supported. */ 11735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_MULTI_FILTERS 11745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_MULTI_FILTERS 5 11755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Minimum MTU size. */ 11785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MIN_MTU_SIZE 11795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MIN_MTU_SIZE L2CAP_MTU_SIZE 11805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Preferred MTU size. */ 11835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MTU_SIZE 11845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MTU_SIZE BNEP_MIN_MTU_SIZE 11855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of buffers allowed in transmit data queue. */ 11885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_XMITQ_DEPTH 11895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_XMITQ_DEPTH 20 11905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number BNEP of connections supported. */ 11935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_CONNECTIONS 11945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_CONNECTIONS 7 11955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 11995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 12005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** AVDTP 12015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 12025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 12035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_INCLUDED 12055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_INCLUDED TRUE 12065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include reporting capability in AVDTP */ 12095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_REPORTING 12105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_REPORTING TRUE 12115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include multiplexing capability in AVDTP */ 12145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_MULTIPLEXING 12155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_MULTIPLEXING TRUE 12165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous links to different peer devices. */ 12195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_LINKS 12205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_LINKS 2 12215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous stream endpoints. */ 12245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_SEPS 12255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_SEPS 3 12265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of transport channels setup per media stream(audio or video) */ 12295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_CHANNELS 12305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if AVDT_REPORTING == TRUE 12325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* signaling, media and reporting channels */ 12335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_CHANNELS 3 12345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 12355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* signaling and media channels */ 12365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_CHANNELS 2 1237f857d64505d81ce0834de150b79b333a4ff445f2Chris Manton#endif // AVDT_REPORTING 12385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1239f857d64505d81ce0834de150b79b333a4ff445f2Chris Manton#endif // AVDT_NUM_CHANNELS 12405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of transport channels setup by AVDT for all media streams 12425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * AVDT_NUM_CHANNELS * Number of simultaneous streams. 12435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */ 12445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_TC_TBL 12455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_TC_TBL 6 12465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum size in bytes of the codec capabilities information element. */ 12495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_CODEC_SIZE 12505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_CODEC_SIZE 10 12515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum size in bytes of the content protection information element. */ 12545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_PROTECT_SIZE 12555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_PROTECT_SIZE 90 12565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 125870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* Maximum number of buffers in the fragment queue (for video frames). */ 12595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_MAX_FRAG_COUNT 12605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_MAX_FRAG_COUNT 15 12615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 12645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 12655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN 12665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 12675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 12685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_INCLUDED 12705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_INCLUDED TRUE 12715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This will enable the PANU role */ 12745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_ROLE_PANU 12755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_ROLE_PANU TRUE 12765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This will enable the GN role */ 12795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_ROLE_GN 12805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_ROLE_GN TRUE 12815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This will enable the NAP role */ 12845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_ROLE_NAP 12855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_ROLE_NAP TRUE 12865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is just for debugging purposes */ 12895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_DEBUG_DUMP 12905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_DEBUG_DUMP TRUE 12915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of PAN connections allowed */ 12945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_PAN_CONNS 12955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_PAN_CONNS 7 12965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default service name for NAP role */ 12995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_NAP_DEFAULT_SERVICE_NAME 13005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_NAP_DEFAULT_SERVICE_NAME "Network Access Point Service" 13015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default service name for GN role */ 13045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_GN_DEFAULT_SERVICE_NAME 13055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_GN_DEFAULT_SERVICE_NAME "Group Network Service" 13065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default service name for PANU role */ 13095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_PANU_DEFAULT_SERVICE_NAME 13105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_PANU_DEFAULT_SERVICE_NAME "PAN User Service" 13115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default description for NAP role service */ 13145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_NAP_DEFAULT_DESCRIPTION 13155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_NAP_DEFAULT_DESCRIPTION "NAP" 13165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default description for GN role service */ 13195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_GN_DEFAULT_DESCRIPTION 13205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_GN_DEFAULT_DESCRIPTION "GN" 13215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default description for PANU role service */ 13245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_PANU_DEFAULT_DESCRIPTION 13255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_PANU_DEFAULT_DESCRIPTION "PANU" 13265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default Security level for PANU role. */ 13295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_PANU_SECURITY_LEVEL 13305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_PANU_SECURITY_LEVEL 0 13315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default Security level for GN role. */ 13345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_GN_SECURITY_LEVEL 13355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_GN_SECURITY_LEVEL 0 13365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default Security level for NAP role. */ 13395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_NAP_SECURITY_LEVEL 13405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_NAP_SECURITY_LEVEL 0 13415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 13445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 13455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** GAP 13465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 13475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 13485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13498372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_INCLUDED 13508372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_INCLUDED TRUE 13518372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 13528372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 13538372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This is set to enable use of GAP L2CAP connections. */ 13548372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_CONN_INCLUDED 13558372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_CONN_INCLUDED TRUE 13568372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 13578372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 13588372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This is set to enable posting event for data write */ 13598372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_CONN_POST_EVT_INCLUDED 13608372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_CONN_POST_EVT_INCLUDED FALSE 13618372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 13628372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 13638372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* The maximum number of simultaneous GAP L2CAP connections. */ 13648372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_MAX_CONNECTIONS 13658372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_MAX_CONNECTIONS 30 13668372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 13678372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 13685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* keep the raw data received from SDP server in database. */ 13695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_RAW_DATA_INCLUDED 13705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_RAW_DATA_INCLUDED TRUE 13715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Inquiry duration in 1.28 second units. */ 13745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_DEBUG 13755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_DEBUG TRUE 13765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 13795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 13805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** HID 13815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 13825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 13835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_DEV_SUBCLASS 13855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_DEV_SUBCLASS COD_MINOR_POINTING 13865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13882e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef HID_CONTROL_BUF_SIZE 138970ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define HID_CONTROL_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 13905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13922e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef HID_INTERRUPT_BUF_SIZE 139370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define HID_INTERRUPT_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 13945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/************************************************************************* 13975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Definitions for Both HID-Host & Device 13985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 13995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_MAX_SVC_NAME_LEN 14005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_MAX_SVC_NAME_LEN 32 14015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_MAX_SVC_DESCR_LEN 14045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_MAX_SVC_DESCR_LEN 32 14055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_MAX_PROV_NAME_LEN 14085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_MAX_PROV_NAME_LEN 32 14095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/************************************************************************* 14125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Definitions for HID-Host 14135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 14145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_INCLUDED 14155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_INCLUDED TRUE 14165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_MAX_DEVICES 14195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_MAX_DEVICES 7 14205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_MTU 14235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_MTU 640 14245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_FLUSH_TO 14275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_FLUSH_TO 0xffff 14285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_MAX_CONN_RETRY 14315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_MAX_CONN_RETRY (3) 14325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_REPAGE_WIN 14355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_REPAGE_WIN (2) 14365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/************************************************************************* 14395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * A2DP Definitions 14405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */ 14415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef A2D_INCLUDED 14425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_INCLUDED TRUE 14435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 14465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 14475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** AVCTP 14485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 14495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 14505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous ACL links to different peer devices. */ 14525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVCT_NUM_LINKS 14535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVCT_NUM_LINKS 2 14545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous AVCTP connections. */ 14575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVCT_NUM_CONN 14585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVCT_NUM_CONN 3 14595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 14625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 14635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** AVRCP 14645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 14655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 14665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14679adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan#ifndef AVRC_METADATA_INCLUDED 14689adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan#define AVRC_METADATA_INCLUDED TRUE 14699adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan#endif 14709adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan 1471247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji#ifndef AVRC_ADV_CTRL_INCLUDED 1472247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji#define AVRC_ADV_CTRL_INCLUDED TRUE 1473247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji#endif 1474247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji 147593912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood#ifndef AVRC_CTLR_INCLUDED 147693912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood#define AVRC_CTLR_INCLUDED TRUE 147793912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood#endif 147893912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood 14795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 14805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 14815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** MCAP 14825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 14835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 14845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_INCLUDED 14855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_INCLUDED FALSE 14865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The MTU size for the L2CAP configuration on control channel. 48 is the minimal */ 14895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_CTRL_MTU 14905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_CTRL_MTU 60 14915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of registered MCAP instances. */ 14945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_REGS 1495f8f30c2cecf221b2c3983b72d5a849d799c39dd7Priti Aghera#define MCA_NUM_REGS 12 14965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of control channels (to difference devices) per registered MCAP instances. */ 14995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_LINKS 15005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_NUM_LINKS 3 15015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of MDEP (including HDP echo) per registered MCAP instances. */ 15045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_DEPS 1505f8f30c2cecf221b2c3983b72d5a849d799c39dd7Priti Aghera#define MCA_NUM_DEPS 13 15065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of MDL link per control channel. */ 15095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_MDLS 15105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_NUM_MDLS 4 15115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 151370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* Buffer size to reassemble the SDU. */ 15141d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef MCA_USER_RX_BUF_SIZE 151570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define MCA_USER_RX_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 15161d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 15171d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 151870ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov/* Buffer size to hold the SDU. */ 15191d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef MCA_USER_TX_BUF_SIZE 152070ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define MCA_USER_TX_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 15211d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 15221d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 15235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* 152470ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Buffer size used to hold MPS segments during SDU reassembly 152570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov */ 15261d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef MCA_FCR_RX_BUF_SIZE 152770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define MCA_FCR_RX_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 15281d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 15291d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 15305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* 153170ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * Default buffer size used to hold MPS segments used in (re)transmissions. 153270ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * The size of each buffer must be able to hold the maximum MPS segment size 153370ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * passed in tL2CAP_FCR_OPTIONS plus BT_HDR (8) + HCI preamble (4) + 153470ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov * L2CAP_MIN_OFFSET (11 - as of BT 2.1 + EDR Spec). 153570ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov */ 153670ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#ifndef MCA_FCR_TX_BUF_SIZE 153770ae7de9451e3dc074a048ba98b672a6ba3a4551Pavlin Radoslavov#define MCA_FCR_TX_BUF_SIZE BT_DEFAULT_BUFFER_SIZE 15385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: 15415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectSize of the transmission window when using enhanced retransmission mode. 15425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project1 is defined by HDP specification for control channel. 15435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 15445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_TX_WINDOW_SIZE 15455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_TX_WINDOW_SIZE 1 15465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: 15495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectNumber of transmission attempts for a single I-Frame before taking 15505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectDown the connection. Used In ERTM mode only. Value is Ignored in basic and 15515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectStreaming modes. 15525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectRange: 0, 1-0xFF 15535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project0 - infinite retransmissions 15545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project1 - single transmission 15555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 15565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_MAX_TX_B4_DISCNT 15575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_MAX_TX_B4_DISCNT 20 15585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: Retransmission Timeout 15615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectThe AVRCP specification set a value in the range of 300 - 2000 ms 15625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectTimeout (in msecs) to detect Lost I-Frames. Only used in Enhanced retransmission mode. 15635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectRange: Minimum 2000 (2 secs) when supporting PBF. 15645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */ 15655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_RETX_TOUT 15665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_RETX_TOUT 2000 15675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: Monitor Timeout 15705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectThe AVRCP specification set a value in the range of 300 - 2000 ms 15715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectTimeout (in msecs) to detect Lost S-Frames. Only used in Enhanced retransmission mode. 15725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectRange: Minimum 12000 (12 secs) when supporting PBF. 15735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 15745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_MONITOR_TOUT 15755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_MONITOR_TOUT 12000 15765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: Maximum PDU payload size. 15795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectThe maximum number of payload octets that the local device can receive in a single PDU. 15805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 15815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_MPS_SIZE 15825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_MPS_SIZE 1000 15835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Shared transport */ 15865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef NFC_SHARED_TRANSPORT_ENABLED 15875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define NFC_SHARED_TRANSPORT_ENABLED FALSE 15885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 15915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 15925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Sleep Mode (Low Power Mode) 15935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 15945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 15955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCILP_INCLUDED 15975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCILP_INCLUDED TRUE 15985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 16015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** APPL - Application Task 16035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 16055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_FEATURE_REQ_ID 73 16075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_FEATURE_RSP_ID 173 16085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 16105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BTA 16125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 16145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* BTA EIR canned UUID list (default is dynamic) */ 16155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_EIR_CANNED_UUID_LIST 16165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_EIR_CANNED_UUID_LIST FALSE 16175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of supported customer UUID in EIR */ 16205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_EIR_SERVER_NUM_CUSTOM_UUID 16215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_EIR_SERVER_NUM_CUSTOM_UUID 8 16225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1624b7a077b6aa2af20e9505a7baf0b1d6dfa2ad24e6Andre Eisenbach/* CHLD override */ 16255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_CHLD_VAL_ECC 16265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AG_CHLD_VAL_ECC "(0,1,1x,2,2x,3)" 16275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_CHLD_VAL 16305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AG_CHLD_VAL "(0,1,2,3)" 16315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Set the CIND to match HFP 1.5 */ 16345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_CIND_INFO 16355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#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))" 16365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16389647e91549368fd44440dd13a854f403feb13ad9Mattias Agren#ifndef BTA_DM_AVOID_A2DP_ROLESWITCH_ON_INQUIRY 16399647e91549368fd44440dd13a854f403feb13ad9Mattias Agren#define BTA_DM_AVOID_A2DP_ROLESWITCH_ON_INQUIRY TRUE 16409647e91549368fd44440dd13a854f403feb13ad9Mattias Agren#endif 16415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 16435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Tracing: Include trace header file here. 16455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 16475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16481bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach/* Enable/disable BTSnoop memory logging */ 16491bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach#ifndef BTSNOOP_MEM 16501bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach#define BTSNOOP_MEM TRUE 16511bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach#endif 16521bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach 16535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bt_trace.h" 16545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* BT_TARGET_H */ 1656