bt_target.h revision 1d5b85924df3a114efe6588e857d0de3eb47b1d2
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 "gki_target.h" 395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "dyn_mem.h" /* defines static and/or dynamic memory for components */ 405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 417f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie//------------------Added from bdroid_buildcfg.h--------------------- 425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_EXTFEA_SUPPORTED_MASK 435738f83aeb59361a0a2eda2460113f6dc919427The 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) 445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTUI_OPS_FORMATS 475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTUI_OPS_FORMATS (BTA_OP_VCARD21_MASK | BTA_OP_ANY_MASK) 485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_RFC_MTU_SIZE 515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_RFC_MTU_SIZE (L2CAP_MTU_SIZE-L2CAP_MIN_OFFSET-RFCOMM_DATA_OVERHEAD) 525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SBC_NO_PCM_CPY_OPTION 555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SBC_NO_PCM_CPY_OPTION FALSE 565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_INCLUDED 595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_INCLUDED TRUE 605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_PAN_INCLUDED 635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_PAN_INCLUDED TRUE 645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_HH_INCLUDED 675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_HH_INCLUDED TRUE 685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_HH_ROLE 715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_HH_ROLE BTA_MASTER_ROLE_PREF 725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 742e7fa68bfd9723b7ec7b6b0b128d89f31a2e06eeAndre Eisenbach#ifndef BTA_HH_LE_INCLUDED 752e7fa68bfd9723b7ec7b6b0b128d89f31a2e06eeAndre Eisenbach#define BTA_HH_LE_INCLUDED TRUE 762e7fa68bfd9723b7ec7b6b0b128d89f31a2e06eeAndre Eisenbach#endif 772e7fa68bfd9723b7ec7b6b0b128d89f31a2e06eeAndre Eisenbach 785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AR_INCLUDED 795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AR_INCLUDED TRUE 805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AV_INCLUDED 835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AV_INCLUDED TRUE 845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 867fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#ifndef BTA_GATT_INCLUDED 877fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#define BTA_GATT_INCLUDED TRUE 885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 906718c6d9fcfe373a679a529aca003d32062f81dclungtsai_lin#ifndef BTA_AV_SINK_INCLUDED 916718c6d9fcfe373a679a529aca003d32062f81dclungtsai_lin#define BTA_AV_SINK_INCLUDED FALSE 926718c6d9fcfe373a679a529aca003d32062f81dclungtsai_lin#endif 93f7dd9f5779680da37dc89e5df2b26d436487818cHemant Gupta 945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_DISABLE_DELAY 955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DISABLE_DELAY 200 /* in milliseconds */ 965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 98e6c363badaac6084e84775de59acb3976c80111dMatthew Xie// If the next wakeup time is less than this threshold, we should acquire 99e6c363badaac6084e84775de59acb3976c80111dMatthew Xie// a wakelock instead of setting a wake alarm so we're not bouncing in 100e6c363badaac6084e84775de59acb3976c80111dMatthew Xie// and out of suspend frequently. 101e6c363badaac6084e84775de59acb3976c80111dMatthew Xie// in millisecond 102e97508ef05277f7e2299793b51cd3df080a58527Chris Manton// TODO(zachoverflow): reinstate in alarm code 103e6c363badaac6084e84775de59acb3976c80111dMatthew Xie#ifndef GKI_TIMER_INTERVAL_FOR_WAKELOCK 104e6c363badaac6084e84775de59acb3976c80111dMatthew Xie#define GKI_TIMER_INTERVAL_FOR_WAKELOCK 3000 105e6c363badaac6084e84775de59acb3976c80111dMatthew Xie#endif 106e6c363badaac6084e84775de59acb3976c80111dMatthew Xie 1075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_SYS_TIMER_PERIOD 1085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_SYS_TIMER_PERIOD 100 1095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SBC_FOR_EMBEDDED_LINUX 1125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SBC_FOR_EMBEDDED_LINUX TRUE 1135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_VERSION 1165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_VERSION 0x0102 1175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_AT_MAX_LEN 1205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AG_AT_MAX_LEN 512 1215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AVRCP_FF_RW_SUPPORT 1245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AVRCP_FF_RW_SUPPORT TRUE 1255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_SCO_PKT_TYPES 1285738f83aeb59361a0a2eda2460113f6dc919427The 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) 1295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AV_RET_TOUT 1325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AV_RET_TOUT 15 1335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORCHE_PAIRING_CONFLICT 1365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORCHE_PAIRING_CONFLICT TRUE 1375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AV_CO_CP_SCMS_T 1405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AV_CO_CP_SCMS_T FALSE 1415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1437f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie/* This feature is used to eanble interleaved scan*/ 1447f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie#ifndef BTA_HOST_INTERLEAVE_SEARCH 1457f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie#define BTA_HOST_INTERLEAVE_SEARCH FALSE 1467f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie#endif 1477f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie 1485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_USE_TRACES 1495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_USE_TRACES TRUE 1505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_TRACE_BTIF 1535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_TRACE_BTIF TRUE 1545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_TRACE_VERBOSE 1575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_TRACE_VERBOSE FALSE 1585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_DM_SDP_DB_SIZE 1615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_SDP_DB_SIZE 8000 1625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HL_INCLUDED 1655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HL_INCLUDED TRUE 1665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AG_VOICE_SETTINGS 1695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AG_VOICE_SETTINGS HCI_DEFAULT_VOICE_SETTINGS 1705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTIF_DM_OOB_TEST 1735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_DM_OOB_TEST TRUE 1745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1757f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie 1760963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana// How long to wait before activating sniff mode after entering the 1770963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana// idle state for FTS, OPS connections 1780963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana#ifndef BTA_FTS_OPS_IDLE_TO_SNIFF_DELAY_MS 1790963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana#define BTA_FTS_OPS_IDLE_TO_SNIFF_DELAY_MS 7000 1800963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana#endif 1810963a67ffd53c8648ab61b0c8b0508391951ae7bFred Quintana 1827f3e42943b834ff0f556cd5c063a896f54d53167Matthew Xie//------------------End added from bdroid_buildcfg.h--------------------- 1835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 1865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 1875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** GKI Buffer Pools 1885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 1895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 1905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Receives HCI events from the lower-layer. */ 1925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCI_CMD_POOL_ID 1935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCI_CMD_POOL_ID GKI_POOL_ID_2 1945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCI_CMD_POOL_BUF_SIZE 1975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCI_CMD_POOL_BUF_SIZE GKI_BUF2_SIZE 1985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2002e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* Receives ACL data packets from the lower-layer. */ 2015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCI_ACL_POOL_ID 2025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCI_ACL_POOL_ID GKI_POOL_ID_3 2035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of buffers available for ACL receive data. */ 2065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCI_ACL_BUF_MAX 2075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCI_ACL_BUF_MAX GKI_BUF3_MAX 2085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2101d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef HCI_ACL_BUF_SIZE 2111d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define HCI_ACL_BUF_SIZE (4096+16) 2121d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 2131d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 2145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Receives SCO data packets from the lower-layer. */ 2155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCI_SCO_POOL_ID 2165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCI_SCO_POOL_ID GKI_POOL_ID_6 2175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends SDP data packets. */ 2202e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef SDP_DATA_BUF_SIZE 2212e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define SDP_DATA_BUF_SIZE (4096+16) 2222e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 2232e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 2245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_POOL_ID 2255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_POOL_ID 3 2265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends RFCOMM command packets. */ 2292e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef RFCOMM_CMD_BUF_SIZE 2302e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define RFCOMM_CMD_BUF_SIZE 660 2312e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 2322e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 2335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef RFCOMM_CMD_POOL_ID 2345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define RFCOMM_CMD_POOL_ID GKI_POOL_ID_2 2355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends RFCOMM data packets. */ 2382e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef RFCOMM_DATA_BUF_SIZE 2392e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define RFCOMM_DATA_BUF_SIZE (4096+16) 2402e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 2412e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 2425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef RFCOMM_DATA_POOL_ID 2435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define RFCOMM_DATA_POOL_ID GKI_POOL_ID_3 2445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef RFCOMM_DATA_POOL_BUF_SIZE 2475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define RFCOMM_DATA_POOL_BUF_SIZE GKI_BUF3_SIZE 2485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends L2CAP packets to the peer and HCI messages to the controller. */ 2512e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef L2CAP_CMD_BUF_SIZE 2522e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define L2CAP_CMD_BUF_SIZE 660 2532e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 2542e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 2555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_CMD_POOL_ID 2565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_CMD_POOL_ID GKI_POOL_ID_2 2575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2591d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef L2CAP_USER_TX_BUF_SIZE 2601d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define L2CAP_USER_TX_BUF_SIZE (4096+16) 2611d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 2621d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 2631d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef L2CAP_USER_RX_BUF_SIZE 2641d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define L2CAP_USER_RX_BUF_SIZE (4096+16) 2651d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 2661d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 2675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends L2CAP segmented packets in ERTM mode */ 2685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_FCR_TX_POOL_ID 2695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_FCR_TX_POOL_ID HCI_ACL_POOL_ID 2705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2721d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef L2CAP_FCR_TX_BUF_SIZE 2731d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define L2CAP_FCR_TX_BUF_SIZE (4096+16) 2741d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 2751d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 2761d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef L2CAP_FCR_RX_BUF_SIZE 2771d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define L2CAP_FCR_RX_BUF_SIZE (4096+16) 2781d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 2791d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 2805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Receives L2CAP segmented packets in ERTM mode */ 2815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_FCR_RX_POOL_ID 2825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_FCR_RX_POOL_ID HCI_ACL_POOL_ID 2835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2852e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef L2CAP_FCR_ERTM_BUF_SIZE 2862e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define L2CAP_FCR_ERTM_BUF_SIZE (10240 + 24) 2872e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 2882e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 28912c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach/* Number of ACL buffers to assign to LE 29012c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach if the HCI buffer pool is shared with BR/EDR */ 29112c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach#ifndef L2C_DEF_NUM_BLE_BUF_SHARED 29212c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach#define L2C_DEF_NUM_BLE_BUF_SHARED 1 29312c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach#endif 29412c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach 2955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used by BTM when it sends HCI commands to the controller. */ 2962e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef BTM_CMD_BUF_SIZE 2972e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define BTM_CMD_BUF_SIZE 660 2982e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 2992e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 3005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_CMD_POOL_ID 3015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_CMD_POOL_ID GKI_POOL_ID_2 3025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3048372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_LRG_DATA_POOL_SIZE 3058372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_LRG_DATA_POOL_SIZE GKI_BUF4_SIZE 3068372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 3078372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 3088372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_LRG_DATA_POOL_ID 3098372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_LRG_DATA_POOL_ID GKI_POOL_ID_4 3108372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 3112e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 3125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used to send data to L2CAP. */ 3132e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef GAP_DATA_BUF_SIZE 3142e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define GAP_DATA_BUF_SIZE (4096+16) 3152e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 3162e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 3175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GAP_DATA_POOL_ID 3185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GAP_DATA_POOL_ID GKI_POOL_ID_3 3195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SPP_DB_SIZE 3225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SPP_DB_SIZE GKI_BUF3_SIZE 3235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* BNEP data and protocol messages. */ 3262e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef BNEP_BUF_SIZE 3272e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define BNEP_BUF_SIZE (4096+16) 3282e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 3292e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 3305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_POOL_ID 3315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_POOL_ID GKI_POOL_ID_3 3325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* RPC pool for temporary trace message buffers. */ 3355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef RPC_SCRATCH_POOL_ID 3365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define RPC_SCRATCH_POOL_ID GKI_POOL_ID_2 3375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3392e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* AVDTP buffer size for protocol messages */ 3402e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef AVDT_CMD_BUF_SIZE 3412e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define AVDT_CMD_BUF_SIZE 660 3422e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 3432e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 3445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVDTP pool for protocol messages */ 3455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_CMD_POOL_ID 3465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_CMD_POOL_ID GKI_POOL_ID_2 3475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVDTP pool size for media packets in case of fragmentation */ 3505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_DATA_POOL_SIZE 3515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_DATA_POOL_SIZE GKI_BUF3_SIZE 3525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3542e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef PAN_BUF_SIZE 3552e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define PAN_BUF_SIZE (4096+16) 3562e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 3572e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 3585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_POOL_ID 3595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_POOL_ID GKI_POOL_ID_3 36095ca3c43eae763465bbd7bddc927279f17b16106Zhenye Zhu/* Maximum amount of the shared buffer to allocate for PAN */ 36195ca3c43eae763465bbd7bddc927279f17b16106Zhenye Zhu#define PAN_POOL_MAX (GKI_BUF3_MAX / 4) 3625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3642e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* AVCTP buffer size for protocol messages */ 3652e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef AVCT_CMD_BUF_SIZE 3662e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define AVCT_CMD_BUF_SIZE 288 3672e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 3682e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 3695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVCTP pool for protocol messages */ 3705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVCT_CMD_POOL_ID 3715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVCT_CMD_POOL_ID GKI_POOL_ID_1 3725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3742e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* AVRCP buffer size for protocol messages */ 3752e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef AVRC_CMD_BUF_SIZE 3762e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define AVRC_CMD_BUF_SIZE 288 3772e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 3782e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 3795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVRCP pool for protocol messages */ 3805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVRC_CMD_POOL_ID 3815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVRC_CMD_POOL_ID GKI_POOL_ID_1 3825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVRCP pool size for protocol messages */ 3855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVRC_CMD_POOL_SIZE 3865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVRC_CMD_POOL_SIZE GKI_BUF1_SIZE 3875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3892e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* AVRCP Metadata buffer size for protocol messages */ 3902e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef AVRC_META_CMD_BUF_SIZE 3912e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define AVRC_META_CMD_BUF_SIZE 660 3922e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 3932e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 3945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVRCP Metadata pool for protocol messages */ 3955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVRC_META_CMD_POOL_ID 3965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVRC_META_CMD_POOL_ID GKI_POOL_ID_2 3975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 3985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVRCP Metadata pool size for protocol messages */ 4005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVRC_META_CMD_POOL_SIZE 4015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVRC_META_CMD_POOL_SIZE GKI_BUF2_SIZE 4025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVRCP buffer size for browsing channel messages */ 4065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVRC_BROWSE_POOL_SIZE 4075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVRC_BROWSE_POOL_SIZE GKI_MAX_BUF_SIZE 4085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4101d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef BTA_HL_USER_TX_BUF_SIZE 4111d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define BTA_HL_USER_TX_BUF_SIZE (4096+16) 4121d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 4131d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 4142e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef BTA_HL_LRG_DATA_BUF_SIZE 4151d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define BTA_HL_LRG_DATA_BUF_SIZE (10240 + 24) 4162e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 4172e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 4185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_HL_LRG_DATA_POOL_ID 4195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_HL_LRG_DATA_POOL_ID GKI_POOL_ID_7 4205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4222e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* GATT Server Database buffer size */ 4232e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef GATT_DB_BUF_SIZE 4242e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define GATT_DB_BUF_SIZE 128 4252e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 4262e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 4275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* GATT Server Database pool ID */ 4285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_DB_POOL_ID 4295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GATT_DB_POOL_ID GKI_POOL_ID_8 4305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4322e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov/* GATT Data sending buffer size, use default ACL pool for fix channel data */ 4332e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef GATT_DATA_BUF_SIZE 4342e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define GATT_DATA_BUF_SIZE (4096+16) 4352e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 4362e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 43717b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach/* GATT Data sending buffer pool ID, use default ACL pool for fix channel data */ 43817b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach#ifndef GATT_BUF_POOL_ID 43917b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach#define GATT_BUF_POOL_ID HCI_ACL_POOL_ID 44017b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach#endif 44117b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach 4425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 4435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Lower Layer Interface 4455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 4475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Macro for allocating buffer for HCI commands */ 4495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCI_GET_CMD_BUF 4505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (!defined(HCI_USE_VARIABLE_SIZE_CMD_BUF) || (HCI_USE_VARIABLE_SIZE_CMD_BUF == FALSE)) 4515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Allocate fixed-size buffer from HCI_CMD_POOL (default case) */ 4522e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define HCI_GET_CMD_BUF(paramlen) ((BT_HDR *)GKI_getbuf (HCI_CMD_POOL_BUF_SIZE)) 4535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 4545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Allocate smallest possible buffer (for platforms with limited RAM) */ 4555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCI_GET_CMD_BUF(paramlen) ((BT_HDR *)GKI_getbuf ((UINT16)(BT_HDR_SIZE + HCIC_PREAMBLE_SIZE + (paramlen)))) 4565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* HCI_GET_CMD_BUF */ 4585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 4605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** HCI Services (H4) 4625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 4645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Use 2 second for low-resolution systems, override to 1 for high-resolution systems */ 4665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_1SEC_TIMEOUT 4675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_1SEC_TIMEOUT (2) 4685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Quick Timer */ 4715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* if L2CAP_FCR_INCLUDED is TRUE then it should have 100 millisecond resolution */ 4725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* if none of them is included then QUICK_TIMER_TICKS_PER_SEC is set to 0 to exclude quick timer */ 4735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef QUICK_TIMER_TICKS_PER_SEC 47418023290406f076c5c76cdffdbf8ee081450a42fChris Manton#define QUICK_TIMER_TICKS_PER_SEC 10 /* 100ms timer */ 4755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 4785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BTM 4805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 4825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Cancel Inquiry on incoming SSP */ 4845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_NO_SSP_ON_INQUIRY 4855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_NO_SSP_ON_INQUIRY FALSE 4865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Includes SCO if TRUE */ 4895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_INCLUDED 4905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SCO_INCLUDED TRUE /* TRUE includes SCO code */ 4915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Includes SCO if TRUE */ 4945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_HCI_INCLUDED 4955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SCO_HCI_INCLUDED FALSE /* TRUE includes SCO over HCI code */ 4965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Includes WBS if TRUE */ 4995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_WBS_INCLUDED 5005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_WBS_INCLUDED FALSE /* TRUE includes WBS code */ 5015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is used to work around a controller bug that doesn't like Disconnect 5045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** issued while there is a role switch in progress 5055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 5065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DISC_DURING_RS 5075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DISC_DURING_RS TRUE 5085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/************************** 5115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Initial SCO TX credit 5125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*************************/ 5135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* max TX SCO data packet size */ 5145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_DATA_SIZE_MAX 5155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SCO_DATA_SIZE_MAX 240 5165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The size in bytes of the BTM inquiry database. */ 5195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_INQ_DB_SIZE 5205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_INQ_DB_SIZE 40 5215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The default scan mode */ 5245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_SCAN_TYPE 5255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_SCAN_TYPE BTM_SCAN_TYPE_INTERLACED 5265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Should connections to unknown devices be allowed when not discoverable? */ 5295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_ALLOW_CONN_IF_NONDISCOVER 5305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_ALLOW_CONN_IF_NONDISCOVER TRUE 5315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sets the Page_Scan_Window: the length of time that the device is performing a page scan. */ 5345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_CONN_WINDOW 5355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_CONN_WINDOW 0x0012 5365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sets the Page_Scan_Activity: the interval between the start of two consecutive page scans. */ 5395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_CONN_INTERVAL 5405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_CONN_INTERVAL 0x0800 5415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* When automatic inquiry scan is enabled, this sets the inquiry scan window. */ 5445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_DISC_WINDOW 5455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_DISC_WINDOW 0x0012 5465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* When automatic inquiry scan is enabled, this sets the inquiry scan interval. */ 5495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_DISC_INTERVAL 5505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_DISC_INTERVAL 0x0800 5515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default class of device 5545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* {SERVICE_CLASS, MAJOR_CLASS, MINOR_CLASS} 5555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* 5565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* SERVICE_CLASS:0x5A (Bit17 -Networking,Bit19 - Capturing,Bit20 -Object Transfer,Bit22 -Telephony) 5575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* MAJOR_CLASS:0x02 - PHONE 5585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* MINOR_CLASS:0x0C - SMART_PHONE 5595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* 5605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 5615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_DM_COD 5625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_COD {0x5A, 0x02, 0x0C} 5635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of SCO links. */ 5665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_SCO_LINKS 56790a32530e8b9908f2af64ce98931684fa20c061bNitin Srivastava#define BTM_MAX_SCO_LINKS 3 5685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The preferred type of SCO links (2-eSCO, 0-SCO). */ 5715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_SCO_MODE 5725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_SCO_MODE 2 5735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of security records for peer devices. */ 5765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_MAX_DEVICE_RECORDS 5775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_MAX_DEVICE_RECORDS 100 5785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of security records for services. */ 5815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_MAX_SERVICE_RECORDS 5825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_MAX_SERVICE_RECORDS 32 5835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* If True, force a retrieval of remote device name for each bond in case it's changed */ 5865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_FORCE_RNR_FOR_DBOND 5875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_FORCE_RNR_FOR_DBOND FALSE 5885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum device name length used in btm database. */ 5915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_REM_BD_NAME_LEN 5925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_REM_BD_NAME_LEN 248 5935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 5945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum local device name length stored btm database. 5965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project '0' disables storage of the local name in BTM */ 5975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_LOC_BD_NAME_LEN 5985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_LOC_BD_NAME_LEN 248 5995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6011e5109b5cbf49810abd0c94c413ce07db52caacaMatthew Xie/* Fixed Default String. When this is defined as null string, the device's 6021e5109b5cbf49810abd0c94c413ce07db52caacaMatthew Xie * product model name is used as the default local name. 6031e5109b5cbf49810abd0c94c413ce07db52caacaMatthew Xie */ 6045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEF_LOCAL_NAME 6055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEF_LOCAL_NAME "" 6065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum service name stored with security authorization (0 if not needed) */ 6095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_SERVICE_NAME_LEN 6105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_SERVICE_NAME_LEN BT_MAX_SERVICE_NAME_LEN 6115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum length of the service name. */ 6145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_MAX_SERVICE_NAME_LEN 6155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_MAX_SERVICE_NAME_LEN 21 6165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* ACL buffer size in HCI Host Buffer Size command. */ 6195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_ACL_BUF_SIZE 6205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_ACL_BUF_SIZE 0 6215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of clients that can register with the power manager. */ 6245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_PM_RECORDS 6255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_PM_RECORDS 2 6265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to show debug trace messages for the power manager. */ 6295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_PM_DEBUG 6305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_PM_DEBUG FALSE 6315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to TRUE if link is to be unparked due to BTM_CreateSCO API. */ 6345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_WAKE_PARKED_LINK 6355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SCO_WAKE_PARKED_LINK TRUE 6365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* If the user does not respond to security process requests within this many seconds, 6395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * a negative response would be sent automatically. 6405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 30 is LMP response timeout value */ 6415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_TIMEOUT_VALUE 6425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_TIMEOUT_VALUE 35 6435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of callbacks that can be registered using BTM_RegisterForVSEvents */ 6465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_VSE_CALLBACKS 6475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_VSE_CALLBACKS 3 6485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************** 6515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Lisbon Features 6525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************/ 6535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to TRUE if the FEC is required for EIR packet. */ 6545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_EIR_DEFAULT_FEC_REQUIRED 6555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_EIR_DEFAULT_FEC_REQUIRED TRUE 6565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The IO capability of the local device (for Simple Pairing) */ 6595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_LOCAL_IO_CAPS 6605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_LOCAL_IO_CAPS BTM_IO_CAP_IO 6615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 66326fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach#ifndef BTM_LOCAL_IO_CAPS_BLE 66426fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach#define BTM_LOCAL_IO_CAPS_BLE BTM_IO_CAP_KBDISP 66526fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach#endif 66626fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach 6675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The default MITM Protection Requirement (for Simple Pairing) 6685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Possible values are BTM_AUTH_SP_YES or BTM_AUTH_SP_NO */ 6695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_AUTH_REQ 6705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_AUTH_REQ BTM_AUTH_SP_NO 6715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The default MITM Protection Requirement for dedicated bonding using Simple Pairing 6745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Possible values are BTM_AUTH_AP_YES or BTM_AUTH_AP_NO */ 6755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_DD_AUTH_REQ 6765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_DD_AUTH_REQ BTM_AUTH_AP_YES 6775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include Out-of-Band implementation for Simple Pairing */ 6805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_OOB_INCLUDED 6815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_OOB_INCLUDED TRUE 6825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* TRUE to include Sniff Subrating */ 6855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SSR_INCLUDED 6865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SSR_INCLUDED TRUE 6875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/************************* 6905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** End of Lisbon Features 6915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**************************/ 6925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 693b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach/* 4.1/4.2 secure connections feature */ 694b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach#ifndef SC_MODE_INCLUDED 695b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach#define SC_MODE_INCLUDED TRUE 696b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach#endif 697b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach 6985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for conformance testing ONLY */ 6995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_BLE_CONFORMANCE_TESTING 7005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_BLE_CONFORMANCE_TESTING FALSE 7015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 7045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 7055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** L2CAP 7065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 7075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 7085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous links that L2CAP can support. */ 7105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_ACL_CONNECTIONS 7115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_L2CAP_LINKS 7 7125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 7135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_L2CAP_LINKS MAX_ACL_CONNECTIONS 7145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous channels that L2CAP can support. */ 7175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_L2CAP_CHANNELS 718ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define MAX_L2CAP_CHANNELS 16 7195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous applications that can register with L2CAP. */ 7225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_L2CAP_CLIENTS 7235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_L2CAP_CLIENTS 15 7245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of seconds of link inactivity before a link is disconnected. */ 7275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_LINK_INACTIVITY_TOUT 7285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_LINK_INACTIVITY_TOUT 4 7295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of seconds of link inactivity after bonding before a link is disconnected. */ 7325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_BONDING_TIMEOUT 7335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_BONDING_TIMEOUT 3 7345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The time from the HCI connection complete to disconnect if no channel is established. */ 7375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_LINK_STARTUP_TOUT 7385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_LINK_STARTUP_TOUT 60 7395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The L2CAP MTU; must be in accord with the HCI ACL pool size. */ 7425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_MTU_SIZE 7435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_MTU_SIZE 1691 7445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The L2CAP MPS over Bluetooth; must be in accord with the FCR tx pool size and ACL down buffer size. */ 7475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_MPS_OVER_BR_EDR 7485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_MPS_OVER_BR_EDR 1010 7495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* If host flow control enabled, this is the number of buffers the controller can have unacknowledged. */ 7525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_HOST_FC_ACL_BUFS 7535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_HOST_FC_ACL_BUFS 20 7545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7565738f83aeb59361a0a2eda2460113f6dc919427The 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. */ 7575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_WAKE_PARKED_LINK 7585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_WAKE_PARKED_LINK TRUE 7595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Whether link wants to be the master or the slave. */ 7625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_DESIRED_LINK_ROLE 7635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_DESIRED_LINK_ROLE HCI_ROLE_SLAVE 7645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include Non-Flushable Packet Boundary Flag feature of Lisbon */ 7675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_NON_FLUSHABLE_PB_INCLUDED 7685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_NON_FLUSHABLE_PB_INCLUDED TRUE 7695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Minimum number of ACL credit for high priority link */ 7725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_HIGH_PRI_MIN_XMIT_QUOTA 773689d66b6559dcb3a0ad7f6cc33b6129e50910253The Android Open Source Project#define L2CAP_HIGH_PRI_MIN_XMIT_QUOTA 5 7745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* used for monitoring HCI ACL credit management */ 7775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_HCI_FLOW_CONTROL_DEBUG 7785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_HCI_FLOW_CONTROL_DEBUG TRUE 7795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for calculating transmit buffers off of */ 7825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_NUM_XMIT_BUFFS 7835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_NUM_XMIT_BUFFS HCI_ACL_BUF_MAX 7845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data */ 7875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_INCLUDED 7885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_INCLUDED FALSE 7895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data MTU */ 7925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_MTU 7935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_MTU L2CAP_MTU_SIZE 7945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 7955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data Idle Timeout */ 7975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_IDLE_TIMEOUT 7985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_IDLE_TIMEOUT 2 7995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data Idle Timeout */ 8025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_CH_PRIORITY 8035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_CH_PRIORITY L2CAP_CHNL_PRIORITY_MEDIUM 8045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for features using fixed channels; set to zero if no fixed channels supported (BLE, etc.) */ 8075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Excluding L2CAP signaling channel and UCD */ 8085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_NUM_FIXED_CHNLS 8098372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define L2CAP_NUM_FIXED_CHNLS 32 8105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* First fixed channel supported */ 8135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_FIRST_FIXED_CHNL 814444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#define L2CAP_FIRST_FIXED_CHNL 4 8155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_LAST_FIXED_CHNL 8185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_LAST_FIXED_CHNL (L2CAP_FIRST_FIXED_CHNL + L2CAP_NUM_FIXED_CHNLS - 1) 8195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Round Robin service channels in link */ 8225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_ROUND_ROBIN_CHANNEL_SERVICE 8235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_ROUND_ROBIN_CHANNEL_SERVICE TRUE 8245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for calculating transmit buffers off of */ 8275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_NUM_XMIT_BUFFS 8285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_NUM_XMIT_BUFFS HCI_ACL_BUF_MAX 8295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* used for monitoring eL2CAP data flow */ 8325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_ERTM_STATS 8335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_ERTM_STATS FALSE 8345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for conformance testing ONLY: When TRUE lets scriptwrapper overwrite info response */ 8375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_CONFORMANCE_TESTING 8385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_CONFORMANCE_TESTING FALSE 8395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8418372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* 8428372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz * Max bytes per connection to buffer locally before dropping the 8438372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz * connection if local client does not receive it - default is 1MB 8448372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz */ 8458372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef L2CAP_MAX_RX_BUFFER 8468372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define L2CAP_MAX_RX_BUFFER 0x100000 8478372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 8488372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 8498372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 8505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef TIMER_PARAM_TYPE 851bb95452741bfd65723ea417c25dbd326c7568ab7Arman Uguray#define TIMER_PARAM_TYPE void* 8525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 8555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 8565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BLE 8575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 8585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 8595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8604af5f3e8f77e3719fac425134b7a14e527d1523cGanesh Ganapathi Batta#ifndef BLE_INCLUDED 861ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define BLE_INCLUDED TRUE 8625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 864b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#ifndef BLE_ANDROID_CONTROLLER_SCAN_FILTER 865b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#define BLE_ANDROID_CONTROLLER_SCAN_FILTER TRUE 866b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#endif 867b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach 8685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef LOCAL_BLE_CONTROLLER_ID 8695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define LOCAL_BLE_CONTROLLER_ID (1) 8705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8723e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach/* 8733e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * Toggles support for general LE privacy features such as remote address 8743e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * resolution, local address rotation etc. 8753e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach */ 8767fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#ifndef BLE_PRIVACY_SPT 8770aee331900424ed23857ee2390fbb03338a60d91Chris Manton#define BLE_PRIVACY_SPT TRUE 8788b35b3fccc065730e6f0ee1050d3e4528e58ea37Zhihai Xu#endif 8798b35b3fccc065730e6f0ee1050d3e4528e58ea37Zhihai Xu 8803e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach/* 8813e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * Enables or disables support for local privacy (ex. address rotation) 8823e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach */ 8833e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach#ifndef BLE_LOCAL_PRIVACY_ENABLED 8843e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach#define BLE_LOCAL_PRIVACY_ENABLED TRUE 8853e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach#endif 8863e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach 8873e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach/* 8883e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * Toggles support for vendor specific extensions such as RPA offloading, 8893e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * feature discovery, multi-adv etc. 8903e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach */ 891ed534e330bf63c72e778fc8daae09ddd63c395b2Wei Wang#ifndef BLE_VND_INCLUDED 89216fe0822ccd3eb6f66d3afd9965d25a0a0cb4c30Prerepa Viswanadham#define BLE_VND_INCLUDED FALSE 893ed534e330bf63c72e778fc8daae09ddd63c395b2Wei Wang#endif 894d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com 895d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#ifndef BTM_BLE_ADV_TX_POWER 896d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#define BTM_BLE_ADV_TX_POWER {-21, -15, -7, 1, 9} 897d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#endif 898d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com 899d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com 900d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#ifndef BLE_BATCH_SCAN_INCLUDED 901d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#define BLE_BATCH_SCAN_INCLUDED TRUE 902d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#endif 903d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com 9045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 9055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 9065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** ATT/GATT Protocol/Profile Settings 9075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 9085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 909597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#ifndef BTA_GATT_INCLUDED 910597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#if BLE_INCLUDED == TRUE 911597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#define BTA_GATT_INCLUDED TRUE 912597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#else 913597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#define BTA_GATT_INCLUDED FALSE 914597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#endif 915597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#endif 916597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen 917597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#if BTA_GATT_INCLUDED == TRUE && BLE_INCLUDED == FALSE 918597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#error "can't have GATT without BLE" 919597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#endif 920597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen 9217fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#ifndef BLE_LLT_INCLUDED 9227fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#define BLE_LLT_INCLUDED TRUE 9237fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#endif 924e97508ef05277f7e2299793b51cd3df080a58527Chris Manton 9255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef ATT_INCLUDED 926ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define ATT_INCLUDED TRUE 9275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef ATT_DEBUG 930ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define ATT_DEBUG TRUE 9315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 933602162a13c6ed8abae53aee6deeda48b79f30911Zhihai Xu#ifndef BLE_PERIPHERAL_MODE_SUPPORT 9347fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#define BLE_PERIPHERAL_MODE_SUPPORT TRUE 935602162a13c6ed8abae53aee6deeda48b79f30911Zhihai Xu#endif 936602162a13c6ed8abae53aee6deeda48b79f30911Zhihai Xu 9375702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu#ifndef BLE_DELAY_REQUEST_ENC 9385702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu/* This flag is to work around IPHONE problem, We need to wait for iPhone ready 9395702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu before send encryption request to iPhone */ 9405702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu#define BLE_DELAY_REQUEST_ENC FALSE 9415702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu#endif 9425702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu 943a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#ifndef GAP_TRANSPORT_SUPPORTED 944a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#define GAP_TRANSPORT_SUPPORTED GATT_TRANSPORT_LE_BR_EDR 945a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#endif 946a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu 947a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#ifndef GATTP_TRANSPORT_SUPPORTED 948a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#define GATTP_TRANSPORT_SUPPORTED GATT_TRANSPORT_LE_BR_EDR 949a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#endif 950a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu 9515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_SR_PROFILES 9525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GATT_MAX_SR_PROFILES 32 /* max is 32 */ 9535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_APPS 956845961f2f710e5fdf1c08c0c1ccc1368eeb0f6c0Wei Wang#define GATT_MAX_APPS 32 /* note: 2 apps used internally GATT and GAP */ 9575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_PHY_CHANNEL 9608dc42c603f5571047878640705eee18fa5396f11Andre Eisenbach#define GATT_MAX_PHY_CHANNEL 7 9615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for conformance testing ONLY */ 9645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_CONFORMANCE_TESTING 9655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GATT_CONFORMANCE_TESTING FALSE 9665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* number of background connection device allowence, ideally to be the same as WL size 9695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 9705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_BG_CONN_DEV 9715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GATT_MAX_BG_CONN_DEV 32 9725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 9755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 9765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** SMP 9775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 9785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 9795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_INCLUDED 980a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#if BLE_INCLUDED == TRUE 981ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define SMP_INCLUDED TRUE 982a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#else 983a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#define SMP_INCLUDED FALSE 984a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#endif 985a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#endif 986a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen 987a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#if SMP_INCLUDED == TRUE && BLE_INCLUDED == FALSE 988a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#error "can't have SMP without BLE" 9895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_DEBUG 992a7246ca21d7570a725a9b7781649d194357e474cAndre Eisenbach#define SMP_DEBUG FALSE 9935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_DEFAULT_AUTH_REQ 9965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SMP_DEFAULT_AUTH_REQ SMP_AUTH_NB_ENC_ONLY 9975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_MAX_ENC_KEY_SIZE 10005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SMP_MAX_ENC_KEY_SIZE 16 10015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_MIN_ENC_KEY_SIZE 10045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SMP_MIN_ENC_KEY_SIZE 7 10055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1007444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji/* minimum link timeout after SMP pairing is done, leave room for key exchange 1008444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji and racing condition for the following service connection. 1009444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji Prefer greater than 0 second, and no less than default inactivity link idle 1010444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji timer(L2CAP_LINK_INACTIVITY_TOUT) in l2cap) */ 1011444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#ifndef SMP_LINK_TOUT_MIN 1012444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#if (L2CAP_LINK_INACTIVITY_TOUT > 0) 1013444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#define SMP_LINK_TOUT_MIN L2CAP_LINK_INACTIVITY_TOUT 1014444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#else 1015444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#define SMP_LINK_TOUT_MIN 2 1016444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#endif 10175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 10195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 10205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** SDP 10215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 10225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 10235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to enable SDP server functionality. */ 10255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_SERVER_ENABLED 10265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_SERVER_ENABLED TRUE 10275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of SDP records the server can support. */ 10305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_RECORDS 10318372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define SDP_MAX_RECORDS 30 10325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of attributes in each record. */ 10355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_REC_ATTR 10365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_REC_ATTR 25 10375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_PAD_LEN 10405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_PAD_LEN 600 10415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum length, in bytes, of an attribute. */ 10445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_ATTR_LEN 10455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_ATTR_LEN 400 10465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of attribute filters supported by SDP databases. */ 10495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_ATTR_FILTERS 10505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_ATTR_FILTERS 15 10515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of UUID filters supported by SDP databases. */ 10545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_UUID_FILTERS 10555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_UUID_FILTERS 3 10565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to enable SDP client functionality. */ 10595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_CLIENT_ENABLED 10605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_CLIENT_ENABLED TRUE 10615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of record handles retrieved in a search. */ 10645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_DISC_SERVER_RECS 10655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_DISC_SERVER_RECS 21 10665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The size of a scratchpad buffer, in bytes, for storing the response to an attribute request. */ 10695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_LIST_BYTE_COUNT 10705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_LIST_BYTE_COUNT 4096 10715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of parameters in an SDP protocol element. */ 10745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_PROTOCOL_PARAMS 10755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_PROTOCOL_PARAMS 2 10765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous client and server connections. */ 10795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_CONNECTIONS 10805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_CONNECTIONS 4 10815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The MTU size for the L2CAP configuration. */ 10845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MTU_SIZE 1085f8d46a639d847795bbe7b0a7878383da6318c064Matthew Xie#define SDP_MTU_SIZE 672 10865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The flush timeout for the L2CAP configuration. */ 10895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_FLUSH_TO 10905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_FLUSH_TO 0xFFFF 10915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The name for security authorization. */ 10945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_SERVICE_NAME 10955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_SERVICE_NAME "Service Discovery" 10965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The security level for BTM. */ 10995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_SECURITY_LEVEL 11005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_SECURITY_LEVEL BTM_SEC_NONE 11015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 11045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 11055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** RFCOMM 11065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 11075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 11085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of ports supported. */ 11105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_RFC_PORTS 11115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_RFC_PORTS 30 11125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum simultaneous links to different devices. */ 11155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_ACL_CONNECTIONS 11165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_BD_CONNECTIONS 7 11175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 11185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_BD_CONNECTIONS MAX_ACL_CONNECTIONS 11195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue low watermark level, in bytes. */ 11225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_LOW_WM 11235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_LOW_WM (BTA_RFC_MTU_SIZE * PORT_RX_BUF_LOW_WM) 11245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue high watermark level, in bytes. */ 11275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_HIGH_WM 11285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_HIGH_WM (BTA_RFC_MTU_SIZE * PORT_RX_BUF_HIGH_WM) 11295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue critical watermark level, in bytes. */ 11325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_CRITICAL_WM 11335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_CRITICAL_WM (BTA_RFC_MTU_SIZE * PORT_RX_BUF_CRITICAL_WM) 11345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue low watermark level, in number of buffers. */ 11375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_BUF_LOW_WM 11385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_BUF_LOW_WM 4 11395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue high watermark level, in number of buffers. */ 11425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_BUF_HIGH_WM 11435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_BUF_HIGH_WM 10 11445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue critical watermark level, in number of buffers. */ 11475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_BUF_CRITICAL_WM 11485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_BUF_CRITICAL_WM 15 11495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue high watermark level, in bytes. */ 11525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_HIGH_WM 11535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_HIGH_WM (BTA_RFC_MTU_SIZE * PORT_TX_BUF_HIGH_WM) 11545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue critical watermark level, in bytes. */ 11575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_CRITICAL_WM 11585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_CRITICAL_WM (BTA_RFC_MTU_SIZE * PORT_TX_BUF_CRITICAL_WM) 11595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue high watermark level, in number of buffers. */ 11625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_BUF_HIGH_WM 11635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_BUF_HIGH_WM 10 11645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue high watermark level, in number of buffers. */ 11675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_BUF_CRITICAL_WM 11685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_BUF_CRITICAL_WM 15 11695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The RFCOMM multiplexer preferred flow control mechanism. */ 11725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_FC_DEFAULT 11735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_FC_DEFAULT PORT_FC_CREDIT 11745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of credits receiver sends to peer when using credit-based flow control. */ 11775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_CREDIT_RX_MAX 11785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_CREDIT_RX_MAX 16 11795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The credit low watermark level. */ 11825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_CREDIT_RX_LOW 11835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_CREDIT_RX_LOW 8 11845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* if application like BTA, Java or script test engine is running on other than BTU thread, */ 11875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* PORT_SCHEDULE_LOCK shall be defined as GKI_sched_lock() or GKI_disable() */ 11885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_SCHEDULE_LOCK 11895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_SCHEDULE_LOCK GKI_disable() 11905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* if application like BTA, Java or script test engine is running on other than BTU thread, */ 11935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* PORT_SCHEDULE_LOCK shall be defined as GKI_sched_unlock() or GKI_enable() */ 11945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_SCHEDULE_UNLOCK 11955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_SCHEDULE_UNLOCK GKI_enable() 11965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 11995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 12008372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz** OBEX 12018372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz** 12028372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz******************************************************************************/ 12038372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_14_INCLUDED FALSE 1204d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde 1205d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde/* The maximum number of registered servers. */ 1206d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#ifndef OBX_NUM_SERVERS 1207d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#define OBX_NUM_SERVERS 12 1208d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#endif 1209d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde 1210d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde/* The maximum number of active clients. */ 1211d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#ifndef OBX_NUM_CLIENTS 1212d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#define OBX_NUM_CLIENTS 8 1213d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#endif 1214d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde 12158372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE 12168372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz Pool ID where to reassemble the SDU. 12178372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz This Pool will allow buffers to be used that are larger than 12188372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz the L2CAP_MAX_MTU. */ 12198372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_USER_RX_POOL_ID 12208372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_USER_RX_POOL_ID OBX_LRG_DATA_POOL_ID 12218372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 12228372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 12238372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE 12248372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz Pool ID where to hold the SDU. 12258372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz This Pool will allow buffers to be used that are larger than 12268372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz the L2CAP_MAX_MTU. */ 12278372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_USER_TX_POOL_ID 12288372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_USER_TX_POOL_ID OBX_LRG_DATA_POOL_ID 12298372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 12308372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 12318372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE 12328372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzGKI Buffer Pool ID used to hold MPS segments during SDU reassembly 12338372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/ 12348372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_RX_POOL_ID 12358372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_RX_POOL_ID HCI_ACL_POOL_ID 12368372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 12378372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 12388372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE 12398372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzGKI Buffer Pool ID used to hold MPS segments used in (re)transmissions. 12408372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzL2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool. 12418372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzNote: This pool needs to have enough buffers to hold two times the window size negotiated 12428372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz in the L2CA_SetFCROptions (2 * tx_win_size) to allow for retransmissions. 12438372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz The size of each buffer must be able to hold the maximum MPS segment size passed in 12448372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz L2CA_SetFCROptions plus BT_HDR (8) + HCI preamble (4) + L2CAP_MIN_OFFSET (11 - as of BT 2.1 + EDR Spec). 12458372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/ 12468372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_TX_POOL_ID 12478372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_TX_POOL_ID HCI_ACL_POOL_ID 12488372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 12498372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 12508372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE 12518372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzSize of the transmission window when using enhanced retransmission mode. Not used 12528372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulzin basic and streaming modes. Range: 1 - 63 12538372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/ 12548372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_TX_WINDOW_SIZE_BR_EDR 12558372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_TX_WINDOW_SIZE_BR_EDR 20 12568372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 12578372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 12588372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE 12598372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzNumber of transmission attempts for a single I-Frame before taking 12608372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzDown the connection. Used In ERTM mode only. Value is Ignored in basic and 12618372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzStreaming modes. 12628372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzRange: 0, 1-0xFF 12638372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz0 - infinite retransmissions 12648372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz1 - single transmission 12658372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/ 12668372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_MAX_TX_B4_DISCNT 12678372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_MAX_TX_B4_DISCNT 20 12688372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 12698372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 12708372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE 12718372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzRetransmission Timeout 12728372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzRange: Minimum 2000 (2 secs) on BR/EDR when supporting PBF. 12738372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz */ 12748372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_RETX_TOUT 12758372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_RETX_TOUT 2000 12768372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 12778372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 12788372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE 12798372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzMonitor Timeout 12808372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzRange: Minimum 12000 (12 secs) on BR/EDR when supporting PBF. 12818372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/ 12828372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_MONITOR_TOUT 12838372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_MONITOR_TOUT 12000 12848372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 12858372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 12868372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE 12878372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzMaximum PDU payload size. 12888372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzSuggestion: The maximum amount of data that will fit into a 3-DH5 packet. 12898372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzRange: 2 octets 12908372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/ 12918372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_MAX_PDU_SIZE 12928372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_MAX_PDU_SIZE L2CAP_MPS_OVER_BR_EDR 12938372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 12948372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 12958372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 12968372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/****************************************************************************** 12978372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz** 12985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BNEP 12995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 13005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 13015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_INCLUDED 13035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_INCLUDED TRUE 13045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* BNEP status API call is used mainly to get the L2CAP handle */ 13075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_SUPPORTS_STATUS_API 13085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_SUPPORTS_STATUS_API TRUE 13095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* 13125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** When BNEP connection changes roles after the connection is established 13135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** we will do an authentication check again on the new role 13145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 13155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_DO_AUTH_FOR_ROLE_SWITCH 13165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_DO_AUTH_FOR_ROLE_SWITCH TRUE 13175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of protocol filters supported. */ 13215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_PROT_FILTERS 13225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_PROT_FILTERS 5 13235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of multicast filters supported. */ 13265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_MULTI_FILTERS 13275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_MULTI_FILTERS 5 13285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Minimum MTU size. */ 13315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MIN_MTU_SIZE 13325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MIN_MTU_SIZE L2CAP_MTU_SIZE 13335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Preferred MTU size. */ 13365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MTU_SIZE 13375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MTU_SIZE BNEP_MIN_MTU_SIZE 13385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of buffers allowed in transmit data queue. */ 13415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_XMITQ_DEPTH 13425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_XMITQ_DEPTH 20 13435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number BNEP of connections supported. */ 13465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_CONNECTIONS 13475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_CONNECTIONS 7 13485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 13525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 13535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** AVDTP 13545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 13555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 13565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_INCLUDED 13585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_INCLUDED TRUE 13595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include reporting capability in AVDTP */ 13625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_REPORTING 13635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_REPORTING TRUE 13645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include multiplexing capability in AVDTP */ 13675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_MULTIPLEXING 13685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_MULTIPLEXING TRUE 13695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous links to different peer devices. */ 13725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_LINKS 13735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_LINKS 2 13745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous stream endpoints. */ 13775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_SEPS 13785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_SEPS 3 13795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 13805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of transport channels setup per media stream(audio or video) */ 13825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_CHANNELS 13835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if AVDT_REPORTING == TRUE 13855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* signaling, media and reporting channels */ 13865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_CHANNELS 3 13875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 13885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* signaling and media channels */ 13895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_CHANNELS 2 1390f857d64505d81ce0834de150b79b333a4ff445f2Chris Manton#endif // AVDT_REPORTING 13915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1392f857d64505d81ce0834de150b79b333a4ff445f2Chris Manton#endif // AVDT_NUM_CHANNELS 13935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 13945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of transport channels setup by AVDT for all media streams 13955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * AVDT_NUM_CHANNELS * Number of simultaneous streams. 13965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */ 13975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_TC_TBL 13985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_TC_TBL 6 13995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum size in bytes of the codec capabilities information element. */ 14025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_CODEC_SIZE 14035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_CODEC_SIZE 10 14045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum size in bytes of the content protection information element. */ 14075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_PROTECT_SIZE 14085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_PROTECT_SIZE 90 14095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of GKI buffers in the fragment queue (for video frames). 14125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Must be less than the number of buffers in the buffer pool of size AVDT_DATA_POOL_SIZE */ 14135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_MAX_FRAG_COUNT 14145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_MAX_FRAG_COUNT 15 14155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 14185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 14195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN 14205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 14215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 14225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_INCLUDED 14245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_INCLUDED TRUE 14255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This will enable the PANU role */ 14285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_ROLE_PANU 14295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_ROLE_PANU TRUE 14305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This will enable the GN role */ 14335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_ROLE_GN 14345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_ROLE_GN TRUE 14355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This will enable the NAP role */ 14385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_ROLE_NAP 14395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_ROLE_NAP TRUE 14405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is just for debugging purposes */ 14435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_DEBUG_DUMP 14445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_DEBUG_DUMP TRUE 14455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of PAN connections allowed */ 14485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_PAN_CONNS 14495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_PAN_CONNS 7 14505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default service name for NAP role */ 14535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_NAP_DEFAULT_SERVICE_NAME 14545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_NAP_DEFAULT_SERVICE_NAME "Network Access Point Service" 14555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default service name for GN role */ 14585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_GN_DEFAULT_SERVICE_NAME 14595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_GN_DEFAULT_SERVICE_NAME "Group Network Service" 14605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default service name for PANU role */ 14635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_PANU_DEFAULT_SERVICE_NAME 14645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_PANU_DEFAULT_SERVICE_NAME "PAN User Service" 14655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default description for NAP role service */ 14685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_NAP_DEFAULT_DESCRIPTION 14695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_NAP_DEFAULT_DESCRIPTION "NAP" 14705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default description for GN role service */ 14735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_GN_DEFAULT_DESCRIPTION 14745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_GN_DEFAULT_DESCRIPTION "GN" 14755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default description for PANU role service */ 14785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_PANU_DEFAULT_DESCRIPTION 14795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_PANU_DEFAULT_DESCRIPTION "PANU" 14805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default Security level for PANU role. */ 14835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_PANU_SECURITY_LEVEL 14845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_PANU_SECURITY_LEVEL 0 14855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default Security level for GN role. */ 14885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_GN_SECURITY_LEVEL 14895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_GN_SECURITY_LEVEL 0 14905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default Security level for NAP role. */ 14935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_NAP_SECURITY_LEVEL 14945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_NAP_SECURITY_LEVEL 0 14955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 14965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 14975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 14985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 14995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** GAP 15005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 15015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 15025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15038372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_INCLUDED 15048372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_INCLUDED TRUE 15058372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 15068372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 15078372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This is set to enable use of GAP L2CAP connections. */ 15088372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_CONN_INCLUDED 15098372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_CONN_INCLUDED TRUE 15108372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 15118372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 15128372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This is set to enable posting event for data write */ 15138372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_CONN_POST_EVT_INCLUDED 15148372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_CONN_POST_EVT_INCLUDED FALSE 15158372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 15168372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 15178372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* The maximum number of simultaneous GAP L2CAP connections. */ 15188372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_MAX_CONNECTIONS 15198372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_MAX_CONNECTIONS 30 15208372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif 15218372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz 15225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* keep the raw data received from SDP server in database. */ 15235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_RAW_DATA_INCLUDED 15245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_RAW_DATA_INCLUDED TRUE 15255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Inquiry duration in 1.28 second units. */ 15285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_DEBUG 15295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_DEBUG TRUE 15305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 15335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 15345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** HID 15355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 15365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 15375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_DEV_SUBCLASS 15395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_DEV_SUBCLASS COD_MINOR_POINTING 15405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15422e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef HID_CONTROL_BUF_SIZE 15432e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define HID_CONTROL_BUF_SIZE (4096+16) 15442e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 15452e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 15465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_CONTROL_POOL_ID 15475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_CONTROL_POOL_ID 2 15485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15502e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#ifndef HID_INTERRUPT_BUF_SIZE 15512e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#define HID_INTERRUPT_BUF_SIZE (4096+16) 15522e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov#endif 15532e3d006b96eafb0651fe7f78d28250faf89405dePavlin Radoslavov 15545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_INTERRUPT_POOL_ID 15555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_INTERRUPT_POOL_ID 2 15565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/************************************************************************* 15595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Definitions for Both HID-Host & Device 15605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 15615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_MAX_SVC_NAME_LEN 15625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_MAX_SVC_NAME_LEN 32 15635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_MAX_SVC_DESCR_LEN 15665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_MAX_SVC_DESCR_LEN 32 15675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_MAX_PROV_NAME_LEN 15705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_MAX_PROV_NAME_LEN 32 15715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/************************************************************************* 15745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Definitions for HID-Host 15755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 15765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_INCLUDED 15775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_INCLUDED TRUE 15785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_MAX_DEVICES 15815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_MAX_DEVICES 7 15825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_MTU 15855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_MTU 640 15865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_FLUSH_TO 15895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_FLUSH_TO 0xffff 15905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_MAX_CONN_RETRY 15935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_MAX_CONN_RETRY (3) 15945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 15965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_REPAGE_WIN 15975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_REPAGE_WIN (2) 15985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 15995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/************************************************************************* 16015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * A2DP Definitions 16025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */ 16035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef A2D_INCLUDED 16045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_INCLUDED TRUE 16055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 16085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** AVCTP 16105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 16125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous ACL links to different peer devices. */ 16145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVCT_NUM_LINKS 16155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVCT_NUM_LINKS 2 16165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous AVCTP connections. */ 16195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVCT_NUM_CONN 16205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVCT_NUM_CONN 3 16215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 16245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** AVRCP 16265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 16285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16299adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan#ifndef AVRC_METADATA_INCLUDED 16309adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan#define AVRC_METADATA_INCLUDED TRUE 16319adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan#endif 16329adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan 1633247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji#ifndef AVRC_ADV_CTRL_INCLUDED 1634247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji#define AVRC_ADV_CTRL_INCLUDED TRUE 1635247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji#endif 1636247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji 163793912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood#ifndef AVRC_CTLR_INCLUDED 163893912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood#define AVRC_CTLR_INCLUDED TRUE 163993912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood#endif 164093912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood 16415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 16425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** MCAP 16445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 16455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 16465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_INCLUDED 16475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_INCLUDED FALSE 16485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The MTU size for the L2CAP configuration on control channel. 48 is the minimal */ 16515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_CTRL_MTU 16525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_CTRL_MTU 60 16535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of registered MCAP instances. */ 16565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_REGS 1657f8f30c2cecf221b2c3983b72d5a849d799c39dd7Priti Aghera#define MCA_NUM_REGS 12 16585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of control channels (to difference devices) per registered MCAP instances. */ 16615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_LINKS 16625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_NUM_LINKS 3 16635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of MDEP (including HDP echo) per registered MCAP instances. */ 16665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_DEPS 1667f8f30c2cecf221b2c3983b72d5a849d799c39dd7Priti Aghera#define MCA_NUM_DEPS 13 16685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of MDL link per control channel. */ 16715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_MDLS 16725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_NUM_MDLS 4 16735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Pool ID where to reassemble the SDU. */ 16765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_USER_RX_POOL_ID 16775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_USER_RX_POOL_ID HCI_ACL_POOL_ID 16785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Pool ID where to hold the SDU. */ 16815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_USER_TX_POOL_ID 16825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_USER_TX_POOL_ID HCI_ACL_POOL_ID 16835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 16851d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef MCA_USER_RX_BUF_SIZE 16861d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define MCA_USER_RX_BUF_SIZE (4096+16) 16871d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 16881d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 16891d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef MCA_USER_TX_BUF_SIZE 16901d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define MCA_USER_TX_BUF_SIZE (4096+16) 16911d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 16921d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 16935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* 16945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectGKI Buffer Pool ID used to hold MPS segments during SDU reassembly 16955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 16965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_RX_POOL_ID 16975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_RX_POOL_ID HCI_ACL_POOL_ID 16985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 16995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17001d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef MCA_FCR_RX_BUF_SIZE 17011d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define MCA_FCR_RX_BUF_SIZE (4096+16) 17021d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 17031d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 17041d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#ifndef MCA_FCR_TX_BUF_SIZE 17051d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#define MCA_FCR_TX_BUF_SIZE (4096+16) 17061d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov#endif 17071d5b85924df3a114efe6588e857d0de3eb47b1d2Pavlin Radoslavov 17085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* 17095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectGKI Buffer Pool ID used to hold MPS segments used in (re)transmissions. 17105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectL2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool. 17115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectNote: This pool needs to have enough buffers to hold two times the window size negotiated 17125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project in the tL2CAP_FCR_OPTIONS (2 * tx_win_size) to allow for retransmissions. 17135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project The size of each buffer must be able to hold the maximum MPS segment size passed in 17145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tL2CAP_FCR_OPTIONS plus BT_HDR (8) + HCI preamble (4) + L2CAP_MIN_OFFSET (11 - as of BT 2.1 + EDR Spec). 17155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 17165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_TX_POOL_ID 17175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_TX_POOL_ID HCI_ACL_POOL_ID 17185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 17195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: 17215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectSize of the transmission window when using enhanced retransmission mode. 17225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project1 is defined by HDP specification for control channel. 17235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 17245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_TX_WINDOW_SIZE 17255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_TX_WINDOW_SIZE 1 17265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 17275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: 17295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectNumber of transmission attempts for a single I-Frame before taking 17305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectDown the connection. Used In ERTM mode only. Value is Ignored in basic and 17315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectStreaming modes. 17325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectRange: 0, 1-0xFF 17335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project0 - infinite retransmissions 17345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project1 - single transmission 17355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 17365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_MAX_TX_B4_DISCNT 17375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_MAX_TX_B4_DISCNT 20 17385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 17395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: Retransmission Timeout 17415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectThe AVRCP specification set a value in the range of 300 - 2000 ms 17425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectTimeout (in msecs) to detect Lost I-Frames. Only used in Enhanced retransmission mode. 17435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectRange: Minimum 2000 (2 secs) when supporting PBF. 17445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */ 17455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_RETX_TOUT 17465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_RETX_TOUT 2000 17475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 17485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: Monitor Timeout 17505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectThe AVRCP specification set a value in the range of 300 - 2000 ms 17515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectTimeout (in msecs) to detect Lost S-Frames. Only used in Enhanced retransmission mode. 17525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectRange: Minimum 12000 (12 secs) when supporting PBF. 17535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 17545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_MONITOR_TOUT 17555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_MONITOR_TOUT 12000 17565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 17575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: Maximum PDU payload size. 17595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectThe maximum number of payload octets that the local device can receive in a single PDU. 17605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 17615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_MPS_SIZE 17625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_MPS_SIZE 1000 17635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 17645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Shared transport */ 17665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef NFC_SHARED_TRANSPORT_ENABLED 17675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define NFC_SHARED_TRANSPORT_ENABLED FALSE 17685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 17695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 17715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 17725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Sleep Mode (Low Power Mode) 17735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 17745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 17755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCILP_INCLUDED 17775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCILP_INCLUDED TRUE 17785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 17795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 17815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 17825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** APPL - Application Task 17835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 17845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 17855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_FEATURE_REQ_ID 73 17875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_FEATURE_RSP_ID 173 17885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 17905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 17915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BTA 17925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 17935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 17945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* BTA EIR canned UUID list (default is dynamic) */ 17955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_EIR_CANNED_UUID_LIST 17965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_EIR_CANNED_UUID_LIST FALSE 17975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 17985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 17995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of supported customer UUID in EIR */ 18005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_EIR_SERVER_NUM_CUSTOM_UUID 18015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_EIR_SERVER_NUM_CUSTOM_UUID 8 18025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 18035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 18045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* CHLD override for bluedroid */ 18055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_CHLD_VAL_ECC 18065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AG_CHLD_VAL_ECC "(0,1,1x,2,2x,3)" 18075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 18085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 18095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_CHLD_VAL 18105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AG_CHLD_VAL "(0,1,2,3)" 18115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 18125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 18135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Set the CIND to match HFP 1.5 */ 18145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_CIND_INFO 18155738f83aeb59361a0a2eda2460113f6dc919427The 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))" 18165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 18175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 18189647e91549368fd44440dd13a854f403feb13ad9Mattias Agren#ifndef BTA_DM_AVOID_A2DP_ROLESWITCH_ON_INQUIRY 18199647e91549368fd44440dd13a854f403feb13ad9Mattias Agren#define BTA_DM_AVOID_A2DP_ROLESWITCH_ON_INQUIRY TRUE 18209647e91549368fd44440dd13a854f403feb13ad9Mattias Agren#endif 18215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 18225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 18235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 18245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Tracing: Include trace header file here. 18255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 18265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/ 18275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 18281bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach/* Enable/disable BTSnoop memory logging */ 18291bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach#ifndef BTSNOOP_MEM 18301bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach#define BTSNOOP_MEM TRUE 18311bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach#endif 18321bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach 18335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bt_trace.h" 18345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 18355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* BT_TARGET_H */ 1836