bt_target.h revision b5c8e291dcac7d45e4788a10ade8200d67e44786
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
2005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Receives ACL data packets from thelower-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
2105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Receives SCO data packets from the lower-layer. */
2115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCI_SCO_POOL_ID
2125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCI_SCO_POOL_ID             GKI_POOL_ID_6
2135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends SDP data packets. */
2165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_POOL_ID
2175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_POOL_ID                 3
2185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends RFCOMM command packets. */
2215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef RFCOMM_CMD_POOL_ID
2225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define RFCOMM_CMD_POOL_ID          GKI_POOL_ID_2
2235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends RFCOMM data packets. */
2265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef RFCOMM_DATA_POOL_ID
2275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define RFCOMM_DATA_POOL_ID         GKI_POOL_ID_3
2285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef RFCOMM_DATA_POOL_BUF_SIZE
2315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define RFCOMM_DATA_POOL_BUF_SIZE   GKI_BUF3_SIZE
2325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends L2CAP packets to the peer and HCI messages to the controller. */
2355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_CMD_POOL_ID
2365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_CMD_POOL_ID           GKI_POOL_ID_2
2375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sends L2CAP segmented packets in ERTM mode */
2405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_FCR_TX_POOL_ID
2415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_FCR_TX_POOL_ID        HCI_ACL_POOL_ID
2425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Receives L2CAP segmented packets in ERTM mode */
2455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_FCR_RX_POOL_ID
2465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_FCR_RX_POOL_ID        HCI_ACL_POOL_ID
2475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
24912c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach/* Number of ACL buffers to assign to LE
25012c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach   if the HCI buffer pool is shared with BR/EDR */
25112c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach#ifndef L2C_DEF_NUM_BLE_BUF_SHARED
25212c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach#define L2C_DEF_NUM_BLE_BUF_SHARED      1
25312c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach#endif
25412c3f496c3612472a22cbb0afd89812b154b4186Andre Eisenbach
2555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used by BTM when it sends HCI commands to the controller. */
2565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_CMD_POOL_ID
2575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_CMD_POOL_ID             GKI_POOL_ID_2
2585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2608372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_LRG_DATA_POOL_SIZE
2618372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_LRG_DATA_POOL_SIZE      GKI_BUF4_SIZE
2628372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
2638372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
2648372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_LRG_DATA_POOL_ID
2658372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_LRG_DATA_POOL_ID        GKI_POOL_ID_4
2668372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
2675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used to send data to L2CAP. */
2685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GAP_DATA_POOL_ID
2695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GAP_DATA_POOL_ID            GKI_POOL_ID_3
2705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SPP_DB_SIZE
2735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SPP_DB_SIZE                 GKI_BUF3_SIZE
2745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* BNEP data and protocol messages. */
2775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_POOL_ID
2785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_POOL_ID                GKI_POOL_ID_3
2795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* RPC pool for temporary trace message buffers. */
2825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef RPC_SCRATCH_POOL_ID
2835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define RPC_SCRATCH_POOL_ID         GKI_POOL_ID_2
2845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVDTP pool for protocol messages */
2875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_CMD_POOL_ID
2885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_CMD_POOL_ID            GKI_POOL_ID_2
2895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVDTP pool size for media packets in case of fragmentation */
2925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_DATA_POOL_SIZE
2935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_DATA_POOL_SIZE         GKI_BUF3_SIZE
2945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_POOL_ID
2975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_POOL_ID                 GKI_POOL_ID_3
29895ca3c43eae763465bbd7bddc927279f17b16106Zhenye Zhu/* Maximum amount of the shared buffer to allocate for PAN */
29995ca3c43eae763465bbd7bddc927279f17b16106Zhenye Zhu#define PAN_POOL_MAX                (GKI_BUF3_MAX / 4)
3005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVCTP pool for protocol messages */
3035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVCT_CMD_POOL_ID
3045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVCT_CMD_POOL_ID            GKI_POOL_ID_1
3055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVRCP pool for protocol messages */
3085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVRC_CMD_POOL_ID
3095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVRC_CMD_POOL_ID            GKI_POOL_ID_1
3105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVRCP pool size for protocol messages */
3135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVRC_CMD_POOL_SIZE
3145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVRC_CMD_POOL_SIZE          GKI_BUF1_SIZE
3155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVRCP Metadata pool for protocol messages */
3185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVRC_META_CMD_POOL_ID
3195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVRC_META_CMD_POOL_ID       GKI_POOL_ID_2
3205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVRCP Metadata pool size for protocol messages */
3235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVRC_META_CMD_POOL_SIZE
3245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVRC_META_CMD_POOL_SIZE     GKI_BUF2_SIZE
3255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AVRCP buffer size for browsing channel messages */
3295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVRC_BROWSE_POOL_SIZE
3305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVRC_BROWSE_POOL_SIZE     GKI_MAX_BUF_SIZE
3315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_HL_LRG_DATA_POOL_ID
3345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_HL_LRG_DATA_POOL_ID        GKI_POOL_ID_7
3355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* GATT Server Database pool ID */
3385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_DB_POOL_ID
3395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GATT_DB_POOL_ID                 GKI_POOL_ID_8
3405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
34217b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach/* GATT Data sending buffer pool ID, use default ACL pool for fix channel data */
34317b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach#ifndef GATT_BUF_POOL_ID
34417b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach#define GATT_BUF_POOL_ID                HCI_ACL_POOL_ID
34517b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach#endif
34617b04bd498405f2bb109a85562ebbdcb6bb06e95Andre Eisenbach
3475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
3485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Lower Layer Interface
3505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
3525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Macro for allocating buffer for HCI commands */
3545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCI_GET_CMD_BUF
3555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (!defined(HCI_USE_VARIABLE_SIZE_CMD_BUF) || (HCI_USE_VARIABLE_SIZE_CMD_BUF == FALSE))
3565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Allocate fixed-size buffer from HCI_CMD_POOL (default case) */
3575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCI_GET_CMD_BUF(paramlen)    ((BT_HDR *)GKI_getpoolbuf (HCI_CMD_POOL_ID))
3585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else
3595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Allocate smallest possible buffer (for platforms with limited RAM) */
3605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCI_GET_CMD_BUF(paramlen)    ((BT_HDR *)GKI_getbuf ((UINT16)(BT_HDR_SIZE + HCIC_PREAMBLE_SIZE + (paramlen))))
3615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif  /* HCI_GET_CMD_BUF */
3635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
3655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** HCI Services (H4)
3675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
3695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Use 2 second for low-resolution systems, override to 1 for high-resolution systems */
3715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_1SEC_TIMEOUT
3725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_1SEC_TIMEOUT             (2)
3735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Quick Timer */
3765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* if L2CAP_FCR_INCLUDED is TRUE then it should have 100 millisecond resolution */
3775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* if none of them is included then QUICK_TIMER_TICKS_PER_SEC is set to 0 to exclude quick timer */
3785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef QUICK_TIMER_TICKS_PER_SEC
37918023290406f076c5c76cdffdbf8ee081450a42fChris Manton#define QUICK_TIMER_TICKS_PER_SEC   10       /* 100ms timer */
3805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
3835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BTM
3855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
3875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Cancel Inquiry on incoming SSP */
3895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_NO_SSP_ON_INQUIRY
3905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_NO_SSP_ON_INQUIRY       FALSE
3915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Includes SCO if TRUE */
3945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_INCLUDED
3955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SCO_INCLUDED            TRUE       /* TRUE includes SCO code */
3965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
3975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Includes SCO if TRUE */
3995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_HCI_INCLUDED
4005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SCO_HCI_INCLUDED            FALSE       /* TRUE includes SCO over HCI code */
4015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Includes WBS if TRUE */
4045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_WBS_INCLUDED
4055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_WBS_INCLUDED            FALSE       /* TRUE includes WBS code */
4065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*  This is used to work around a controller bug that doesn't like Disconnect
4095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**  issued while there is a role switch in progress
4105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
4115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DISC_DURING_RS
4125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DISC_DURING_RS TRUE
4135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/**************************
4165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Initial SCO TX credit
4175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*************************/
4185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* max TX SCO data packet size */
4195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_DATA_SIZE_MAX
4205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SCO_DATA_SIZE_MAX       240
4215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The size in bytes of the BTM inquiry database. */
4245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_INQ_DB_SIZE
4255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_INQ_DB_SIZE             40
4265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The default scan mode */
4295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_SCAN_TYPE
4305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_SCAN_TYPE       BTM_SCAN_TYPE_INTERLACED
4315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Should connections to unknown devices be allowed when not discoverable? */
4345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_ALLOW_CONN_IF_NONDISCOVER
4355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_ALLOW_CONN_IF_NONDISCOVER   TRUE
4365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sets the Page_Scan_Window:  the length of time that the device is performing a page scan. */
4395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_CONN_WINDOW
4405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_CONN_WINDOW     0x0012
4415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Sets the Page_Scan_Activity:  the interval between the start of two consecutive page scans. */
4445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_CONN_INTERVAL
4455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_CONN_INTERVAL   0x0800
4465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* When automatic inquiry scan is enabled, this sets the inquiry scan window. */
4495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_DISC_WINDOW
4505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_DISC_WINDOW     0x0012
4515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* When automatic inquiry scan is enabled, this sets the inquiry scan interval. */
4545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_DISC_INTERVAL
4555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_DISC_INTERVAL   0x0800
4565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default class of device
4595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* {SERVICE_CLASS, MAJOR_CLASS, MINOR_CLASS}
4605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*
4615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* SERVICE_CLASS:0x5A (Bit17 -Networking,Bit19 - Capturing,Bit20 -Object Transfer,Bit22 -Telephony)
4625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* MAJOR_CLASS:0x02 - PHONE
4635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project* MINOR_CLASS:0x0C - SMART_PHONE
4645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*
4655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
4665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_DM_COD
4675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_COD {0x5A, 0x02, 0x0C}
4685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of SCO links. */
4715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_SCO_LINKS
47290a32530e8b9908f2af64ce98931684fa20c061bNitin Srivastava#define BTM_MAX_SCO_LINKS           3
4735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The preferred type of SCO links (2-eSCO, 0-SCO). */
4765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_SCO_MODE
4775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_SCO_MODE        2
4785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of security records for peer devices. */
4815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_MAX_DEVICE_RECORDS
4825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_MAX_DEVICE_RECORDS  100
4835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of security records for services. */
4865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_MAX_SERVICE_RECORDS
4875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_MAX_SERVICE_RECORDS 32
4885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* If True, force a retrieval of remote device name for each bond in case it's changed */
4915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_FORCE_RNR_FOR_DBOND
4925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_FORCE_RNR_FOR_DBOND  FALSE
4935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
4955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum device name length used in btm database. */
4965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_REM_BD_NAME_LEN
4975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_REM_BD_NAME_LEN     248
4985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
4995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum local device name length stored btm database.
5015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project  '0' disables storage of the local name in BTM */
5025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_LOC_BD_NAME_LEN
5035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_LOC_BD_NAME_LEN     248
5045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5061e5109b5cbf49810abd0c94c413ce07db52caacaMatthew Xie/* Fixed Default String. When this is defined as null string, the device's
5071e5109b5cbf49810abd0c94c413ce07db52caacaMatthew Xie * product model name is used as the default local name.
5081e5109b5cbf49810abd0c94c413ce07db52caacaMatthew Xie */
5095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEF_LOCAL_NAME
5105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEF_LOCAL_NAME      ""
5115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum service name stored with security authorization (0 if not needed) */
5145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_SERVICE_NAME_LEN
5155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_SERVICE_NAME_LEN    BT_MAX_SERVICE_NAME_LEN
5165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum length of the service name. */
5195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BT_MAX_SERVICE_NAME_LEN
5205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BT_MAX_SERVICE_NAME_LEN     21
5215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* ACL buffer size in HCI Host Buffer Size command. */
5245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_ACL_BUF_SIZE
5255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_ACL_BUF_SIZE            0
5265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of clients that can register with the power manager. */
5295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_PM_RECORDS
5305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_PM_RECORDS          2
5315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to show debug trace messages for the power manager. */
5345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_PM_DEBUG
5355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_PM_DEBUG                FALSE
5365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to TRUE if link is to be unparked due to BTM_CreateSCO API. */
5395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SCO_WAKE_PARKED_LINK
5405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SCO_WAKE_PARKED_LINK    TRUE
5415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* If the user does not respond to security process requests within this many seconds,
5445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * a negative response would be sent automatically.
5455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 30 is LMP response timeout value */
5465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SEC_TIMEOUT_VALUE
5475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SEC_TIMEOUT_VALUE           35
5485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of callbacks that can be registered using BTM_RegisterForVSEvents */
5515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_MAX_VSE_CALLBACKS
5525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_MAX_VSE_CALLBACKS           3
5535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************
5565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**    Lisbon Features
5575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************/
5585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to TRUE if the FEC is required for EIR packet. */
5595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_EIR_DEFAULT_FEC_REQUIRED
5605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_EIR_DEFAULT_FEC_REQUIRED    TRUE
5615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The IO capability of the local device (for Simple Pairing) */
5645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_LOCAL_IO_CAPS
5655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_LOCAL_IO_CAPS               BTM_IO_CAP_IO
5665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
56826fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach#ifndef BTM_LOCAL_IO_CAPS_BLE
56926fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach#define BTM_LOCAL_IO_CAPS_BLE           BTM_IO_CAP_KBDISP
57026fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach#endif
57126fa02b5cc684f8675d80b61185a4e5ccf3c6a2aAndre Eisenbach
5725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The default MITM Protection Requirement (for Simple Pairing)
5735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Possible values are BTM_AUTH_SP_YES or BTM_AUTH_SP_NO */
5745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_AUTH_REQ
5755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_AUTH_REQ            BTM_AUTH_SP_NO
5765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The default MITM Protection Requirement for dedicated bonding using Simple Pairing
5795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Possible values are BTM_AUTH_AP_YES or BTM_AUTH_AP_NO */
5805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_DEFAULT_DD_AUTH_REQ
5815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_DEFAULT_DD_AUTH_REQ            BTM_AUTH_AP_YES
5825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include Out-of-Band implementation for Simple Pairing */
5855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_OOB_INCLUDED
5865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_OOB_INCLUDED                TRUE
5875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* TRUE to include Sniff Subrating */
5905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_SSR_INCLUDED
5915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_SSR_INCLUDED                TRUE
5925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
5935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
5945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*************************
5955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** End of Lisbon Features
5965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**************************/
5975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
598b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach/* 4.1/4.2 secure connections feature */
599b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach#ifndef SC_MODE_INCLUDED
600b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach#define SC_MODE_INCLUDED                TRUE
601b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach#endif
602b5c8e291dcac7d45e4788a10ade8200d67e44786Andre Eisenbach
6035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for conformance testing ONLY */
6045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTM_BLE_CONFORMANCE_TESTING
6055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTM_BLE_CONFORMANCE_TESTING           FALSE
6065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
6095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
6105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** L2CAP
6115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
6125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
6135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous links that L2CAP can support. */
6155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_ACL_CONNECTIONS
6165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_L2CAP_LINKS             7
6175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else
6185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_L2CAP_LINKS             MAX_ACL_CONNECTIONS
6195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous channels that L2CAP can support. */
6225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_L2CAP_CHANNELS
623ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define MAX_L2CAP_CHANNELS          16
6245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous applications that can register with L2CAP. */
6275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_L2CAP_CLIENTS
6285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_L2CAP_CLIENTS           15
6295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of seconds of link inactivity before a link is disconnected. */
6325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_LINK_INACTIVITY_TOUT
6335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_LINK_INACTIVITY_TOUT  4
6345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The number of seconds of link inactivity after bonding before a link is disconnected. */
6375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_BONDING_TIMEOUT
6385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_BONDING_TIMEOUT       3
6395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The time from the HCI connection complete to disconnect if no channel is established. */
6425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_LINK_STARTUP_TOUT
6435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_LINK_STARTUP_TOUT     60
6445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The L2CAP MTU; must be in accord with the HCI ACL pool size. */
6475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_MTU_SIZE
6485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_MTU_SIZE              1691
6495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The L2CAP MPS over Bluetooth; must be in accord with the FCR tx pool size and ACL down buffer size. */
6525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_MPS_OVER_BR_EDR
6535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_MPS_OVER_BR_EDR       1010
6545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* If host flow control enabled, this is the number of buffers the controller can have unacknowledged. */
6575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_HOST_FC_ACL_BUFS
6585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_HOST_FC_ACL_BUFS      20
6595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6615738f83aeb59361a0a2eda2460113f6dc919427The 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. */
6625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_WAKE_PARKED_LINK
6635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_WAKE_PARKED_LINK      TRUE
6645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Whether link wants to be the master or the slave. */
6675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_DESIRED_LINK_ROLE
6685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_DESIRED_LINK_ROLE     HCI_ROLE_SLAVE
6695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include Non-Flushable Packet Boundary Flag feature of Lisbon */
6725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_NON_FLUSHABLE_PB_INCLUDED
6735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_NON_FLUSHABLE_PB_INCLUDED     TRUE
6745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Minimum number of ACL credit for high priority link */
6775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_HIGH_PRI_MIN_XMIT_QUOTA
678689d66b6559dcb3a0ad7f6cc33b6129e50910253The Android Open Source Project#define L2CAP_HIGH_PRI_MIN_XMIT_QUOTA       5
6795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* used for monitoring HCI ACL credit management */
6825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_HCI_FLOW_CONTROL_DEBUG
6835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_HCI_FLOW_CONTROL_DEBUG        TRUE
6845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for calculating transmit buffers off of */
6875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_NUM_XMIT_BUFFS
6885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_NUM_XMIT_BUFFS                HCI_ACL_BUF_MAX
6895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data */
6925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_INCLUDED
6935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_INCLUDED                  FALSE
6945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
6955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
6965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data MTU */
6975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_MTU
6985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_MTU                       L2CAP_MTU_SIZE
6995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data Idle Timeout */
7025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_IDLE_TIMEOUT
7035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_IDLE_TIMEOUT              2
7045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Unicast Connectionless Data Idle Timeout */
7075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_UCD_CH_PRIORITY
7085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_UCD_CH_PRIORITY               L2CAP_CHNL_PRIORITY_MEDIUM
7095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for features using fixed channels; set to zero if no fixed channels supported (BLE, etc.) */
7125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Excluding L2CAP signaling channel and UCD */
7135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_NUM_FIXED_CHNLS
7148372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define L2CAP_NUM_FIXED_CHNLS               32
7155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* First fixed channel supported */
7185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_FIRST_FIXED_CHNL
719444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#define L2CAP_FIRST_FIXED_CHNL              4
7205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_LAST_FIXED_CHNL
7235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_LAST_FIXED_CHNL           (L2CAP_FIRST_FIXED_CHNL + L2CAP_NUM_FIXED_CHNLS - 1)
7245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Round Robin service channels in link */
7275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_ROUND_ROBIN_CHANNEL_SERVICE
7285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_ROUND_ROBIN_CHANNEL_SERVICE   TRUE
7295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for calculating transmit buffers off of */
7325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_NUM_XMIT_BUFFS
7335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_NUM_XMIT_BUFFS                HCI_ACL_BUF_MAX
7345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* used for monitoring eL2CAP data flow */
7375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_ERTM_STATS
7385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_ERTM_STATS                    FALSE
7395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for conformance testing ONLY:  When TRUE lets scriptwrapper overwrite info response */
7425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef L2CAP_CONFORMANCE_TESTING
7435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_CONFORMANCE_TESTING           FALSE
7445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7468372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/*
7478372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz * Max bytes per connection to buffer locally before dropping the
7488372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz * connection if local client does not receive it  - default is 1MB
7498372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz */
7508372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef L2CAP_MAX_RX_BUFFER
7518372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define L2CAP_MAX_RX_BUFFER                 0x100000
7528372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
7538372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
7548372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
7555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef TIMER_PARAM_TYPE
7565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define TIMER_PARAM_TYPE    UINT32
7575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
7605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
7615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BLE
7625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
7635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
7645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7654af5f3e8f77e3719fac425134b7a14e527d1523cGanesh Ganapathi Batta#ifndef BLE_INCLUDED
766ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define BLE_INCLUDED            TRUE
7675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
769b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#ifndef BLE_ANDROID_CONTROLLER_SCAN_FILTER
770b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#define BLE_ANDROID_CONTROLLER_SCAN_FILTER            TRUE
771b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#endif
772b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach
7735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef LOCAL_BLE_CONTROLLER_ID
7745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define LOCAL_BLE_CONTROLLER_ID         (1)
7755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
7765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
7773e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach/*
7783e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * Toggles support for general LE privacy features such as remote address
7793e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * resolution, local address rotation etc.
7803e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach */
7817fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#ifndef BLE_PRIVACY_SPT
7820aee331900424ed23857ee2390fbb03338a60d91Chris Manton#define BLE_PRIVACY_SPT         TRUE
7838b35b3fccc065730e6f0ee1050d3e4528e58ea37Zhihai Xu#endif
7848b35b3fccc065730e6f0ee1050d3e4528e58ea37Zhihai Xu
7853e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach/*
7863e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * Enables or disables support for local privacy (ex. address rotation)
7873e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach */
7883e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach#ifndef BLE_LOCAL_PRIVACY_ENABLED
7893e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach#define BLE_LOCAL_PRIVACY_ENABLED         TRUE
7903e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach#endif
7913e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach
7923e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach/*
7933e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * Toggles support for vendor specific extensions such as RPA offloading,
7943e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach * feature discovery, multi-adv etc.
7953e0dc7324e7b0127f9d15609bab395100a22098dAndre Eisenbach */
796ed534e330bf63c72e778fc8daae09ddd63c395b2Wei Wang#ifndef BLE_VND_INCLUDED
79716fe0822ccd3eb6f66d3afd9965d25a0a0cb4c30Prerepa Viswanadham#define BLE_VND_INCLUDED        FALSE
798ed534e330bf63c72e778fc8daae09ddd63c395b2Wei Wang#endif
799d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com
800d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#ifndef BTM_BLE_ADV_TX_POWER
801d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#define BTM_BLE_ADV_TX_POWER {-21, -15, -7, 1, 9}
802d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#endif
803d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com
804d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com
805d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#ifndef BLE_BATCH_SCAN_INCLUDED
806d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#define BLE_BATCH_SCAN_INCLUDED  TRUE
807d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com#endif
808d77eec93e5299f5bff987fceceba612b33251a14git-zhenye.broadcom.com
8095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
8105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
8115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** ATT/GATT Protocol/Profile Settings
8125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
8135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
814597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#ifndef BTA_GATT_INCLUDED
815597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#if BLE_INCLUDED == TRUE
816597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#define BTA_GATT_INCLUDED TRUE
817597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#else
818597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#define BTA_GATT_INCLUDED FALSE
819597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#endif
820597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#endif
821597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen
822597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#if BTA_GATT_INCLUDED == TRUE && BLE_INCLUDED == FALSE
823597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#error "can't have GATT without BLE"
824597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen#endif
825597c5778ca69fec26c96bda48b83935c1a90660dMike J. Chen
8267fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#ifndef BLE_LLT_INCLUDED
8277fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#define BLE_LLT_INCLUDED    TRUE
8287fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#endif
829e97508ef05277f7e2299793b51cd3df080a58527Chris Manton
8305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef ATT_INCLUDED
831ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define ATT_INCLUDED         TRUE
8325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
8335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
8345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef ATT_DEBUG
835ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define ATT_DEBUG           TRUE
8365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
8375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
838602162a13c6ed8abae53aee6deeda48b79f30911Zhihai Xu#ifndef BLE_PERIPHERAL_MODE_SUPPORT
8397fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#define BLE_PERIPHERAL_MODE_SUPPORT  TRUE
840602162a13c6ed8abae53aee6deeda48b79f30911Zhihai Xu#endif
841602162a13c6ed8abae53aee6deeda48b79f30911Zhihai Xu
8425702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu#ifndef BLE_DELAY_REQUEST_ENC
8435702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu/* This flag is to work around IPHONE problem, We need to wait for iPhone ready
8445702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu   before send encryption request to iPhone */
8455702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu#define BLE_DELAY_REQUEST_ENC        FALSE
8465702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu#endif
8475702d5c6197404823f5e594764e2c67cf2416da1Zhihai Xu
848a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#ifndef GAP_TRANSPORT_SUPPORTED
849a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#define GAP_TRANSPORT_SUPPORTED      GATT_TRANSPORT_LE_BR_EDR
850a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#endif
851a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu
852a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#ifndef GATTP_TRANSPORT_SUPPORTED
853a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#define GATTP_TRANSPORT_SUPPORTED    GATT_TRANSPORT_LE_BR_EDR
854a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu#endif
855a0cf8d6f47fd6709085b9ad2c8626986f7ae7f21Zhihai Xu
8565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_SR_PROFILES
8575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GATT_MAX_SR_PROFILES        32 /* max is 32 */
8585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
8595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
8605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_APPS
861845961f2f710e5fdf1c08c0c1ccc1368eeb0f6c0Wei Wang#define GATT_MAX_APPS            32 /* note: 2 apps used internally GATT and GAP */
8625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
8635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
8645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_PHY_CHANNEL
8658dc42c603f5571047878640705eee18fa5396f11Andre Eisenbach#define GATT_MAX_PHY_CHANNEL        7
8665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
8675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
8685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Used for conformance testing ONLY */
8695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_CONFORMANCE_TESTING
8705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GATT_CONFORMANCE_TESTING           FALSE
8715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
8725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
8735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* number of background connection device allowence, ideally to be the same as WL size
8745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
8755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef GATT_MAX_BG_CONN_DEV
8765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define GATT_MAX_BG_CONN_DEV        32
8775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
8785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
8795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
8805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
8815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** SMP
8825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
8835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
8845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_INCLUDED
885a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#if BLE_INCLUDED == TRUE
886ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#define SMP_INCLUDED         TRUE
887a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#else
888a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#define SMP_INCLUDED         FALSE
889a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#endif
890a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#endif
891a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen
892a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#if SMP_INCLUDED == TRUE && BLE_INCLUDED == FALSE
893a2c51a74369b0d88365abccfac59db754a28cbb7Mike J. Chen#error "can't have SMP without BLE"
8945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
8955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
8965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_DEBUG
897a7246ca21d7570a725a9b7781649d194357e474cAndre Eisenbach#define SMP_DEBUG            FALSE
8985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
8995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_DEFAULT_AUTH_REQ
9015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SMP_DEFAULT_AUTH_REQ    SMP_AUTH_NB_ENC_ONLY
9025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_MAX_ENC_KEY_SIZE
9055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SMP_MAX_ENC_KEY_SIZE    16
9065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SMP_MIN_ENC_KEY_SIZE
9095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SMP_MIN_ENC_KEY_SIZE    7
9105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
912444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji/* minimum link timeout after SMP pairing is done, leave room for key exchange
913444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji   and racing condition for the following service connection.
914444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji   Prefer greater than 0 second, and no less than default inactivity link idle
915444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji   timer(L2CAP_LINK_INACTIVITY_TOUT) in l2cap) */
916444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#ifndef SMP_LINK_TOUT_MIN
917444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#if (L2CAP_LINK_INACTIVITY_TOUT > 0)
918444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#define SMP_LINK_TOUT_MIN               L2CAP_LINK_INACTIVITY_TOUT
919444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#else
920444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#define SMP_LINK_TOUT_MIN               2
921444a8da807abaf5f9e813ce70c56a79160495fb3Satya Calloji#endif
9225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
9245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
9255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** SDP
9265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
9275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
9285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to enable SDP server functionality. */
9305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_SERVER_ENABLED
9315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_SERVER_ENABLED          TRUE
9325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of SDP records the server can support. */
9355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_RECORDS
9368372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define SDP_MAX_RECORDS             30
9375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of attributes in each record. */
9405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_REC_ATTR
9415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_REC_ATTR            25
9425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_PAD_LEN
9455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_PAD_LEN             600
9465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum length, in bytes, of an attribute. */
9495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_ATTR_LEN
9505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_ATTR_LEN            400
9515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of attribute filters supported by SDP databases. */
9545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_ATTR_FILTERS
9555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_ATTR_FILTERS        15
9565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of UUID filters supported by SDP databases. */
9595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_UUID_FILTERS
9605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_UUID_FILTERS        3
9615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is set to enable SDP client functionality. */
9645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_CLIENT_ENABLED
9655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_CLIENT_ENABLED          TRUE
9665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of record handles retrieved in a search. */
9695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_DISC_SERVER_RECS
9705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_DISC_SERVER_RECS    21
9715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The size of a scratchpad buffer, in bytes, for storing the response to an attribute request. */
9745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_LIST_BYTE_COUNT
9755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_LIST_BYTE_COUNT     4096
9765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of parameters in an SDP protocol element. */
9795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_PROTOCOL_PARAMS
9805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_PROTOCOL_PARAMS     2
9815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of simultaneous client and server connections. */
9845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MAX_CONNECTIONS
9855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_MAX_CONNECTIONS         4
9865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The MTU size for the L2CAP configuration. */
9895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_MTU_SIZE
990f8d46a639d847795bbe7b0a7878383da6318c064Matthew Xie#define SDP_MTU_SIZE                672
9915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The flush timeout for the L2CAP configuration. */
9945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_FLUSH_TO
9955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_FLUSH_TO                0xFFFF
9965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
9975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
9985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The name for security authorization. */
9995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_SERVICE_NAME
10005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_SERVICE_NAME            "Service Discovery"
10015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The security level for BTM. */
10045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_SECURITY_LEVEL
10055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_SECURITY_LEVEL          BTM_SEC_NONE
10065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
10095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
10105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** RFCOMM
10115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
10125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
10135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of ports supported. */
10155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_RFC_PORTS
10165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_RFC_PORTS               30
10175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum simultaneous links to different devices. */
10205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_ACL_CONNECTIONS
10215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_BD_CONNECTIONS          7
10225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else
10235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_BD_CONNECTIONS          MAX_ACL_CONNECTIONS
10245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue low watermark level, in bytes. */
10275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_LOW_WM
10285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_LOW_WM              (BTA_RFC_MTU_SIZE * PORT_RX_BUF_LOW_WM)
10295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue high watermark level, in bytes. */
10325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_HIGH_WM
10335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_HIGH_WM             (BTA_RFC_MTU_SIZE * PORT_RX_BUF_HIGH_WM)
10345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue critical watermark level, in bytes. */
10375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_CRITICAL_WM
10385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_CRITICAL_WM         (BTA_RFC_MTU_SIZE * PORT_RX_BUF_CRITICAL_WM)
10395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue low watermark level, in number of buffers. */
10425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_BUF_LOW_WM
10435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_BUF_LOW_WM          4
10445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue high watermark level, in number of buffers. */
10475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_BUF_HIGH_WM
10485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_BUF_HIGH_WM         10
10495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port receive queue critical watermark level, in number of buffers. */
10525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_RX_BUF_CRITICAL_WM
10535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_RX_BUF_CRITICAL_WM     15
10545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue high watermark level, in bytes. */
10575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_HIGH_WM
10585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_HIGH_WM             (BTA_RFC_MTU_SIZE * PORT_TX_BUF_HIGH_WM)
10595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue critical watermark level, in bytes. */
10625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_CRITICAL_WM
10635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_CRITICAL_WM         (BTA_RFC_MTU_SIZE * PORT_TX_BUF_CRITICAL_WM)
10645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue high watermark level, in number of buffers. */
10675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_BUF_HIGH_WM
10685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_BUF_HIGH_WM         10
10695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The port transmit queue high watermark level, in number of buffers. */
10725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_TX_BUF_CRITICAL_WM
10735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_TX_BUF_CRITICAL_WM     15
10745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The RFCOMM multiplexer preferred flow control mechanism. */
10775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_FC_DEFAULT
10785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_FC_DEFAULT             PORT_FC_CREDIT
10795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of credits receiver sends to peer when using credit-based flow control. */
10825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_CREDIT_RX_MAX
10835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_CREDIT_RX_MAX          16
10845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The credit low watermark level. */
10875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_CREDIT_RX_LOW
10885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_CREDIT_RX_LOW          8
10895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* if application like BTA, Java or script test engine is running on other than BTU thread, */
10925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* PORT_SCHEDULE_LOCK shall be defined as GKI_sched_lock() or GKI_disable() */
10935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_SCHEDULE_LOCK
10945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_SCHEDULE_LOCK          GKI_disable()
10955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
10965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
10975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* if application like BTA, Java or script test engine is running on other than BTU thread, */
10985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* PORT_SCHEDULE_LOCK shall be defined as GKI_sched_unlock() or GKI_enable() */
10995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PORT_SCHEDULE_UNLOCK
11005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PORT_SCHEDULE_UNLOCK        GKI_enable()
11015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
11025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
11035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
11045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
11058372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz** OBEX
11068372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz**
11078372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz******************************************************************************/
11088372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_14_INCLUDED             FALSE
1109d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde
1110d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde/* The maximum number of registered servers. */
1111d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#ifndef OBX_NUM_SERVERS
1112d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#define OBX_NUM_SERVERS             12
1113d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#endif
1114d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde
1115d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde/* The maximum number of active clients. */
1116d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#ifndef OBX_NUM_CLIENTS
1117d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#define OBX_NUM_CLIENTS             8
1118d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde#endif
1119d232721ae5e5b6949a5249f0d116408b8a3c5f1dCasper Bonde
11208372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE
11218372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz   Pool ID where to reassemble the SDU.
11228372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz   This Pool will allow buffers to be used that are larger than
11238372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz   the L2CAP_MAX_MTU. */
11248372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_USER_RX_POOL_ID
11258372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_USER_RX_POOL_ID     OBX_LRG_DATA_POOL_ID
11268372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
11278372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
11288372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE
11298372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz   Pool ID where to hold the SDU.
11308372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz   This Pool will allow buffers to be used that are larger than
11318372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz   the L2CAP_MAX_MTU. */
11328372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_USER_TX_POOL_ID
11338372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_USER_TX_POOL_ID     OBX_LRG_DATA_POOL_ID
11348372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
11358372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
11368372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE
11378372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzGKI Buffer Pool ID used to hold MPS segments during SDU reassembly
11388372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/
11398372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_RX_POOL_ID
11408372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_RX_POOL_ID      HCI_ACL_POOL_ID
11418372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
11428372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
11438372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE
11448372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzGKI Buffer Pool ID used to hold MPS segments used in (re)transmissions.
11458372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzL2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool.
11468372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzNote:  This pool needs to have enough buffers to hold two times the window size negotiated
11478372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz in the L2CA_SetFCROptions (2 * tx_win_size)  to allow for retransmissions.
11488372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz The size of each buffer must be able to hold the maximum MPS segment size passed in
11498372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz L2CA_SetFCROptions plus BT_HDR (8) + HCI preamble (4) + L2CAP_MIN_OFFSET (11 - as of BT 2.1 + EDR Spec).
11508372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/
11518372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_TX_POOL_ID
11528372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_TX_POOL_ID      HCI_ACL_POOL_ID
11538372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
11548372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
11558372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE
11568372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzSize of the transmission window when using enhanced retransmission mode. Not used
11578372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulzin basic and streaming modes. Range: 1 - 63
11588372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/
11598372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_TX_WINDOW_SIZE_BR_EDR
11608372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_TX_WINDOW_SIZE_BR_EDR       20
11618372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
11628372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
11638372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE
11648372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzNumber of transmission attempts for a single I-Frame before taking
11658372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzDown the connection. Used In ERTM mode only. Value is Ignored in basic and
11668372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzStreaming modes.
11678372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzRange: 0, 1-0xFF
11688372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz0 - infinite retransmissions
11698372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz1 - single transmission
11708372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/
11718372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_MAX_TX_B4_DISCNT
11728372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_MAX_TX_B4_DISCNT    20
11738372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
11748372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
11758372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE
11768372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzRetransmission Timeout
11778372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzRange: Minimum 2000 (2 secs) on BR/EDR when supporting PBF.
11788372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz */
11798372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_RETX_TOUT
11808372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_RETX_TOUT           2000
11818372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
11828372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
11838372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE
11848372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzMonitor Timeout
11858372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzRange: Minimum 12000 (12 secs) on BR/EDR when supporting PBF.
11868372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/
11878372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_MONITOR_TOUT
11888372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_MONITOR_TOUT        12000
11898372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
11908372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
11918372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This option is application when OBX_14_INCLUDED=TRUE
11928372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzMaximum PDU payload size.
11938372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzSuggestion: The maximum amount of data that will fit into a 3-DH5 packet.
11948372aa5fa535ee4f09c09981b6125b54ace31fe2Kim SchulzRange: 2 octets
11958372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz*/
11968372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef OBX_FCR_OPT_MAX_PDU_SIZE
11978372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define OBX_FCR_OPT_MAX_PDU_SIZE        L2CAP_MPS_OVER_BR_EDR
11988372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
11998372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
12008372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
12018372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/******************************************************************************
12028372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz**
12035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BNEP
12045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
12055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
12065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_INCLUDED
12085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_INCLUDED               TRUE
12095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* BNEP status API call is used mainly to get the L2CAP handle */
12125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_SUPPORTS_STATUS_API
12135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_SUPPORTS_STATUS_API            TRUE
12145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*
12175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** When BNEP connection changes roles after the connection is established
12185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** we will do an authentication check again on the new role
12195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
12205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_DO_AUTH_FOR_ROLE_SWITCH
12215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_DO_AUTH_FOR_ROLE_SWITCH        TRUE
12225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of protocol filters supported. */
12265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_PROT_FILTERS
12275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_PROT_FILTERS       5
12285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of multicast filters supported. */
12315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_MULTI_FILTERS
12325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_MULTI_FILTERS      5
12335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Minimum MTU size. */
12365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MIN_MTU_SIZE
12375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MIN_MTU_SIZE           L2CAP_MTU_SIZE
12385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Preferred MTU size. */
12415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MTU_SIZE
12425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MTU_SIZE               BNEP_MIN_MTU_SIZE
12435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of buffers allowed in transmit data queue. */
12465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_XMITQ_DEPTH
12475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_XMITQ_DEPTH        20
12485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number BNEP of connections supported. */
12515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BNEP_MAX_CONNECTIONS
12525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BNEP_MAX_CONNECTIONS        7
12535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
12575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
12585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** AVDTP
12595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
12605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
12615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_INCLUDED
12635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_INCLUDED               TRUE
12645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include reporting capability in AVDTP */
12675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_REPORTING
12685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_REPORTING              TRUE
12695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Include multiplexing capability in AVDTP */
12725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_MULTIPLEXING
12735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_MULTIPLEXING           TRUE
12745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous links to different peer devices. */
12775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_LINKS
12785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_LINKS              2
12795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous stream endpoints. */
12825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_SEPS
12835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_SEPS               3
12845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
12855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of transport channels setup per media stream(audio or video) */
12875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_CHANNELS
12885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if AVDT_REPORTING == TRUE
12905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* signaling, media and reporting channels */
12915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_CHANNELS   3
12925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else
12935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* signaling and media channels */
12945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_CHANNELS   2
1295f857d64505d81ce0834de150b79b333a4ff445f2Chris Manton#endif  // AVDT_REPORTING
12965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1297f857d64505d81ce0834de150b79b333a4ff445f2Chris Manton#endif  // AVDT_NUM_CHANNELS
12985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
12995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of transport channels setup by AVDT for all media streams
13005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * AVDT_NUM_CHANNELS * Number of simultaneous streams.
13015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */
13025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_NUM_TC_TBL
13035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_NUM_TC_TBL             6
13045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum size in bytes of the codec capabilities information element. */
13075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_CODEC_SIZE
13085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_CODEC_SIZE             10
13095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum size in bytes of the content protection information element. */
13125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_PROTECT_SIZE
13135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_PROTECT_SIZE           90
13145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of GKI buffers in the fragment queue (for video frames).
13175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Must be less than the number of buffers in the buffer pool of size AVDT_DATA_POOL_SIZE */
13185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVDT_MAX_FRAG_COUNT
13195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVDT_MAX_FRAG_COUNT         15
13205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
13235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
13245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN
13255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
13265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
13275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_INCLUDED
13295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_INCLUDED                     TRUE
13305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This will enable the PANU role */
13335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_ROLE_PANU
13345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_ROLE_PANU              TRUE
13355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This will enable the GN role */
13385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_ROLE_GN
13395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_ROLE_GN                TRUE
13405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This will enable the NAP role */
13435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_ROLE_NAP
13445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_ROLE_NAP               TRUE
13455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is just for debugging purposes */
13485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_SUPPORTS_DEBUG_DUMP
13495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_SUPPORTS_DEBUG_DUMP             TRUE
13505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Maximum number of PAN connections allowed */
13535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MAX_PAN_CONNS
13545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MAX_PAN_CONNS                    7
13555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default service name for NAP role */
13585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_NAP_DEFAULT_SERVICE_NAME
13595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_NAP_DEFAULT_SERVICE_NAME    "Network Access Point Service"
13605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default service name for GN role */
13635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_GN_DEFAULT_SERVICE_NAME
13645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_GN_DEFAULT_SERVICE_NAME     "Group Network Service"
13655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default service name for PANU role */
13685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_PANU_DEFAULT_SERVICE_NAME
13695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_PANU_DEFAULT_SERVICE_NAME   "PAN User Service"
13705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default description for NAP role service */
13735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_NAP_DEFAULT_DESCRIPTION
13745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_NAP_DEFAULT_DESCRIPTION     "NAP"
13755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default description for GN role service */
13785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_GN_DEFAULT_DESCRIPTION
13795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_GN_DEFAULT_DESCRIPTION      "GN"
13805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default description for PANU role service */
13835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_PANU_DEFAULT_DESCRIPTION
13845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_PANU_DEFAULT_DESCRIPTION    "PANU"
13855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default Security level for PANU role. */
13885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_PANU_SECURITY_LEVEL
13895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_PANU_SECURITY_LEVEL          0
13905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default Security level for GN role. */
13935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_GN_SECURITY_LEVEL
13945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_GN_SECURITY_LEVEL            0
13955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
13965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
13975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Default Security level for NAP role. */
13985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_NAP_SECURITY_LEVEL
13995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_NAP_SECURITY_LEVEL           0
14005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
14035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
14045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** GAP
14055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
14065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
14075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14088372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_INCLUDED
14098372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_INCLUDED                TRUE
14108372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
14118372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
14128372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This is set to enable use of GAP L2CAP connections. */
14138372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_CONN_INCLUDED
14148372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_CONN_INCLUDED           TRUE
14158372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
14168372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
14178372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* This is set to enable posting event for data write */
14188372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_CONN_POST_EVT_INCLUDED
14198372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_CONN_POST_EVT_INCLUDED  FALSE
14208372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
14218372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
14228372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz/* The maximum number of simultaneous GAP L2CAP connections. */
14238372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#ifndef GAP_MAX_CONNECTIONS
14248372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#define GAP_MAX_CONNECTIONS         30
14258372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz#endif
14268372aa5fa535ee4f09c09981b6125b54ace31fe2Kim Schulz
14275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* keep the raw data received from SDP server in database. */
14285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_RAW_DATA_INCLUDED
14295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_RAW_DATA_INCLUDED       TRUE
14305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Inquiry duration in 1.28 second units. */
14335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef SDP_DEBUG
14345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define SDP_DEBUG                   TRUE
14355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
14385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
14395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** HID
14405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
14415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
14425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_DEV_SUBCLASS
14445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_DEV_SUBCLASS            COD_MINOR_POINTING
14455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_CONTROL_POOL_ID
14485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_CONTROL_POOL_ID             2
14495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_INTERRUPT_POOL_ID
14525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_INTERRUPT_POOL_ID           2
14535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*************************************************************************
14565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Definitions for Both HID-Host & Device
14575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
14585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_MAX_SVC_NAME_LEN
14595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_MAX_SVC_NAME_LEN  32
14605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_MAX_SVC_DESCR_LEN
14635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_MAX_SVC_DESCR_LEN 32
14645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_MAX_PROV_NAME_LEN
14675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_MAX_PROV_NAME_LEN 32
14685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*************************************************************************
14715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Definitions for HID-Host
14725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
14735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef  HID_HOST_INCLUDED
14745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_INCLUDED           TRUE
14755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_MAX_DEVICES
14785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_MAX_DEVICES        7
14795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_MTU
14825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_MTU                640
14835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_FLUSH_TO
14865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_FLUSH_TO                 0xffff
14875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_MAX_CONN_RETRY
14905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_MAX_CONN_RETRY     (3)
14915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HID_HOST_REPAGE_WIN
14945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HID_HOST_REPAGE_WIN          (2)
14955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
14965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
14975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*************************************************************************
14985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * A2DP Definitions
14995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */
15005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef A2D_INCLUDED
15015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_INCLUDED            TRUE
15025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
15055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
15065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** AVCTP
15075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
15085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
15095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous ACL links to different peer devices. */
15115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVCT_NUM_LINKS
15125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVCT_NUM_LINKS              2
15135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of simultaneous AVCTP connections. */
15165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef AVCT_NUM_CONN
15175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define AVCT_NUM_CONN               3
15185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
15215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
15225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** AVRCP
15235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
15245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
15255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15269adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan#ifndef AVRC_METADATA_INCLUDED
15279adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan#define AVRC_METADATA_INCLUDED      TRUE
15289adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan#endif
15299adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajan
1530247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji#ifndef AVRC_ADV_CTRL_INCLUDED
1531247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji#define AVRC_ADV_CTRL_INCLUDED      TRUE
1532247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji#endif
1533247c68fe6eee3660cbdcf4509195fe735ae25573Satya Calloji
153493912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood#ifndef AVRC_CTLR_INCLUDED
153593912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood#define AVRC_CTLR_INCLUDED          TRUE
153693912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood#endif
153793912473fde12ab5ab4b1be8774bbf43d47c7ddcMike Lockwood
15385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
15395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
15405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** MCAP
15415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
15425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
15435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_INCLUDED
15445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_INCLUDED                FALSE
15455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The MTU size for the L2CAP configuration on control channel. 48 is the minimal */
15485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_CTRL_MTU
15495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_CTRL_MTU    60
15505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of registered MCAP instances. */
15535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_REGS
1554f8f30c2cecf221b2c3983b72d5a849d799c39dd7Priti Aghera#define MCA_NUM_REGS    12
15555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of control channels (to difference devices) per registered MCAP instances. */
15585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_LINKS
15595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_NUM_LINKS   3
15605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of MDEP (including HDP echo) per registered MCAP instances. */
15635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_DEPS
1564f8f30c2cecf221b2c3983b72d5a849d799c39dd7Priti Aghera#define MCA_NUM_DEPS    13
15655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* The maximum number of MDL link per control channel. */
15685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_NUM_MDLS
15695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_NUM_MDLS    4
15705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Pool ID where to reassemble the SDU. */
15735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_USER_RX_POOL_ID
15745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_USER_RX_POOL_ID     HCI_ACL_POOL_ID
15755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Pool ID where to hold the SDU. */
15785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_USER_TX_POOL_ID
15795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_USER_TX_POOL_ID     HCI_ACL_POOL_ID
15805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*
15835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectGKI Buffer Pool ID used to hold MPS segments during SDU reassembly
15845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
15855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_RX_POOL_ID
15865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_RX_POOL_ID      HCI_ACL_POOL_ID
15875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
15885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
15895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*
15905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectGKI Buffer Pool ID used to hold MPS segments used in (re)transmissions.
15915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectL2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool.
15925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectNote:  This pool needs to have enough buffers to hold two times the window size negotiated
15935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project in the tL2CAP_FCR_OPTIONS (2 * tx_win_size)  to allow for retransmissions.
15945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project The size of each buffer must be able to hold the maximum MPS segment size passed in
15955738f83aeb59361a0a2eda2460113f6dc919427The 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).
15965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
15975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_TX_POOL_ID
15985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_TX_POOL_ID      HCI_ACL_POOL_ID
15995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option:
16025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectSize of the transmission window when using enhanced retransmission mode.
16035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project1 is defined by HDP specification for control channel.
16045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
16055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_TX_WINDOW_SIZE
16065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_TX_WINDOW_SIZE      1
16075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option:
16105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectNumber of transmission attempts for a single I-Frame before taking
16115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectDown the connection. Used In ERTM mode only. Value is Ignored in basic and
16125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectStreaming modes.
16135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectRange: 0, 1-0xFF
16145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project0 - infinite retransmissions
16155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project1 - single transmission
16165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
16175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_MAX_TX_B4_DISCNT
16185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_MAX_TX_B4_DISCNT    20
16195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: Retransmission Timeout
16225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectThe AVRCP specification set a value in the range of 300 - 2000 ms
16235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectTimeout (in msecs) to detect Lost I-Frames. Only used in Enhanced retransmission mode.
16245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectRange: Minimum 2000 (2 secs) when supporting PBF.
16255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */
16265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_RETX_TOUT
16275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_RETX_TOUT           2000
16285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: Monitor Timeout
16315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectThe AVRCP specification set a value in the range of 300 - 2000 ms
16325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectTimeout (in msecs) to detect Lost S-Frames. Only used in Enhanced retransmission mode.
16335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectRange: Minimum 12000 (12 secs) when supporting PBF.
16345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
16355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_MONITOR_TOUT
16365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_MONITOR_TOUT        12000
16375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* MCAP control channel FCR Option: Maximum PDU payload size.
16405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectThe maximum number of payload octets that the local device can receive in a single PDU.
16415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/
16425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef MCA_FCR_OPT_MPS_SIZE
16435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define MCA_FCR_OPT_MPS_SIZE            1000
16445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Shared transport */
16475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef NFC_SHARED_TRANSPORT_ENABLED
16485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define NFC_SHARED_TRANSPORT_ENABLED    FALSE
16495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
16525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
16535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Sleep Mode (Low Power Mode)
16545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
16555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
16565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef HCILP_INCLUDED
16585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define HCILP_INCLUDED                  TRUE
16595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
16625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
16635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** APPL - Application Task
16645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
16655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
16665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_FEATURE_REQ_ID      73
16685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define L2CAP_FEATURE_RSP_ID     173
16695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
16715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
16725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** BTA
16735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
16745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
16755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* BTA EIR canned UUID list (default is dynamic) */
16765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_EIR_CANNED_UUID_LIST
16775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_EIR_CANNED_UUID_LIST FALSE
16785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Number of supported customer UUID in EIR */
16815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_EIR_SERVER_NUM_CUSTOM_UUID
16825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_EIR_SERVER_NUM_CUSTOM_UUID     8
16835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* CHLD override for bluedroid */
16865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_CHLD_VAL_ECC
16875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AG_CHLD_VAL_ECC  "(0,1,1x,2,2x,3)"
16885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_CHLD_VAL
16915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AG_CHLD_VAL  "(0,1,2,3)"
16925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Set the CIND to match HFP 1.5 */
16955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AG_CIND_INFO
16965738f83aeb59361a0a2eda2460113f6dc919427The 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))"
16975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
16985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
16999647e91549368fd44440dd13a854f403feb13ad9Mattias Agren#ifndef BTA_DM_AVOID_A2DP_ROLESWITCH_ON_INQUIRY
17009647e91549368fd44440dd13a854f403feb13ad9Mattias Agren#define BTA_DM_AVOID_A2DP_ROLESWITCH_ON_INQUIRY TRUE
17019647e91549368fd44440dd13a854f403feb13ad9Mattias Agren#endif
17025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
17035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
17045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
17055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Tracing:  Include trace header file here.
17065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
17075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
17085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
17091bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach/* Enable/disable BTSnoop memory logging */
17101bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach#ifndef BTSNOOP_MEM
17111bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach#define BTSNOOP_MEM TRUE
17121bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach#endif
17131bd76059e72b7a0d54f6b325882f6eccd311f874Andre Eisenbach
17145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bt_trace.h"
17155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
17165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* BT_TARGET_H */
1717