nfc_target.h revision b58ba0e89a3767e6174c42d3e90540d1eae10f81
1/******************************************************************************
2 *
3 *  Copyright (C) 1999-2012 Broadcom Corporation
4 *
5 *  Licensed under the Apache License, Version 2.0 (the "License");
6 *  you may not use this file except in compliance with the License.
7 *  You may obtain a copy of the License at:
8 *
9 *  http://www.apache.org/licenses/LICENSE-2.0
10 *
11 *  Unless required by applicable law or agreed to in writing, software
12 *  distributed under the License is distributed on an "AS IS" BASIS,
13 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 *  See the License for the specific language governing permissions and
15 *  limitations under the License.
16 *
17 ******************************************************************************/
18
19#ifndef NFC_TARGET_H
20#define NFC_TARGET_H
21
22#include "data_types.h"
23
24#ifdef BUILDCFG
25#include "buildcfg.h"
26#endif
27
28/* Include common GKI definitions used by this platform */
29#include "gki_target.h"
30
31#include "bt_types.h"   /* This must be defined AFTER buildcfg.h */
32#include "dyn_mem.h"    /* defines static and/or dynamic memory for components */
33#ifndef LMP_TEST
34#include "bt_trace.h"
35#endif
36
37
38/* API macros for DLL (needed to export API functions from DLLs) */
39#define NFC_API         EXPORT_API
40#define LLCP_API        EXPORT_API
41
42/******************************************************************************
43**
44** GKI Mail Box and Timer
45**
46******************************************************************************/
47
48/* Mailbox event mask for NFC stack */
49#ifndef NFC_MBOX_EVT_MASK
50#define NFC_MBOX_EVT_MASK           (TASK_MBOX_0_EVT_MASK)
51#endif
52
53/* Mailbox ID for NFC stack */
54#ifndef NFC_MBOX_ID
55#define NFC_MBOX_ID                 (TASK_MBOX_0)
56#endif
57
58/* Mailbox event mask for NFA */
59#ifndef NFA_MBOX_EVT_MASK
60#define NFA_MBOX_EVT_MASK           (TASK_MBOX_2_EVT_MASK)
61#endif
62
63/* Mailbox ID for NFA */
64#ifndef NFA_MBOX_ID
65#define NFA_MBOX_ID                 (TASK_MBOX_2)
66#endif
67
68/* GKI timer id used for protocol timer in NFC stack */
69#ifndef NFC_TIMER_ID
70#define NFC_TIMER_ID                (TIMER_0)
71#endif
72
73/* GKI timer event mask used for protocol timer in NFC stack */
74#ifndef NFC_TIMER_EVT_MASK
75#define NFC_TIMER_EVT_MASK          (TIMER_0_EVT_MASK)
76#endif
77
78/* GKI timer id used for quick timer in NFC stack */
79#ifndef NFC_QUICK_TIMER_ID
80#define NFC_QUICK_TIMER_ID          (TIMER_1)
81#endif
82
83/* GKI timer event mask used for quick timer in NFC stack */
84#ifndef NFC_QUICK_TIMER_EVT_MASK
85#define NFC_QUICK_TIMER_EVT_MASK    (TIMER_1_EVT_MASK)
86#endif
87
88/* GKI timer id used for protocol timer in NFA */
89#ifndef NFA_TIMER_ID
90#define NFA_TIMER_ID                (TIMER_2)
91#endif
92
93/* GKI timer event mask used for protocol timer in NFA */
94#ifndef NFA_TIMER_EVT_MASK
95#define NFA_TIMER_EVT_MASK          (TIMER_2_EVT_MASK)
96#endif
97
98/******************************************************************************
99**
100** GKI Buffer Pools
101**
102******************************************************************************/
103
104/* NCI command/notification/data */
105#ifndef NFC_NCI_POOL_ID
106#define NFC_NCI_POOL_ID             GKI_POOL_ID_2
107#endif
108
109#ifndef NFC_NCI_POOL_BUF_SIZE
110#define NFC_NCI_POOL_BUF_SIZE       GKI_BUF2_SIZE
111#endif
112
113/* Reader/Write commands (NCI data payload) */
114#ifndef NFC_RW_POOL_ID
115#define NFC_RW_POOL_ID             GKI_POOL_ID_2
116#endif
117
118#ifndef NFC_RW_POOL_BUF_SIZE
119#define NFC_RW_POOL_BUF_SIZE       GKI_BUF2_SIZE
120#endif
121
122/* Card Emulation responses (NCI data payload) */
123#ifndef NFC_CE_POOL_ID
124#define NFC_CE_POOL_ID             GKI_POOL_ID_2
125#endif
126
127#ifndef NFC_CE_POOL_BUF_SIZE
128#define NFC_CE_POOL_BUF_SIZE       GKI_BUF2_SIZE
129#endif
130
131
132/******************************************************************************
133**
134** NCI Transport definitions
135**
136******************************************************************************/
137/* offset of the first NCI packet in buffer for outgoing */
138#ifndef NCI_MSG_OFFSET_SIZE
139#define NCI_MSG_OFFSET_SIZE             1
140#endif
141
142/* Restore NFCC baud rate to default on shutdown if NFC_UpdateBaudRate was called */
143#ifndef NFC_RESTORE_BAUD_ON_SHUTDOWN
144#define NFC_RESTORE_BAUD_ON_SHUTDOWN    TRUE
145#endif
146
147/******************************************************************************
148**
149** NCI
150**
151******************************************************************************/
152
153#define NCI_VERSION_0_F             0x0F
154#define NCI_VERSION_1_0             0x10
155
156#ifndef NCI_VERSION
157#define NCI_VERSION                 NCI_VERSION_1_0
158#endif
159
160/* TRUE I2C patch is needed */
161#ifndef NFC_I2C_PATCH_INCLUDED
162#define NFC_I2C_PATCH_INCLUDED          TRUE     /* NFC-Android uses this!!! */
163#endif
164
165/******************************************************************************
166**
167** NFC
168**
169******************************************************************************/
170#ifndef NFC_INCLUDED
171#define NFC_INCLUDED            TRUE
172#endif
173
174/* Define to TRUE to include Broadcom Vendor Specific implementation */
175#ifndef NFC_BRCM_VS_INCLUDED
176#define NFC_BRCM_VS_INCLUDED    TRUE
177#endif
178
179/* Define to TRUE to include not openned Broadcom Vendor Specific implementation */
180#ifndef NFC_BRCM_NOT_OPEN_INCLUDED
181#define NFC_BRCM_NOT_OPEN_INCLUDED  FALSE  //Android requires FALSE
182#endif
183
184/* Define to TRUE if compling for NFC Reader/Writer Only mode */
185#ifndef NFC_RW_ONLY
186#define NFC_RW_ONLY         FALSE
187#endif
188
189/* Define to TRUE to use dynamic memory allocation.
190 * The default is FALSE - to use static memory allocations.
191*/
192#ifndef NFC_DYNAMIC_MEMORY
193#define NFC_DYNAMIC_MEMORY              FALSE
194#endif
195
196/* Timeout for receiving response to NCI command */
197#ifndef NFC_CMD_CMPL_TIMEOUT
198#define NFC_CMD_CMPL_TIMEOUT        2
199#endif
200
201/* Timeout for waiting on data credit/NFC-DEP */
202#ifndef NFC_DEACTIVATE_TIMEOUT
203#define NFC_DEACTIVATE_TIMEOUT      2
204#endif
205
206/* the maximum number of Vendor Specific callback functions allowed to be registered. 1-14 */
207#ifndef NFC_NUM_VS_CBACKS
208#define NFC_NUM_VS_CBACKS       3
209#endif
210
211/* the maximum number of NCI connections allowed. 1-14 */
212#ifndef NCI_MAX_CONN_CBS
213#define NCI_MAX_CONN_CBS        4
214#endif
215
216/* Maximum number of NCI commands that the NFCC accepts without needing to wait for response */
217#ifndef NCI_MAX_CMD_WINDOW
218#define NCI_MAX_CMD_WINDOW      1
219#endif
220
221/* the maximum number of buffers for the static RF connection. 1-5 */
222#ifndef NCI_MAX_RF_DATA_CREDITS
223#define NCI_MAX_RF_DATA_CREDITS     3
224#endif
225
226/* Define to TRUE to include the NFCEE related functionalities */
227#ifndef NFC_NFCEE_INCLUDED
228#define NFC_NFCEE_INCLUDED          TRUE
229#endif
230
231/* the maximum number of NFCEE interface supported */
232#ifndef NFC_MAX_EE_INTERFACE
233#define NFC_MAX_EE_INTERFACE        3
234#endif
235
236/* the maximum number of NFCEE information supported. */
237#ifndef NFC_MAX_EE_INFO
238#define NFC_MAX_EE_INFO        8
239#endif
240
241/* the maximum number of NFCEE TLVs supported */
242#ifndef NFC_MAX_EE_TLVS
243#define NFC_MAX_EE_TLVS        1
244#endif
245
246/* the maximum size of NFCEE TLV list supported */
247#ifndef NFC_MAX_EE_TLV_SIZE
248#define NFC_MAX_EE_TLV_SIZE        150
249#endif
250
251/* Number of times reader/writer should attempt to resend a command on failure */
252#ifndef RW_MAX_RETRIES
253#define RW_MAX_RETRIES              5
254#endif
255
256/* RW NDEF Support */
257#ifndef RW_NDEF_INCLUDED
258#define RW_NDEF_INCLUDED            TRUE
259#endif
260
261/* RW Type 1 Tag timeout for each API call, in ms */
262#ifndef RW_T1T_TOUT_RESP
263#define RW_T1T_TOUT_RESP            100
264#endif
265
266/* CE Type 1 Tag timeout for controller command, in ms */
267#ifndef CE_T1T_TOUT_RESP
268#define CE_T1T_TOUT_RESP            1000
269#endif
270
271/* CE Type 2 Tag timeout for controller command, in ms */
272#ifndef CE_T2T_TOUT_RESP
273#define CE_T2T_TOUT_RESP            1000
274#endif
275
276/* RW Type 2 Tag timeout for each API call, in ms */
277#ifndef RW_T2T_TOUT_RESP
278#define RW_T2T_TOUT_RESP            100
279#endif
280
281/* RW Type 2 Tag timeout for each API call, in ms */
282#ifndef RW_T2T_SEC_SEL_TOUT_RESP
283#define RW_T2T_SEC_SEL_TOUT_RESP    10
284#endif
285
286/* RW Type 3 Tag timeout for each API call, in ms */
287#ifndef RW_T3T_TOUT_RESP
288#define RW_T3T_TOUT_RESP            100         /* NFC-Android will use 100 instead of 75 for T3t presence-check */
289#endif
290
291/* CE Type 3 Tag maximum response timeout index (for check and update, used in SENSF_RES) */
292#ifndef CE_T3T_MRTI_C
293#define CE_T3T_MRTI_C               0xFF
294#endif
295#ifndef CE_T3T_MRTI_U
296#define CE_T3T_MRTI_U               0xFF
297#endif
298
299/* Default maxblocks for CE_T3T UPDATE/CHECK operations */
300#ifndef CE_T3T_DEFAULT_UPDATE_MAXBLOCKS
301#define CE_T3T_DEFAULT_UPDATE_MAXBLOCKS 3
302#endif
303
304#ifndef CE_T3T_DEFAULT_CHECK_MAXBLOCKS
305#define CE_T3T_DEFAULT_CHECK_MAXBLOCKS  3
306#endif
307
308/* CE Type 4 Tag, Frame Waiting time Integer */
309#ifndef CE_T4T_ISO_DEP_FWI
310#define CE_T4T_ISO_DEP_FWI          7
311#endif
312
313/* RW Type 4 Tag timeout for each API call, in ms */
314#ifndef RW_T4T_TOUT_RESP
315#define RW_T4T_TOUT_RESP            1000
316#endif
317
318/* CE Type 4 Tag timeout for update file, in ms */
319#ifndef CE_T4T_TOUT_UPDATE
320#define CE_T4T_TOUT_UPDATE          1000
321#endif
322
323/* CE Type 4 Tag, mandatory NDEF File ID */
324#ifndef CE_T4T_MANDATORY_NDEF_FILE_ID
325#define CE_T4T_MANDATORY_NDEF_FILE_ID    0x1000
326#endif
327
328/* CE Type 4 Tag, max number of AID supported */
329#ifndef CE_T4T_MAX_REG_AID
330#define CE_T4T_MAX_REG_AID         4
331#endif
332
333/* Sub carrier */
334#ifndef RW_I93_FLAG_SUB_CARRIER
335#define RW_I93_FLAG_SUB_CARRIER     I93_FLAG_SUB_CARRIER_SINGLE
336#endif
337
338/* Data rate for 15693 command/response */
339#ifndef RW_I93_FLAG_DATA_RATE
340#define RW_I93_FLAG_DATA_RATE       I93_FLAG_DATA_RATE_HIGH
341#endif
342
343/* TRUE, to include Card Emulation related test commands */
344#ifndef CE_TEST_INCLUDED
345#define CE_TEST_INCLUDED            FALSE
346#endif
347
348#if (NFC_BRCM_NOT_OPEN_INCLUDED == TRUE)
349/* Power cycle NFCC to move full power mode from CE low power mode */
350#ifndef NFC_LP_POWER_CYCLE_TO_FULL
351#define NFC_LP_POWER_CYCLE_TO_FULL  TRUE
352#endif
353
354/* Parameter for low power mode command    */
355#ifndef NFC_LP_COMMAND_PARAMS
356#define NFC_LP_COMMAND_PARAMS       5
357#endif
358
359/* Primary Threshold for battery monitor   */
360#ifndef NFC_LP_PRIMARY_THRESHOLD
361#define NFC_LP_PRIMARY_THRESHOLD    0
362#endif
363
364/* Secondary Threshold for battery monitor */
365#ifndef NFC_LP_SECONDARY_THRESHOLD
366#define NFC_LP_SECONDARY_THRESHOLD  8
367#endif
368#endif
369
370/* Quick Timer */
371#ifndef QUICK_TIMER_TICKS_PER_SEC
372#define QUICK_TIMER_TICKS_PER_SEC   100       /* 10ms timer */
373#endif
374
375
376/******************************************************************************
377**
378** LLCP
379**
380******************************************************************************/
381
382#ifndef LLCP_TEST_INCLUDED
383#define LLCP_TEST_INCLUDED          FALSE
384#endif
385
386#ifndef LLCP_POOL_ID
387#define LLCP_POOL_ID                GKI_POOL_ID_3
388#endif
389
390#ifndef LLCP_POOL_BUF_SIZE
391#define LLCP_POOL_BUF_SIZE          GKI_BUF3_SIZE
392#endif
393
394/* LLCP Maximum Information Unit (between LLCP_DEFAULT_MIU(128) and LLCP_MAX_MIU (2175)*/
395#ifndef LLCP_MIU
396#define LLCP_MIU                    (LLCP_POOL_BUF_SIZE - BT_HDR_SIZE - NCI_MSG_OFFSET_SIZE - NCI_DATA_HDR_SIZE - LLCP_PDU_HEADER_SIZE)
397#endif
398
399/* Link Timeout, LTO */
400#ifndef LLCP_LTO_VALUE
401#define LLCP_LTO_VALUE              1000    /* Default is 100ms. It should be sufficiently larger than RWT */
402#endif
403
404/*
405** LTO is max time interval between the last bit received and the first bit sent over the air.
406** Link timeout must be delayed as much as time between the packet sent from LLCP and the last bit transmitted at NFCC.
407**  - 200ms, max OTA transmitting time between the first bit and the last bit at NFCC
408**    Largest MIU(2175bytes) of LLCP must be fragmented and sent on NFC-DEP over the air.
409**    8 * (DEP_REQ/RES+ACK) + DEP_REQ/RES for 2175 MIU at 106kbps bit rate.
410**  - 10ms, processing time
411*/
412#ifndef LLCP_INTERNAL_TX_DELAY
413#define LLCP_INTERNAL_TX_DELAY      210
414#endif
415
416/*
417** LTO is max time interval between the last bit received and the first bit sent over the air.
418** Link timeout must be delayed as much as time between the first bit received at NFCC and the packet received at LLCP.
419**  - 200ms, max OTA transmitting time between the first bit and the last bit at NFCC
420**    LLCP cannot receive data packet until all bit are received and reassembled in NCI.
421**    8 * (DEP_REQ/RES+ACK) + DEP_REQ/RES for 2175 MIU at 106kbps bit rate.
422**  - 10ms, processing time
423*/
424#ifndef LLCP_INTERNAL_RX_DELAY
425#define LLCP_INTERNAL_RX_DELAY      210
426#endif
427
428/* Wait for application layer sending data before sending SYMM */
429#ifndef LLCP_DELAY_RESP_TIME
430#define LLCP_DELAY_RESP_TIME        20      /* in ms */
431#endif
432
433/* LLCP inactivity timeout for initiator */
434#ifndef LLCP_INIT_INACTIVITY_TIMEOUT
435#define LLCP_INIT_INACTIVITY_TIMEOUT            0    /* in ms */
436#endif
437
438/* LLCP inactivity timeout for target */
439#ifndef LLCP_TARGET_INACTIVITY_TIMEOUT
440#define LLCP_TARGET_INACTIVITY_TIMEOUT          0    /* in ms */
441#endif
442
443/* LLCP delay timeout to send the first PDU as initiator */
444#ifndef LLCP_DELAY_TIME_TO_SEND_FIRST_PDU
445#define LLCP_DELAY_TIME_TO_SEND_FIRST_PDU      50    /* in ms */
446#endif
447
448/* Response Waiting Time */
449#ifndef LLCP_WAITING_TIME
450#define LLCP_WAITING_TIME           7       /* its scaled value should be less than LTO */
451#endif
452
453/* Options Parameters */
454#ifndef LLCP_OPT_VALUE
455#define LLCP_OPT_VALUE              LLCP_LSC_3  /* Link Service Class 3 */
456#endif
457
458/* Data link connection timeout */
459#ifndef LLCP_DATA_LINK_CONNECTION_TOUT
460#define LLCP_DATA_LINK_CONNECTION_TOUT      1000
461#endif
462
463/* Max length of service name */
464#ifndef LLCP_MAX_SN_LEN
465#define LLCP_MAX_SN_LEN             255     /* max length of service name */
466#endif
467
468/* Max number of well-known services, at least 2 for LM and SDP and up to 16 */
469#ifndef LLCP_MAX_WKS
470#define LLCP_MAX_WKS                5
471#endif
472
473/* Max number of services advertised by local SDP, up to 16 */
474#ifndef LLCP_MAX_SERVER
475#define LLCP_MAX_SERVER             10
476#endif
477
478/* Max number of services not advertised by local SDP, up to 32 */
479#ifndef LLCP_MAX_CLIENT
480#define LLCP_MAX_CLIENT             20
481#endif
482
483/* Max number of data link connections */
484#ifndef LLCP_MAX_DATA_LINK
485#define LLCP_MAX_DATA_LINK          16
486#endif
487
488/* Max number of outstanding service discovery requests */
489#ifndef LLCP_MAX_SDP_TRANSAC
490#define LLCP_MAX_SDP_TRANSAC        16
491#endif
492
493/* Percentage of LLCP buffer pool for receiving data */
494#ifndef LLCP_RX_BUFF_RATIO
495#define LLCP_RX_BUFF_RATIO                  30
496#endif
497
498/* Rx congestion end threshold as percentage of receiving buffers */
499#ifndef LLCP_RX_CONGEST_END
500#define LLCP_RX_CONGEST_END                 50
501#endif
502
503/* Rx congestion start threshold as percentage of receiving buffers */
504#ifndef LLCP_RX_CONGEST_START
505#define LLCP_RX_CONGEST_START               70
506#endif
507
508/* limitation of rx UI PDU as percentage of receiving buffers */
509#ifndef LLCP_LL_RX_BUFF_LIMIT
510#define LLCP_LL_RX_BUFF_LIMIT               30
511#endif
512
513/* minimum rx congestion threshold (number of rx I PDU in queue) for data link connection */
514#ifndef LLCP_DL_MIN_RX_CONGEST
515#define LLCP_DL_MIN_RX_CONGEST              4
516#endif
517
518/* limitation of tx UI PDU as percentage of transmitting buffers */
519#ifndef LLCP_LL_TX_BUFF_LIMIT
520#define LLCP_LL_TX_BUFF_LIMIT               30
521#endif
522
523/******************************************************************************
524**
525** NFA
526**
527******************************************************************************/
528#ifndef NFA_DYNAMIC_MEMORY
529#define NFA_DYNAMIC_MEMORY          FALSE
530#endif
531
532#ifndef NFA_INCLUDED
533#define NFA_INCLUDED                TRUE
534#endif
535
536#ifndef NFA_P2P_INCLUDED
537#define NFA_P2P_INCLUDED            TRUE
538#endif
539
540/* Timeout for waiting on other host in HCI Network to initialize */
541#ifndef NFA_HCI_NETWK_INIT_TIMEOUT
542#define NFA_HCI_NETWK_INIT_TIMEOUT  400
543#endif
544
545#ifndef NFA_HCI_MAX_HOST_IN_NETWORK
546#define NFA_HCI_MAX_HOST_IN_NETWORK 0x06
547#endif
548
549/* Max number of Application that can be registered to NFA-HCI */
550#ifndef NFA_HCI_MAX_APP_CB
551#define NFA_HCI_MAX_APP_CB          0x05
552#endif
553
554/* Max number of HCI gates that can be created */
555#ifndef NFA_HCI_MAX_GATE_CB
556#define NFA_HCI_MAX_GATE_CB         0x06
557#endif
558
559/* Max number of HCI pipes that can be created for the whole system */
560#ifndef NFA_HCI_MAX_PIPE_CB
561#define NFA_HCI_MAX_PIPE_CB         0x08
562#endif
563
564/* Timeout for waiting for the response to HCP Command packet */
565#ifndef NFA_HCI_CMD_RSP_TIMEOUT
566#define NFA_HCI_CMD_RSP_TIMEOUT    1000
567#endif
568
569/* Default poll duration (may be over-ridden using NFA_SetRfDiscoveryDuration) */
570#ifndef NFA_DM_DISC_DURATION_POLL
571#define NFA_DM_DISC_DURATION_POLL               500  /* Android requires 500 */
572#endif
573
574/* Automatic NDEF detection (when not in exclusive RF mode) */
575#ifndef NFA_DM_AUTO_DETECT_NDEF
576#define NFA_DM_AUTO_DETECT_NDEF      FALSE  /* !!!!! NFC-Android needs FALSE */
577#endif
578
579/* Automatic NDEF read (when not in exclusive RF mode) */
580#ifndef NFA_DM_AUTO_READ_NDEF
581#define NFA_DM_AUTO_READ_NDEF        FALSE  /* !!!!! NFC-Android needs FALSE */
582#endif
583
584/* Automatic NDEF read (when not in exclusive RF mode) */
585#ifndef NFA_DM_AUTO_PRESENCE_CHECK
586#define NFA_DM_AUTO_PRESENCE_CHECK   FALSE  /* Android requires FALSE */
587#endif
588
589/* Time to restart discovery after deactivated */
590#ifndef NFA_DM_DISC_DELAY_DISCOVERY
591#define NFA_DM_DISC_DELAY_DISCOVERY     1000
592#endif
593
594/* Max number of NDEF type handlers that can be registered (including the default handler) */
595#ifndef NFA_NDEF_MAX_HANDLERS
596#define NFA_NDEF_MAX_HANDLERS       8
597#endif
598
599/* Maximum number of listen entries configured/registered with NFA_CeConfigureUiccListenTech, */
600/* NFA_CeRegisterFelicaSystemCodeOnDH, or NFA_CeRegisterT4tAidOnDH                            */
601#ifndef NFA_CE_LISTEN_INFO_MAX
602#define NFA_CE_LISTEN_INFO_MAX        5
603#endif
604
605#ifndef NFA_CHO_INCLUDED
606#define NFA_CHO_INCLUDED            TRUE
607#endif
608
609/* MIU for CHO              */
610#ifndef NFA_CHO_MIU
611#define NFA_CHO_MIU                    499
612#endif
613
614/* Receiving Window for CHO */
615#ifndef NFA_CHO_RW
616#define NFA_CHO_RW                     4
617#endif
618
619/* Max number of alternative carrier information */
620#ifndef NFA_CHO_MAX_AC_INFO
621#define NFA_CHO_MAX_AC_INFO                 2
622#endif
623
624/* Max reference character length, it is up to 255 but it's RECOMMENDED short */
625#ifndef NFA_CHO_MAX_REF_NAME_LEN
626#define NFA_CHO_MAX_REF_NAME_LEN            8
627#endif
628
629/* Max auxiliary data count */
630#ifndef NFA_CHO_MAX_AUX_DATA_COUNT
631#define NFA_CHO_MAX_AUX_DATA_COUNT          2
632#endif
633
634#ifndef NFA_CHO_TEST_INCLUDED
635#define NFA_CHO_TEST_INCLUDED           FALSE
636#endif
637
638#ifndef NFA_SNEP_INCLUDED
639#define NFA_SNEP_INCLUDED               TRUE
640#endif
641
642/* Max acceptable length */
643#ifndef NFA_SNEP_DEFAULT_SERVER_MAX_NDEF_SIZE
644#define NFA_SNEP_DEFAULT_SERVER_MAX_NDEF_SIZE          500000
645#endif
646
647/* Max number of SNEP server/client and data link connection */
648#ifndef NFA_SNEP_MAX_CONN
649#define NFA_SNEP_MAX_CONN               6
650#endif
651
652/* Max number data link connection of SNEP default server*/
653#ifndef NFA_SNEP_DEFAULT_MAX_CONN
654#define NFA_SNEP_DEFAULT_MAX_CONN       3
655#endif
656
657/* MIU for SNEP              */
658#ifndef NFA_SNEP_MIU
659#define NFA_SNEP_MIU                    1980        /* Modified for NFC-A */
660#endif
661
662/* Receiving Window for SNEP */
663#ifndef NFA_SNEP_RW
664#define NFA_SNEP_RW                     2           /* Modified for NFC-A */
665#endif
666
667/* Max number of NFCEE supported */
668#ifndef NFA_EE_MAX_EE_SUPPORTED
669#define NFA_EE_MAX_EE_SUPPORTED         3
670#endif
671
672/* Maximum number of AID entries per target_handle  */
673#ifndef NFA_EE_MAX_AID_ENTRIES
674#define NFA_EE_MAX_AID_ENTRIES      (10)
675#endif
676
677/* Maximum number of callback functions can be registered through NFA_EeRegister() */
678#ifndef NFA_EE_MAX_CBACKS
679#define NFA_EE_MAX_CBACKS           (3)
680#endif
681
682#ifndef NFA_DTA_INCLUDED
683#define NFA_DTA_INCLUDED            TRUE
684#endif
685
686#endif /* NFC_TARGET_H */
687
688
689
690