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