summaryrefslogtreecommitdiffstats
path: root/nxp/jni/com_android_nfc_NativeNfcManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'nxp/jni/com_android_nfc_NativeNfcManager.cpp')
-rw-r--r--nxp/jni/com_android_nfc_NativeNfcManager.cpp17
1 files changed, 15 insertions, 2 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",