nfc_target.h revision 26620e3108f6a0f32f5f0a0725e28e5ae66017d6
1/****************************************************************************
2**
3**  Name:       nfc_target.h
4**
5**  Function    This file contains platform-specific NFC run-time parameters
6**
7**  NOTE        This file should always be included first.
8**
9**
10**  Copyright (c) 1999-2012, Broadcom Corp., All Rights Reserved.
11**  Broadcom Bluetooth Core. Proprietary and confidential.
12**
13*****************************************************************************/
14
15#ifndef NFC_TARGET_H
16#define NFC_TARGET_H
17
18#include "data_types.h"
19
20#ifdef BUILDCFG
21#include "buildcfg.h"
22#endif
23
24/* Include common GKI definitions used by this platform */
25#include "gki_target.h"
26
27#include "bt_types.h"   /* This must be defined AFTER buildcfg.h */
28#include "dyn_mem.h"    /* defines static and/or dynamic memory for components */
29#ifndef LMP_TEST
30#include "bt_trace.h"
31#endif
32
33
34/* API macros for DLL (needed to export API functions from DLLs) */
35#define NFC_API         EXPORT_API
36#define LLCP_API        EXPORT_API
37
38/******************************************************************************
39**
40** GKI Mail Box and Timer
41**
42******************************************************************************/
43
44/* Mailbox event mask for NFC stack */
45#ifndef NFC_MBOX_EVT_MASK
46#define NFC_MBOX_EVT_MASK           (TASK_MBOX_0_EVT_MASK)
47#endif
48
49/* Mailbox ID for NFC stack */
50#ifndef NFC_MBOX_ID
51#define NFC_MBOX_ID                 (TASK_MBOX_0)
52#endif
53
54/* Mailbox event mask for NFA */
55#ifndef NFA_MBOX_EVT_MASK
56#define NFA_MBOX_EVT_MASK           (TASK_MBOX_2_EVT_MASK)
57#endif
58
59/* Mailbox ID for NFA */
60#ifndef NFA_MBOX_ID
61#define NFA_MBOX_ID                 (TASK_MBOX_2)
62#endif
63
64/* GKI timer id used for protocol timer in NFC stack */
65#ifndef NFC_TIMER_ID
66#define NFC_TIMER_ID                (TIMER_0)
67#endif
68
69/* GKI timer event mask used for protocol timer in NFC stack */
70#ifndef NFC_TIMER_EVT_MASK
71#define NFC_TIMER_EVT_MASK          (TIMER_0_EVT_MASK)
72#endif
73
74/* GKI timer id used for quick timer in NFC stack */
75#ifndef NFC_QUICK_TIMER_ID
76#define NFC_QUICK_TIMER_ID          (TIMER_1)
77#endif
78
79/* GKI timer event mask used for quick timer in NFC stack */
80#ifndef NFC_QUICK_TIMER_EVT_MASK
81#define NFC_QUICK_TIMER_EVT_MASK    (TIMER_1_EVT_MASK)
82#endif
83
84/* GKI timer id used for protocol timer in NFA */
85#ifndef NFA_TIMER_ID
86#define NFA_TIMER_ID                (TIMER_2)
87#endif
88
89/* GKI timer event mask used for protocol timer in NFA */
90#ifndef NFA_TIMER_EVT_MASK
91#define NFA_TIMER_EVT_MASK          (TIMER_2_EVT_MASK)
92#endif
93
94/******************************************************************************
95**
96** GKI Buffer Pools
97**
98******************************************************************************/
99
100/* NCI command/notification/data */
101#ifndef NFC_NCI_POOL_ID
102#define NFC_NCI_POOL_ID             GKI_POOL_ID_2
103#endif
104
105#ifndef NFC_NCI_POOL_BUF_SIZE
106#define NFC_NCI_POOL_BUF_SIZE       GKI_BUF2_SIZE
107#endif
108
109/* Reader/Write commands (NCI data payload) */
110#ifndef NFC_RW_POOL_ID
111#define NFC_RW_POOL_ID             GKI_POOL_ID_2
112#endif
113
114#ifndef NFC_RW_POOL_BUF_SIZE
115#define NFC_RW_POOL_BUF_SIZE       GKI_BUF2_SIZE
116#endif
117
118/* Card Emulation responses (NCI data payload) */
119#ifndef NFC_CE_POOL_ID
120#define NFC_CE_POOL_ID             GKI_POOL_ID_2
121#endif
122
123#ifndef NFC_CE_POOL_BUF_SIZE
124#define NFC_CE_POOL_BUF_SIZE       GKI_BUF2_SIZE
125#endif
126
127
128/******************************************************************************
129**
130** NCI Transport definitions
131**
132******************************************************************************/
133/* offset of the first NCI packet in buffer for outgoing */
134#ifndef NCI_MSG_OFFSET_SIZE
135#define NCI_MSG_OFFSET_SIZE             1
136#endif
137
138/* Sends an NCI command received from the upper stack to the NFC NCI transport. */
139#ifndef NCI_CMD_TO_NFCC
140#define NCI_CMD_TO_NFCC(p)         bte_hcisu_send((BT_HDR *)(p), BT_EVT_TO_NFC_NCI);
141#endif
142
143/* Restore NFCC baud rate to default on shutdown if NFC_UpdateBaudRate was called */
144#ifndef NFC_RESTORE_BAUD_ON_SHUTDOWN
145#define NFC_RESTORE_BAUD_ON_SHUTDOWN    TRUE
146#endif
147
148/* Default NFCC power-up baud rate */
149#ifndef NFC_DEFAULT_BAUD
150#define NFC_DEFAULT_BAUD                USERIAL_BAUD_115200
151#endif
152
153/******************************************************************************
154**
155** NCI
156**
157******************************************************************************/
158
159#define NCI_VERSION_20791B2         0x0F
160
161#ifndef NCI_VERSION
162#define NCI_VERSION                 NCI_VERSION_20791B2
163#endif
164
165/* TRUE I2C patch is needed */
166#ifndef NFC_I2C_PATCH_INCLUDED
167#define NFC_I2C_PATCH_INCLUDED          TRUE     /* NFC-Android uses this!!! */
168#endif
169
170/******************************************************************************
171**
172** NFC
173**
174******************************************************************************/
175#ifndef NFC_INCLUDED
176#define NFC_INCLUDED            TRUE
177#endif
178
179/* Define to TRUE to include Broadcom Vendor Specific implementation */
180#ifndef NFC_BRCM_VS_INCLUDED
181#define NFC_BRCM_VS_INCLUDED    TRUE
182#endif
183
184/* Define to TRUE to include not openned Broadcom Vendor Specific implementation */
185#ifndef NFC_BRCM_NOT_OPEN_INCLUDED
186#define NFC_BRCM_NOT_OPEN_INCLUDED  FALSE  //Android requires FALSE
187#endif
188
189/* Define to TRUE if compling for NFC Reader/Writer Only mode */
190#ifndef NFC_RW_ONLY
191#define NFC_RW_ONLY         FALSE
192#endif
193
194/* Define to TRUE to use dynamic memory allocation.
195 * The default is FALSE - to use static memory allocations.
196*/
197#ifndef NFC_DYNAMIC_MEMORY
198#define NFC_DYNAMIC_MEMORY              FALSE
199#endif
200
201/* Timeout for receiving response to NCI command */
202#ifndef NFC_CMD_CMPL_TIMEOUT
203#define NFC_CMD_CMPL_TIMEOUT        2
204#endif
205
206/* Timeout for waiting on data credit/NFC-DEP */
207#ifndef NFC_DEACTIVATE_TIMEOUT
208#define NFC_DEACTIVATE_TIMEOUT      2
209#endif
210
211/* the maximum number of Vendor Specific callback functions allowed to be registered. 1-14 */
212#ifndef NFC_NUM_VS_CBACKS
213#define NFC_NUM_VS_CBACKS       3
214#endif
215
216/* the maximum number of NCI connections allowed. 1-14 */
217#ifndef NCI_MAX_CONN_CBS
218#define NCI_MAX_CONN_CBS        4
219#endif
220
221/* the maximum number of NCI command timeout before reporting NFC_NFCC_TIMEOUT_REVT */
222#ifndef NCI_MAX_CMD_TIMEOUT
223#define NCI_MAX_CMD_TIMEOUT         1
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/* TRUE, to include Card Emulation related test commands */
334#ifndef CE_TEST_INCLUDED
335#define CE_TEST_INCLUDED            FALSE
336#endif
337
338/* Map NFC serial port to USERIAL_PORT_6 by default */
339#ifndef USERIAL_NFC_PORT
340#define USERIAL_NFC_PORT            (USERIAL_PORT_6)
341#endif
342
343/* NFC snooze mode */
344#ifndef NFC_LP_SNOOZE_MODE
345#define NFC_LP_SNOOZE_MODE          NFC_LP_SNOOZE_MODE_SPI_I2C  /* NFC-Android will use I2C by default */
346#endif
347
348/* Idle Threshold Host in 100ms unit */
349#ifndef NFC_LP_IDLE_THRESHOLD_HOST
350#define NFC_LP_IDLE_THRESHOLD_HOST  0
351#endif
352
353/* Idle Threshold HC in 100ms unit */
354#ifndef NFC_LP_IDLE_THRESHOLD_HC
355#define NFC_LP_IDLE_THRESHOLD_HC    0
356#endif
357
358/* Power cycle NFCC to move full power mode from CE low power mode */
359#ifndef NFC_LP_POWER_CYCLE_TO_FULL
360#define NFC_LP_POWER_CYCLE_TO_FULL  TRUE
361#endif
362
363/* time (in ms) between power off and on NFCC */
364#ifndef NCI_POWER_CYCLE_DELAY
365#define NCI_POWER_CYCLE_DELAY       100
366#endif
367
368/* NFCC snooze mode idle timeout before deassert NFC_WAKE in ms */
369#ifndef NCI_LP_IDLE_TIMEOUT
370#define NCI_LP_IDLE_TIMEOUT         100
371#endif
372
373/* NFCC boot-up delay before sending command in CE low power mode in ms */
374#ifndef NCI_LP_BOOTUP_DEALY
375#define NCI_LP_BOOTUP_DEALY         50
376#endif
377
378/* NFC-WAKE */
379#ifndef NCILP_NFC_WAKE_GPIO
380#define NCILP_NFC_WAKE_GPIO         UPIO_GENERAL3
381#endif
382
383/* Quick Timer */
384#ifndef QUICK_TIMER_TICKS_PER_SEC
385#define QUICK_TIMER_TICKS_PER_SEC   100       /* 10ms timer */
386#endif
387
388/* Send to lower layer */
389#ifndef NCI_TO_LOWER
390
391#ifdef TESTER
392/* For BTE Insight, NCI_TO_LOWER is runtime configurable (depends on whether */
393/*                     user selected 'shared' or 'dedicated' nci transport). */
394/*                     Call Insight's btstk_nfc_send to forward NCI messages.*/
395extern void btstk_nfc_send(BT_HDR *p_msg);
396#define NCI_TO_LOWER(p)         btstk_nfc_send ((BT_HDR *)(p));
397
398#elif defined (NFC_SHARED_TRANSPORT)
399/* For embedded platforms, configured for Shared Transport:                 */
400/*                      NCI_TO_LOWER calls bte_hcisu_send to send NCI       */
401/*                      messages to the HCI_TASK                            */
402#define NCI_TO_LOWER(p)         bte_hcisu_send((BT_HDR *)(p), ((BT_HDR *)(p))->event);
403
404#else
405/* For embedded platforms, configured for Dedicated Transport:              */
406/*                      NCI_TO_LOWER calls nci_send to send NCI messages    */
407/*                      to the NCI_TASK                                     */
408#define NCI_TO_LOWER(p)         nci_send((BT_HDR *)(p));
409#endif
410
411#endif /* NCI_TO_LOWER */
412
413/******************************************************************************
414**
415** LLCP
416**
417******************************************************************************/
418
419#ifndef LLCP_TEST_INCLUDED
420#define LLCP_TEST_INCLUDED          FALSE
421#endif
422
423#ifndef LLCP_POOL_ID
424#define LLCP_POOL_ID                GKI_POOL_ID_3
425#endif
426
427#ifndef LLCP_POOL_BUF_SIZE
428#define LLCP_POOL_BUF_SIZE          GKI_BUF3_SIZE
429#endif
430
431/* LLCP Maximum Information Unit (between LLCP_DEFAULT_MIU(128) and LLCP_MAX_MIU (2175)*/
432#ifndef LLCP_MIU
433#define LLCP_MIU                    (LLCP_POOL_BUF_SIZE - BT_HDR_SIZE - NCI_MSG_OFFSET_SIZE - NCI_DATA_HDR_SIZE - LLCP_PDU_HEADER_SIZE)
434#endif
435
436/* Link Timeout, LTO */
437#ifndef LLCP_LTO_VALUE
438#define LLCP_LTO_VALUE              1000    /* Default is 100ms. It should be sufficiently larger than RWT */
439#endif
440
441/*
442** LTO is max time interval between the last bit received and the first bit sent over the air.
443** Link timeout must be delayed as much as time between the packet sent from LLCP and the last bit transmitted at NFCC.
444**  - 200ms, max OTA transmitting time between the first bit and the last bit at NFCC
445**    Largest MIU(2175bytes) of LLCP must be fragmented and sent on NFC-DEP over the air.
446**    8 * (DEP_REQ/RES+ACK) + DEP_REQ/RES for 2175 MIU at 106kbps bit rate.
447**  - 10ms, processing time
448*/
449#ifndef LLCP_INTERNAL_TX_DELAY
450#define LLCP_INTERNAL_TX_DELAY      210
451#endif
452
453/*
454** LTO is max time interval between the last bit received and the first bit sent over the air.
455** Link timeout must be delayed as much as time between the first bit received at NFCC and the packet received at LLCP.
456**  - 200ms, max OTA transmitting time between the first bit and the last bit at NFCC
457**    LLCP cannot receive data packet until all bit are received and reassembled in NCI.
458**    8 * (DEP_REQ/RES+ACK) + DEP_REQ/RES for 2175 MIU at 106kbps bit rate.
459**  - 10ms, processing time
460*/
461#ifndef LLCP_INTERNAL_RX_DELAY
462#define LLCP_INTERNAL_RX_DELAY      210
463#endif
464
465/* Wait for application layer sending data before sending SYMM */
466#ifndef LLCP_DELAY_RESP_TIME
467#define LLCP_DELAY_RESP_TIME        20      /* in ms */
468#endif
469
470/* LLCP inactivity timeout for initiator */
471#ifndef LLCP_INIT_INACTIVITY_TIMEOUT
472#define LLCP_INIT_INACTIVITY_TIMEOUT            0    /* in ms */
473#endif
474
475/* LLCP inactivity timeout for target */
476#ifndef LLCP_TARGET_INACTIVITY_TIMEOUT
477#define LLCP_TARGET_INACTIVITY_TIMEOUT          0    /* in ms */
478#endif
479
480/* LLCP delay timeout to send the first PDU as initiator */
481#ifndef LLCP_DELAY_TIME_TO_SEND_FIRST_PDU
482#define LLCP_DELAY_TIME_TO_SEND_FIRST_PDU      50    /* in ms */
483#endif
484
485/* Response Waiting Time */
486#ifndef LLCP_WAITING_TIME
487#define LLCP_WAITING_TIME           7       /* its scaled value should be less than LTO */
488#endif
489
490/* Options Parameters */
491#ifndef LLCP_OPT_VALUE
492#define LLCP_OPT_VALUE              LLCP_LSC_3  /* Link Service Class 3 */
493#endif
494
495/* Data link connection timeout */
496#ifndef LLCP_DATA_LINK_CONNECTION_TOUT
497#define LLCP_DATA_LINK_CONNECTION_TOUT      1000
498#endif
499
500/* Max length of service name */
501#ifndef LLCP_MAX_SN_LEN
502#define LLCP_MAX_SN_LEN             255     /* max length of service name */
503#endif
504
505/* Max number of well-known services, at least 2 for LM and SDP and up to 16 */
506#ifndef LLCP_MAX_WKS
507#define LLCP_MAX_WKS                5
508#endif
509
510/* Max number of services advertised by local SDP, up to 16 */
511#ifndef LLCP_MAX_SERVER
512#define LLCP_MAX_SERVER             10
513#endif
514
515/* Max number of services not advertised by local SDP, up to 32 */
516#ifndef LLCP_MAX_CLIENT
517#define LLCP_MAX_CLIENT             20
518#endif
519
520/* Max number of data link connections */
521#ifndef LLCP_MAX_DATA_LINK
522#define LLCP_MAX_DATA_LINK          16
523#endif
524
525/* Max number of outstanding service discovery requests */
526#ifndef LLCP_MAX_SDP_TRANSAC
527#define LLCP_MAX_SDP_TRANSAC        16
528#endif
529
530/* Percentage of LLCP buffer pool for receiving data */
531#ifndef LLCP_RX_BUFF_RATIO
532#define LLCP_RX_BUFF_RATIO                  30
533#endif
534
535/* Rx congestion end threshold as percentage of receiving buffers */
536#ifndef LLCP_RX_CONGEST_END
537#define LLCP_RX_CONGEST_END                 50
538#endif
539
540/* Rx congestion start threshold as percentage of receiving buffers */
541#ifndef LLCP_RX_CONGEST_START
542#define LLCP_RX_CONGEST_START               70
543#endif
544
545/* limitation of rx UI PDU as percentage of receiving buffers */
546#ifndef LLCP_LL_RX_BUFF_LIMIT
547#define LLCP_LL_RX_BUFF_LIMIT               30
548#endif
549
550/* minimum rx congestion threshold (number of rx I PDU in queue) for data link connection */
551#ifndef LLCP_DL_MIN_RX_CONGEST
552#define LLCP_DL_MIN_RX_CONGEST              4
553#endif
554
555/* limitation of tx UI PDU as percentage of transmitting buffers */
556#ifndef LLCP_LL_TX_BUFF_LIMIT
557#define LLCP_LL_TX_BUFF_LIMIT               30
558#endif
559
560/******************************************************************************
561**
562** NFA
563**
564******************************************************************************/
565#ifndef NFA_DYNAMIC_MEMORY
566#define NFA_DYNAMIC_MEMORY          FALSE
567#endif
568
569#ifndef NFA_INCLUDED
570#define NFA_INCLUDED                TRUE
571#endif
572
573#ifndef NFA_P2P_INCLUDED
574#define NFA_P2P_INCLUDED            TRUE
575#endif
576
577/* Timeout for waiting on other host in HCI Network to initialize */
578#ifndef NFA_HCI_NETWK_INIT_TIMEOUT
579#define NFA_HCI_NETWK_INIT_TIMEOUT  400
580#endif
581
582#ifndef NFA_HCI_MAX_HOST_IN_NETWORK
583#define NFA_HCI_MAX_HOST_IN_NETWORK 0x06
584#endif
585
586#ifndef NFA_HCI_MAX_GATE_IN_HOST
587#define NFA_HCI_MAX_GATE_IN_HOST    0x0F
588#endif
589
590#ifndef NFA_HCI_MAX_MESSAGE_LEN
591#define NFA_HCI_MAX_MESSAGE_LEN     0xFF
592#endif
593
594/* Max number of Application that can be registered to NFA-HCI */
595#ifndef NFA_HCI_MAX_APP_CB
596#define NFA_HCI_MAX_APP_CB          0x05
597#endif
598
599/* Max number of HCI gates that can be created */
600#ifndef NFA_HCI_MAX_GATE_CB
601#define NFA_HCI_MAX_GATE_CB         0x06
602#endif
603
604/* Max number of HCI pipes that can be created for the whole system */
605#ifndef NFA_HCI_MAX_PIPE_CB
606#define NFA_HCI_MAX_PIPE_CB         0x08
607#endif
608
609/* Max number of HCI pipes that can be created per gate */
610#ifndef NFA_HCI_MAX_PIPES_PER_GATE
611#define NFA_HCI_MAX_PIPES_PER_GATE  0x02
612#endif
613
614/* NFCC will respond to more than one technology during listen discovery  */
615#ifndef NFA_DM_MULTI_TECH_RESP
616#define NFA_DM_MULTI_TECH_RESP      FALSE    /* NFC-Android will enable/disable this by .conf file on startup */
617#endif
618
619/* Default poll duration (may be over-ridden using NFA_SetRfDiscoveryDuration) */
620#ifndef NFA_DM_DISC_DURATION_POLL
621#define NFA_DM_DISC_DURATION_POLL               1000
622#endif
623
624/* Automatic NDEF detection (when not in exclusive RF mode) */
625#ifndef NFA_DM_AUTO_DETECT_NDEF
626#define NFA_DM_AUTO_DETECT_NDEF      FALSE  /* !!!!! NFC-Android needs FALSE */
627#endif
628
629/* Automatic NDEF read (when not in exclusive RF mode) */
630#ifndef NFA_DM_AUTO_READ_NDEF
631#define NFA_DM_AUTO_READ_NDEF        FALSE  /* !!!!! NFC-Android needs FALSE */
632#endif
633
634/* Time to restart discovery after deactivated */
635#ifndef NFA_DM_DISC_DELAY_DISCOVERY
636#define NFA_DM_DISC_DELAY_DISCOVERY     1000
637#endif
638
639/* Max number of NDEF type handlers that can be registered (including the default handler) */
640#ifndef NFA_NDEF_MAX_HANDLERS
641#define NFA_NDEF_MAX_HANDLERS       8
642#endif
643
644/* Maximum number of listen entries configured/registered with NFA_CeConfigureUiccListenTech, */
645/* NFA_CeRegisterFelicaSystemCodeOnDH, or NFA_CeRegisterT4tAidOnDH                            */
646#ifndef NFA_CE_LISTEN_INFO_MAX
647#define NFA_CE_LISTEN_INFO_MAX        5
648#endif
649
650#ifndef NFA_CHO_INCLUDED
651#define NFA_CHO_INCLUDED            TRUE
652#endif
653
654/* MIU for CHO              */
655#ifndef NFA_CHO_MIU
656#define NFA_CHO_MIU                    499
657#endif
658
659/* Receiving Window for CHO */
660#ifndef NFA_CHO_RW
661#define NFA_CHO_RW                     4
662#endif
663
664/* Max number of alternative carrier information */
665#ifndef NFA_CHO_MAX_AC_INFO
666#define NFA_CHO_MAX_AC_INFO                 2
667#endif
668
669/* Max reference character length, it is up to 255 but it's RECOMMENDED short */
670#ifndef NFA_CHO_MAX_REF_NAME_LEN
671#define NFA_CHO_MAX_REF_NAME_LEN            8
672#endif
673
674/* Max auxiliary data count */
675#ifndef NFA_CHO_MAX_AUX_DATA_COUNT
676#define NFA_CHO_MAX_AUX_DATA_COUNT          2
677#endif
678
679#ifndef NFA_CHO_TEST_INCLUDED
680#define NFA_CHO_TEST_INCLUDED           FALSE
681#endif
682
683#ifndef NFA_SNEP_INCLUDED
684#define NFA_SNEP_INCLUDED               TRUE
685#endif
686
687/* Max number of SNEP server/client and data link connection */
688#ifndef NFA_SNEP_MAX_CONN
689#define NFA_SNEP_MAX_CONN               6
690#endif
691
692/* Max number data link connection of SNEP default server*/
693#ifndef NFA_SNEP_DEFAULT_MAX_CONN
694#define NFA_SNEP_DEFAULT_MAX_CONN       3
695#endif
696
697/* MIU for SNEP              */
698#ifndef NFA_SNEP_MIU
699#define NFA_SNEP_MIU                    1980        /* Modified for NFC-A */
700#endif
701
702/* Receiving Window for SNEP */
703#ifndef NFA_SNEP_RW
704#define NFA_SNEP_RW                     2           /* Modified for NFC-A */
705#endif
706
707/* Max number of NFCEE supported */
708#ifndef NFA_EE_MAX_EE_SUPPORTED
709#define NFA_EE_MAX_EE_SUPPORTED         4
710#endif
711
712/* Maximum number of AID entries per target_handle  */
713#ifndef NFA_EE_MAX_AID_ENTRIES
714#define NFA_EE_MAX_AID_ENTRIES      (10)
715#endif
716
717/* Maximum number of callback functions can be registered through NFA_EeRegister() */
718#ifndef NFA_EE_MAX_CBACKS
719#define NFA_EE_MAX_CBACKS           (3)
720#endif
721
722#endif /* NFC_TARGET_H */
723
724
725
726