diff --git a/BoardConfigCommon.mk b/BoardConfigCommon.mk
index 8c92281..824db3c 100644
--- a/BoardConfigCommon.mk
+++ b/BoardConfigCommon.mk
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2021 The LineageOS Project
+# Copyright (C) 2021-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -131,9 +131,7 @@ TARGET_ENABLE_MEDIADRM_64 := true
TARGET_FS_CONFIG_GEN := $(COMMON_PATH)/config.fs
# Fingerprint
-SOONG_CONFIG_NAMESPACES += ONEPLUS_FOD
-SOONG_CONFIG_ONEPLUS_FOD := POS_X POS_Y SIZE
-TARGET_SURFACEFLINGER_FOD_LIB := //hardware/oneplus:libfod_extension.oneplus
+TARGET_SURFACEFLINGER_UDFPS_LIB := //hardware/oneplus:libudfps_extension.oneplus
# HIDL
DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := \
diff --git a/common.mk b/common.mk
index 24f99c7..394987d 100644
--- a/common.mk
+++ b/common.mk
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2021 The LineageOS Project
+# Copyright (C) 2021-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -90,8 +90,7 @@ PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.verified_boot.xml \
frameworks/native/data/etc/android.software.vulkan.deqp.level-2020-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml \
frameworks/native/data/etc/com.android.nfc_extras.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.android.nfc_extras.xml \
- frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
- vendor/lineage/config/permissions/vendor.lineage.biometrics.fingerprint.inscreen.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/vendor.lineage.biometrics.fingerprint.inscreen.xml
+ frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml
# A/B
AB_OTA_POSTINSTALL_CONFIG += \
@@ -309,9 +308,8 @@ PRODUCT_PACKAGES += \
# Fingerprint
PRODUCT_PACKAGES += \
- android.hardware.biometrics.fingerprint@2.1-service.oneplus \
- vendor.goodix.hardware.biometrics.fingerprint@2.1.vendor \
- vendor.lineage.biometrics.fingerprint.inscreen@1.0-service.oneplus
+ android.hardware.biometrics.fingerprint@2.3-service.oneplus \
+ vendor.goodix.hardware.biometrics.fingerprint@2.1.vendor
# Gatekeeper
PRODUCT_PACKAGES += \
diff --git a/device_framework_matrix.xml b/device_framework_matrix.xml
index d232bba..ed1d9af 100644
--- a/device_framework_matrix.xml
+++ b/device_framework_matrix.xml
@@ -9,6 +9,14 @@
default
+
+ android.hardware.biometrics.fingerprint
+ 2.3
+
+ IBiometricsFingerprint
+ default
+
+
android.hardware.gnss
1.0-1
diff --git a/sepolicy/vendor/file_contexts b/sepolicy/vendor/file_contexts
index 8e464ca..0f2f8f8 100644
--- a/sepolicy/vendor/file_contexts
+++ b/sepolicy/vendor/file_contexts
@@ -33,8 +33,7 @@
/dev/skin_thermal u:object_r:therm_device:s0
# HALs
-/(vendor|system/vendor)/bin/hw/android\.hardware\.biometrics\.fingerprint@2\.1-service\.oneplus u:object_r:hal_fingerprint_default_exec:s0
-/(vendor|system/vendor)/bin/hw/vendor\.lineage\.biometrics\.fingerprint\.inscreen@1\.0-service\.oneplus u:object_r:hal_lineage_fod_default_exec:s0
+/(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\.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
diff --git a/sepolicy/vendor/genfs_contexts b/sepolicy/vendor/genfs_contexts
index abb6117..17f01e1 100644
--- a/sepolicy/vendor/genfs_contexts
+++ b/sepolicy/vendor/genfs_contexts
@@ -3,11 +3,13 @@ genfscon proc /touchpanel u:object_r:proc_touchpanel:s
# sysfs
genfscon sysfs /devices/platform/soc/88c000.i2c/i2c-10/10-005a/leds/vibrator u:object_r:sysfs_leds:s0
+genfscon sysfs /devices/platform/soc/ae00000.qcom,mdss_mdp/drm/card0/card0-DSI-1/auth_status u:object_r:sysfs_fod:s0
genfscon sysfs /devices/platform/soc/ae00000.qcom,mdss_mdp/drm/card0/card0-DSI-1/dim_alpha u:object_r:sysfs_fod:s0
genfscon sysfs /devices/platform/soc/ae00000.qcom,mdss_mdp/drm/card0/card0-DSI-1/dimlayer_bl_en u:object_r:sysfs_livedisplay_tuneable:s0
genfscon sysfs /devices/platform/soc/ae00000.qcom,mdss_mdp/drm/card0/card0-DSI-1/hbm u:object_r:sysfs_livedisplay_tuneable:s0
genfscon sysfs /devices/platform/soc/ae00000.qcom,mdss_mdp/drm/card0/card0-DSI-1/notify_dim u:object_r:sysfs_fod:s0
genfscon sysfs /devices/platform/soc/ae00000.qcom,mdss_mdp/drm/card0/card0-DSI-1/notify_fppress u:object_r:sysfs_fod:s0
+genfscon sysfs /devices/platform/soc/ae00000.qcom,mdss_mdp/drm/card0/card0-DSI-1/power_status u:object_r:sysfs_fod:s0
genfscon sysfs /devices/platform/soc/soc:tri_state_key/hall_data_calib u:object_r:sysfs_tri_state_key:s0
genfscon sysfs /kernel/ois_control u:object_r:sysfs_ois_control:s0
genfscon sysfs /kernel/tof_control u:object_r:sysfs_tof_control:s0
diff --git a/sepolicy/vendor/hal_fingerprint_device.te b/sepolicy/vendor/hal_fingerprint_device.te
index 1d207b5..849b5de 100644
--- a/sepolicy/vendor/hal_fingerprint_device.te
+++ b/sepolicy/vendor/hal_fingerprint_device.te
@@ -1,3 +1,5 @@
+hal_client_domain(hal_fingerprint_default, hal_display)
+
allow hal_fingerprint_default self:netlink_socket create_socket_perms_no_ioctl;
binder_call(hal_fingerprint_default, hal_perf_default)
diff --git a/sepolicy/vendor/hal_lineage_fod_default.te b/sepolicy/vendor/hal_lineage_fod_default.te
deleted file mode 100644
index bf692eb..0000000
--- a/sepolicy/vendor/hal_lineage_fod_default.te
+++ /dev/null
@@ -1,4 +0,0 @@
-hal_client_domain(hal_lineage_fod_default, hal_display)
-hal_client_domain(hal_lineage_fod_default, hal_fingerprint)
-
-allow hal_lineage_fod_default sysfs_fod:file rw_file_perms;