#################### This file is used by NXP NFC NCI HAL ##################### # Sep.24, 2020 - Merged from MW11.51.F1 by Jian # Nov.8, 2021 RF tuning by jinzhi # Apr.21, 2022 - Merged from MW 13.03.00 by Jian # Mar.16, 2023 - SN220x MW 14.04.00 by Jian # Nov.13, 2023 - SN220x MW 14.0E.00 by Jian ############################################################################### # Application options # Logging Levels # NXPLOG_DEFAULT_LOGLEVEL 0x01 # ANDROID_LOG_DEBUG 0x04 # ANDROID_LOG_INFO 0x03 # ANDROID_LOG_WARN 0x02 # ANDROID_LOG_ERROR 0x01 # ANDROID_LOG_SILENT 0x00 NXPLOG_EXTNS_LOGLEVEL=0x04 NXPLOG_NCIHAL_LOGLEVEL=0x04 NXPLOG_NCIX_LOGLEVEL=0x04 NXPLOG_NCIR_LOGLEVEL=0x04 NXPLOG_FWDNLD_LOGLEVEL=0x04 NXPLOG_TML_LOGLEVEL=0x04 NFC_DEBUG_ENABLED=1 ############################################################################### # Nfc Device Node name NXP_NFC_DEV_NODE="/dev/nq-nci" ################################################################################# #VEN Toggle Config #Disable = 0x00 #Enable = 0x01 ENABLE_VEN_TOGGLE=0x00 ############################################################################### # Extension for Mifare reader enable MIFARE_READER_ENABLE=0x01 ############################################################################### # File name for Firmware NXP_FW_NAME="libsn220u_fw.so" ############################################################################### # NXP proprietary settings NXP_ACT_PROP_EXTN={2F, 02, 00} ############################################################################### # 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} ############################################################################### # 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 ############################################################################### #set autonomous mode # disable autonomous 0x00 # enable autonomous 0x01 NXP_AUTONOMOUS_ENABLE=0x00 ############################################################################### #set Guard Timer # Guard Timer range to 0x0F-0xFF(i.e.15-255 seconds) NXP_GUARD_TIMER_VALUE=0x0F ############################################################################### #Enable SWP full power mode when phone is power off #NXP_SWP_FULL_PWR_ON=0x00 ################################################################################ #This is used to configure UICC2 at boot time. # UICC2 0x03 #NXP_DEFAULT_UICC2_SELECT=0x03 ############################################################################### # CE when Screen state is locked # This setting is for DEFAULT_ROUTE, # DEFAULT_DESFIRE_ROUTE and DEFAULT_MIFARE_CLT_ROUTE # Disable 0x00 # Enable 0x01 NXP_CE_ROUTE_STRICT_DISABLE=0x01 ############################################################################### #SCR Read Tag Operation Timeout in secs NXP_SWP_RD_TAG_OP_TIMEOUT=20 ############################################################################### #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_ROUTE=0x01 ############################################################################### #Set the ISODEP (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_ISODEP_ROUTE=0x01 ############################################################################### #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=0x01 ############################################################################### #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 off unlock # bit pos 4 = Screen On lock # bit pos 5 = Screen Off lock DEFAULT_AID_PWR_STATE=0x3B ############################################################################### #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 off unlock # bit pos 4 = Screen On lock # bit pos 5 = Screen Off lock DEFAULT_DESFIRE_PWR_STATE=0x3B ############################################################################### #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 off unlock # bit pos 4 = Screen On lock # bit pos 5 = Screen Off lock DEFAULT_MIFARE_CLT_PWR_STATE=0x3B ############################################################################### #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 off unlock # bit pos 4 = Screen On lock # bit pos 5 = Screen Off lock DEFAULT_FELICA_CLT_PWR_STATE=0x3B ############################################################################### #Set the T4TNfcee 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 off unlock # bit pos 4 = Screen On lock # bit pos 5 = Screen Off lock DEFAULT_T4TNFCEE_AID_POWER_STATE=0x3B ############################################################################### #Set the default Felica T3T System Code OffHost route Location : #This settings will be used when application does not set this parameter # host 0x00 # eSE 0x01 # UICC 0x02 # UICC2 0x03 DEFAULT_SYS_CODE_ROUTE=0x01 ############################################################################### # AID Matching platform options # AID_MATCHING_L 0x01 # AID_MATCHING_K 0x02 #AID_MATCHING_PLATFORM=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 ############################################################################### # Flashing Options Configurations # FLASH_UPPER_VERSION 0x01 # FLASH_DIFFERENT_VERSION 0x02 # FLASH_ALWAYS 0x03 NXP_FLASH_CONFIG=0x02 ############################################################################### # Bail out mode # If set to 1, NFCC is using bail out mode for either Type A or Type B poll. NFA_POLL_BAIL_OUT_MODE=0x01 ############################################################################### # White list of Hosts # This values will be the Hosts(NFCEEs) in the HCI Network. DEVICE_HOST_ALLOW_LIST={02, 80, 81, C0} ############################################################################### # Choose the presence-check algorithm for type-4 tag. If not defined, the default value is 1. # 0 NFA_RW_PRES_CHK_DEFAULT; Let stack selects an algorithm # 1 NFA_RW_PRES_CHK_I_BLOCK; ISO-DEP protocol's empty I-block # 2 NFA_RW_PRES_CHK_ISO_DEP_NAK; Type - 4 tag protocol iso-dep nak presence check # command is sent waiting for rsp and ntf. PRESENCE_CHECK_ALGORITHM=2 ############################################################################### # Options to Fallback to alternative route # DH 0x01 # ESE 0x02 NXP_CHECK_DEFAULT_PROTO_SE_ID=0x01 ############################################################################### # Vendor Specific Proprietary Protocol & Discovery Configuration # Set to 0xFF if unsupported # byte[0] NCI_PROTOCOL_18092_ACTIVE # byte[1] NCI_PROTOCOL_B_PRIME # byte[2] NCI_PROTOCOL_DUAL # byte[3] NCI_PROTOCOL_15693 # byte[4] NCI_PROTOCOL_KOVIO # byte[5] NCI_PROTOCOL_MIFARE # byte[6] NCI_DISCOVERY_TYPE_POLL_KOVIO # byte[7] NCI_DISCOVERY_TYPE_POLL_B_PRIME # byte[8] NCI_DISCOVERY_TYPE_LISTEN_B_PRIME NFA_PROPRIETARY_CFG={05, FF, FF, 06, 81, 80, FF, FF, FF} ############################################################################### #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 ################################################################################ #This flags will enable different modes of Lx Debug based on bits of the Byte0 #Byte 0: # |_________Bit Mask_______| Debug Mode # b7|b6|b5|b4|b3|b2|b1|b0| # | |x | | | | | | Modulation Detected Notification # | | |X | | | | | Enable L1 Events (ISO14443-4, ISO18092) # | | | |X | | | | Enable L2 Reader Events(ROW specific) # | | | | |X | | | Enable Felica SystemCode # | | | | | |X | | Enable Felica RF (all Felica CM events) # | | | | | | |X | Enable L2 Events CE (ISO14443-3, RF Field ON/OFF) #Byte 1: # |_________Bit Mask_______| Debug Mode # b7|b6|b5|b4|b3|b2|b1|b0| # | |x | | | | | | Enable L2 events during RF activation ISO 14443-3 # | | | | | | | | # | | | | | | | | # | | | | | | | | # | | | | | | | | # | | | | | | | | # Byte1 Byte0 # \__ __/ # e.g. NXP_CORE_PROP_SYSTEM_DEBUG=0x0031 ==> Modulation detected, L1, L2 CE NXP_CORE_PROP_SYSTEM_DEBUG=0x0000 ############################################################################### # Forcing HOST to listen for a selected protocol # 0x00 : Disable Host Listen # 0x01 : Enable Host to Listen (A) for ISO-DEP tech A # 0x02 : Enable Host to Listen (B) for ISO-DEP tech B # 0x04 : Enable Host to Listen (F) for T3T Tag Type Protocol tech F # 0x07 : Enable Host to Listen (ABF)for ISO-DEP tech AB & T3T Tag Type Protocol tech F HOST_LISTEN_TECH_MASK=0x07 ############################################################################### # Enable forward functionality # Disable 0x00 # Enable 0x01 //Any positive value as per below bit configuration # HOST power states when type A/B only UICC present # bit pos 0 = Switch On # bit pos 1 = Switch Off # bit pos 2 = Battery Off # bit pos 3 = Screen off unlock # bit pos 4 = Screen On lock # bit pos 5 = Screen Off lock FORWARD_FUNCTIONALITY_ENABLE=0x01 ############################################################################### # Configure the NFC Extras to open and use a static pipe. If the value is # not set or set to 0, then the default is use a dynamic pipe based on a # destination gate (see NFA_HCI_DEFAULT_DEST_GATE). Note there is a value # for each EE (ESE/SIM1/SIM2) OFF_HOST_ESE_PIPE_ID=0x16 OFF_HOST_SIM_PIPE_ID=0x0A OFF_HOST_SIM2_PIPE_ID=0x23 ############################################################################### #Set the Felica T3T System Code Power state : #This settings will be used when application does not set this parameter #Update Power state as per NCI2.0 DEFAULT_SYS_CODE_PWR_STATE=0x00 ############################################################################### #Default Secure Element route id DEFAULT_OFFHOST_ROUTE=0x02 ############################################################################### #Maximum SMB transceive wait for response NXP_SMB_TRANSCEIVE_TIMEOUT=2000 ############################################################################### # Firmware file type #.so file 0x01 #.bin file 0x02 NXP_FW_TYPE=0x01 ############################################################################ # Extended APDU length for ISO_DEP ISO_DEP_MAX_TRANSCEIVE=0xFEFF ######################################################################### # Support for Amendment I SEMS specification # Support SEMS Amendment I 0x01 # Support NXP LS client 0x00 NXP_GP_AMD_I_SEMS_SUPPORTED=0x01 ############################################################################### #All eSE terminals shall be match with the /vendor/etc/vintf/manifest.xml file #under android.hardware.secure_element. # The terminal name shall start from 1 # Assign terminal number to each interface based on system config NXP_SPI_SE_TERMINAL_NUM="eSE1" ############################################################################### # Assign terminal number to each interface based on system config #NXP_VISO_SE_TERMINAL_NUM="eSE3" ############################################################################### # Assign terminal number to each interface based on system config NXP_NFC_SE_TERMINAL_NUM="eSE2" ############################################################################### #For static or dynamic dual UICC feature support #Enable static dual uicc feature by setting value 0x00 #Enable dynamic dual uicc feature by setting value 0x01 NXP_DUAL_UICC_ENABLE=0x01 ############################################################################### # Time to wait by DH when NFCC will report eSE Cold Temp Error. # The value is as per the UM and in seconds NXP_SE_COLD_TEMP_ERROR_DELAY=0x05 ############################################################################### # Set configuration optimization decision setting # Enable = 0x01 # Disable = 0x00 NXP_SET_CONFIG_ALWAYS=0x01 ############################################################################### #OffHost ESE route location for MultiSE #ESE = 01 OFFHOST_ROUTE_ESE={01} ############################################################################### #OffHost UICC route location for MultiSE #UICC1 = 02 #UICC2 = 03 OFFHOST_ROUTE_UICC={02:03} ############################################################################### #T4T NFCEE ENABLE #bit pos 0 = T4T NFCEE Enable #bit pos 6 = T4T NFCEE Contactless write enable #bit pos 7 = Proprietary file enable NXP_T4T_NFCEE_ENABLE=0x01 ############################################################################### #WLC mode #0x00 = if WLC Application running in MW (non-autonomous mode) #0x01 = if WLC Application running in FW (autonomous mode) NXP_WLC_MODE=0x01 ############################################################################### #CORE_SET_CONF_CMD to reset Prop Emvco Flag NXP_PROP_RESET_EMVCO_CMD={20, 02, 05, 01, A0, 44, 01, 00} ############################################################################### #Guard time in ms for the mPOS/SCR module to process the reader start/stop req NXP_RDR_REQ_GUARD_TIME=0 ############################################################################### #MW workaround to enable LPCD when EMVCO polling mode starts and disable #while switching back to NFC Forum mode # 0 --> Disable MW workaround # 1 --> Enable MW workaround # 2 --> Use this option only for FW versions below 1.10.52 NXP_RDR_DISABLE_ENABLE_LPCD=1 ############################################################################### # Firmware patch format, Only 1 and 5 should be set # 0 -> NFC Default # 1 -> EMVCO Default # 3 -> EMVCO Polling, DISC_IDLE = POWER_OFF, DISC DEACTIVATE = Removal process # 5 -> EMVCO Cert Polling, DISC_IDLE = Removal process , DISC DEACTIVATE = POWER_OFF # 7 -> EMVCO Polling, DISC_IDLE = POWER_OFF, DISC DEACTIVATE = POWER_OFF NFA_CONFIG_FORMAT=1 ################################################################################ # This will enable power state required for GSMA testing. # When this is enabled , then default AID route power state is added with this power state # If any aid with power state 0 is added, then this power state is used. # bit pos 0 = Switch On # bit pos 1 = Switch Off # bit pos 2 = Battery Off # bit pos 3 = Screen off unlock # bit pos 4 = Screen On lock # bit pos 5 = Screen Off lock DEFUALT_GSMA_PWR_STATE=0x3B ################################################################################# # Enable disconnect tag in screen off # Disable 0x00 # Enable 0x01 NXP_DISCONNECT_TAG_IN_SCRN_OFF=0x01 ################################################################################# # Enable wait/delay if RF session is active. # Disable 0x00 # Enable 0x01 NXP_CE_PRIORITY_ENABLED=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 # Delay between EVT_END_OF_OPERATION and SE Deactivation set to 0x32(5ms) A113 NXP_CORE_CONF_EXTN={ 20, 02, 51, 0F, A0, EC, 01, 01, A0, ED, 01, 01, A0, 8E, 01, 01, A0, 07, 01, 01, A0, 85, 04, 78, 88, AA, 2C, A1, 48, 0A, 01, 00, 04, 10, 03, 03, 4C, 04, C8, 00, A0, 96, 01, 18, A0, 46, 02, BA, 27, A0, 47, 02, BA, 27, A1, 0E, 06, 40, 00, 90, 00, 40, 00, A1, 1C, 01, 00, A1, 34, 01, 04, A0, B8, 01, 00, A0, 0A, 01, 20, A0, 80, 02, E8, 03 } ############################################################################### # Core configuration settings # Below params are not recommended to add in CONF block. # LA_BIT_FRAME_SDD(0x30) # LA_PLATFORM_CONFIG(0x31) # LA_SEL_INFO(0x32) # LB_SENSB_INFO(0x38) # LF_PROTOCOL(0x50) # NFCC_CONFIG_CONTROL(0x85) NXP_CORE_CONF={ 20, 02, 33, 11, 28, 01, 00, 21, 01, 00, 30, 01, 04, 31, 01, 00, 32, 01, 60, 38, 01, 01, 33, 00, 54, 01, 06, 50, 01, 02, 5B, 01, 00, 3E, 01, 00, 80, 01, 01, 81, 01, 01, 82, 01, 0E, 18, 01, 01, 68, 01, 01, 85, 01, 01 } ############################################################################### # Enable(0x01) or disable(0x00) non-standard tag reading # Disable Non-standard card read 0x00 # Enable Non-standard card read 0x01 NXP_SUPPORT_NON_STD_CARD=0x01 ################################################################################# # Enable(0x01) or disable(0x00 ) for getting HW Info log over SMB wired # Disable getting HW info log 0x00 # Enable getting HW info log 0x01 NXP_GET_HW_INFO_LOG=0x00 ################################################################################# # Enable(0x01) or disable(0x00) iso dep sak merge # Disable SAK merging 0x00 # Enable SAK merging 0x01 NXP_ISO_DEP_MERGE_SAK=0x01 ################################################################################# # Valid time difference range within for non-standard tag detection from first # Activation fail to next discovery # Note :- 1. This will take effect only when NXP_SUPPORT_NON_STD_CARD is enabled # 2. The number will be multiplied by 100ms by MW. # Default: # Set to 00 if not supported # byte[0] MIFARE_CLASSIC 100ms # byte[1] ISO_DEP 300ms NXP_NON_STD_CARD_TIMEDIFF={01, 03} ################################################################################# # Enable or Disable UICC ETSI support # Disable UICC ETSI support 0 # Enable UICC ETSI support 1 NXP_UICC_ETSI_SUPPORT=0 ################################################################################# # Enable Stop/Start of RF discovery for NFCEE recovery # Disable RF Restart for NFCEE recovery 0 # Enable RF Restart for NFCEE recovery 1 NXP_RESTART_RF_FOR_NFCEE_RECOVERY=1 ################################################################################# # Enable or Disable the minimal FW recovery support. # This logic will get enabled on early NFC hal boot. # Disable NFCC RECOVERY support 0x00 # Enable NFCC RECOVERY support 0x01 NXP_NFCC_RECOVERY_SUPPORT=0x00 ################################################################################# # Secure Remote Digitization - Timeout of the FW tunneling in second # {00, 00} always disabled # {2C, 01} 300s (5 min) max value NXP_SRD_TIMEOUT={2C:01} ################################################################################# # Power data refresh duration in seconds. # If this is configured, then power data will be refreshed from NFCC with # configured duration. # Power tracker feature will be disabled at run time if it is not configured # or configured with value of zero. #NXP_SYSTEM_POWER_TRACE_POLL_DURATION_SEC=30 ################################################################################# # Enable or Disable ULPDET support # Enable 0x01 # Disable 0x00 #NXP_DEFAULT_ULPDET_MODE=0x01 ###############################################################################