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
800
extern
"C"
{
801
#endif
802
803
BT_API
extern
void
bte_main_hci_send (
BT_HDR
*p_msg, UINT16 event);
804
#if (HCISU_H4_INCLUDED == TRUE)
805
BT_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
874
set to FALSE for advanced start-up / shut-down procedures using USER_HW_ENABLE_API
875
and 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
1941
GKI 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
1948
GKI Buffer Pool ID used to hold MPS segments used in (re)transmissions.
1949
L2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool.
1950
Note: 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
1960
Size of the transmission window when using enhanced retransmission mode. Not used
1961
in 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
1968
Number of transmission attempts for a single I-Frame before taking
1969
Down the connection. Used In ERTM mode only. Value is Ignored in basic and
1970
Streaming modes.
1971
Range: 0, 1-0xFF
1972
0 - infinite retransmissions
1973
1 - 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
1980
Retransmission Timeout
1981
Range: 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
1988
Monitor Timeout
1989
Range: 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
/*
3478
GKI 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
/*
3485
GKI Buffer Pool ID used to hold MPS segments used in (re)transmissions.
3486
L2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool.
3487
Note: 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:
3497
Size of the transmission window when using enhanced retransmission mode. Not used
3498
in 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:
3505
Number of transmission attempts for a single I-Frame before taking
3506
Down the connection. Used In ERTM mode only. Value is Ignored in basic and
3507
Streaming modes.
3508
Range: 0, 1-0xFF
3509
0 - infinite retransmissions
3510
1 - 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
3517
The AVRCP specification set a value in the range of 300 - 2000 ms
3518
Timeout (in msecs) to detect Lost I-Frames. Only used in Enhanced retransmission mode.
3519
Range: 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
3526
The AVRCP specification set a value in the range of 300 - 2000 ms
3527
Timeout (in msecs) to detect Lost S-Frames. Only used in Enhanced retransmission mode.
3528
Range: 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
/*
3594
GKI 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
/*
3601
GKI Buffer Pool ID used to hold MPS segments used in (re)transmissions.
3602
L2CAP_DEFAULT_ERM_POOL_ID is specified to use the HCI ACL data pool.
3603
Note: 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:
3613
Size of the transmission window when using enhanced retransmission mode.
3614
1 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:
3621
Number of transmission attempts for a single I-Frame before taking
3622
Down the connection. Used In ERTM mode only. Value is Ignored in basic and
3623
Streaming modes.
3624
Range: 0, 1-0xFF
3625
0 - infinite retransmissions
3626
1 - 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
3633
The AVRCP specification set a value in the range of 300 - 2000 ms
3634
Timeout (in msecs) to detect Lost I-Frames. Only used in Enhanced retransmission mode.
3635
Range: 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
3642
The AVRCP specification set a value in the range of 300 - 2000 ms
3643
Timeout (in msecs) to detect Lost S-Frames. Only used in Enhanced retransmission mode.
3644
Range: 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.
3651
The 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 */
BT_HDR
Definition
bt_types.h:198
include
lib
revolution
BTE
include
bt_target.h
Made with ❤️ by
CLF78
and
RootCubed
. Logos by
Chasical
and
B1
. Website generated by
Doxygen
1.13.2