## This file is used by NFC NXP NCI HAL(external/libnfc-nci/halimpl/pn547)
## and NFC Service Java Native Interface Extensions (packages/apps/Nfc/nci/jni/extns/pn547)
###############################################################################
# Application options
# Logging Levels
# NXPLOG_DEFAULT_LOGLEVEL    0x01
# ANDROID_LOG_DEBUG          0x03
# ANDROID_LOG_WARN           0x02
# ANDROID_LOG_ERROR          0x01
# ANDROID_LOG_SILENT         0x00
NXPLOG_EXTNS_LOGLEVEL=0x03
NXPLOG_NCIHAL_LOGLEVEL=0x03
NXPLOG_NCIX_LOGLEVEL=0x03
NXPLOG_NCIR_LOGLEVEL=0x03
NXPLOG_FWDNLD_LOGLEVEL=0x03
NXPLOG_TML_LOGLEVEL=0x03

###############################################################################
# Nfc Device Node name
NXP_NFC_DEV_NODE="/dev/pn553"

###############################################################################
# Extension for Mifare reader enable
MIFARE_READER_ENABLE=0x01

###############################################################################
# Vzw Feature enable
VZW_FEATURE_ENABLE=0x01

###############################################################################
# File name for Firmware
NXP_FW_NAME="libpn553_fw.so"

###############################################################################
# System clock source selection configuration
#define CLK_SRC_XTAL       1
#define CLK_SRC_PLL        2
NXP_SYS_CLK_SRC_SEL=0x02

###############################################################################
# System clock frequency selection configuration
#define CLK_FREQ_13MHZ         1
#define CLK_FREQ_19_2MHZ       2
#define CLK_FREQ_24MHZ         3
#define CLK_FREQ_26MHZ         4
#define CLK_FREQ_38_4MHZ       5
#define CLK_FREQ_52MHZ         6
NXP_SYS_CLK_FREQ_SEL=0x02

###############################################################################
# The timeout value to be used for clock request acknowledgment
# min value = 0x01 to max = 0x06
NXP_SYS_CLOCK_TO_CFG=0x06

###############################################################################
# NXP proprietary settings
NXP_ACT_PROP_EXTN={2F, 02, 00}

###############################################################################
# NFC forum profile settings
NXP_NFC_PROFILE_EXTN={20, 02, 05, 01, A0, 44, 01, 00}

###############################################################################
# NFCC Configuration Control
# Allow NFCC to manage RF Config       0x01
# Don't allow NFCC to manage RF Config 0x00
NXP_NFC_MERGE_RF_PARAMS={20, 02, 04, 01, 85, 01, 01}

###############################################################################
# Standby enable settings
#NXP_CORE_STANDBY={2F, 00, 01, 01}

###############################################################################
# NXP TVDD configurations settings
# Allow NFCC to configure External TVDD, two configurations (1 and 2) supported,
# out of them only one can be configured at a time.
NXP_EXT_TVDD_CFG=0x02

###############################################################################
#config1:SLALM, 3.3V for both RM and CM
NXP_EXT_TVDD_CFG_1={20, 02, 0F, 01, A0, 0E, 0B, 31, 01, 01, 31, 00, 00, 00, 01, 00, D0, 0C}

###############################################################################
#config2: use DCDC in CE, use Tx_Pwr_Req, set CFG2 mode, SLALM,
#monitoring 5V from DCDC, 3.3V for both RM and CM, DCDCWaitTime=4.2ms
NXP_EXT_TVDD_CFG_2={20, 02, 0F, 01, A0, 0E, 0B, 11, 01, C2, B2, 00, B2, 1E, 1F, 00, D0, 0C}

###############################################################################
# NXP RF configuration ALM/PLM settings
# This section needs to be updated with the correct values based on the platform
#NXP_RF_CONF_BLK_1={
#}

###############################################################################
# NXP RF configuration ALM/PLM settings
# This section needs to be updated with the correct values based on the platform
#NXP_RF_CONF_BLK_2={
#}

###############################################################################
# NXP RF configuration ALM/PLM settings
# This section needs to be updated with the correct values based on the platform
#NXP_RF_CONF_BLK_3={
#}

###############################################################################
# NXP RF configuration ALM/PLM settings
# This section needs to be updated with the correct values based on the platform
#NXP_RF_CONF_BLK_4={
#}

###############################################################################
# NXP RF configuration ALM/PLM settings
# This section needs to be updated with the correct values based on the platform
#NXP_RF_CONF_BLK_5={
#}

###############################################################################
# NXP RF configuration ALM/PLM settings
# This section needs to be updated with the correct values based on the platform
#NXP_RF_CONF_BLK_6={
#}

###############################################################################
# Set configuration optimization decision setting
# Enable    = 0x01
# Disable   = 0x00
NXP_SET_CONFIG_ALWAYS=0x00

###############################################################################
# Core configuration extensions
# It includes
# Wired mode settings A0ED, A0EE
# Tag Detector A040, A041, A043
# Low Power mode A007
# Clock settings A002, A003
# PbF settings A008
# Clock timeout settings A004
# eSE (SVDD) PWR REQ settings A0F2
# Window size A0D8
# DWP Speed   A0D5
# How eSE connected to PN553 A012
# UICC2 bit rate A0D1
# SWP1A interface A0D4
# DWP intf behavior config, SVDD Load activated by default if set to 0x31 A037
NXP_CORE_CONF_EXTN={20, 02, 29, 0A,
    A0, EC, 01, 01,
    A0, ED, 01, 01,
    A0, 5E, 01, 01,
    A0, 12, 01, 02,
    A0, 40, 01, 01,
    A0, D1, 01, 02,
    A0, D4, 01, 01,
    A0, 37, 01, 35,
    A0, D8, 01, 02,
    A0, D5, 01, 0A
   }
#       A0, F2, 01, 01,
#       A0, 40, 01, 01,
#       A0, 41, 01, 02,
#       A0, 43, 01, 04,
#       A0, 02, 01, 01,
#       A0, 03, 01, 11,
#       A0, 07, 01, 03,
#       A0, 08, 01, 01
#       }

###############################################################################
# Core configuration rf field filter settings to enable set to 01 to disable set
# to 00 last bit
NXP_CORE_RF_FIELD={ 20, 02, 05, 01, A0, 62, 01, 00 }

###############################################################################
# To enable i2c fragmentation set i2c fragmentation enable 0x01 to disable set
# to 0x00
NXP_I2C_FRAGMENTATION_ENABLED=0x00

###############################################################################
# Core configuration settings
NXP_CORE_CONF={ 20, 02, 2E, 0E,
        28, 01, 00,
        21, 01, 00,
        30, 01, 08,
        31, 01, 03,
        32, 01, 60,
        38, 01, 01,
        33, 04, 01, 02, 03, 04,
        54, 01, 06,
        50, 01, 02,
        5B, 01, 00,
        80, 01, 01,
        81, 01, 01,
        82, 01, 0E,
        18, 01, 01
        }

###############################################################################
# Mifare Classic Key settings
#NXP_CORE_MFCKEY_SETTING={20, 02, 25,04, A0, 51, 06, A0, A1, A2, A3, A4, A5,
#                                     A0, 52, 06, D3, F7, D3, F7, D3, F7,
#                                     A0, 53, 06, FF, FF, FF, FF, FF, FF,
#                                     A0, 54, 06, 00, 00, 00, 00, 00, 00}

###############################################################################
# Default SE Options
# No secure element 0x00
# eSE               0x01
# UICC              0x02
# UICC2             0x04
NXP_DEFAULT_SE=0x07

###############################################################################
#Enable SWP full power mode when phone is power off
NXP_SWP_FULL_PWR_ON=0x00

###############################################################################
#### Select the CHIP ####
#PN547C2            0x01
#PN65T              0x02
#PN548AD            0x03
#PN66T              0x04
#PN551              0x05
#PN67T              0x06
#PN553              0x07
#PN80T              0x08
NXP_NFC_CHIP=0x08

###############################################################################
# CE when Screen state is locked
# This setting is for DEFAULT_AID_ROUTE,
# DEFAULT_DESFIRE_ROUTE and DEFAULT_MIFARE_CLT_ROUTE
# Disable           0x00
# Enable            0x01
NXP_CE_ROUTE_STRICT_DISABLE=0x01

###############################################################################
#Timeout in secs to get NFCEE Discover notification
NXP_DEFAULT_NFCEE_DISC_TIMEOUT=20

###############################################################################
NXP_DEFAULT_NFCEE_TIMEOUT=20

###############################################################################
#Timeout in secs
NXP_SWP_RD_START_TIMEOUT=0x0A

###############################################################################
#Timeout in secs
NXP_SWP_RD_TAG_OP_TIMEOUT=0x01

###############################################################################
#Set the default AID route Location :
#This settings will be used when application does not set this parameter
# host  0x00
# eSE   0x01
# UICC  0x02
# UICC2 0x03
DEFAULT_AID_ROUTE=0x00

###############################################################################
#Set the Mifare Desfire route Location :
#This settings will be used when application does not set this parameter
# host  0x00
# eSE   0x01
# UICC  0x02
# UICC2 0x03
DEFAULT_DESFIRE_ROUTE=0x02

###############################################################################
#Set the Mifare CLT route Location :
#This settings will be used when application does not set this parameter
# host  0x00
# eSE   0x01
# UICC  0x02
# UICC2 0x03
DEFAULT_MIFARE_CLT_ROUTE=0x02

###############################################################################
#Set the Felica CLT route Location :
#This settings will be used when application does not set this parameter
# eSE   0x01
# UICC  0x02
# UICC2 0x03
DEFAULT_FELICA_CLT_ROUTE=0x01

###############################################################################
#Set the default AID Power state :
#This settings will be used when application does not set this parameter
# bit pos 0 = Switch On
# bit pos 1 = Switch Off
# bit pos 2 = Battery Off
# bit pos 3 = Screen Lock
# bit pos 4 = Screen Off
DEFAULT_AID_PWR_STATE=0x19

###############################################################################
#Set the Mifare Desfire Power state :
#This settings will be used when application does not set this parameter
# bit pos 0 = Switch On
# bit pos 1 = Switch Off
# bit pos 2 = Battery Off
# bit pos 3 = Screen Lock
# bit pos 4 = Screen Off
DEFAULT_DESFIRE_PWR_STATE=0x1B

###############################################################################
#Set the Mifare CLT Power state :
#This settings will be used when application does not set this parameter
# bit pos 0 = Switch On
# bit pos 1 = Switch Off
# bit pos 2 = Battery Off
# bit pos 3 = Screen Lock
# bit pos 4 = Screen Off
DEFAULT_MIFARE_CLT_PWR_STATE=0x1B

###############################################################################
#Set the Felica CLT Power state :
#This settings will be used when application does not set this parameter
# bit pos 0 = Switch On
# bit pos 1 = Switch Off
# bit pos 2 = Battery Off
# bit pos 3 = Screen Lock
# bit pos 4 = Screen Off
DEFAULT_FELICA_CLT_PWR_STATE=0x1B

###############################################################################
# AID Matching platform options
# AID_MATCHING_L 0x01
# AID_MATCHING_K 0x02
AID_MATCHING_PLATFORM=0x01

###############################################################################
# P61 interface options
# NFC 0x01
# SPI 0x02
NXP_P61_LS_DEFAULT_INTERFACE=0x01

###############################################################################
# P61 LTSM interface options
# NFC 0x01
# SPI 0x02
NXP_P61_LTSM_DEFAULT_INTERFACE=0x01

###############################################################################
#CHINA_TIANJIN_RF_SETTING
#Enable  0x01
#Disable  0x00
NXP_CHINA_TIANJIN_RF_ENABLED=0x01

###############################################################################
#SWP_SWITCH_TIMEOUT_SETTING
# Allowed range of swp timeout setting is 0x00 to 0x3C [0 - 60].
# Timeout in milliseconds, for example
# No Timeout  0x00
# 10 millisecond timeout 0x0A
NXP_SWP_SWITCH_TIMEOUT=0x0A

###############################################################################
# P61 interface options for JCOP Download
# NFC 0x01
# SPI 0x02
NXP_P61_JCOP_DEFAULT_INTERFACE=0x01

###############################################################################
# P61 JCOP OS download  options
# FRAMEWORK API BY APPLICATION 0x00
# AT BOOT_TIME 0x01
NXP_JCOPDL_AT_BOOT_ENABLE=0x00

###############################################################################
# Loader service version
# NFC service checks for LS version 2.0 or 2.1
# LS2.0 0x20
# LS2.1 0x21
# LS2.2 0x22
# AT NFC service intialization
NXP_LOADER_SERVICE_VERSION=0x22

###############################################################################
#Timeout value  in milliseconds for NFCC standby mode.The range is between 5000
#msec to 20000 msec and zero is to disable.
NXP_NFCC_STANDBY_TIMEOUT=20000

###############################################################################
#Dynamic RSSI feature enable
# Disable           0x00
# Enable            0x01
NXP_AGC_DEBUG_ENABLE=0x00

###############################################################################
#Virtual Mode ESE and Wired Mode ongoing delay Wired Mode
# For Technology routing to ESE Technology Mask = 4
# For ISO-DEP Protocol routing to ESE Mask      = 2
# It can also take TECH|PROTO    = 6
# To ignore the delay set mask to = 0
NXP_ESE_WIRED_PRT_MASK=0x00

###############################################################################
#Virtual Mode UICC and Wired Mode  ongoing delay Wired Mode
#For Technology routing to UICC Technology Mask = 4
#For ISO-DEP Protocol routing to UICC set Mask  = 2
#For Select AID Routing to UICC       set Mask  = 1
#It can also take values TECH|PROTO|SELECT_AID  = 7 , 6 , 5 ,3 .To ignore delay
#set mask = 0
NXP_UICC_WIRED_PRT_MASK=0x00

################################################################################
#RF field true delay Wired Mode
# delay wired mode = 1
# allow wired mode = 0
NXP_WIRED_MODE_RF_FIELD_ENABLE=0x00

###############################################################################
#Config to allow adding aids
#NFC on/off is required after this config
#1 = enabling adding aid  to NFCC routing table.
#0 = disabling adding aid to NFCC routing table.
NXP_ENABLE_ADD_AID=0x01

###############################################################################
# JCOP-3.3 continuous process timeout in msec and value should be in Hexadecimal
# JCOP CP TIMEOUT
NXP_CP_TIMEOUT={00, 77}

###############################################################################
# Enable/Disable checking default proto SE Id
# Disable           0x00
# Enable            0x01
NXP_CHECK_DEFAULT_PROTO_SE_ID=0x01

###############################################################################
#NXP_CN_TRANSIT_BLK_NUM_CHECK_ENABLE
#Enable/Disable block number checks for china transit use case
#Enable  0x01
#Disable  0x00
NXP_CN_TRANSIT_BLK_NUM_CHECK_ENABLE=0x01

###############################################################################
# Wired mode resume timeout vaule in wired mode resume feature enable
# DWP resume time out in ms( 4 bytes hex value and LSB first)
#example 1000 = 0x03E8
#exmaple 2000 = 0x07D0
#example 500 = 0x01F4
NXP_WIREDMODE_RESUME_TIMEOUT={E8,03,00,00}
###############################################################################
# Power to eSE is controlled by DH or PMU depending on following configurations
#define DH_PWR_CONTROL         1
#define PMU_PWR_CONTROL        2
NXP_ESE_POWER_DH_CONTROL=1

###############################################################################
# Timeout value in milliseconds for wired mode resume after RF field event timeout
NXP_NFCC_RF_FIELD_EVENT_TIMEOUT=3000

###############################################################################
# NXP PMU Support configuration is sent if PMU_PWR_CONTROL is configured
# External PMU available in phone ON and phone OFF case if NXP_ESE_POWER_EXT_PMU=1
# External PMU available only in phone ON case if NXP_ESE_POWER_EXT_PMU=2
NXP_ESE_POWER_EXT_PMU=2

###############################################################################
# Whether to allow wired mode in desfire and mifare CLT
# Disable           0x00
# Enable            0x01
NXP_ALLOW_WIRED_IN_MIFARE_DESFIRE_CLT=0x00

###############################################################################
# Restrict routing to first matched rule only.
# Blacklist enable   0x01
# Blacklist disable  0x00
NXP_PROP_BLACKLIST_ROUTING=0x00

###############################################################################
# Send DWP interface reset command as part of SE open
# Disable           0x00
# Enable            0x01
NXP_DWP_INTF_RESET_ENABLE=0x01

###############################################################################
# Timeout value in milliseconds for JCOP OS download to complete
OS_DOWNLOAD_TIMEOUT_VALUE=60000

###############################################################################
# Timeout value in milliseconds to send response for Felica command received
NXP_HCEF_CMD_RSP_TIMEOUT_VALUE=5000

###############################################################################