summaryrefslogtreecommitdiffstats
path: root/nxp/src/com/android/nfc
diff options
context:
space:
mode:
Diffstat (limited to 'nxp/src/com/android/nfc')
-rwxr-xr-xnxp/src/com/android/nfc/dhimpl/NativeNfcManager.java20
1 files changed, 20 insertions, 0 deletions
diff --git a/nxp/src/com/android/nfc/dhimpl/NativeNfcManager.java b/nxp/src/com/android/nfc/dhimpl/NativeNfcManager.java
index dc6ea7c..0446390 100755
--- a/nxp/src/com/android/nfc/dhimpl/NativeNfcManager.java
+++ b/nxp/src/com/android/nfc/dhimpl/NativeNfcManager.java
@@ -38,6 +38,8 @@ public class NativeNfcManager implements DeviceHost {
private static final String NFC_CONTROLLER_FIRMWARE_FILE_NAME = "/vendor/firmware/libpn544_fw.so";
+ private static final String NFC_CONTROLLER_FIRMWARE_FILE_NAME_2 = "/system/lib/libpn544_fw.so";
+
static final String PREF = "NxpDeviceHost";
private static final String PREF_FIRMWARE_MODTIME = "firmware_modtime";
@@ -101,6 +103,9 @@ public class NativeNfcManager implements DeviceHost {
int nbRetry = 0;
try {
firmwareFile = new File(NFC_CONTROLLER_FIRMWARE_FILE_NAME);
+ if (!firmwareFile.exists()) {
+ firmwareFile = new File(NFC_CONTROLLER_FIRMWARE_FILE_NAME_2);
+ }
} catch(NullPointerException npe) {
Log.e(TAG,"path to firmware file was null");
return;
@@ -174,6 +179,19 @@ public class NativeNfcManager implements DeviceHost {
public native void disableDiscovery();
@Override
+ public native void enableCE_A();
+
+ @Override
+ public native void disableCE_A();
+
+ @Override
+ public native void enableCE_B();
+
+ @Override
+ public native void disableCE_B();
+
+
+ @Override
public native int[] doGetSecureElementList();
@Override
@@ -302,6 +320,8 @@ public class NativeNfcManager implements DeviceHost {
return 0; // PN544 does not support transceive of raw NfcB
case (TagTechnology.NFC_V):
return 253; // PN544 RF buffer = 255 bytes, subtract two for CRC
+ case (TagTechnology.ISO_PCD_A):
+ case (TagTechnology.ISO_PCD_B):
case (TagTechnology.ISO_DEP):
/* The maximum length of a normal IsoDep frame consists of:
* CLA, INS, P1, P2, LC, LE + 255 payload bytes = 261 bytes