blob: 47592d7b267c405e5ebbdd70adb7a3f8b47aa3c4 [file] [log] [blame]
Martijn Coenena44149b2012-07-18 15:24:00 -07001###################### Start of libnfc-brcm-common.conf #######################
2
3###############################################################################
4# Application options
Martijn Coenened7b1402012-09-20 19:42:58 -07005APPL_TRACE_LEVEL=0x01
Martijn Coenena44149b2012-07-18 15:24:00 -07006PROTOCOL_TRACE_LEVEL=0x00000000
7
8###############################################################################
Martijn Coenena44149b2012-07-18 15:24:00 -07009# 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###############################################################################
Martijn Coenena44149b2012-07-18 15:24:00 -070016# File used for NFA storage
Martijn Coenen779f93b2012-07-30 13:18:09 -070017NFA_STORAGE="/data/nfc"
Martijn Coenena44149b2012-07-18 15:24:00 -070018
19###############################################################################
Martijn Coenen81642562012-09-03 16:56:57 +020020# Snooze Mode Settings
Martijn Coenena44149b2012-07-18 15:24:00 -070021#
Martijn Coenen81642562012-09-03 16:56:57 +020022# By default snooze mode is enabled. Set SNOOZE_MODE_CFG byte[0] to 0
23# to disable.
Martijn Coenena44149b2012-07-18 15:24:00 -070024#
Martijn Coenen81642562012-09-03 16:56:57 +020025# 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
Martijn Coenena44149b2012-07-18 15:24:00 -070030# 0 NFC Wake active mode (0=ActiveLow 1=ActiveHigh)
31# 1 Host Wake active mode (0=ActiveLow 1=ActiveHigh)
32#
Martijn Coenen81642562012-09-03 16:56:57 +020033#SNOOZE_MODE_CFG={08:00:00:00:01}
34
35###############################################################################
Martijn Coenena44149b2012-07-18 15:24:00 -070036# Insert a delay in milliseconds after NFC_WAKE and before write to NFCC
37NFC_WAKE_DELAY=20
Martijn Coenen9908c3d2012-10-09 18:29:42 -070038
Martijn Coenen81642562012-09-03 16:56:57 +020039###############################################################################
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
Martijn Coenen9908c3d2012-10-09 18:29:42 -070044# Delay after deasserting NFC-Wake before turn off chip (default 0)
Martijn Coenen81642562012-09-03 16:56:57 +020045# POST_POWER_OFF_DELAY
46# Delay after turning off chip, before USERIAL_close returns (default 0)
47#
48#POWER_ON_DELAY=300
Martijn Coenene6501092012-11-26 11:22:54 -080049PRE_POWER_OFF_DELAY=10
Martijn Coenen81642562012-09-03 16:56:57 +020050#POST_POWER_OFF_DELAY=0
Martijn Coenena44149b2012-07-18 15:24:00 -070051
52###############################################################################
Martijn Coenen9908c3d2012-10-09 18:29:42 -070053# LPTD mode configuration
54# byte[0] is the length of the remaining bytes in this value
Martijn Coenena44149b2012-07-18 15:24:00 -070055# if set to 0, LPTD params will NOT be sent to NFCC (i.e. disabled).
Martijn Coenen9908c3d2012-10-09 18:29:42 -070056# byte[1] is the param id it should be set to B9.
57# byte[2] is the length of the LPTD parameters
58# byte[3] indicates if LPTD is enabled
59# if set to 0, LPTD will be disabled (parameters will still be sent).
60# byte[4-n] are the LPTD parameters.
Martijn Coenena44149b2012-07-18 15:24:00 -070061# By default, LPTD is enabled and default settings are used.
Martijn Coenen9908c3d2012-10-09 18:29:42 -070062# See nfc_hal_dm_cfg.c for defaults
63LPTD_CFG={00: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}
Martijn Coenena44149b2012-07-18 15:24:00 -070064
65###############################################################################
66# Startup Configuration (100 bytes maximum)
67#
68# For the 0xCA parameter, byte[9] (marked by 'AA') is for UICC0, and byte[10] (marked by BB) is
69# for UICC1. The values are defined as:
70# 0 : UICCx only supports ISO_DEP in low power mode.
71# 2 : UICCx only supports Mifare in low power mode.
72# 3 : UICCx supports both ISO_DEP and Mifare in low power mode.
73#
74# AA BB
Martijn Coenen01549982012-10-11 16:04:31 -070075NFA_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}
Martijn Coenena44149b2012-07-18 15:24:00 -070076
77###############################################################################
Martijn Coenen9908c3d2012-10-09 18:29:42 -070078# Startup Vendor Specific Configuration (100 bytes maximum);
79# byte[0] TLV total len = 0x5
80# byte[1] NCI_MTS_CMD|NCI_GID_PROP = 0x2f
81# byte[2] NCI_MSG_FRAME_LOG = 0x9
82# byte[3] 2
83# byte[4] 0=turn off RF frame logging; 1=turn on
84# byte[5] 0=turn off SWP frame logging; 1=turn on
85# NFA_DM_START_UP_VSC_CFG={05:2F:09:02:01:01}
Martijn Coenena44149b2012-07-18 15:24:00 -070086
87###############################################################################
88# Antenna Configuration - This data is used when setting 0xC8 config item
89# at startup (before discovery is started). If not used, no value is sent.
90#
91# The settings for this value are documented here:
92# http://wcgbu.broadcom.com/wpan/PM/Project%20Document%20Library/bcm20791B0/
93# Design/Doc/PHY%20register%20settings/BCM20791-B2-1027-02_PHY_Recommended_Reg_Settings.xlsx
94# This document is maintained by Paul Forshaw.
95#
96# The values marked as ?? should be tweaked per antenna or customer/app:
Martijn Coenen9908c3d2012-10-09 18:29:42 -070097# {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}
98# array[0] = 0x20 is length of the payload from array[1] to the end
99# array[1] = 0xC8 is PREINIT_DSP_CFG
100#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}
Martijn Coenena44149b2012-07-18 15:24:00 -0700101
102###############################################################################
Martijn Coenen9908c3d2012-10-09 18:29:42 -0700103# Configure crystal frequency when internal LPO can't detect the frequency.
104#XTAL_FREQUENCY=0
Martijn Coenena44149b2012-07-18 15:24:00 -0700105
106###############################################################################
107# Use Nexus S NXP RC work to allow our stack/firmware to work with a retail
108# Nexus S that causes IOP issues. Note, this will not pass conformance and
109# should be removed for production.
110USE_NXP_P2P_RC_WORKAROUND=1
111
112###############################################################################
113# Configure the default Destination Gate used by HCI (the default is 4, which
114# is the ETSI loopback gate.
115#NFA_HCI_DEFAULT_DEST_GATE=0x04
116
117###############################################################################
118# Configure the single default SE to use. The default is to use the first
119# SE that is detected by the stack. This value might be used when the phone
120# supports multiple SE (e.g. 0xF3 and 0xF4) but you want to force it to use
121# one of them (e.g. 0xF4).
122#ACTIVE_SE=0xF3
123
124###############################################################################
125# Configure the NFC Extras to open and use a static pipe. If the value is
126# not set or set to 0, then the default is use a dynamic pipe based on a
127# destination gate (see NFA_HCI_DEFAULT_DEST_GATE). Note there is a value
128# for each UICC (where F3="UICC0" and F4="UICC1")
129#NFA_HCI_STATIC_PIPE_ID_F3=0x70
130NFA_HCI_STATIC_PIPE_ID_F4=0x71
131
132###############################################################################
Martijn Coenen9908c3d2012-10-09 18:29:42 -0700133# When disconnecting from Oberthur secure element, perform a warm-reset of
134# the secure element to deselect the applet.
135# The default hex value of the command is 0x3. If this variable is undefined,
136# then this feature is not used.
Martijn Coenen1dcd6af2012-09-25 19:04:45 -0700137OBERTHUR_WARM_RESET_COMMAND=0x03
138
139###############################################################################
Martijn Coenena44149b2012-07-18 15:24:00 -0700140# Force UICC to only listen to the following technology(s).
141# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
142# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B.
Martijn Coenend76096a2012-09-26 13:24:25 -0700143UICC_LISTEN_TECH_MASK=0x01
Martijn Coenena44149b2012-07-18 15:24:00 -0700144
145###############################################################################
146# Allow UICC to be powered off if there is no traffic.
147# Timeout is in ms. If set to 0, then UICC will not be powered off.
148#UICC_IDLE_TIMEOUT=30000
Martijn Coenen9908c3d2012-10-09 18:29:42 -0700149
Martijn Coenenfd269322012-10-02 12:19:42 -0700150###############################################################################
151# AID for Empty Select command
152# If specified, this AID will be substituted when an Empty SELECT command is
153# detected. The first byte is the length of the AID. Maximum length is 16.
154AID_FOR_EMPTY_SELECT={08:A0:00:00:01:51:00:00:00}
Martijn Coenena44149b2012-07-18 15:24:00 -0700155
156###############################################################################
157# Force tag polling for the following technology(s).
158# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
159# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B |
160# NFA_TECHNOLOGY_MASK_F | NFA_TECHNOLOGY_MASK_ISO15693 |
161# NFA_TECHNOLOGY_MASK_B_PRIME | NFA_TECHNOLOGY_MASK_A_ACTIVE |
162# NFA_TECHNOLOGY_MASK_F_ACTIVE.
163#
164# Notable bits:
165# NFA_TECHNOLOGY_MASK_KOVIO 0x20
166# NFA_TECHNOLOGY_MASK_A_ACTIVE 0x40
167# NFA_TECHNOLOGY_MASK_F_ACTIVE 0x80
Martijn Coenen8c916e62012-08-20 18:25:51 -0700168POLLING_TECH_MASK=0xDF
Martijn Coenena44149b2012-07-18 15:24:00 -0700169
170###############################################################################
171# Force P2P to only listen for the following technology(s).
172# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
173# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_F |
174# NFA_TECHNOLOGY_MASK_A_ACTIVE | NFA_TECHNOLOGY_MASK_F_ACTIVE
Martijn Coenen55b68532012-10-17 15:39:40 -0700175P2P_LISTEN_TECH_MASK=0xC5
Martijn Coenena44149b2012-07-18 15:24:00 -0700176
177###############################################################################
Martijn Coenen9908c3d2012-10-09 18:29:42 -0700178# Maximum Number of Credits to be allowed by the NFCC
179# This value overrides what the NFCC specifices allowing the host to have
180# the control to work-around transport limitations. If this value does
181# not exist or is set to 0, the NFCC will provide the number of credits.
Martijn Coenenb7958a62012-10-01 19:17:25 -0700182MAX_RF_DATA_CREDITS=1
183
184###############################################################################
Martijn Coenena44149b2012-07-18 15:24:00 -0700185# This setting allows you to disable registering the T4t Virtual SE that causes
186# the NFCC to send PPSE requests to the DH.
187# The default setting is enabled (i.e. T4t Virtual SE is registered).
188#REGISTER_VIRTUAL_SE=1
189
190###############################################################################
191# When screen is turned off, specify the desired power state of the controller.
192# 0: power-off-sleep state; DEFAULT
193# 1: full-power state
Martijn Coenen81642562012-09-03 16:56:57 +0200194# 2: screen-off card-emulation (CE4/CE3/CE1 modes are used)
Martijn Coenena44149b2012-07-18 15:24:00 -0700195#SCREEN_OFF_POWER_STATE=0
Martijn Coenena44149b2012-07-18 15:24:00 -0700196
197###############################################################################
198# Firmware patch file
199# If the value is not set then patch download is disabled.
Martijn Coenenb120eea2012-07-30 16:10:49 -0700200FW_PATCH="/vendor/firmware/bcm2079x_firmware.ncd"
Martijn Coenena44149b2012-07-18 15:24:00 -0700201
202###############################################################################
Martijn Coenen81642562012-09-03 16:56:57 +0200203# Firmware pre-patch file (sent before the above patch file)
204# If the value is not set then pre-patch is not used.
Martijn Coenenb120eea2012-07-30 16:10:49 -0700205FW_PRE_PATCH="/vendor/firmware/bcm2079x_pre_firmware.ncd"
Martijn Coenena44149b2012-07-18 15:24:00 -0700206
207###############################################################################
208# Firmware patch format
209# 1 = HCD
210# 2 = NCD (default)
211#NFA_CONFIG_FORMAT=2
212
213###############################################################################
Martijn Coenen9908c3d2012-10-09 18:29:42 -0700214# SPD Debug mode
215# If set to 1, any failure of downloading a patch will trigger a hard-stop
216#SPD_DEBUG=0
217
218###############################################################################
219# SPD Max Retry Count
220# The number of attempts to download a patch before giving up (defualt is 3).
221# Note, this resets after a power-cycle.
222#SPD_MAX_RETRY_COUNT=3
223
224###############################################################################
Martijn Coenena44149b2012-07-18 15:24:00 -0700225# transport driver
226#
227# TRANSPORT_DRIVER=<driver>
228#
229# where <driver> can be, for example:
230# "/dev/ttyS" (UART)
231# "/dev/bcmi2cnfc" (I2C)
232# "hwtun" (HW Tunnel)
233# "/dev/bcmspinfc" (SPI)
234# "/dev/btusb0" (BT USB)
235TRANSPORT_DRIVER="/dev/bcm2079x"
236
237###############################################################################
238# power control driver
239# Specify a kernel driver that support ioctl commands to control NFC_EN and
240# NFC_WAKE gpio signals.
241#
242# POWER_CONTRL_DRIVER=<driver>
243# where <driver> can be, for example:
244# "/dev/nfcpower"
245# "/dev/bcmi2cnfc" (I2C)
246# "/dev/bcmspinfc" (SPI)
247# i2c and spi driver may be used to control NFC_EN and NFC_WAKE signal
248POWER_CONTROL_DRIVER="/dev/bcm2079x"
249
250###############################################################################
251# I2C transport driver options
252#
253BCMI2CNFC_ADDRESS=0
254
255###############################################################################
256# I2C transport driver try to read multiple packets in read() if data is available
257# remove the comment below to enable this feature
258#READ_MULTIPLE_PACKETS=1
259
260###############################################################################
261# SPI transport driver options
Martijn Coenen9908c3d2012-10-09 18:29:42 -0700262#SPI_NEGOTIATION={0A:F0:00:01:00:00:00:FF:FF:00:00}
Martijn Coenena44149b2012-07-18 15:24:00 -0700263
264###############################################################################
265# UART transport driver options
266#
267# PORT=1,2,3,...
268# BAUD=115200, 19200, 9600, 4800,
269# DATABITS=8, 7, 6, 5
270# PARITY="even" | "odd" | "none"
271# STOPBITS="0" | "1" | "1.5" | "2"
272
273#UART_PORT=2
274#UART_BAUD=115200
275#UART_DATABITS=8
276#UART_PARITY="none"
277#UART_STOPBITS="1"
278
279###############################################################################
Martijn Coenena44149b2012-07-18 15:24:00 -0700280# Insert a delay in microseconds per byte after a write to NFCC.
281# after writing a block of data to the NFCC, delay this an amopunt of time before
282# writing next block of data. the delay is calculated as below
283# NFC_WRITE_DELAY * (number of byte written) / 1000 milliseconds
284# e.g. after 259 bytes is written, delay (259 * 20 / 1000) 5 ms before next write
285NFC_WRITE_DELAY=20
286
Martijn Coenena44149b2012-07-18 15:24:00 -0700287###############################################################################
Martijn Coenen9908c3d2012-10-09 18:29:42 -0700288# Default poll duration (in ms)
289# The defualt is 500ms if not set (see nfc_target.h)
290#NFA_DM_DISC_DURATION_POLL=333