1###################### Start of libnfc-brcm.conf #######################
2
3###############################################################################
4# Application options
5APPL_TRACE_LEVEL=0x01
6PROTOCOL_TRACE_LEVEL=0x00000000
7
8###############################################################################
9# performance measurement
10# Change this setting to control how often USERIAL log the performance (throughput)
11# data on read/write/poll
12# defailt is to log performance dara for every 100 read or write
13#REPORT_PERFORMANCE_MEASURE=100
14
15###############################################################################
16# File used for NFA storage
17NFA_STORAGE="/data/nfc"
18
19###############################################################################
20# Snooze Mode Settings
21#
22#  By default snooze mode is enabled.  Set SNOOZE_MODE_CFG byte[0] to 0
23#  to disable.
24#
25#  If SNOOZE_MODE_CFG is not provided, the default settings are used:
26#  They are as follows:
27#       8             Sleep Mode (0=Disabled 1=UART 8=SPI/I2C)
28#       0             Idle Threshold Host
29#       0             Idle Threshold HC
30#       0             NFC Wake active mode (0=ActiveLow 1=ActiveHigh)
31#       1             Host Wake active mode (0=ActiveLow 1=ActiveHigh)
32#
33#SNOOZE_MODE_CFG={08:00:00:00:01}
34
35###############################################################################
36# Insert a delay in milliseconds after NFC_WAKE and before write to NFCC
37#NFC_WAKE_DELAY=20
38
39###############################################################################
40# Various Delay settings (in ms) used in USERIAL
41#  POWER_ON_DELAY
42#    Delay after turning on chip, before writing to transport (default 300)
43#  PRE_POWER_OFF_DELAY
44#    Delay after deasserting NFC-Wake before turn off chip (default 0)
45#  POST_POWER_OFF_DELAY
46#    Delay after turning off chip, before USERIAL_close returns (default 0)
47#
48#POWER_ON_DELAY=300
49#PRE_POWER_OFF_DELAY=0
50#POST_POWER_OFF_DELAY=0
51
52###############################################################################
53# Maximum time (ms) to wait for RESET NTF after setting REG_PU to high
54# The default is 1000.
55#NFCC_ENABLE_TIMEOUT=0
56
57###############################################################################
58# LPTD mode configuration
59#  byte[0] is the length of the remaining bytes in this value
60#     if set to 0, LPTD params will NOT be sent to NFCC (i.e. disabled).
61#  byte[1] is the param id it should be set to B9.
62#  byte[2] is the length of the LPTD parameters
63#  byte[3] indicates if LPTD is enabled
64#     if set to 0, LPTD will be disabled (parameters will still be sent).
65#  byte[4-n] are the LPTD parameters.
66#  By default, LPTD is enabled and default settings are used.
67#  See nfc_hal_dm_cfg.c for defaults
68#LPTD_CFG={23:B9:21:01:02:FF:FF:04:A0:0F:40:00:80:02:02:10:00:00:00:31:0C:30:00:00:00:00:00:00:00:00:00:00:00:00:00:00}
69
70###############################################################################
71# Startup Configuration (100 bytes maximum)
72#
73# For the 0xCA parameter, byte[9] (marked by 'AA') is for UICC0, and byte[10] (marked by BB) is
74#    for UICC1.  The values are defined as:
75#   0 : UICCx only supports ISO_DEP in low power mode.
76#   2 : UICCx only supports Mifare in low power mode.
77#   3 : UICCx supports both ISO_DEP and Mifare in low power mode.
78#
79#                                                                          AA BB
80#NFA_DM_START_UP_CFG={1F:CB:01:01:A5:01:01:CA:14:00:00:00:00:06:E8:03:00:00:00:00:00:00:00:00:00:00:00:00:00:80:01:01}
81
82###############################################################################
83# Startup Vendor Specific Configuration (100 bytes maximum);
84#  byte[0] TLV total len = 0x5
85#  byte[1] NCI_MTS_CMD|NCI_GID_PROP = 0x2f
86#  byte[2] NCI_MSG_FRAME_LOG = 0x9
87#  byte[3] 2
88#  byte[4] 0=turn off RF frame logging; 1=turn on
89#  byte[5] 0=turn off SWP frame logging; 1=turn on
90#  NFA_DM_START_UP_VSC_CFG={05:2F:09:02:01:01}
91
92###############################################################################
93# Antenna Configuration - This data is used when setting 0xC8 config item
94# at startup (before discovery is started).  If not used, no value is sent.
95#
96# The settings for this value are documented here:
97# http://wcgbu.broadcom.com/wpan/PM/Project%20Document%20Library/bcm20791B0/
98#   Design/Doc/PHY%20register%20settings/BCM20791-B2-1027-02_PHY_Recommended_Reg_Settings.xlsx
99# This document is maintained by Paul Forshaw.
100#
101# The values marked as ?? should be tweaked per antenna or customer/app:
102# {20:C8:1E:06:??:00:??:??:??:00:??:24:00:1C:00:75:00:77:00:76:00:1C:00:03:00:0A:00:??:01:00:00:40:04}
103# array[0] = 0x20 is length of the payload from array[1] to the end
104# array[1] = 0xC8 is PREINIT_DSP_CFG
105#PREINIT_DSP_CFG={20:C8:1E:06:1F:00:0F:03:3C:00:04:24:00:1C:00:75:00:77:00:76:00:1C:00:03:00:0A:00:48:01:00:00:40:04}
106
107###############################################################################
108# Configure crystal frequency when internal LPO can't detect the frequency.
109#XTAL_FREQUENCY=0
110###############################################################################
111# Configure the default Destination Gate used by HCI (the default is 4, which
112# is the ETSI loopback gate.
113NFA_HCI_DEFAULT_DEST_GATE=0xF0
114
115###############################################################################
116# Configure the single default SE to use.  The default is to use the first
117# SE that is detected by the stack.  This value might be used when the phone
118# supports multiple SE (e.g. 0xF3 and 0xF4) but you want to force it to use
119# one of them (e.g. 0xF4).
120#ACTIVE_SE=0xF3
121
122###############################################################################
123# Configure the default NfcA/IsoDep techology and protocol route. Can be
124# either a secure element (e.g. 0xF4) or the host (0x00)
125#DEFAULT_ISODEP_ROUTE=0x00
126
127###############################################################################
128# Configure the NFC Extras to open and use a static pipe.  If the value is
129# not set or set to 0, then the default is use a dynamic pipe based on a
130# destination gate (see NFA_HCI_DEFAULT_DEST_GATE).  Note there is a value
131# for each UICC (where F3="UICC0" and F4="UICC1")
132#NFA_HCI_STATIC_PIPE_ID_F3=0x70
133#NFA_HCI_STATIC_PIPE_ID_01=0x19
134NFA_HCI_STATIC_PIPE_ID_C0=0x19
135###############################################################################
136# When disconnecting from Oberthur secure element, perform a warm-reset of
137# the secure element to deselect the applet.
138# The default hex value of the command is 0x3.  If this variable is undefined,
139# then this feature is not used.
140#OBERTHUR_WARM_RESET_COMMAND=0x03
141
142###############################################################################
143# Force UICC to only listen to the following technology(s).
144# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
145# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B | NFA_TECHNOLOGY_MASK_F
146UICC_LISTEN_TECH_MASK=0x07
147
148###############################################################################
149# Force HOST listen feature enable or disable.
150# 0: Disable
151# 1: Enable
152HOST_LISTEN_ENABLE=0x01
153
154###############################################################################
155# Enabling/Disabling Forward functionality
156# Disable           0x00
157# Enable            0x01
158NXP_FWD_FUNCTIONALITY_ENABLE=0x01
159
160###############################################################################
161# Allow UICC to be powered off if there is no traffic.
162# Timeout is in ms. If set to 0, then UICC will not be powered off.
163#UICC_IDLE_TIMEOUT=30000
164UICC_IDLE_TIMEOUT=0
165
166###############################################################################
167# AID for Empty Select command
168# If specified, this AID will be substituted when an Empty SELECT command is
169# detected.  The first byte is the length of the AID.  Maximum length is 16.
170AID_FOR_EMPTY_SELECT={08:A0:00:00:01:51:00:00:00}
171###############################################################################
172# Maximum Number of Credits to be allowed by the NFCC
173#   This value overrides what the NFCC specifices allowing the host to have
174#   the control to work-around transport limitations.  If this value does
175#   not exist or is set to 0, the NFCC will provide the number of credits.
176MAX_RF_DATA_CREDITS=1
177
178###############################################################################
179# This setting allows you to disable registering the T4t Virtual SE that causes
180# the NFCC to send PPSE requests to the DH.
181# The default setting is enabled (i.e. T4t Virtual SE is registered).
182#REGISTER_VIRTUAL_SE=1
183
184###############################################################################
185# When screen is turned off, specify the desired power state of the controller.
186# 0: power-off-sleep state; DEFAULT
187# 1: full-power state
188# 2: screen-off card-emulation (CE4/CE3/CE1 modes are used)
189SCREEN_OFF_POWER_STATE=1
190
191###############################################################################
192# Firmware patch file
193#  If the value is not set then patch download is disabled.
194#FW_PATCH="/vendor/firmware/bcm2079x_firmware.ncd"
195
196###############################################################################
197# Firmware pre-patch file (sent before the above patch file)
198#  If the value is not set then pre-patch is not used.
199#FW_PRE_PATCH="/vendor/firmware/bcm2079x_pre_firmware.ncd"
200
201###############################################################################
202# Firmware patch format
203#   1 = HCD
204#   2 = NCD (default)
205#NFA_CONFIG_FORMAT=2
206
207###############################################################################
208# SPD Debug mode
209#  If set to 1, any failure of downloading a patch will trigger a hard-stop
210#SPD_DEBUG=0
211
212###############################################################################
213# SPD Max Retry Count
214#  The number of attempts to download a patch before giving up (defualt is 3).
215#  Note, this resets after a power-cycle.
216#SPD_MAX_RETRY_COUNT=3
217
218###############################################################################
219# transport driver
220#
221# TRANSPORT_DRIVER=<driver>
222#
223#  where <driver> can be, for example:
224#    "/dev/ttyS"        (UART)
225#    "/dev/bcmi2cnfc"   (I2C)
226#    "hwtun"            (HW Tunnel)
227#    "/dev/bcmspinfc"   (SPI)
228#    "/dev/btusb0"      (BT USB)
229#TRANSPORT_DRIVER="/dev/bcm2079x-i2c"
230
231###############################################################################
232# power control driver
233# Specify a kernel driver that support ioctl commands to control NFC_EN and
234# NFC_WAKE gpio signals.
235#
236# POWER_CONTRL_DRIVER=<driver>
237#  where <driver> can be, for example:
238#    "/dev/nfcpower"
239#    "/dev/bcmi2cnfc"   (I2C)
240#    "/dev/bcmspinfc"   (SPI)
241#    i2c and spi driver may be used to control NFC_EN and NFC_WAKE signal
242#POWER_CONTROL_DRIVER="/dev/bcm2079x-i2c"
243
244###############################################################################
245# I2C transport driver options
246# Mako does not support 10-bit I2C addresses
247# Revert to 7-bit address
248#BCMI2CNFC_ADDRESS=0x77
249
250###############################################################################
251# I2C transport driver try to read multiple packets in read() if data is available
252# remove the comment below to enable this feature
253#READ_MULTIPLE_PACKETS=1
254
255###############################################################################
256# SPI transport driver options
257#SPI_NEGOTIATION={0A:F0:00:01:00:00:00:FF:FF:00:00}
258
259###############################################################################
260# UART transport driver options
261#
262# PORT=1,2,3,...
263# BAUD=115200, 19200, 9600, 4800,
264# DATABITS=8, 7, 6, 5
265# PARITY="even" | "odd" | "none"
266# STOPBITS="0" | "1" | "1.5" | "2"
267
268#UART_PORT=2
269#UART_BAUD=115200
270#UART_DATABITS=8
271#UART_PARITY="none"
272#UART_STOPBITS="1"
273
274###############################################################################
275# Insert a delay in microseconds per byte after a write to NFCC.
276# after writing a block of data to the NFCC, delay this an amopunt of time before
277# writing next block of data.  the delay is calculated as below
278#   NFC_WRITE_DELAY * (number of byte written) / 1000 milliseconds
279# e.g. after 259 bytes is written, delay (259 * 20 / 1000) 5 ms before next write
280#NFC_WRITE_DELAY=20
281
282###############################################################################
283# Maximum Number of Credits to be allowed by the NFCC
284#   This value overrides what the NFCC specifices allowing the host to have
285#   the control to work-around transport limitations.  If this value does
286#   not exist or is set to 0, the NFCC will provide the number of credits.
287MAX_RF_DATA_CREDITS=1
288
289###############################################################################
290# Default poll duration (in ms)
291#  The defualt is 500ms if not set (see nfc_target.h)
292#NFA_DM_DISC_DURATION_POLL=333
293###############################################################################
294# Antenna Configuration - This data is used when setting 0xC8 config item
295# at startup (before discovery is started).  If not used, no value is sent.
296#
297# The settings for this value are documented here:
298# http://wcgbu.broadcom.com/wpan/PM/Project%20Document%20Library/bcm20791B0/
299#   Design/Doc/PHY%20register%20settings/BCM20791-B2-1027-02_PHY_Recommended_Reg_Settings.xlsx
300# This document is maintained by Paul Forshaw.
301#
302# The values marked as ?? should be tweaked per antenna or customer/app:
303# {20:C8:1E:06:??:00:??:??:??:00:??:24:00:1C:00:75:00:77:00:76:00:1C:00:03:00:0A:00:??:01:00:00:40:04}
304# array[0] = 0x20 is length of the payload from array[1] to the end
305# array[1] = 0xC8 is PREINIT_DSP_CFG
306#PREINIT_DSP_CFG={20:C8:1E:06:1F:00:0F:03:3C:00:04:24:00:1C:00:75:00:77:00:76:00:1C:00:03:00:0A:00:48:01:00:00:40:04}
307
308
309###############################################################################
310# Choose the presence-check algorithm for type-4 tag.  If not defined, the default value is 1.
311# 0  NFA_RW_PRES_CHK_DEFAULT; Let stack selects an algorithm
312# 1  NFA_RW_PRES_CHK_I_BLOCK; ISO-DEP protocol's empty I-block
313# 2  NFA_RW_PRES_CHK_RESET; Deactivate to Sleep, then re-activate
314# 3  NFA_RW_PRES_CHK_RB_CH0; Type-4 tag protocol's ReadBinary command on channel 0
315# 4  NFA_RW_PRES_CHK_RB_CH3; Type-4 tag protocol's ReadBinary command on channel 3
316#PRESENCE_CHECK_ALGORITHM=0
317
318###############################################################################
319# Force tag polling for the following technology(s).
320# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
321# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B |
322#            NFA_TECHNOLOGY_MASK_F | NFA_TECHNOLOGY_MASK_ISO15693 |
323#            NFA_TECHNOLOGY_MASK_B_PRIME | NFA_TECHNOLOGY_MASK_KOVIO |
324#            NFA_TECHNOLOGY_MASK_A_ACTIVE | NFA_TECHNOLOGY_MASK_F_ACTIVE.
325#
326# Notable bits:
327# NFA_TECHNOLOGY_MASK_A             0x01    /* NFC Technology A             */
328# NFA_TECHNOLOGY_MASK_B             0x02    /* NFC Technology B             */
329# NFA_TECHNOLOGY_MASK_F             0x04    /* NFC Technology F             */
330# NFA_TECHNOLOGY_MASK_ISO15693	    0x08    /* Proprietary Technology       */
331# NFA_TECHNOLOGY_MASK_KOVIO	        0x20    /* Proprietary Technology       */
332# NFA_TECHNOLOGY_MASK_A_ACTIVE      0x40    /* NFC Technology A active mode */
333# NFA_TECHNOLOGY_MASK_F_ACTIVE      0x80    /* NFC Technology F active mode */
334POLLING_TECH_MASK=0xEF
335
336###############################################################################
337# Force P2P to only listen for the following technology(s).
338# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
339# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_F |
340#            NFA_TECHNOLOGY_MASK_A_ACTIVE | NFA_TECHNOLOGY_MASK_F_ACTIVE
341#
342# Notable bits:
343# NFA_TECHNOLOGY_MASK_A	            0x01    /* NFC Technology A             */
344# NFA_TECHNOLOGY_MASK_F	            0x04    /* NFC Technology F             */
345# NFA_TECHNOLOGY_MASK_A_ACTIVE      0x40    /* NFC Technology A active mode */
346# NFA_TECHNOLOGY_MASK_F_ACTIVE      0x80    /* NFC Technology F active mode */
347P2P_LISTEN_TECH_MASK=0xC5
348
349PRESERVE_STORAGE=0x01
350
351###############################################################################
352# Override the stack default for NFA_EE_MAX_EE_SUPPORTED set in nfc_target.h.
353# The value is set to 3 by default as it assumes we will discover 0xF2,
354# 0xF3, and 0xF4. If a platform will exclude and SE, this value can be reduced
355# so that the stack will not wait any longer than necessary.
356
357# Maximum EE supported number
358# NXP PN547C2 0x02
359# NXP PN65T 0x03
360# NXP PN548C2 0x02
361# NXP PN66T 0x03
362NFA_MAX_EE_SUPPORTED=0x03
363
364###############################################################################
365# NCI Hal Module name
366NCI_HAL_MODULE="nfc_nci"
367
368##############################################################################
369# Deactivate notification wait time out in seconds used in ETSI Reader mode
370# 0 - Infinite wait
371NFA_DM_DISC_NTF_TIMEOUT=100
372
373###############################################################################
374# AID_MATCHING constants
375# AID_MATCHING_EXACT_ONLY 0x00
376# AID_MATCHING_EXACT_OR_PREFIX 0x01
377# AID_MATCHING_PREFIX_ONLY 0x02
378AID_MATCHING_MODE=0x01
379
380###############################################################################
381# Preferred Secure Element for Technology based routing
382# eSE               0x01
383# UICC              0x02
384
385NXP_PRFD_TECH_SE=0x01
386
387###############################################################################
388# Vendor Specific Proprietary Protocol & Discovery Configuration
389# Set to 0xFF if unsupported
390#  byte[0] NCI_PROTOCOL_18092_ACTIVE
391#  byte[1] NCI_PROTOCOL_B_PRIME
392#  byte[2] NCI_PROTOCOL_DUAL
393#  byte[3] NCI_PROTOCOL_15693
394#  byte[4] NCI_PROTOCOL_KOVIO
395#  byte[5] NCI_PROTOCOL_MIFARE
396#  byte[6] NCI_DISCOVERY_TYPE_POLL_KOVIO
397#  byte[7] NCI_DISCOVERY_TYPE_POLL_B_PRIME
398#  byte[8] NCI_DISCOVERY_TYPE_LISTEN_B_PRIME
399NFA_PROPRIETARY_CFG={05:FF:FF:06:81:80:70:FF:FF}
400
401###############################################################################
402# Bail out mode
403#  If set to 1, NFCC is using bail out mode for either Type A or Type B poll.
404NFA_POLL_BAIL_OUT_MODE=0x01
405