1###################### Start of libnfc-brcm-common.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 37NFC_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# 48POWER_ON_DELAY=300 49PRE_POWER_OFF_DELAY=10 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. 55NFCC_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 68LPTD_CFG={23:B9:21:01:02:FF:FF:04:A0:0F:40:00:80:02:02:10:00:00:00:31:0E: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 80NFA_DM_START_UP_CFG={2E: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:C2:08:61:40:82:04:40:4B:4C:00:B5:03:01:02:FF} 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 105PREINIT_DSP_CFG={20:C8:1E:06:1F:00:0A:03:30:00:04:24:00:1C:00:75:00:77:00:76:00:1C:00:03:00:0A:00:4C: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############################################################################### 112# Use Nexus S NXP RC work to allow our stack/firmware to work with a retail 113# Nexus S that causes IOP issues. Note, this will not pass conformance and 114# should be removed for production. 115USE_NXP_P2P_RC_WORKAROUND=1 116 117############################################################################### 118# Configure the default Destination Gate used by HCI (the default is 4, which 119# is the ETSI loopback gate. 120#NFA_HCI_DEFAULT_DEST_GATE=0x04 121 122############################################################################### 123# Override the stack default for NFA_EE_MAX_EE_SUPPORTED set in nfc_target.h. 124# The value is set to 3 by default as it assumes we will discover 0xF2, 125# 0xF3, and 0xF4. If a platform will exclude and SE, this value can be reduced 126# so that the stack will not wait any longer than necessary. 127NFA_MAX_EE_SUPPORTED=0 128 129############################################################################### 130# Configure the single default SE to use. The default is to use the first 131# SE that is detected by the stack. This value might be used when the phone 132# supports multiple SE (e.g. 0xF3 and 0xF4) but you want to force it to use 133# one of them (e.g. 0xF4). 134ACTIVE_SE=0x00 135 136############################################################################### 137# Configure the default NfcA/IsoDep techology and protocol route. Can be 138# either a secure element (e.g. 0xF4) or the host (0x00) 139DEFAULT_ISODEP_ROUTE=0x00 140 141############################################################################### 142# Configure the NFC Extras to open and use a static pipe. If the value is 143# not set or set to 0, then the default is use a dynamic pipe based on a 144# destination gate (see NFA_HCI_DEFAULT_DEST_GATE). Note there is a value 145# for each UICC (where F3="UICC0" and F4="UICC1") 146#NFA_HCI_STATIC_PIPE_ID_F3=0x70 147NFA_HCI_STATIC_PIPE_ID_F4=0x71 148 149############################################################################### 150# When disconnecting from Oberthur secure element, perform a warm-reset of 151# the secure element to deselect the applet. 152# The default hex value of the command is 0x3. If this variable is undefined, 153# then this feature is not used. 154OBERTHUR_WARM_RESET_COMMAND=0x03 155 156############################################################################### 157# Force UICC to only listen to 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. 160UICC_LISTEN_TECH_MASK=0x01 161 162############################################################################### 163# Allow UICC to be powered off if there is no traffic. 164# Timeout is in ms. If set to 0, then UICC will not be powered off. 165#UICC_IDLE_TIMEOUT=30000 166 167############################################################################### 168# AID for Empty Select command 169# If specified, this AID will be substituted when an Empty SELECT command is 170# detected. The first byte is the length of the AID. Maximum length is 16. 171AID_FOR_EMPTY_SELECT={08:A0:00:00:01:51:00:00:00} 172 173############################################################################### 174# Force tag polling for the following technology(s). 175# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h. 176# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B | 177# NFA_TECHNOLOGY_MASK_F | NFA_TECHNOLOGY_MASK_ISO15693 | 178# NFA_TECHNOLOGY_MASK_B_PRIME | NFA_TECHNOLOGY_MASK_A_ACTIVE | 179# NFA_TECHNOLOGY_MASK_F_ACTIVE. 180# 181# Notable bits: 182# NFA_TECHNOLOGY_MASK_KOVIO 0x20 183# NFA_TECHNOLOGY_MASK_A_ACTIVE 0x40 184# NFA_TECHNOLOGY_MASK_F_ACTIVE 0x80 185POLLING_TECH_MASK=0xFF 186 187############################################################################### 188# Force P2P to only listen for the following technology(s). 189# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h. 190# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_F | 191# NFA_TECHNOLOGY_MASK_A_ACTIVE | NFA_TECHNOLOGY_MASK_F_ACTIVE 192P2P_LISTEN_TECH_MASK=0xC5 193 194############################################################################### 195# Maximum Number of Credits to be allowed by the NFCC 196# This value overrides what the NFCC specifices allowing the host to have 197# the control to work-around transport limitations. If this value does 198# not exist or is set to 0, the NFCC will provide the number of credits. 199#MAX_RF_DATA_CREDITS=1 200 201############################################################################### 202# This setting allows you to disable registering the T4t Virtual SE that causes 203# the NFCC to send PPSE requests to the DH. 204# The default setting is enabled (i.e. T4t Virtual SE is registered). 205#REGISTER_VIRTUAL_SE=1 206 207############################################################################### 208# When screen is turned off, specify the desired power state of the controller. 209# 0: power-off-sleep state; DEFAULT 210# 1: full-power state (note: this is still low-power ("snooze") on BRCM devices. 211# 2: screen-off card-emulation (CE4/CE3/CE1 modes are used) 212SCREEN_OFF_POWER_STATE=1 213 214############################################################################### 215# Firmware patch file 216# If the value is not set then patch download is disabled. 217FW_PATCH="/vendor/firmware/bcm2079x_firmware.ncd" 218 219############################################################################### 220# Firmware pre-patch file (sent before the above patch file) 221# If the value is not set then pre-patch is not used. 222FW_PRE_PATCH="/vendor/firmware/bcm2079x_pre_firmware.ncd" 223 224############################################################################### 225# Firmware patch format 226# 1 = HCD 227# 2 = NCD (default) 228#NFA_CONFIG_FORMAT=2 229 230############################################################################### 231# SPD Debug mode 232# If set to 1, any failure of downloading a patch will trigger a hard-stop 233#SPD_DEBUG=0 234 235############################################################################### 236# SPD Max Retry Count 237# The number of attempts to download a patch before giving up (defualt is 3). 238# Note, this resets after a power-cycle. 239#SPD_MAX_RETRY_COUNT=3 240 241############################################################################### 242# transport driver 243# 244# TRANSPORT_DRIVER=<driver> 245# 246# where <driver> can be, for example: 247# "/dev/ttyS" (UART) 248# "/dev/bcmi2cnfc" (I2C) 249# "hwtun" (HW Tunnel) 250# "/dev/bcmspinfc" (SPI) 251# "/dev/btusb0" (BT USB) 252TRANSPORT_DRIVER="/dev/bcm2079x-i2c" 253 254############################################################################### 255# power control driver 256# Specify a kernel driver that support ioctl commands to control NFC_EN and 257# NFC_WAKE gpio signals. 258# 259# POWER_CONTRL_DRIVER=<driver> 260# where <driver> can be, for example: 261# "/dev/nfcpower" 262# "/dev/bcmi2cnfc" (I2C) 263# "/dev/bcmspinfc" (SPI) 264# i2c and spi driver may be used to control NFC_EN and NFC_WAKE signal 265POWER_CONTROL_DRIVER="/dev/bcm2079x-i2c" 266 267############################################################################### 268# I2C transport driver options 269# Mako does not support 10-bit I2C addresses 270# Revert to 7-bit address 271BCMI2CNFC_ADDRESS=0x77 272 273############################################################################### 274# I2C transport driver try to read multiple packets in read() if data is available 275# remove the comment below to enable this feature 276#READ_MULTIPLE_PACKETS=1 277 278############################################################################### 279# SPI transport driver options 280#SPI_NEGOTIATION={0A:F0:00:01:00:00:00:FF:FF:00:00} 281 282############################################################################### 283# UART transport driver options 284# 285# PORT=1,2,3,... 286# BAUD=115200, 19200, 9600, 4800, 287# DATABITS=8, 7, 6, 5 288# PARITY="even" | "odd" | "none" 289# STOPBITS="0" | "1" | "1.5" | "2" 290 291#UART_PORT=2 292#UART_BAUD=115200 293#UART_DATABITS=8 294#UART_PARITY="none" 295#UART_STOPBITS="1" 296 297############################################################################### 298# Insert a delay in microseconds per byte after a write to NFCC. 299# after writing a block of data to the NFCC, delay this an amopunt of time before 300# writing next block of data. the delay is calculated as below 301# NFC_WRITE_DELAY * (number of byte written) / 1000 milliseconds 302# e.g. after 259 bytes is written, delay (259 * 20 / 1000) 5 ms before next write 303NFC_WRITE_DELAY=20 304 305############################################################################### 306# Default poll duration (in ms) 307# The defualt is 500ms if not set (see nfc_target.h) 308#NFA_DM_DISC_DURATION_POLL=333 309 310############################################################################### 311# Choose the presence-check algorithm for type-4 tag. If not defined, 312# the default value is 1. 313# 0 NFA_RW_PRES_CHK_DEFAULT; Let stack selects an algorithm 314# 1 NFA_RW_PRES_CHK_I_BLOCK; ISO-DEP protocol's empty I-block 315# 2 NFA_RW_PRES_CHK_RESET; Deactivate to Sleep, then re-activate 316# 3 NFA_RW_PRES_CHK_RB_CH0; Type-4 tag protocol's ReadBinary command on channel 0 317# 4 NFA_RW_PRES_CHK_RB_CH3; Type-4 tag protocol's ReadBinary command on channel 3 318PRESENCE_CHECK_ALGORITHM=1 319