[SINGLE_BINARY] : Single binary Implementation
diff --git a/Android.bp b/Android.bp
index 746ecad..5630565 100644
--- a/Android.bp
+++ b/Android.bp
@@ -52,24 +52,11 @@
         "-Wno-missing-field-initializers",
         "-DNFC_HAL_TARGET=TRUE",
         "-DNFC_RW_ONLY=TRUE",
-        "-DPN547C2=1",
-        "-DPN548C2=2",
-        "-DPN551=3",
-        "-DPN553=4",
-        "-DPN557=5",
-        "-DNFC_NXP_CHIP_TYPE=5",
         "-DNXP_EXTNS=TRUE",
         "-DNFC_NXP_AID_MAX_SIZE_DYN=TRUE",
         "-DNXP_NFCC_HCE_F=TRUE",
-        "-DNFC_NXP_ESE=TRUE",
-        "-DJCOP_VER_3_1=1",
-        "-DJCOP_VER_3_2=2",
-        "-DJCOP_VER_3_3=3",
-        "-DJCOP_VER_4_0=4",
-        "-DNFC_NXP_ESE_VER=4",
         "-DNFC_NXP_LISTEN_ROUTE_TBL_OPTIMIZATION=TRUE",
         "-DNFC_NXP_HFO_SETTINGS=FALSE",
-        "-DJCOP_WA_ENABLE=FALSE",
         "-DANDROID",
         "-DNXP_HW_SELF_TEST"
     ],
diff --git a/halimpl/pn54x/common/phNfcCommon.h b/halimpl/pn54x/common/phNfcCommon.h
index 976d90e..b91a35f 100644
--- a/halimpl/pn54x/common/phNfcCommon.h
+++ b/halimpl/pn54x/common/phNfcCommon.h
@@ -33,55 +33,6 @@
 #include <phDal4Nfc_messageQueueLib.h>
 #include <phNfcCompId.h>
 
-#define FW_DLL_ROOT_DIR "/system/vendor/firmware/"
-#define FW_DLL_EXTENSION ".so"
-
-#if (NFC_NXP_CHIP_TYPE == PN548C2)
-
-/* Actual FW library name*/
-#define FW_LIB_PATH FW_DLL_ROOT_DIR "libpn548ad_fw" FW_DLL_EXTENSION
-/* Restore Corrupted PLL Setttings/etc */
-#define PLATFORM_LIB_PATH \
-  FW_DLL_ROOT_DIR "libpn548ad_fw_platform" FW_DLL_EXTENSION
-/* Upgrade the public Key */
-#define PKU_LIB_PATH FW_DLL_ROOT_DIR "libpn548ad_fw_pku" FW_DLL_EXTENSION
-#elif(NFC_NXP_CHIP_TYPE == PN551)
-/* Actual FW library name*/
-#define FW_LIB_PATH FLASH_CONF_ROOT_DIR "libpn551_fw" FW_DLL_EXTENSION
-/* Restore Corrupted PLL Settings/etc */
-#define PLATFORM_LIB_PATH \
-  FW_DLL_ROOT_DIR "libpn551_fw_platform" FW_DLL_EXTENSION
-/* Upgrade the public Key */
-#define PKU_LIB_PATH FW_DLL_ROOT_DIR "libpn551_fw_pku" FW_DLL_EXTENSION
-#elif(NFC_NXP_CHIP_TYPE == PN553)
-/* Actual FW library name*/
-#define FW_LIB_PATH FLASH_CONF_ROOT_DIR "libpn553tc_fw" FW_DLL_EXTENSION
-/* Restore Corrupted PLL Settings/etc */
-#define PLATFORM_LIB_PATH \
-  FW_DLL_ROOT_DIR "libpn553tc_fw_platform" FW_DLL_EXTENSION
-/* Upgrade the public Key */
-#define PKU_LIB_PATH FW_DLL_ROOT_DIR "libpn553tc_fw_pku" FW_DLL_EXTENSION
-#else
-/* Actual FW library name*/
-#define FW_LIB_PATH FW_DLL_ROOT_DIR "libpn547_fw" FW_DLL_EXTENSION
-/* Restore Corrupted PLL Settings/etc */
-#define PLATFORM_LIB_PATH \
-  FW_DLL_ROOT_DIR "libpn547_fw_platform" FW_DLL_EXTENSION
-/* Upgrade the public Key */
-#define PKU_LIB_PATH FW_DLL_ROOT_DIR "libpn547_fw_pku" FW_DLL_EXTENSION
-#endif
-
-#if (NFC_NXP_CHIP_TYPE == PN548C2)
-#define COMPILATION_MW "PN548C2"
-#elif(NFC_NXP_CHIP_TYPE == PN551)
-#define COMPILATION_MW "PN551"
-#elif(NFC_NXP_CHIP_TYPE == PN553)
-#define COMPILATION_MW "PN553"
-#elif(NFC_NXP_CHIP_TYPE == PN557)
-#define COMPILATION_MW "PN557"
-#else
-#define COMPILATION_MW "PN547C2"
-#endif
 /* HAL Version number (Updated as per release) */
 #define NXP_MW_VERSION_MAJ (0x00)
 #define NXP_MW_VERSION_MIN (0x0E)
diff --git a/halimpl/pn54x/configs/NXP_ESE_Features.h b/halimpl/pn54x/configs/NXP_ESE_Features.h
deleted file mode 100755
index 5f0ef76..0000000
--- a/halimpl/pn54x/configs/NXP_ESE_Features.h
+++ /dev/null
@@ -1,195 +0,0 @@
-/*
- * Copyright (C) 2012-2016 NXP Semiconductors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/*
- * NXP ESE features macros definitions
- */
-
-#ifndef NXP_ESE_FEATURES_H
-#define NXP_ESE_FEATURES_H
-
-/** Dual/Triple mode priority schemes **/
-#define NXP_ESE_EXCLUSIVE_WIRED_MODE 1
-#define NXP_ESE_WIRED_MODE_RESUME 2
-#define NXP_ESE_WIRED_MODE_TIMEOUT 3
-
-/*Chip ID specific macros as per configurations file*/
-#define CHIP_ID_PN547C2 0x01
-#define CHIP_ID_PN65T 0x02
-#define CHIP_ID_PN548AD 0x03
-#define CHIP_ID_PN66T 0x04
-#define CHIP_ID_PN551 0x05
-#define CHIP_ID_PN67T 0x06
-#define CHIP_ID_PN553 0x07
-#define CHIP_ID_PN80T 0x08
-#define CHIP_ID_PN557 0x09
-#define CHIP_ID_PN81T 0x0A
-
-#if (NFC_NXP_ESE == TRUE)
-// Reset Schemes
-#define NXP_ESE_PN67T_RESET 1
-#define NXP_ESE_APDU_GATE_RESET 2
-
-#if (NFC_NXP_CHIP_TYPE == PN547C2)
-#define NXP_ESE_WIRED_MODE_DISABLE_DISCOVERY true
-#define NXP_LEGACY_APDU_GATE true
-
-#elif((NFC_NXP_CHIP_TYPE == PN548C2) || (NFC_NXP_CHIP_TYPE == PN551))
-#define NFC_NXP_TRIPLE_MODE_PROTECTION true
-#define NXP_ESE_FELICA_CLT false
-#define NXP_WIRED_MODE_STANDBY_PROP true
-#define NXP_WIRED_MODE_STANDBY false
-// dual mode prio scheme
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_TIMEOUT
-// Reset scheme
-#define NXP_ESE_RESET_METHOD false
-#define NXP_ESE_ETSI_READER_ENABLE true
-#define NXP_ESE_SVDD_SYNC true
-#define NXP_LEGACY_APDU_GATE true
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION true
-#define NXP_ESE_JCOP_DWNLD_PROTECTION false
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES false
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE true
-#define NFC_NXP_ESE_ETSI12_PROP_INIT false
-
-#elif(NFC_NXP_CHIP_TYPE == PN553)
-
-#define NFC_NXP_TRIPLE_MODE_PROTECTION false
-#define NXP_ESE_FELICA_CLT true
-#define NXP_ESE_WIRED_MODE_PRIO false
-#define NXP_ESE_UICC_EXCLUSIVE_WIRED_MODE false  // UICC exclusive wired mode
-// dual mode prio scheme
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_RESUME
-// reset scheme
-#define NXP_ESE_RESET_METHOD true
-#define NXP_ESE_POWER_MODE true
-#define NXP_ESE_P73_ISO_RST true
-#define NXP_BLOCK_PROPRIETARY_APDU_GATE false
-#define NXP_WIRED_MODE_STANDBY true
-#define NXP_WIRED_MODE_STANDBY_PROP false
-#define NXP_ESE_ETSI_READER_ENABLE true
-#define NXP_ESE_SVDD_SYNC true
-#define NXP_LEGACY_APDU_GATE false
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION false
-#define NXP_ESE_JCOP_DWNLD_PROTECTION true
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES true
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE true
-#define NFC_NXP_ESE_ETSI12_PROP_INIT true
-
-#elif(NFC_NXP_CHIP_TYPE == PN557)
-
-#define NFC_NXP_TRIPLE_MODE_PROTECTION false
-#define NXP_ESE_FELICA_CLT true
-#define NXP_ESE_WIRED_MODE_PRIO false
-#define NXP_ESE_UICC_EXCLUSIVE_WIRED_MODE false  // UICC exclusive wired mode
-// dual mode prio scheme
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_RESUME
-// reset scheme
-#define NXP_ESE_RESET_METHOD true
-#define NXP_ESE_POWER_MODE true
-#define NXP_ESE_P73_ISO_RST true
-#define NXP_BLOCK_PROPRIETARY_APDU_GATE false
-#define NXP_WIRED_MODE_STANDBY true
-#define NXP_WIRED_MODE_STANDBY_PROP false
-#define NXP_ESE_ETSI_READER_ENABLE true
-#define NXP_ESE_SVDD_SYNC true
-#define NXP_LEGACY_APDU_GATE false
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION false
-#define NXP_ESE_JCOP_DWNLD_PROTECTION true
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES true
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE true
-#define NFC_NXP_ESE_ETSI12_PROP_INIT true
-
-#endif
-
-#else /*Else of #if(NFC_NXP_ESE == TRUE)*/
-
-#if (NFC_NXP_CHIP_TYPE == PN547C2)
-#define NXP_ESE_WIRED_MODE_DISABLE_DISCOVERY false
-#define NXP_LEGACY_APDU_GATE false
-#endif
-
-#if ((NFC_NXP_CHIP_TYPE == PN548C2) || (NFC_NXP_CHIP_TYPE == PN551))
-#define NFC_NXP_TRIPLE_MODE_PROTECTION false
-#define NXP_WIRED_MODE_STANDBY_PROP false
-#define NXP_ESE_FELICA_CLT false
-// Reset scheme
-#define NXP_ESE_RESET_METHOD false
-#define NXP_ESE_ETSI_READER_ENABLE false
-#define NXP_ESE_SVDD_SYNC false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE false
-#define NXP_LEGACY_APDU_GATE false
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION false
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_TIMEOUT
-#define NXP_ESE_JCOP_DWNLD_PROTECTION false
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES false
-#define NFC_NXP_ESE_ETSI12_PROP_INIT false
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-#elif(NFC_NXP_CHIP_TYPE == PN553)
-
-#define NFC_NXP_TRIPLE_MODE_PROTECTION false
-#define NXP_ESE_FELICA_CLT false
-#define NXP_ESE_WIRED_MODE_PRIO \
-  false  // eSE wired mode prio over UICC wired mode
-#define NXP_ESE_UICC_EXCLUSIVE_WIRED_MODE false  // UICC exclusive wired mode
-// reset scheme
-#define NXP_ESE_RESET_METHOD false
-#define NXP_ESE_POWER_MODE false
-#define NXP_ESE_P73_ISO_RST false
-#define NXP_BLOCK_PROPRIETARY_APDU_GATE false
-#define NXP_WIRED_MODE_STANDBY false
-#define NXP_ESE_ETSI_READER_ENABLE false
-#define NXP_ESE_SVDD_SYNC false
-#define NXP_LEGACY_APDU_GATE false
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE false
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_TIMEOUT
-#define NXP_ESE_JCOP_DWNLD_PROTECTION false
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES false
-#define NFC_NXP_ESE_ETSI12_PROP_INIT true
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-
-#elif(NFC_NXP_CHIP_TYPE == PN557)
-
-#define NFC_NXP_TRIPLE_MODE_PROTECTION false
-#define NXP_ESE_FELICA_CLT false
-#define NXP_ESE_WIRED_MODE_PRIO \
-  false  // eSE wired mode prio over UICC wired mode
-#define NXP_ESE_UICC_EXCLUSIVE_WIRED_MODE false  // UICC exclusive wired mode
-// reset scheme
-#define NXP_ESE_RESET_METHOD false
-#define NXP_ESE_POWER_MODE false
-#define NXP_ESE_P73_ISO_RST false
-#define NXP_BLOCK_PROPRIETARY_APDU_GATE false
-#define NXP_WIRED_MODE_STANDBY false
-#define NXP_ESE_ETSI_READER_ENABLE false
-#define NXP_ESE_SVDD_SYNC false
-#define NXP_LEGACY_APDU_GATE false
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE false
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_TIMEOUT
-#define NXP_ESE_JCOP_DWNLD_PROTECTION false
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES false
-#define NFC_NXP_ESE_ETSI12_PROP_INIT true
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-
-#endif
-
-#endif /*End of #if(NFC_NXP_ESE == TRUE)*/
-#endif /*End of #ifndef NXP_ESE_FEATURES_H */
diff --git a/halimpl/pn54x/configs/NXP_NFCC_Features.h b/halimpl/pn54x/configs/NXP_NFCC_Features.h
deleted file mode 100644
index 741c297..0000000
--- a/halimpl/pn54x/configs/NXP_NFCC_Features.h
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Copyright (C) 2012-2016 NXP Semiconductors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/*
- * NXP NFCC features macros definitions
- */
-
-#ifndef NXP_NFCC_FEATURES_H
-#define NXP_NFCC_FEATURES_H
-/*Flags common to all chip types*/
-#define NXP_NFCC_EMPTY_DATA_PACKET true
-#define GEMALTO_SE_SUPPORT true
-
-#if (NFC_NXP_CHIP_TYPE == PN553)
-
-#define NXP_NFCC_I2C_READ_WRITE_IMPROVEMENT true
-#define NXP_NFCC_MIFARE_TIANJIN false
-#define NXP_NFCC_MW_RCVRY_BLK_FW_DNLD true
-#define NXP_NFCC_DYNAMIC_DUAL_UICC true
-#define NXP_NFCC_FW_WA true
-#define NXP_NFCC_FORCE_NCI1_0_INIT true
-#define NFC_NXP_STAT_DUAL_UICC_EXT_SWITCH false
-#define NFC_NXP_STAT_DUAL_UICC_WO_EXT_SWITCH true
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC true
-#define NXP_HW_ANTENNA_LOOP4_SELF_TEST false
-#define NXP_NFCEE_REMOVED_NTF_RECOVERY true
-#define NXP_NFCC_FORCE_FW_DOWNLOAD true
-#define NXP_UICC_CREATE_CONNECTIVITY_PIPE true
-#define NXP_NFC_UICC_ETSI12 false
-#if (NFC_NXP_ESE == TRUE)
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC true
-#define NFA_EE_MAX_EE_SUPPORTED 4
-#else
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#endif
-
-#elif (NFC_NXP_CHIP_TYPE == PN557)
-
-#define NXP_NFCC_I2C_READ_WRITE_IMPROVEMENT true
-#define NXP_NFCC_MIFARE_TIANJIN false
-#define NXP_NFCC_MW_RCVRY_BLK_FW_DNLD true
-#define NXP_NFCC_DYNAMIC_DUAL_UICC true
-#define NXP_NFCC_FW_WA true
-#define NXP_NFCC_FORCE_NCI1_0_INIT false
-#define NFC_NXP_STAT_DUAL_UICC_EXT_SWITCH false
-#define NFC_NXP_STAT_DUAL_UICC_WO_EXT_SWITCH true
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC true
-#define NXP_HW_ANTENNA_LOOP4_SELF_TEST false
-#define NXP_NFCEE_REMOVED_NTF_RECOVERY true
-#define NXP_NFCC_FORCE_FW_DOWNLOAD true
-#define NXP_UICC_CREATE_CONNECTIVITY_PIPE true
-#define NXP_NFC_UICC_ETSI12 false
-#if (NFC_NXP_ESE == TRUE)
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC true
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#else
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#endif
-
-#elif(NFC_NXP_CHIP_TYPE == PN551)
-#define NXP_NFCC_I2C_READ_WRITE_IMPROVEMENT true
-#define NXP_NFCC_AID_MATCHING_PLATFORM_CONFIG true
-#define NXP_NFCC_DYNAMIC_DUAL_UICC false
-#define NXP_NFCC_ROUTING_BLOCK_BIT_PROP true
-#define NXP_NFCC_MIFARE_TIANJIN true
-#define NFC_NXP_STAT_DUAL_UICC_EXT_SWITCH true
-#define NFC_NXP_STAT_DUAL_UICC_WO_EXT_SWITCH false
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC false
-#define NXP_HW_ANTENNA_LOOP4_SELF_TEST true
-#define NXP_NFCEE_REMOVED_NTF_RECOVERY true
-#define NXP_NFCC_FORCE_FW_DOWNLOAD false
-#define NXP_UICC_CREATE_CONNECTIVITY_PIPE false
-#if (NFC_NXP_ESE == TRUE)
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#else
-#define NFA_EE_MAX_EE_SUPPORTED 2
-#endif
-#elif(NFC_NXP_CHIP_TYPE == PN548C2)
-#define NXP_NFCC_I2C_READ_WRITE_IMPROVEMENT true
-#define NXP_NFCC_AID_MATCHING_PLATFORM_CONFIG true
-#define NXP_NFCC_DYNAMIC_DUAL_UICC false
-#define NXP_NFCC_ROUTING_BLOCK_BIT_PROP true
-#define NXP_NFCC_MIFARE_TIANJIN true
-#define NFC_NXP_STAT_DUAL_UICC_EXT_SWITCH true
-#define NFC_NXP_STAT_DUAL_UICC_WO_EXT_SWITCH false
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC false
-#define NXP_HW_ANTENNA_LOOP4_SELF_TEST true
-#define NXP_NFCEE_REMOVED_NTF_RECOVERY true
-#define NXP_NFCC_FORCE_FW_DOWNLOAD false
-#define NXP_UICC_CREATE_CONNECTIVITY_PIPE false
-#if (NFC_NXP_ESE == TRUE)
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#else
-#define NFA_EE_MAX_EE_SUPPORTED 2
-#endif
-#elif(NFC_NXP_CHIP_TYPE == PN547C2)
-#define NXP_NFCC_I2C_READ_WRITE_IMPROVEMENT false
-#define NXP_NFCC_AID_MATCHING_PLATFORM_CONFIG true
-#define NXP_NFCC_MIFARE_TIANJIN true
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC false
-#define NXP_HW_ANTENNA_LOOP4_SELF_TEST true
-#define NXP_NFCEE_REMOVED_NTF_RECOVERY true
-#define NXP_NFCC_FORCE_FW_DOWNLOAD false
-#define NXP_UICC_CREATE_CONNECTIVITY_PIPE false
-#if (NFC_NXP_ESE == TRUE)
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#else
-#define NFA_EE_MAX_EE_SUPPORTED 2
-#endif
-#endif
-#endif /* end of #ifndef NXP_NFCC_FEATURES_H */
diff --git a/halimpl/pn54x/configs/NXP_Platform_Features.h b/halimpl/pn54x/configs/NXP_Platform_Features.h
deleted file mode 100755
index e1fd56d..0000000
--- a/halimpl/pn54x/configs/NXP_Platform_Features.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (C) 2012-2016 NXP Semiconductors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/*
- * NXP Platform specific features macros definitions
- */
-
-#ifndef NXP_PLATFORM_FEATURES_H
-#define NXP_PLATFORM_FEATURES_H
-
-#if (NFC_NXP_CHIP_TYPE == PN557)
-#undef NXP_NFCC_RESET_RSP_LEN
-#define NXP_NFCC_RESET_RSP_LEN (0x10U)
-#endif
-
-#if (NFC_NXP_CHIP_TYPE == PN553)
-#undef NXP_NFCC_RESET_RSP_LEN
-#define NXP_NFCC_RESET_RSP_LEN (0x10U)
-#endif
-
-#if (NFC_NXP_CHIP_TYPE == PN551)
-#undef NXP_NFCC_RESET_RSP_LEN
-#define NXP_NFCC_RESET_RSP_LEN (0x11U)
-#endif
-
-#if (NFC_NXP_CHIP_TYPE == PN548C2)
-#undef NXP_NFCC_RESET_RSP_LEN
-#define NXP_NFCC_RESET_RSP_LEN (0x11U)
-#endif
-
-#endif /* end of #ifndef NXP_PLATFORM_FEATURES_H */
diff --git a/halimpl/pn54x/hal/phNxpNciHal.h b/halimpl/pn54x/hal/phNxpNciHal.h
index 00c0742..5a48efe 100644
--- a/halimpl/pn54x/hal/phNxpNciHal.h
+++ b/halimpl/pn54x/hal/phNxpNciHal.h
@@ -18,11 +18,7 @@
 
 #include <hardware/nfc.h>
 #include <phNxpNciHal_utils.h>
-#include <NXP_ESE_Features.h>
-#ifndef NXP_NFCC_FEATURES_H
-#include <NXP_NFCC_Features.h>
 #include "NxpNfcCapability.h"
-#endif
 #include "nfc_hal_api.h"
 
 /********************* Definitions and structures *****************************/
diff --git a/halimpl/pn54x/hal/phNxpNciHal_ext.c b/halimpl/pn54x/hal/phNxpNciHal_ext.c
index 291bb79..5c06d72 100644
--- a/halimpl/pn54x/hal/phNxpNciHal_ext.c
+++ b/halimpl/pn54x/hal/phNxpNciHal_ext.c
@@ -793,7 +793,7 @@
   } else if (p_cmd_data[3] == 0x81 && p_cmd_data[4] == 0x01 &&
              p_cmd_data[5] == 0x03) {
     NXPLOG_NCIHAL_D("> Going through the set host list");
-    if(nfcFL.chipType != PN547C2) {
+    if(nfcFL.chipType != pn547C2) {
         *cmd_len = 8;
 
         p_cmd_data[2] = 0x05;
diff --git a/halimpl/pn54x/self-test/phNxpNciHal_SelfTest.c b/halimpl/pn54x/self-test/phNxpNciHal_SelfTest.c
index c9788cd..64054fe 100644
--- a/halimpl/pn54x/self-test/phNxpNciHal_SelfTest.c
+++ b/halimpl/pn54x/self-test/phNxpNciHal_SelfTest.c
@@ -21,14 +21,14 @@
 #include <pthread.h>
 #include <phOsalNfc_Timer.h>
 #include <phNxpConfig.h>
-#include <NXP_NFCC_Features.h>
-#include <NXP_Platform_Features.h>
 
 /* Timeout value to wait for response from PN54X */
 #define HAL_WRITE_RSP_TIMEOUT (2000)
 #define HAL_WRITE_MAX_RETRY (10)
 #define CORE_INIT_NCI2_0 false
 
+#define NXP_NFCC_RESET_RSP_LEN (0x10U) //for PN553 (0x10U) else (0x11U)
+
 /******************* Structures and definitions *******************************/
 
 typedef uint8_t (*st_validator_t)(nci_data_t* exp,
diff --git a/halimpl/pn54x/tml/phTmlNfc.h b/halimpl/pn54x/tml/phTmlNfc.h
index afe13bb..5bdfb80 100644
--- a/halimpl/pn54x/tml/phTmlNfc.h
+++ b/halimpl/pn54x/tml/phTmlNfc.h
@@ -27,12 +27,6 @@
 
 #ifndef PHTMLNFC_H
 #define PHTMLNFC_H
-#ifndef NXP_NFCC_FEATURES_H
-#include <NXP_NFCC_Features.h>
-#endif
-#ifndef NXP_ESE_FEATURES_H
-#include <NXP_ESE_Features.h>
-#endif
 #include <phNfcCommon.h>
 
 /*
diff --git a/halimpl/pn54x/tml/phTmlNfc_i2c.h b/halimpl/pn54x/tml/phTmlNfc_i2c.h
index 1a157bb..a7a752c 100644
--- a/halimpl/pn54x/tml/phTmlNfc_i2c.h
+++ b/halimpl/pn54x/tml/phTmlNfc_i2c.h
@@ -21,7 +21,6 @@
 /* Basic type definitions */
 #include <phNfcTypes.h>
 #include <phTmlNfc.h>
-#include <NXP_ESE_Features.h>
 
 #define PN544_MAGIC 0xE9
 
@@ -50,9 +49,7 @@
 NFCSTATUS phTmlNfc_set_power_scheme(void* pDevHandle, long id);
 NFCSTATUS phTmlNfc_get_ese_access(void* pDevHandle, long timeout);
 NFCSTATUS phTmlNfc_i2c_set_Jcop_dwnld_state(void* pDevHandle, long level);
-#if (NXP_ESE_SVDD_SYNC == true)
 NFCSTATUS phTmlNfc_rel_svdd_wait(void* pDevHandle);
-#endif
 /*
  * SPI Request NFCC to enable p61 power, only in param
  * Only for SPI
diff --git a/halimpl/pn54x/utils/phNxpConfig.h b/halimpl/pn54x/utils/phNxpConfig.h
index ee3d011..18a8b95 100644
--- a/halimpl/pn54x/utils/phNxpConfig.h
+++ b/halimpl/pn54x/utils/phNxpConfig.h
@@ -38,9 +38,6 @@
 
 #ifndef __CONFIG_H
 #define __CONFIG_H
-#ifndef NXP_NFCC_FEATURES_H
-#include "NXP_NFCC_Features.h"
-#endif
 #ifdef __cplusplus
 extern "C" {
 #endif
diff --git a/src/Android.bp b/src/Android.bp
index e94d026..e626a3c 100644
--- a/src/Android.bp
+++ b/src/Android.bp
@@ -25,24 +25,11 @@
         "-Wno-deprecated-register",
         "-Wno-unused-parameter",
         "-Wno-missing-field-initializers",
-        "-DPN547C2=1",
-        "-DPN548C2=2",
-        "-DPN551=3",
-        "-DPN553=4",
-        "-DPN557=5",
-        "-DNFC_NXP_CHIP_TYPE=5",
         "-DNXP_EXTNS=TRUE",
         "-DNFC_NXP_AID_MAX_SIZE_DYN=TRUE",
         "-DNXP_NFCC_HCE_F=TRUE",
-        "-DNFC_NXP_ESE=TRUE",
-        "-DJCOP_VER_3_1=1",
-        "-DJCOP_VER_3_2=2",
-        "-DJCOP_VER_3_3=3",
-        "-DJCOP_VER_4_0=4",
-        "-DNFC_NXP_ESE_VER=4",
         "-DNFC_NXP_LISTEN_ROUTE_TBL_OPTIMIZATION=TRUE",
-        "-DANDROID",
-        "-DJCOP_WA_ENABLE=FALSE"
+        "-DANDROID"
     ],
     local_include_dirs: [
         "include",
diff --git a/src/include/NXP_ESE_Features.h b/src/include/NXP_ESE_Features.h
deleted file mode 100755
index 0adbe72..0000000
--- a/src/include/NXP_ESE_Features.h
+++ /dev/null
@@ -1,200 +0,0 @@
-/*
- * Copyright (C) 2012-2016 NXP Semiconductors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/*
- * NXP ESE features macros definitions
- */
-
-#ifndef NXP_ESE_FEATURES_H
-#define NXP_ESE_FEATURES_H
-
-/** Dual/Triple mode priority schemes **/
-#define NXP_ESE_EXCLUSIVE_WIRED_MODE 1
-#define NXP_ESE_WIRED_MODE_RESUME 2
-#define NXP_ESE_WIRED_MODE_TIMEOUT 3
-
-/*Chip ID specific macros as per configurations file*/
-#define CHIP_ID_PN547C2 0x01
-#define CHIP_ID_PN65T 0x02
-#define CHIP_ID_PN548AD 0x03
-#define CHIP_ID_PN66T 0x04
-#define CHIP_ID_PN551 0x05
-#define CHIP_ID_PN67T 0x06
-#define CHIP_ID_PN553 0x07
-#define CHIP_ID_PN80T 0x08
-#define CHIP_ID_PN557 0x09
-#define CHIP_ID_PN81T 0x0A
-
-
-#if (NFC_NXP_ESE == TRUE)
-// Reset Schemes
-#define NXP_ESE_PN67T_RESET 1
-#define NXP_ESE_APDU_GATE_RESET 2
-
-#if (NFC_NXP_CHIP_TYPE == PN547C2)
-
-#define NXP_ESE_WIRED_MODE_DISABLE_DISCOVERY true
-#define NXP_LEGACY_APDU_GATE true
-
-#elif((NFC_NXP_CHIP_TYPE == PN548C2) || (NFC_NXP_CHIP_TYPE == PN551))
-
-#define NFC_NXP_TRIPLE_MODE_PROTECTION true
-#define NXP_ESE_FELICA_CLT false
-#define NXP_WIRED_MODE_STANDBY_PROP true
-#define NXP_WIRED_MODE_STANDBY false
-// dual mode prio scheme
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_TIMEOUT
-// Reset scheme
-#define NXP_ESE_RESET_METHOD false
-#define NXP_ESE_ETSI_READER_ENABLE true
-#define NXP_ESE_SVDD_SYNC true
-#define NXP_LEGACY_APDU_GATE true
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION true
-#define NXP_ESE_JCOP_DWNLD_PROTECTION false
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES false
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE true
-#define NFC_NXP_ESE_ETSI12_PROP_INIT false
-
-#elif(NFC_NXP_CHIP_TYPE == PN553)
-
-#define NFC_NXP_TRIPLE_MODE_PROTECTION false
-#define NXP_ESE_FELICA_CLT true
-#define NXP_ESE_WIRED_MODE_PRIO false
-#define NXP_ESE_UICC_EXCLUSIVE_WIRED_MODE false  // UICC exclusive wired mode
-// dual mode prio scheme
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_RESUME
-// Reset scheme
-#define NXP_ESE_RESET_METHOD true
-#define NXP_ESE_POWER_MODE true
-#define NXP_ESE_P73_ISO_RST true
-#define NXP_BLOCK_PROPRIETARY_APDU_GATE false
-#define NXP_WIRED_MODE_STANDBY true
-#define NXP_WIRED_MODE_STANDBY_PROP false
-#define NXP_ESE_ETSI_READER_ENABLE true
-#define NXP_ESE_SVDD_SYNC true
-#define NXP_LEGACY_APDU_GATE false
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION false
-#define NXP_ESE_JCOP_DWNLD_PROTECTION true
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES true
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE true
-#define NFC_NXP_ESE_ETSI12_PROP_INIT true
-
-#elif(NFC_NXP_CHIP_TYPE == PN557)
-
-#define NFC_NXP_TRIPLE_MODE_PROTECTION false
-#define NXP_ESE_FELICA_CLT true
-#define NXP_ESE_WIRED_MODE_PRIO false
-#define NXP_ESE_UICC_EXCLUSIVE_WIRED_MODE false  // UICC exclusive wired mode
-// dual mode prio scheme
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_RESUME
-// Reset scheme
-#define NXP_ESE_RESET_METHOD true
-#define NXP_ESE_POWER_MODE true
-#define NXP_ESE_P73_ISO_RST true
-#define NXP_BLOCK_PROPRIETARY_APDU_GATE false
-#define NXP_WIRED_MODE_STANDBY true
-#define NXP_WIRED_MODE_STANDBY_PROP false
-#define NXP_ESE_ETSI_READER_ENABLE true
-#define NXP_ESE_SVDD_SYNC true
-#define NXP_LEGACY_APDU_GATE false
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION false
-#define NXP_ESE_JCOP_DWNLD_PROTECTION true
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES true
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE true
-#define NFC_NXP_ESE_ETSI12_PROP_INIT true
-
-#endif
-
-#else /*Else of #if(NFC_NXP_ESE == TRUE)*/
-
-#if (NFC_NXP_CHIP_TYPE == PN547C2)
-#define NXP_ESE_WIRED_MODE_DISABLE_DISCOVERY false
-#define NXP_LEGACY_APDU_GATE false
-#endif
-
-#if ((NFC_NXP_CHIP_TYPE == PN548C2) || (NFC_NXP_CHIP_TYPE == PN551))
-a
-#define NFC_NXP_TRIPLE_MODE_PROTECTION false
-#define NXP_WIRED_MODE_STANDBY_PROP false
-#define NXP_ESE_FELICA_CLT false
-// Reset scheme
-#define NXP_ESE_RESET_METHOD false
-#define NXP_ESE_ETSI_READER_ENABLE false
-#define NXP_ESE_SVDD_SYNC false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE false
-#define NXP_LEGACY_APDU_GATE false
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION false
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_TIMEOUT
-#define NXP_ESE_JCOP_DWNLD_PROTECTION false
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES false
-#define NFC_NXP_ESE_ETSI12_PROP_INIT false
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-
-#elif(NFC_NXP_CHIP_TYPE == PN553)
-
-#define NFC_NXP_TRIPLE_MODE_PROTECTION false
-#define NXP_ESE_FELICA_CLT false
-#define NXP_ESE_WIRED_MODE_PRIO \
-  false  // eSE wired mode prio over UICC wired mode
-#define NXP_ESE_UICC_EXCLUSIVE_WIRED_MODE false  // UICC exclusive wired mode
-// Reset scheme
-#define NXP_ESE_RESET_METHOD false
-#define NXP_ESE_POWER_MODE false
-#define NXP_ESE_P73_ISO_RST false
-#define NXP_BLOCK_PROPRIETARY_APDU_GATE false
-#define NXP_WIRED_MODE_STANDBY false
-#define NXP_ESE_ETSI_READER_ENABLE false
-#define NXP_ESE_SVDD_SYNC false
-#define NXP_LEGACY_APDU_GATE false
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE false
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_TIMEOUT
-#define NXP_ESE_JCOP_DWNLD_PROTECTION false
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES false
-#define NFC_NXP_ESE_ETSI12_PROP_INIT true
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-
-#elif(NFC_NXP_CHIP_TYPE == PN557)
-
-#define NFC_NXP_TRIPLE_MODE_PROTECTION false
-#define NXP_ESE_FELICA_CLT false
-#define NXP_ESE_WIRED_MODE_PRIO \
-  false  // eSE wired mode prio over UICC wired mode
-#define NXP_ESE_UICC_EXCLUSIVE_WIRED_MODE false  // UICC exclusive wired mode
-// Reset scheme
-#define NXP_ESE_RESET_METHOD false
-#define NXP_ESE_POWER_MODE false
-#define NXP_ESE_P73_ISO_RST false
-#define NXP_BLOCK_PROPRIETARY_APDU_GATE false
-#define NXP_WIRED_MODE_STANDBY false
-#define NXP_ESE_ETSI_READER_ENABLE false
-#define NXP_ESE_SVDD_SYNC false
-#define NXP_LEGACY_APDU_GATE false
-#define NXP_NFCC_ESE_UICC_CONCURRENT_ACCESS_PROTECTION false
-#define NXP_ESE_DWP_SPI_SYNC_ENABLE false
-#define NXP_ESE_DUAL_MODE_PRIO_SCHEME NXP_ESE_WIRED_MODE_TIMEOUT
-#define NXP_ESE_JCOP_DWNLD_PROTECTION false
-#define NXP_UICC_HANDLE_CLEAR_ALL_PIPES false
-#define NFC_NXP_ESE_ETSI12_PROP_INIT true
-#define NFC_NXP_GP_CONTINOUS_PROCESSING false
-
-#endif
-
-#endif /*End of #if(NFC_NXP_ESE == TRUE)*/
-#endif /*End of #ifndef NXP_ESE_FEATURES_H */
diff --git a/src/include/NXP_NFCC_Features.h b/src/include/NXP_NFCC_Features.h
deleted file mode 100644
index 7619edc..0000000
--- a/src/include/NXP_NFCC_Features.h
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Copyright (C) 2012-2016 NXP Semiconductors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/*
- * NXP NFCC features macros definitions
- */
-#ifndef NXP_NFCC_FEATURES_H
-#define NXP_NFCC_FEATURES_H
-/*Flags common to all chip types*/
-#define NXP_NFCC_EMPTY_DATA_PACKET true
-#define GEMALTO_SE_SUPPORT true
-
-#if (NFC_NXP_CHIP_TYPE == PN553)
-#define NXP_NFCC_I2C_READ_WRITE_IMPROVEMENT true
-#define NXP_NFCC_MIFARE_TIANJIN false
-#define NXP_NFCC_MW_RCVRY_BLK_FW_DNLD true
-#define NXP_NFCC_DYNAMIC_DUAL_UICC true
-#define NXP_NFCC_FW_WA true
-#define NXP_NFCC_FORCE_NCI1_0_INIT true
-#define NXP_NFCC_ROUTING_BLOCK_BIT true
-#define NFC_NXP_STAT_DUAL_UICC_EXT_SWITCH false
-#define NFC_NXP_STAT_DUAL_UICC_WO_EXT_SWITCH true
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC true
-#define NXP_HW_ANTENNA_LOOP4_SELF_TEST false
-#define NXP_NFCEE_REMOVED_NTF_RECOVERY true
-#define NXP_NFCC_FORCE_FW_DOWNLOAD true
-#define NXP_UICC_CREATE_CONNECTIVITY_PIPE true
-#define NXP_NFC_UICC_ETSI12 false
-#if (NFC_NXP_ESE == TRUE)
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC true
-#define NFA_EE_MAX_EE_SUPPORTED 4
-#else
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#endif
-
-#elif (NFC_NXP_CHIP_TYPE == PN557)
-
-#define NXP_NFCC_I2C_READ_WRITE_IMPROVEMENT true
-#define NXP_NFCC_MIFARE_TIANJIN false
-#define NXP_NFCC_MW_RCVRY_BLK_FW_DNLD true
-#define NXP_NFCC_DYNAMIC_DUAL_UICC true
-#define NXP_NFCC_FW_WA true
-#define NXP_NFCC_FORCE_NCI1_0_INIT false
-#define NXP_NFCC_ROUTING_BLOCK_BIT true
-#define NFC_NXP_STAT_DUAL_UICC_EXT_SWITCH false
-#define NFC_NXP_STAT_DUAL_UICC_WO_EXT_SWITCH true
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC true
-#define NXP_HW_ANTENNA_LOOP4_SELF_TEST false
-#define NXP_NFCEE_REMOVED_NTF_RECOVERY true
-#define NXP_NFCC_FORCE_FW_DOWNLOAD true
-#define NXP_UICC_CREATE_CONNECTIVITY_PIPE true
-#define NXP_NFC_UICC_ETSI12 false
-#if (NFC_NXP_ESE == TRUE)
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC true
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#else
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#endif
-#elif(NFC_NXP_CHIP_TYPE == PN551)
-#define NXP_NFCC_I2C_READ_WRITE_IMPROVEMENT true
-#define NXP_NFCC_AID_MATCHING_PLATFORM_CONFIG true
-#define NXP_NFCC_DYNAMIC_DUAL_UICC false
-#define NXP_NFCC_ROUTING_BLOCK_BIT_PROP true
-#define NXP_NFCC_MIFARE_TIANJIN true
-#define NFC_NXP_STAT_DUAL_UICC_EXT_SWITCH true
-#define NFC_NXP_STAT_DUAL_UICC_WO_EXT_SWITCH false
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC false
-#define NXP_HW_ANTENNA_LOOP4_SELF_TEST true
-#define NXP_NFCEE_REMOVED_NTF_RECOVERY true
-#define NXP_NFCC_FORCE_FW_DOWNLOAD false
-#define NXP_UICC_CREATE_CONNECTIVITY_PIPE false
-#if (NFC_NXP_ESE == TRUE)
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#else
-#define NFA_EE_MAX_EE_SUPPORTED 2
-#endif
-#elif(NFC_NXP_CHIP_TYPE == PN548C2)
-#define NXP_NFCC_I2C_READ_WRITE_IMPROVEMENT true
-#define NXP_NFCC_AID_MATCHING_PLATFORM_CONFIG true
-#define NXP_NFCC_DYNAMIC_DUAL_UICC false
-#define NXP_NFCC_ROUTING_BLOCK_BIT_PROP true
-#define NXP_NFCC_MIFARE_TIANJIN true
-#define NFC_NXP_STAT_DUAL_UICC_EXT_SWITCH true
-#define NFC_NXP_STAT_DUAL_UICC_WO_EXT_SWITCH false
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC false
-#define NXP_HW_ANTENNA_LOOP4_SELF_TEST true
-#define NXP_NFCEE_REMOVED_NTF_RECOVERY true
-#define NXP_NFCC_FORCE_FW_DOWNLOAD false
-#define NXP_UICC_CREATE_CONNECTIVITY_PIPE false
-#if (NFC_NXP_ESE == TRUE)
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#else
-#define NFA_EE_MAX_EE_SUPPORTED 2
-#endif
-#elif(NFC_NXP_CHIP_TYPE == PN547C2)
-#define NXP_NFCC_I2C_READ_WRITE_IMPROVEMENT false
-#define NXP_NFCC_AID_MATCHING_PLATFORM_CONFIG true
-#define NXP_NFCC_MIFARE_TIANJIN true
-#define NXP_NFCC_SPI_FW_DOWNLOAD_SYNC false
-#define NXP_HW_ANTENNA_LOOP4_SELF_TEST true
-#define NXP_NFCEE_REMOVED_NTF_RECOVERY true
-#define NXP_NFCC_FORCE_FW_DOWNLOAD false
-#define NXP_UICC_CREATE_CONNECTIVITY_PIPE false
-#if (NFC_NXP_ESE == TRUE)
-#define NFA_EE_MAX_EE_SUPPORTED 3
-#else
-#define NFA_EE_MAX_EE_SUPPORTED 2
-#endif
-#endif
-#endif /* end of #ifndef NXP_NFCC_FEATURES_H */
diff --git a/src/include/NXP_Platform_Features.h b/src/include/NXP_Platform_Features.h
deleted file mode 100755
index e1fd56d..0000000
--- a/src/include/NXP_Platform_Features.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (C) 2012-2016 NXP Semiconductors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/*
- * NXP Platform specific features macros definitions
- */
-
-#ifndef NXP_PLATFORM_FEATURES_H
-#define NXP_PLATFORM_FEATURES_H
-
-#if (NFC_NXP_CHIP_TYPE == PN557)
-#undef NXP_NFCC_RESET_RSP_LEN
-#define NXP_NFCC_RESET_RSP_LEN (0x10U)
-#endif
-
-#if (NFC_NXP_CHIP_TYPE == PN553)
-#undef NXP_NFCC_RESET_RSP_LEN
-#define NXP_NFCC_RESET_RSP_LEN (0x10U)
-#endif
-
-#if (NFC_NXP_CHIP_TYPE == PN551)
-#undef NXP_NFCC_RESET_RSP_LEN
-#define NXP_NFCC_RESET_RSP_LEN (0x11U)
-#endif
-
-#if (NFC_NXP_CHIP_TYPE == PN548C2)
-#undef NXP_NFCC_RESET_RSP_LEN
-#define NXP_NFCC_RESET_RSP_LEN (0x11U)
-#endif
-
-#endif /* end of #ifndef NXP_PLATFORM_FEATURES_H */
diff --git a/src/include/nfc_target.h b/src/include/nfc_target.h
index bbfdbbe..c7ca261 100644
--- a/src/include/nfc_target.h
+++ b/src/include/nfc_target.h
@@ -51,11 +51,6 @@
 #include "bt_trace.h"
 #endif
 
-/*#if (NXP_EXTNS == TRUE)
-#include <NXP_NFCC_Features.h>
-#include <NXP_ESE_Features.h>
-#endif*/
-
 #ifndef USERIAL_DEBUG
 #define USERIAL_DEBUG false
 #endif
diff --git a/src/nfa/hci/nfa_hci_api.c b/src/nfa/hci/nfa_hci_api.c
index b863390..07ac31b 100644
--- a/src/nfa/hci/nfa_hci_api.c
+++ b/src/nfa/hci/nfa_hci_api.c
@@ -1020,7 +1020,7 @@
       break;
   }
 }
-#if ((NXP_EXTNS == TRUE) && (NXP_NFCC_MW_RCVRY_BLK_FW_DNLD == true))
+#if (NXP_EXTNS == TRUE)
 /*******************************************************************************
 **
 ** Function         NFA_MW_Fwdnlwd_Recovery
@@ -1045,8 +1045,7 @@
     }
     return mw_fwdnld_recovery;
 }
-#endif
-#if (NXP_EXTNS == TRUE)
+
 /*******************************************************************************
 **
 ** Function         NFA_HciW4eSETransaction_Complete
diff --git a/src/nfa/hci/nfa_hci_main.c b/src/nfa/hci/nfa_hci_main.c
index 91fe47e..dd5ae8b 100644
--- a/src/nfa/hci/nfa_hci_main.c
+++ b/src/nfa/hci/nfa_hci_main.c
@@ -1796,31 +1796,31 @@
       case NFA_HCI_RSP_TIMEOUT_EVT:
 #if (NXP_EXTNS == TRUE)
           if(nfcFL.nfcNxpEse) {
-#if (JCOP_WA_ENABLE == TRUE)
-              if (nfa_ee_ce_p61_completed != 0) {
-                  NFA_TRACE_EVENT0(
-                          "nfa_hci_evt_hdlr Restart timer expired for wired transceive");
-                  nfa_ee_ce_p61_completed = 0;
-              } else {
-                  uint32_t p61_access_status = 0x0000;
-                  if (NFC_GetP61Status((void*)&p61_access_status) < 0) {
+              if(nfcFL.eseFL._JCOP_WA_ENABLE) {
+                  if (nfa_ee_ce_p61_completed != 0) {
                       NFA_TRACE_EVENT0(
-                              "nfa_hci_evt_hdlr : Check dual mode : NFC_GetP61Status failed");
+                              "nfa_hci_evt_hdlr Restart timer expired for wired transceive");
+                      nfa_ee_ce_p61_completed = 0;
                   } else {
-                      if (((p61_access_status == 0x400) ||
-                              (p61_access_status == 0x1000)) &&
-                              (NFA_check_p61_CL_Activated() != 0)) {
+                      uint32_t p61_access_status = 0x0000;
+                      if (NFC_GetP61Status((void*)&p61_access_status) < 0) {
                           NFA_TRACE_EVENT0(
-                                  "nfa_hci_evt_hdlr Restart timer for wired transceive");
-                          nfa_sys_start_timer(&nfa_hci_cb.timer, NFA_HCI_RSP_TIMEOUT_EVT,
-                                  NFA_HCI_WTX_RESP_TIMEOUT);
-                          /*situation occurred*/
-                          nfa_ee_ce_p61_completed = 1;
-                          break;
+                                  "nfa_hci_evt_hdlr : Check dual mode : NFC_GetP61Status failed");
+                      } else {
+                          if (((p61_access_status == 0x400) ||
+                                  (p61_access_status == 0x1000)) &&
+                                  (NFA_check_p61_CL_Activated() != 0)) {
+                              NFA_TRACE_EVENT0(
+                                      "nfa_hci_evt_hdlr Restart timer for wired transceive");
+                              nfa_sys_start_timer(&nfa_hci_cb.timer, NFA_HCI_RSP_TIMEOUT_EVT,
+                                      NFA_HCI_WTX_RESP_TIMEOUT);
+                              /*situation occurred*/
+                              nfa_ee_ce_p61_completed = 1;
+                              break;
+                          }
                       }
                   }
               }
-#endif
           }
 #endif
         nfa_hci_rsp_timeout((tNFA_HCI_EVENT_DATA*)p_msg);
diff --git a/src/nfc/include/nfc_api.h b/src/nfc/include/nfc_api.h
index 3b8667f..dd3b04c 100644
--- a/src/nfc/include/nfc_api.h
+++ b/src/nfc/include/nfc_api.h
@@ -50,13 +50,7 @@
 #include "nfc_hal_api.h"
 #include "gki.h"
 #include "vendor_cfg.h"
-#if (NXP_EXTNS == TRUE)
-/*
-#include <NXP_NFCC_Features.h>
-#include <NXP_ESE_Features.h>
-#include <NXP_Platform_Features.h>
-*/
-#endif
+
 /* NFC application return status codes */
 /* Command succeeded    */
 #define NFC_STATUS_OK NCI_STATUS_OK
diff --git a/src/nfc/nfc/nfc_main.c b/src/nfc/nfc/nfc_main.c
index c6cdf32..184b54e 100644
--- a/src/nfc/nfc/nfc_main.c
+++ b/src/nfc/nfc/nfc_main.c
@@ -1760,7 +1760,6 @@
   return status;
 }
 
-#if ((NFC_NXP_ESE_VER == JCOP_VER_3_1) || (NFC_NXP_ESE_VER == JCOP_VER_3_2))
 /*******************************************************************************
 **
 ** Function         NFC_GetEseAccess
@@ -1773,11 +1772,18 @@
 **
 *******************************************************************************/
 int32_t NFC_GetEseAccess(void* pdata) {
-  nfc_nci_IoctlInOutData_t inpOutData;
-  int32_t status;
-  inpOutData.inp.data.timeoutMilliSec = *(uint32_t*)pdata;
-  status = nfc_cb.p_hal->ioctl(HAL_NFC_IOCTL_P61_GET_ACCESS, &inpOutData);
-  return status;
+    int32_t status;
+    if((nfcFL.eseFL._NXP_ESE_VER != JCOP_VER_3_1) &&
+            (nfcFL.eseFL._NXP_ESE_VER != JCOP_VER_3_2)) {
+        NFC_TRACE_API0("NFC_GetEseAccess NXP_ESE_VER !="
+                "JCOP_VER_3_1 or JCOP_VER_3_2 . Returning");
+        return status;
+    }
+    nfc_nci_IoctlInOutData_t inpOutData;
+
+    inpOutData.inp.data.timeoutMilliSec = *(uint32_t*)pdata;
+    status = nfc_cb.p_hal->ioctl(HAL_NFC_IOCTL_P61_GET_ACCESS, &inpOutData);
+    return status;
 }
 /*******************************************************************************
 **
@@ -1790,13 +1796,19 @@
 **
 *******************************************************************************/
 int32_t NFC_RelEseAccess(void* pdata) {
-  nfc_nci_IoctlInOutData_t inpOutData;
-  int32_t status;
-  status = nfc_cb.p_hal->ioctl(HAL_NFC_IOCTL_P61_REL_ACCESS, &inpOutData);
-  *(tNFC_STATUS*)pdata = inpOutData.out.data.status;
-  return status;
+    int32_t status;
+    if((nfcFL.eseFL._NXP_ESE_VER != JCOP_VER_3_1) &&
+            (nfcFL.eseFL._NXP_ESE_VER != JCOP_VER_3_2)) {
+        NFC_TRACE_API0("NFC_RelEseAccess NXP_ESE_VER !="
+                "JCOP_VER_3_1 or JCOP_VER_3_2 . Returning");
+        return status;
+    }
+    nfc_nci_IoctlInOutData_t inpOutData;
+
+    status = nfc_cb.p_hal->ioctl(HAL_NFC_IOCTL_P61_REL_ACCESS, &inpOutData);
+    *(tNFC_STATUS*)pdata = inpOutData.out.data.status;
+    return status;
 }
-#endif
 
 /*******************************************************************************
 **