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
75 lines
1.7 KiB
Bash
Executable file
75 lines
1.7 KiB
Bash
Executable file
#!/bin/bash
|
|
#
|
|
# Copyright (C) 2016 The CyanogenMod Project
|
|
# Copyright (C) 2017-2022 The LineageOS Project
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
set -e
|
|
|
|
DEVICE=dre
|
|
VENDOR=oneplus
|
|
|
|
# Load extract_utils and do some sanity checks
|
|
MY_DIR="${BASH_SOURCE%/*}"
|
|
if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi
|
|
|
|
ANDROID_ROOT="${MY_DIR}/../../.."
|
|
|
|
HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh"
|
|
if [ ! -f "${HELPER}" ]; then
|
|
echo "Unable to find helper script at ${HELPER}"
|
|
exit 1
|
|
fi
|
|
source "${HELPER}"
|
|
|
|
# Default to sanitizing the vendor folder before extraction
|
|
CLEAN_VENDOR=true
|
|
|
|
KANG=
|
|
SECTION=
|
|
|
|
while [ "${#}" -gt 0 ]; do
|
|
case "${1}" in
|
|
-n | --no-cleanup )
|
|
CLEAN_VENDOR=false
|
|
;;
|
|
-k | --kang )
|
|
KANG="--kang"
|
|
;;
|
|
-s | --section )
|
|
SECTION="${2}"; shift
|
|
CLEAN_VENDOR=false
|
|
;;
|
|
* )
|
|
SRC="${1}"
|
|
;;
|
|
esac
|
|
shift
|
|
done
|
|
|
|
if [ -z "${SRC}" ]; then
|
|
SRC="adb"
|
|
fi
|
|
|
|
function blob_fixup() {
|
|
case "${1}" in
|
|
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}"
|
|
;;
|
|
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)
|
|
"${SIGSCAN}" -p "3F 0A 00 94" -P "1F 20 03 D5" -f "${2}"
|
|
;;
|
|
esac
|
|
}
|
|
|
|
# Initialize the helper
|
|
setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" false "${CLEAN_VENDOR}"
|
|
|
|
extract "${MY_DIR}/proprietary-files.txt" "${SRC}" "${KANG}" --section "${SECTION}"
|
|
|
|
"${MY_DIR}/setup-makefiles.sh"
|