summaryrefslogtreecommitdiffstats
path: root/nxp
diff options
context:
space:
mode:
authorAndres Morales <anmorales@google.com>2013-12-11 09:29:24 -0800
committerAndres Morales <anmorales@google.com>2013-12-16 10:36:04 -0800
commitd2604c0544f7bc26e5b2407f0215cccfffedae2c (patch)
treed10a8ed4e58c4d40c6011f71d2695ff2151e3a63 /nxp
parent4309f9c7c0097bdd95cf791eef78700b106dec21 (diff)
downloadandroid_packages_apps_Nfc-d2604c0544f7bc26e5b2407f0215cccfffedae2c.tar.gz
android_packages_apps_Nfc-d2604c0544f7bc26e5b2407f0215cccfffedae2c.tar.bz2
android_packages_apps_Nfc-d2604c0544f7bc26e5b2407f0215cccfffedae2c.zip
Expose snooze mode config and polling modes in java layer
Change-Id: I3a604fb4260a1e99e6aa40189e999996d5947ed4
Diffstat (limited to 'nxp')
-rw-r--r--nxp/jni/com_android_nfc_NativeNfcManager.cpp17
-rwxr-xr-xnxp/src/com/android/nfc/dhimpl/NativeNfcManager.java18
2 files changed, 31 insertions, 4 deletions
diff --git a/nxp/jni/com_android_nfc_NativeNfcManager.cpp b/nxp/jni/com_android_nfc_NativeNfcManager.cpp
index 81d79c13..5ca31248 100644
--- a/nxp/jni/com_android_nfc_NativeNfcManager.cpp
+++ b/nxp/jni/com_android_nfc_NativeNfcManager.cpp
@@ -1446,7 +1446,10 @@ static void com_android_nfc_NfcManager_disableDiscovery(JNIEnv *e, jobject o)
}
-static void com_android_nfc_NfcManager_enableDiscovery(JNIEnv *e, jobject o) {
+// TODO: use enable_lptd
+static void com_android_nfc_NfcManager_enableDiscovery(JNIEnv *e, jobject o, jint modes,
+ jboolean enable_lptd)
+{
NFCSTATUS ret;
struct nfc_jni_native_data *nat;
@@ -1476,6 +1479,16 @@ static void com_android_nfc_NfcManager_enableDiscovery(JNIEnv *e, jobject o) {
nat->registry_info.NFC==TRUE?"P2P":"",
nat->registry_info.ISO15693==TRUE?"R":"", ret);
+
+ if (modes != 0)
+ {
+ nat->discovery_cfg.PollDevInfo.PollCfgInfo.EnableIso14443A = (modes & 0x01) != 0;
+ nat->discovery_cfg.PollDevInfo.PollCfgInfo.EnableIso14443B = (modes & 0x02) != 0;
+ nat->discovery_cfg.PollDevInfo.PollCfgInfo.EnableFelica212 = (modes & 0x04) != 0;
+ nat->discovery_cfg.PollDevInfo.PollCfgInfo.EnableFelica424 = (modes & 0x04) != 0;
+ nat->discovery_cfg.PollDevInfo.PollCfgInfo.EnableIso15693 = (modes & 0x08) != 0;
+ }
+
nfc_jni_start_discovery_locked(nat, false);
clean_and_return:
CONCURRENCY_UNLOCK();
@@ -2615,7 +2628,7 @@ static JNINativeMethod gMethods[] =
{"doDeinitialize", "()Z",
(void *)com_android_nfc_NfcManager_deinitialize},
- {"enableDiscovery", "()V",
+ {"enableDiscovery", "(IZ)V",
(void *)com_android_nfc_NfcManager_enableDiscovery},
{"doGetSecureElementList", "()[I",
diff --git a/nxp/src/com/android/nfc/dhimpl/NativeNfcManager.java b/nxp/src/com/android/nfc/dhimpl/NativeNfcManager.java
index 108025c0..ee70d59f 100755
--- a/nxp/src/com/android/nfc/dhimpl/NativeNfcManager.java
+++ b/nxp/src/com/android/nfc/dhimpl/NativeNfcManager.java
@@ -134,7 +134,7 @@ public class NativeNfcManager implements DeviceHost {
private native boolean doInitialize();
@Override
- public boolean initialize() {
+ public boolean initialize(boolean enableScreenOffSuspendUnused) {
SharedPreferences prefs = mContext.getSharedPreferences(PREF, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
@@ -186,7 +186,7 @@ public class NativeNfcManager implements DeviceHost {
}
@Override
- public native void enableDiscovery();
+ public native void enableDiscovery(int techMask, boolean enableLowPowerDiscovery);
@Override
public native void disableDiscovery();
@@ -372,6 +372,20 @@ public class NativeNfcManager implements DeviceHost {
}
@Override
+ public boolean enableScreenOffSuspend() {
+ // Snooze mode not supported on NXP silicon
+ Log.i(TAG, "Snooze mode is not supported on NXP NFCC");
+ return false;
+ }
+
+ @Override
+ public boolean disableScreenOffSuspend() {
+ // Snooze mode not supported on NXP silicon
+ Log.i(TAG, "Snooze mode is not supported on NXP NFCC");
+ return true;
+ }
+
+ @Override
public boolean getExtendedLengthApdusSupported() {
// Not supported on the PN544
return false;