From f9eb47822a93d6f44af0e1b5c13fe01e37b117cc Mon Sep 17 00:00:00 2001 From: Jesse Chan Date: Sat, 15 Aug 2020 15:41:24 +0800 Subject: [PATCH] fingerprint: allow to request force calibration * Helps with the now rare enrollment calibration errors we get and also with fingerprint enrollment after enrolling a fingerprint in DSU (without this it constantly fails with calibration error after that) [Linux4: Pass 1 as parameter and unconditionally call it] Change-Id: Idde4a4b06efc279d227ab2e3b4056ed8855dbf8f --- hidl/fingerprint/Android.mk | 4 ++++ hidl/fingerprint/BiometricsFingerprint.cpp | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/hidl/fingerprint/Android.mk b/hidl/fingerprint/Android.mk index 2f0d1e3a..b83a27fd 100644 --- a/hidl/fingerprint/Android.mk +++ b/hidl/fingerprint/Android.mk @@ -48,6 +48,10 @@ ifeq ($(TARGET_SEC_FP_HAS_FINGERPRINT_GESTURES),true) LOCAL_CFLAGS += -DHAS_FINGERPRINT_GESTURES endif +ifeq ($(TARGET_SEC_FP_REQUEST_FORCE_CALIBRATE),true) + LOCAL_CFLAGS += -DREQUEST_FORCE_CALIBRATE +endif + LOCAL_MODULE := android.hardware.biometrics.fingerprint@2.3-service.samsung LOCAL_INIT_RC := android.hardware.biometrics.fingerprint@2.3-service.samsung.rc LOCAL_VINTF_FRAGMENTS := android.hardware.biometrics.fingerprint@2.3-service.samsung.xml diff --git a/hidl/fingerprint/BiometricsFingerprint.cpp b/hidl/fingerprint/BiometricsFingerprint.cpp index 256a36bd..1d82b13f 100644 --- a/hidl/fingerprint/BiometricsFingerprint.cpp +++ b/hidl/fingerprint/BiometricsFingerprint.cpp @@ -219,6 +219,10 @@ Return BiometricsFingerprint::enroll(const hidl_array(hat.data()); +#ifdef REQUEST_FORCE_CALIBRATE + request(SEM_REQUEST_FORCE_CBGE, 1); +#endif + return ErrorFilter(ss_fingerprint_enroll(authToken, gid, timeoutSec)); }