• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 /* Define to TRUE to include the NFCEE related functionalities */
222 #ifndef NFC_NFCEE_INCLUDED
223 #define NFC_NFCEE_INCLUDED          TRUE
224 #endif
225 
226 /* the maximum number of NFCEE interface supported */
227 #ifndef NFC_MAX_EE_INTERFACE
228 #define NFC_MAX_EE_INTERFACE        3
229 #endif
230 
231 /* the maximum number of NFCEE information supported. */
232 #ifndef NFC_MAX_EE_INFO
233 #define NFC_MAX_EE_INFO        8
234 #endif
235 
236 /* the maximum number of NFCEE TLVs supported */
237 #ifndef NFC_MAX_EE_TLVS
238 #define NFC_MAX_EE_TLVS        1
239 #endif
240 
241 /* the maximum size of NFCEE TLV list supported */
242 #ifndef NFC_MAX_EE_TLV_SIZE
243 #define NFC_MAX_EE_TLV_SIZE        150
244 #endif
245 
246 /* Number of times reader/writer should attempt to resend a command on failure */
247 #ifndef RW_MAX_RETRIES
248 #define RW_MAX_RETRIES              5
249 #endif
250 
251 /* RW NDEF Support */
252 #ifndef RW_NDEF_INCLUDED
253 #define RW_NDEF_INCLUDED            TRUE
254 #endif
255 
256 /* RW Type 1 Tag timeout for each API call, in ms */
257 #ifndef RW_T1T_TOUT_RESP
258 #define RW_T1T_TOUT_RESP            100
259 #endif
260 
261 /* CE Type 2 Tag timeout for controller command, in ms */
262 #ifndef CE_T2T_TOUT_RESP
263 #define CE_T2T_TOUT_RESP            1000
264 #endif
265 
266 /* RW Type 2 Tag timeout for each API call, in ms */
267 #ifndef RW_T2T_TOUT_RESP
268 #define RW_T2T_TOUT_RESP            100
269 #endif
270 
271 /* RW Type 2 Tag timeout for each API call, in ms */
272 #ifndef RW_T2T_SEC_SEL_TOUT_RESP
273 #define RW_T2T_SEC_SEL_TOUT_RESP    10
274 #endif
275 
276 /* RW Type 3 Tag timeout for each API call, in ms */
277 #ifndef RW_T3T_TOUT_RESP
278 #define RW_T3T_TOUT_RESP            100         /* NFC-Android will use 100 instead of 75 for T3t presence-check */
279 #endif
280 
281 /* CE Type 3 Tag maximum response timeout index (for check and update, used in SENSF_RES) */
282 #ifndef CE_T3T_MRTI_C
283 #define CE_T3T_MRTI_C               0xFF
284 #endif
285 #ifndef CE_T3T_MRTI_U
286 #define CE_T3T_MRTI_U               0xFF
287 #endif
288 
289 /* Default maxblocks for CE_T3T UPDATE/CHECK operations */
290 #ifndef CE_T3T_DEFAULT_UPDATE_MAXBLOCKS
291 #define CE_T3T_DEFAULT_UPDATE_MAXBLOCKS 3
292 #endif
293 
294 #ifndef CE_T3T_DEFAULT_CHECK_MAXBLOCKS
295 #define CE_T3T_DEFAULT_CHECK_MAXBLOCKS  3
296 #endif
297 
298 /* CE Type 4 Tag, Frame Waiting time Integer */
299 #ifndef CE_T4T_ISO_DEP_FWI
300 #define CE_T4T_ISO_DEP_FWI          7
301 #endif
302 
303 /* RW Type 4 Tag timeout for each API call, in ms */
304 #ifndef RW_T4T_TOUT_RESP
305 #define RW_T4T_TOUT_RESP            1000
306 #endif
307 
308 /* CE Type 4 Tag timeout for update file, in ms */
309 #ifndef CE_T4T_TOUT_UPDATE
310 #define CE_T4T_TOUT_UPDATE          1000
311 #endif
312 
313 /* CE Type 4 Tag, mandatory NDEF File ID */
314 #ifndef CE_T4T_MANDATORY_NDEF_FILE_ID
315 #define CE_T4T_MANDATORY_NDEF_FILE_ID    0x1000
316 #endif
317 
318 /* CE Type 4 Tag, max number of AID supported */
319 #ifndef CE_T4T_MAX_REG_AID
320 #define CE_T4T_MAX_REG_AID         4
321 #endif
322 
323 /* Sub carrier */
324 #ifndef RW_I93_FLAG_SUB_CARRIER
325 #define RW_I93_FLAG_SUB_CARRIER     I93_FLAG_SUB_CARRIER_SINGLE
326 #endif
327 
328 /* Data rate for 15693 command/response */
329 #ifndef RW_I93_FLAG_DATA_RATE
330 #define RW_I93_FLAG_DATA_RATE       I93_FLAG_DATA_RATE_HIGH
331 #endif
332 
333 /* TRUE, to include Card Emulation related test commands */
334 #ifndef CE_TEST_INCLUDED
335 #define CE_TEST_INCLUDED            FALSE
336 #endif
337 
338 #if (NFC_BRCM_NOT_OPEN_INCLUDED == TRUE)
339 /* Power cycle NFCC to move full power mode from CE low power mode */
340 #ifndef NFC_LP_POWER_CYCLE_TO_FULL
341 #define NFC_LP_POWER_CYCLE_TO_FULL  TRUE
342 #endif
343 
344 /* Parameter for low power mode command    */
345 #ifndef NFC_LP_COMMAND_PARAMS
346 #define NFC_LP_COMMAND_PARAMS       5
347 #endif
348 
349 /* Primary Threshold for battery monitor   */
350 #ifndef NFC_LP_PRIMARY_THRESHOLD
351 #define NFC_LP_PRIMARY_THRESHOLD    0
352 #endif
353 
354 /* Secondary Threshold for battery monitor */
355 #ifndef NFC_LP_SECONDARY_THRESHOLD
356 #define NFC_LP_SECONDARY_THRESHOLD  8
357 #endif
358 #endif
359 
360 /* Quick Timer */
361 #ifndef QUICK_TIMER_TICKS_PER_SEC
362 #define QUICK_TIMER_TICKS_PER_SEC   100       /* 10ms timer */
363 #endif
364 
365 
366 /******************************************************************************
367 **
368 ** LLCP
369 **
370 ******************************************************************************/
371 
372 #ifndef LLCP_TEST_INCLUDED
373 #define LLCP_TEST_INCLUDED          FALSE
374 #endif
375 
376 #ifndef LLCP_POOL_ID
377 #define LLCP_POOL_ID                GKI_POOL_ID_3
378 #endif
379 
380 #ifndef LLCP_POOL_BUF_SIZE
381 #define LLCP_POOL_BUF_SIZE          GKI_BUF3_SIZE
382 #endif
383 
384 /* LLCP Maximum Information Unit (between LLCP_DEFAULT_MIU(128) and LLCP_MAX_MIU (2175)*/
385 #ifndef LLCP_MIU
386 #define LLCP_MIU                    (LLCP_POOL_BUF_SIZE - BT_HDR_SIZE - NCI_MSG_OFFSET_SIZE - NCI_DATA_HDR_SIZE - LLCP_PDU_HEADER_SIZE)
387 #endif
388 
389 /* Link Timeout, LTO */
390 #ifndef LLCP_LTO_VALUE
391 #define LLCP_LTO_VALUE              1000    /* Default is 100ms. It should be sufficiently larger than RWT */
392 #endif
393 
394 /*
395 ** LTO is max time interval between the last bit received and the first bit sent over the air.
396 ** Link timeout must be delayed as much as time between the packet sent from LLCP and the last bit transmitted at NFCC.
397 **  - 200ms, max OTA transmitting time between the first bit and the last bit at NFCC
398 **    Largest MIU(2175bytes) of LLCP must be fragmented and sent on NFC-DEP over the air.
399 **    8 * (DEP_REQ/RES+ACK) + DEP_REQ/RES for 2175 MIU at 106kbps bit rate.
400 **  - 10ms, processing time
401 */
402 #ifndef LLCP_INTERNAL_TX_DELAY
403 #define LLCP_INTERNAL_TX_DELAY      210
404 #endif
405 
406 /*
407 ** LTO is max time interval between the last bit received and the first bit sent over the air.
408 ** Link timeout must be delayed as much as time between the first bit received at NFCC and the packet received at LLCP.
409 **  - 200ms, max OTA transmitting time between the first bit and the last bit at NFCC
410 **    LLCP cannot receive data packet until all bit are received and reassembled in NCI.
411 **    8 * (DEP_REQ/RES+ACK) + DEP_REQ/RES for 2175 MIU at 106kbps bit rate.
412 **  - 10ms, processing time
413 */
414 #ifndef LLCP_INTERNAL_RX_DELAY
415 #define LLCP_INTERNAL_RX_DELAY      210
416 #endif
417 
418 /* Wait for application layer sending data before sending SYMM */
419 #ifndef LLCP_DELAY_RESP_TIME
420 #define LLCP_DELAY_RESP_TIME        20      /* in ms */
421 #endif
422 
423 /* LLCP inactivity timeout for initiator */
424 #ifndef LLCP_INIT_INACTIVITY_TIMEOUT
425 #define LLCP_INIT_INACTIVITY_TIMEOUT            0    /* in ms */
426 #endif
427 
428 /* LLCP inactivity timeout for target */
429 #ifndef LLCP_TARGET_INACTIVITY_TIMEOUT
430 #define LLCP_TARGET_INACTIVITY_TIMEOUT          0    /* in ms */
431 #endif
432 
433 /* LLCP delay timeout to send the first PDU as initiator */
434 #ifndef LLCP_DELAY_TIME_TO_SEND_FIRST_PDU
435 #define LLCP_DELAY_TIME_TO_SEND_FIRST_PDU      50    /* in ms */
436 #endif
437 
438 /* Response Waiting Time */
439 #ifndef LLCP_WAITING_TIME
440 #define LLCP_WAITING_TIME           7       /* its scaled value should be less than LTO */
441 #endif
442 
443 /* Options Parameters */
444 #ifndef LLCP_OPT_VALUE
445 #define LLCP_OPT_VALUE              LLCP_LSC_3  /* Link Service Class 3 */
446 #endif
447 
448 /* Data link connection timeout */
449 #ifndef LLCP_DATA_LINK_CONNECTION_TOUT
450 #define LLCP_DATA_LINK_CONNECTION_TOUT      1000
451 #endif
452 
453 /* Max length of service name */
454 #ifndef LLCP_MAX_SN_LEN
455 #define LLCP_MAX_SN_LEN             255     /* max length of service name */
456 #endif
457 
458 /* Max number of well-known services, at least 2 for LM and SDP and up to 16 */
459 #ifndef LLCP_MAX_WKS
460 #define LLCP_MAX_WKS                5
461 #endif
462 
463 /* Max number of services advertised by local SDP, up to 16 */
464 #ifndef LLCP_MAX_SERVER
465 #define LLCP_MAX_SERVER             10
466 #endif
467 
468 /* Max number of services not advertised by local SDP, up to 32 */
469 #ifndef LLCP_MAX_CLIENT
470 #define LLCP_MAX_CLIENT             20
471 #endif
472 
473 /* Max number of data link connections */
474 #ifndef LLCP_MAX_DATA_LINK
475 #define LLCP_MAX_DATA_LINK          16
476 #endif
477 
478 /* Max number of outstanding service discovery requests */
479 #ifndef LLCP_MAX_SDP_TRANSAC
480 #define LLCP_MAX_SDP_TRANSAC        16
481 #endif
482 
483 /* Percentage of LLCP buffer pool for receiving data */
484 #ifndef LLCP_RX_BUFF_RATIO
485 #define LLCP_RX_BUFF_RATIO                  30
486 #endif
487 
488 /* Rx congestion end threshold as percentage of receiving buffers */
489 #ifndef LLCP_RX_CONGEST_END
490 #define LLCP_RX_CONGEST_END                 50
491 #endif
492 
493 /* Rx congestion start threshold as percentage of receiving buffers */
494 #ifndef LLCP_RX_CONGEST_START
495 #define LLCP_RX_CONGEST_START               70
496 #endif
497 
498 /* limitation of rx UI PDU as percentage of receiving buffers */
499 #ifndef LLCP_LL_RX_BUFF_LIMIT
500 #define LLCP_LL_RX_BUFF_LIMIT               30
501 #endif
502 
503 /* minimum rx congestion threshold (number of rx I PDU in queue) for data link connection */
504 #ifndef LLCP_DL_MIN_RX_CONGEST
505 #define LLCP_DL_MIN_RX_CONGEST              4
506 #endif
507 
508 /* limitation of tx UI PDU as percentage of transmitting buffers */
509 #ifndef LLCP_LL_TX_BUFF_LIMIT
510 #define LLCP_LL_TX_BUFF_LIMIT               30
511 #endif
512 
513 /******************************************************************************
514 **
515 ** NFA
516 **
517 ******************************************************************************/
518 #ifndef NFA_DYNAMIC_MEMORY
519 #define NFA_DYNAMIC_MEMORY          FALSE
520 #endif
521 
522 #ifndef NFA_INCLUDED
523 #define NFA_INCLUDED                TRUE
524 #endif
525 
526 #ifndef NFA_P2P_INCLUDED
527 #define NFA_P2P_INCLUDED            TRUE
528 #endif
529 
530 /* Timeout for waiting on other host in HCI Network to initialize */
531 #ifndef NFA_HCI_NETWK_INIT_TIMEOUT
532 #define NFA_HCI_NETWK_INIT_TIMEOUT  400
533 #endif
534 
535 #ifndef NFA_HCI_MAX_HOST_IN_NETWORK
536 #define NFA_HCI_MAX_HOST_IN_NETWORK 0x06
537 #endif
538 
539 /* Max number of Application that can be registered to NFA-HCI */
540 #ifndef NFA_HCI_MAX_APP_CB
541 #define NFA_HCI_MAX_APP_CB          0x05
542 #endif
543 
544 /* Max number of HCI gates that can be created */
545 #ifndef NFA_HCI_MAX_GATE_CB
546 #define NFA_HCI_MAX_GATE_CB         0x06
547 #endif
548 
549 /* Max number of HCI pipes that can be created for the whole system */
550 #ifndef NFA_HCI_MAX_PIPE_CB
551 #define NFA_HCI_MAX_PIPE_CB         0x08
552 #endif
553 
554 /* Timeout for waiting for the response to HCP Command packet */
555 #ifndef NFA_HCI_CMD_RSP_TIMEOUT
556 #define NFA_HCI_CMD_RSP_TIMEOUT    1000
557 #endif
558 
559 /* Default poll duration (may be over-ridden using NFA_SetRfDiscoveryDuration) */
560 #ifndef NFA_DM_DISC_DURATION_POLL
561 #define NFA_DM_DISC_DURATION_POLL               500  /* Android requires 500 */
562 #endif
563 
564 /* Automatic NDEF detection (when not in exclusive RF mode) */
565 #ifndef NFA_DM_AUTO_DETECT_NDEF
566 #define NFA_DM_AUTO_DETECT_NDEF      FALSE  /* !!!!! NFC-Android needs FALSE */
567 #endif
568 
569 /* Automatic NDEF read (when not in exclusive RF mode) */
570 #ifndef NFA_DM_AUTO_READ_NDEF
571 #define NFA_DM_AUTO_READ_NDEF        FALSE  /* !!!!! NFC-Android needs FALSE */
572 #endif
573 
574 /* Automatic NDEF read (when not in exclusive RF mode) */
575 #ifndef NFA_DM_AUTO_PRESENCE_CHECK
576 #define NFA_DM_AUTO_PRESENCE_CHECK   FALSE  /* Android requires FALSE */
577 #endif
578 
579 /* Time to restart discovery after deactivated */
580 #ifndef NFA_DM_DISC_DELAY_DISCOVERY
581 #define NFA_DM_DISC_DELAY_DISCOVERY     1000
582 #endif
583 
584 /* Max number of NDEF type handlers that can be registered (including the default handler) */
585 #ifndef NFA_NDEF_MAX_HANDLERS
586 #define NFA_NDEF_MAX_HANDLERS       8
587 #endif
588 
589 /* Maximum number of listen entries configured/registered with NFA_CeConfigureUiccListenTech, */
590 /* NFA_CeRegisterFelicaSystemCodeOnDH, or NFA_CeRegisterT4tAidOnDH                            */
591 #ifndef NFA_CE_LISTEN_INFO_MAX
592 #define NFA_CE_LISTEN_INFO_MAX        5
593 #endif
594 
595 #ifndef NFA_CHO_INCLUDED
596 #define NFA_CHO_INCLUDED            TRUE
597 #endif
598 
599 /* MIU for CHO              */
600 #ifndef NFA_CHO_MIU
601 #define NFA_CHO_MIU                    499
602 #endif
603 
604 /* Receiving Window for CHO */
605 #ifndef NFA_CHO_RW
606 #define NFA_CHO_RW                     4
607 #endif
608 
609 /* Max number of alternative carrier information */
610 #ifndef NFA_CHO_MAX_AC_INFO
611 #define NFA_CHO_MAX_AC_INFO                 2
612 #endif
613 
614 /* Max reference character length, it is up to 255 but it's RECOMMENDED short */
615 #ifndef NFA_CHO_MAX_REF_NAME_LEN
616 #define NFA_CHO_MAX_REF_NAME_LEN            8
617 #endif
618 
619 /* Max auxiliary data count */
620 #ifndef NFA_CHO_MAX_AUX_DATA_COUNT
621 #define NFA_CHO_MAX_AUX_DATA_COUNT          2
622 #endif
623 
624 #ifndef NFA_CHO_TEST_INCLUDED
625 #define NFA_CHO_TEST_INCLUDED           FALSE
626 #endif
627 
628 #ifndef NFA_SNEP_INCLUDED
629 #define NFA_SNEP_INCLUDED               TRUE
630 #endif
631 
632 /* Max acceptable length */
633 #ifndef NFA_SNEP_DEFAULT_SERVER_MAX_NDEF_SIZE
634 #define NFA_SNEP_DEFAULT_SERVER_MAX_NDEF_SIZE          500000
635 #endif
636 
637 /* Max number of SNEP server/client and data link connection */
638 #ifndef NFA_SNEP_MAX_CONN
639 #define NFA_SNEP_MAX_CONN               6
640 #endif
641 
642 /* Max number data link connection of SNEP default server*/
643 #ifndef NFA_SNEP_DEFAULT_MAX_CONN
644 #define NFA_SNEP_DEFAULT_MAX_CONN       3
645 #endif
646 
647 /* MIU for SNEP              */
648 #ifndef NFA_SNEP_MIU
649 #define NFA_SNEP_MIU                    1980        /* Modified for NFC-A */
650 #endif
651 
652 /* Receiving Window for SNEP */
653 #ifndef NFA_SNEP_RW
654 #define NFA_SNEP_RW                     2           /* Modified for NFC-A */
655 #endif
656 
657 /* Max number of NFCEE supported */
658 #ifndef NFA_EE_MAX_EE_SUPPORTED
659 #define NFA_EE_MAX_EE_SUPPORTED         3
660 #endif
661 
662 /* Maximum number of AID entries per target_handle  */
663 #ifndef NFA_EE_MAX_AID_ENTRIES
664 #define NFA_EE_MAX_AID_ENTRIES      (10)
665 #endif
666 
667 /* Maximum number of callback functions can be registered through NFA_EeRegister() */
668 #ifndef NFA_EE_MAX_CBACKS
669 #define NFA_EE_MAX_CBACKS           (3)
670 #endif
671 
672 #ifndef NFA_DTA_INCLUDED
673 #define NFA_DTA_INCLUDED            TRUE
674 #endif
675 
676 #endif /* NFC_TARGET_H */
677 
678 
679 
680