dre: Switch to generic fingerprint HAL

The fingerprint HAL in hardware/oneplus is mainly for devices
with FOD, which the Nord N200 does not support.

ID mismatches will make the generic HAL fail, so hack the goodix
blob to fix it.

Change-Id: I0724569ed1105d8c63075286987ad56ea0ecd078
This commit is contained in:
Albert Tang 2022-05-24 10:20:11 -05:00
parent 9616129e96
commit 7ef0ff78eb
7 changed files with 13 additions and 6 deletions

View file

@ -315,8 +315,8 @@ PRODUCT_PACKAGES += \
# Fingerprint # Fingerprint
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
android.hardware.biometrics.fingerprint@2.3-service.oneplus \ android.hardware.biometrics.fingerprint@2.1-service \
vendor.goodix.hardware.biometrics.fingerprint@2.1.vendor vendor.oneplus.fingerprint.extension@1.0.vendor
# Gatekeeper # Gatekeeper
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \

View file

@ -15,7 +15,7 @@
</interface> </interface>
</hal> </hal>
<hal format="hidl" optional="true"> <hal format="hidl" optional="true">
<name>vendor.goodix.hardware.biometrics.fingerprint</name> <name>vendor.goodix3626.hardware.biometrics.fingerprint</name>
<version>2.1</version> <version>2.1</version>
<interface> <interface>
<name>IGoodixFingerprintDaemon</name> <name>IGoodixFingerprintDaemon</name>

View file

@ -58,6 +58,9 @@ function blob_fixup() {
system_ext/lib64/libwfdnative.so) system_ext/lib64/libwfdnative.so)
sed -i "s/android.hidl.base@1.0.so/libhidlbase.so\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00/" "${2}" sed -i "s/android.hidl.base@1.0.so/libhidlbase.so\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00/" "${2}"
;; ;;
vendor/lib64/hw/fingerprint.qcom.so)
sed -i "s/goodix\.3626/fingerprint/g" "${2}"
;;
vendor/lib64/vendor.qti.hardware.camera.postproc@1.0-service-impl.so) vendor/lib64/vendor.qti.hardware.camera.postproc@1.0-service-impl.so)
"${SIGSCAN}" -p "3F 0A 00 94" -P "1F 20 03 D5" -f "${2}" "${SIGSCAN}" -p "3F 0A 00 94" -P "1F 20 03 D5" -f "${2}"
;; ;;

View file

@ -666,7 +666,7 @@ vendor/bin/feature_enabler_client
vendor/etc/init/feature_enabler_client.rc vendor/etc/init/feature_enabler_client.rc
# Fingerprint # Fingerprint
vendor/lib64/hw/goodix.3626.holi.so vendor/lib64/hw/goodix.3626.holi.so:vendor/lib64/hw/fingerprint.qcom.so
vendor/lib64/fp_hal_extension.so vendor/lib64/fp_hal_extension.so
vendor/lib64/libgf_ca.so vendor/lib64/libgf_ca.so
vendor/lib64/libgf_hal.so vendor/lib64/libgf_hal.so

View file

@ -32,7 +32,6 @@
/dev/skin_thermal u:object_r:therm_device:s0 /dev/skin_thermal u:object_r:therm_device:s0
# HALs # HALs
/(vendor|system/vendor)/bin/hw/android\.hardware\.biometrics\.fingerprint@2\.3-service\.oneplus u:object_r:hal_fingerprint_default_exec:s0
/(vendor|system/vendor)/bin/hw/vendor\.lineage\.livedisplay@2\.1-service\.oneplus u:object_r:hal_lineage_livedisplay_qti_exec:s0 /(vendor|system/vendor)/bin/hw/vendor\.lineage\.livedisplay@2\.1-service\.oneplus u:object_r:hal_lineage_livedisplay_qti_exec:s0
/(vendor|system/vendor)/bin/hw/vendor\.lineage\.powershare@1\.0-service\.oneplus u:object_r:hal_lineage_powershare_default_exec:s0 /(vendor|system/vendor)/bin/hw/vendor\.lineage\.powershare@1\.0-service\.oneplus u:object_r:hal_lineage_powershare_default_exec:s0
/(vendor|system/vendor)/bin/hw/vendor\.lineage\.touch@1\.0-service\.oneplus u:object_r:hal_lineage_touch_default_exec:s0 /(vendor|system/vendor)/bin/hw/vendor\.lineage\.touch@1\.0-service\.oneplus u:object_r:hal_lineage_touch_default_exec:s0

View file

@ -14,6 +14,8 @@ allow hal_fingerprint_default vendor_xdsp_device:chr_file rw_file_perms;
allow hal_fingerprint_default proc_touchpanel:dir search; allow hal_fingerprint_default proc_touchpanel:dir search;
allow hal_fingerprint_default proc_touchpanel:file rw_file_perms; allow hal_fingerprint_default proc_touchpanel:file rw_file_perms;
allow hal_fingerprint_default uhid_device:chr_file rw_file_perms;
get_prop(hal_fingerprint_default, vendor_adsprpc_prop) get_prop(hal_fingerprint_default, vendor_adsprpc_prop)
get_prop(hal_fingerprint_default, vendor_default_prop) get_prop(hal_fingerprint_default, vendor_default_prop)
set_prop(hal_fingerprint_default, vendor_fingerprint_prop) set_prop(hal_fingerprint_default, vendor_fingerprint_prop)

View file

@ -1,4 +1,7 @@
vendor.goodix.hardware.biometrics.fingerprint::IGoodixFingerprintDaemon u:object_r:hal_fingerprint_hwservice:s0 vendor.goodix3626.hardware.biometrics.fingerprint::IGoodixFingerprintDaemon u:object_r:hal_fingerprint_hwservice:s0
vendor.goodix3626.hardware.biometrics.fingerprint::IGoodixFingerprintDaemonExt u:object_r:hal_fingerprint_hwservice:s0
vendor.goodix3626.hardware.biometrics.fingerprint::IGoodixFingerprintDaemonHbd u:object_r:hal_fingerprint_hwservice:s0
vendor.goodix3626.hardware.biometrics.fingerprint::IGoodixFingerprintDaemonFido u:object_r:hal_fingerprint_hwservice:s0
vendor.oneplus.camera.CameraHIDL::IOnePlusCameraProvider u:object_r:hal_cameraHIDL_hwservice:s0 vendor.oneplus.camera.CameraHIDL::IOnePlusCameraProvider u:object_r:hal_cameraHIDL_hwservice:s0
vendor.oneplus.fingerprint.extension::IVendorFingerprintExtensions u:object_r:hal_fingerprint_hwservice:s0 vendor.oneplus.fingerprint.extension::IVendorFingerprintExtensions u:object_r:hal_fingerprint_hwservice:s0
vendor.oneplus.hardware.camera::IOnePlusCameraProvider u:object_r:hal_cameraHIDL_hwservice:s0 vendor.oneplus.hardware.camera::IOnePlusCameraProvider u:object_r:hal_cameraHIDL_hwservice:s0