0
0
mirror of https://github.com/ponces/treble_aosp.git synced 2025-04-14 17:25:47 +00:00
Files
treble_aosp/patches/trebledroid/platform_frameworks_base/0055-Revert-Bunch-of-FOD-stuff-commonize-refreshing-the-s.patch
2025-04-12 10:17:26 +00:00

237 lines
12 KiB
Diff

From 927995862a8bbad994200b40a88892c1cd22b4f3 Mon Sep 17 00:00:00 2001
From: Alberto Ponces <ponces26@gmail.com>
Date: Wed, 2 Apr 2025 15:33:30 +0100
Subject: [PATCH 55/56] Revert "Bunch of FOD stuff -- commonize refreshing the
services, start supporting AIDL Samsung"
This reverts commit 10817dd6c8d805c86e31a409c8f8e58d68b1fa75.
---
.../server/biometrics/AuthService.java | 156 +++---------------
1 file changed, 19 insertions(+), 137 deletions(-)
diff --git a/services/core/java/com/android/server/biometrics/AuthService.java b/services/core/java/com/android/server/biometrics/AuthService.java
index 7383afb19244..5694a5a73747 100644
--- a/services/core/java/com/android/server/biometrics/AuthService.java
+++ b/services/core/java/com/android/server/biometrics/AuthService.java
@@ -43,7 +43,6 @@ import android.hardware.biometrics.IAuthService;
import android.hardware.biometrics.IBiometricEnabledOnKeyguardCallback;
import android.hardware.biometrics.IBiometricService;
import android.hardware.biometrics.IBiometricServiceReceiver;
-import android.hardware.biometrics.fingerprint.IFingerprint;
import android.hardware.biometrics.IInvalidationCallback;
import android.hardware.biometrics.ITestSession;
import android.hardware.biometrics.ITestSessionCallback;
@@ -97,7 +96,6 @@ import android.os.Build;
import vendor.samsung.hardware.biometrics.fingerprint.V3_0.ISehBiometricsFingerprint;
import vendor.goodix.hardware.biometrics.fingerprint.V2_1.IGoodixFingerprintDaemon;
import vendor.samsung.hardware.sysinput.V1_0.ISehSysInputDev;
-import vendor.samsung.hardware.biometrics.fingerprint.ISehFingerprint;
import vendor.xiaomi.hardware.fingerprintextension.V1_0.IXiaomiFingerprint;
@@ -121,8 +119,6 @@ public class AuthService extends SystemService {
private FileObserver fodFileObserver = null;
private ISehBiometricsFingerprint mSamsungFingerprint = null;
- private ISehFingerprint mSamsungFingerprintAidl = null;
- private vendor.samsung.hardware.sysinput.ISehSysInputDev mSamsungSysinputAidl = null;
private IXiaomiFingerprint mXiaomiFingerprint = null;
@@ -779,101 +775,6 @@ public class AuthService extends SystemService {
* └── for (s : p.sensors)
* └── BiometricService.registerAuthenticator(s)
*/
-
- private static void samsungSysinputCommand(String arg) {
- try {
- android.util.Log.e("PHH-Enroll", "SysinputCommand " + arg);
- var name = "default";
- var fqName = vendor.samsung.hardware.sysinput.ISehSysInputDev.DESCRIPTOR + "/" + name;
- var b = android.os.Binder.allowBlocking(android.os.ServiceManager.waitForDeclaredService(fqName));
- var samsungSysinputAidl = vendor.samsung.hardware.sysinput.ISehSysInputDev.Stub.asInterface(b);
- Thread.sleep(100);
- samsungSysinputAidl.setProperty(1 /*DEFAULT_TSP*/, 18, arg);
- android.util.Log.e("PHH-Enroll", "Done SysinputCommand");
- } catch(Throwable t) {
- android.util.Log.e("PHH-Enroll", "SysinputCommand", t);
- }
- }
-
- private void refreshVendorServices() {
- try {
- mSamsungFingerprint = ISehBiometricsFingerprint.getService();
- android.util.Log.e("PHH", "Got samsung fingerprint HAL");
- } catch(Exception e) {
- if (e instanceof java.util.NoSuchElementException) {
- android.util.Log.e("PHH", "Failed getting Samsung fingerprint HAL, doesn't exist");
- } else {
- android.util.Log.e("PHH", "Failed getting Samsung fingerprint HAL", e);
- }
- }
-
- try {
- final String name = "default";
- final String fqName = IFingerprint.DESCRIPTOR + "/" + name;
- final IBinder fpBinder = Binder.allowBlocking(ServiceManager.waitForDeclaredService(fqName));
- //final IFingerprint fp = IFingerprint.Stub.asInterface(fpBinder);
- mSamsungFingerprintAidl = ISehFingerprint.Stub.asInterface(fpBinder.getExtension());
- } catch(Exception e) {
- android.util.Log.e("PHH", "Failed getting Samsung fingerprint AIDL HAL", e);
- }
-
- try {
- final String name = "default";
- final String fqName = vendor.samsung.hardware.sysinput.ISehSysInputDev.DESCRIPTOR + "/" + name;
- final IBinder b = Binder.allowBlocking(ServiceManager.waitForDeclaredService(fqName));
- mSamsungSysinputAidl = vendor.samsung.hardware.sysinput.ISehSysInputDev.Stub.asInterface(b);
- mSamsungSysinputAidl.registerCallback(new vendor.samsung.hardware.sysinput.ISehSysInputCallback.Stub() {
- @Override
- public void onReportInformation(int type, String data) {
- android.util.Log.e("PHH", "Received Sysinput Report Information " +type + ", " + data);
- }
- @Override
- public void onReportRawData(int type, int count, int[] data) {
- android.util.Log.e("PHH", "Received Sysinput Report RawData " + type + ", " + count);
- }
-
- @Override
- public int getInterfaceVersion() {
- return this.VERSION;
- }
-
- @Override
- public String getInterfaceHash() {
- return this.HASH;
- }
- });
- String res;
- res = mSamsungSysinputAidl.getProperty(1, 1);
- Thread.sleep(100);
- android.util.Log.e("PHH", "Got Samsung sysinput aidl feature " + res);
- res = mSamsungSysinputAidl.getProperty(1, 2);
- Thread.sleep(100);
- android.util.Log.e("PHH", "Got Samsung sysinput aidl cmd_list " + res);
- res = mSamsungSysinputAidl.getProperty(1, 3);
- Thread.sleep(100);
- android.util.Log.e("PHH", "Got Samsung sysinput aidl scrub_pos " + res);
- res = mSamsungSysinputAidl.getProperty(1, 4);
- Thread.sleep(100);
- android.util.Log.e("PHH", "Got Samsung sysinput aidl fod_info " + res);
- res = mSamsungSysinputAidl.getProperty(1, 5);
- Thread.sleep(100);
- android.util.Log.e("PHH", "Got Samsung sysinput aidl fod_pos " + res);
- } catch(Exception e) {
- android.util.Log.e("PHH", "Failed getting Samsung fingerprint AIDL HAL", e);
- }
-
- try {
- mXiaomiFingerprint = IXiaomiFingerprint.getService();
- android.util.Log.e("PHH", "Got xiaomi fingerprint HAL");
- } catch(Exception e) {
- if (e instanceof java.util.NoSuchElementException) {
- android.util.Log.e("PHH", "Failed getting xiaomi fingerprint HAL, doesn't exist");
- } else {
- android.util.Log.e("PHH", "Failed getting xiaomi fingerprint HAL", e);
- }
- }
- }
-
@Override
public void onStart() {
mBiometricService = mInjector.getBiometricService();
@@ -900,9 +801,19 @@ public class AuthService extends SystemService {
registerAuthenticators();
mInjector.publishBinderService(this, mImpl);
- refreshVendorServices();
- //samsungSysinputCommand("fod_icon_visible,1");
- if(samsungHasCmd("fod_enable") && (mSamsungFingerprint != null || mSamsungFingerprintAidl != null)) {
+ try {
+ mSamsungFingerprint = ISehBiometricsFingerprint.getService();
+ android.util.Log.e("PHH", "Got samsung fingerprint HAL");
+ } catch(Exception e) {
+ android.util.Log.e("PHH", "Failed getting Samsung fingerprint HAL", e);
+ }
+ try {
+ mXiaomiFingerprint = IXiaomiFingerprint.getService();
+ android.util.Log.e("PHH", "Got xiaomi fingerprint HAL");
+ } catch(Exception e) {
+ android.util.Log.e("PHH", "Failed getting xiaomi fingerprint HAL", e);
+ }
+ if(samsungHasCmd("fod_enable") && mSamsungFingerprint != null) {
samsungCmd("fod_enable,1,1,0");
String actualMaskBrightnessPath = "/sys/class/lcd/panel/actual_mask_brightness";
android.util.Log.e("PHH-Enroll", "Reading actual brightness file gives " + readFile(actualMaskBrightnessPath));
@@ -910,7 +821,9 @@ public class AuthService extends SystemService {
@Override
public void onEvent(int event, String path) {
String actualMask = readFile(actualMaskBrightnessPath);
- refreshVendorServices();
+ try {
+ mSamsungFingerprint = ISehBiometricsFingerprint.getService();
+ } catch(Exception e) {}
Slog.d("PHH-Enroll", "New actual mask brightness is " + actualMask);
try {
int eventReq = 0;
@@ -1238,53 +1151,22 @@ public class AuthService extends SystemService {
udfpsProps[2] = (int)mW;
try {
- ISehBiometricsFingerprint samsungFingerprint = null;
- samsungFingerprint = ISehBiometricsFingerprint.getService();
+ mSamsungFingerprint = ISehBiometricsFingerprint.getService();
Slog.d("PHH-Enroll", "Samsung ask for sensor status");
- samsungFingerprint.sehRequest(6, 0, new java.util.ArrayList(), (int retval, java.util.ArrayList<Byte> out) -> {
+ mSamsungFingerprint.sehRequest(6, 0, new java.util.ArrayList(), (int retval, java.util.ArrayList<Byte> out) -> {
Slog.d("PHH-Enroll", "Result is " + retval);
for(int i=0; i<out.size(); i++) {
Slog.d("PHH-Enroll", "\t" + i + ":" + out.get(i));
}
} );
Slog.d("PHH-Enroll", "Samsung ask for sensor brightness value");
- samsungFingerprint.sehRequest(32, 0, new java.util.ArrayList(), (int retval, java.util.ArrayList<Byte> out) -> {
+ mSamsungFingerprint.sehRequest(32, 0, new java.util.ArrayList(), (int retval, java.util.ArrayList<Byte> out) -> {
Slog.d("PHH-Enroll", "Result is " + retval);
for(int i=0; i<out.size(); i++) {
Slog.d("PHH-Enroll", "\t" + i + ":" + out.get(i));
}
} );
- } catch(Exception e) {
- if (e instanceof java.util.NoSuchElementException) {
- Slog.d("PHH-Enroll", "Failed setting samsung3.0 fingerprint recognition, doesn't exist");
- } else {
- Slog.d("PHH-Enroll", "Failed setting samsung3.0 fingerprint recognition", e);
- }
- }
-
- try {
- final String name = "default";
- final String fqName = IFingerprint.DESCRIPTOR + "/" + name;
- final IBinder fpBinder = Binder.allowBlocking(ServiceManager.waitForDeclaredService(fqName));
- final IFingerprint fp = IFingerprint.Stub.asInterface(fpBinder);
- final ISehFingerprint fpaidl = ISehFingerprint.Stub.asInterface(fpBinder.getExtension());
-
- Slog.d("PHH-Enroll", "Samsung ask for sensor status");
- vendor.samsung.hardware.biometrics.fingerprint.SehResult sehres = fpaidl.sehRequest(0, 6, 0, new byte[0]);
-
- Slog.d("PHH-Enroll", "Result is " + sehres.retValue);
- for(int i=0; i<sehres.data.length; i++) {
- Slog.d("PHH-Enroll", "\t" + i + ":" + sehres.data[i]);
- }
-
- Slog.d("PHH-Enroll", "Samsung ask for sensor brightness value");
- sehres = fpaidl.sehRequest(0, 32, 0, new byte[0]);
-
- Slog.d("PHH-Enroll", "Result is " + sehres.retValue);
- for(int i=0; i<sehres.data.length; i++) {
- Slog.d("PHH-Enroll", "\t" + i + ":" + sehres.data[i]);
- }
} catch(Exception e) {
Slog.d("PHH-Enroll", "Failed setting samsung3.0 fingerprint recognition", e);
}
--
2.43.0