blob: 1c0dedffd341854126db8566e8aaa86e2c4d8b8c [file] [log] [blame]
Nanhumlydbe61102025-01-03 15:45:50 +00001#!/usr/bin/env -S PYTHONPATH=../../../tools/extract-utils python3
2#
3# SPDX-FileCopyrightText: 2024 The LineageOS Project
4# SPDX-License-Identifier: Apache-2.0
5#
6
7from extract_utils.fixups_blob import (
8 blob_fixup,
9 blob_fixups_user_type,
10)
11from extract_utils.fixups_lib import (
12 lib_fixup_remove,
13 lib_fixups,
14 lib_fixups_user_type,
15)
16from extract_utils.main import (
17 ExtractUtils,
18 ExtractUtilsModule,
19)
20
Nanhumlydbe61102025-01-03 15:45:50 +000021namespace_imports = [
Nanhumlydbe61102025-01-03 15:45:50 +000022 'hardware/qcom-caf/wlan',
23 'vendor/qcom/opensource/display',
24 'vendor/qcom/opensource/commonsys/display',
25 'vendor/qcom/opensource/commonsys-intf/display',
26]
27
28def lib_fixup_vendor_suffix(lib: str, partition: str, *args, **kwargs):
29 return f'{lib}_{partition}' if partition == 'vendor' else None
30
31lib_fixups: lib_fixups_user_type = {
32 **lib_fixups,
33 (
micky3871082be72025-02-26 05:32:40 -050034 'com.qualcomm.qti.dpm.api@1.0',
35 'vendor.qti.imsrtpservice@3.0',
36 'libAsusMotorDriverHAL',
37 'libAsusRGBSensorHAL',
38 'libmpbase',
39 'libxditk_DIT_Manager',
40 'libxditk_ISP',
41 'libxditk_arch',
42 'libxditk_ditArchLIB',
43 'libxditk_ditBSP',
44 'libxditk_ditBSP_JNI',
45 'libxditk_DIT_MSMv1',
Nanhumlydbe61102025-01-03 15:45:50 +000046 ): lib_fixup_vendor_suffix,
47 (
micky3871082be72025-02-26 05:32:40 -050048 'libwpa_client',
Nanhumlydbe61102025-01-03 15:45:50 +000049 ): lib_fixup_remove,
50}
51
52blob_fixups: blob_fixups_user_type = {
micky3871082be72025-02-26 05:32:40 -050053 ('system/lib64/libxditk_ISP.so',
54 'system/lib64/libxditk_ditArchLIB.so'): blob_fixup()
55 .replace_needed('libOpenCL.so', 'libOpenCL_system.so'),
micky387fa7d5302025-04-13 09:20:34 -040056 'vendor/bin/hw/android.hardware.power-service': blob_fixup()
57 .replace_needed('android.hardware.power-V1-ndk_platform.so', 'android.hardware.power-V1-ndk.so'),
Jake Weinstein275bd9f2022-12-09 00:35:52 +090058 'vendor/etc/msm_irqbalance.conf': blob_fixup()
59 .regex_replace('IGNORED_IRQ=27,23,38$', 'IGNORED_IRQ=27,23,38,115,332'),
Nanhumlydbe61102025-01-03 15:45:50 +000060 'vendor/etc/seccomp_policy/qspm.policy': blob_fixup()
61 .add_line_if_missing('gettid: 1'),
micky3875a185082025-03-19 17:50:57 -040062 'vendor/bin/hw/android.hardware.camera.provider@2.4-service_64': blob_fixup()
63 .add_needed('libhidlbase_shim.so'),
Tuan Anhcdf6cac2025-03-25 15:50:45 -040064 ('vendor/lib/libreference-ril.so',
65 'vendor/lib64/libreference-ril.so'): blob_fixup()
66 .add_needed('libbase_shim.so'),
Nanhumlydbe61102025-01-03 15:45:50 +000067 'vendor/lib64/libvendor.goodix.hardware.biometrics.fingerprint@2.1.so': blob_fixup()
68 .replace_needed('libhidltransport.so', 'libhidlbase_shim.so'),
69 'vendor/lib64/libwvhidl.so': blob_fixup()
70 .patchelf_version('0_17_2')
71 .add_needed('libcrypto_shim.so'),
72 'vendor/lib64/vendor.qti.hardware.camera.postproc@1.0-service-impl.so': blob_fixup()
73 .sig_replace('13 0A 00 94', '1F 20 03 D5'),
74} # fmt: skip
75
76module = ExtractUtilsModule(
77 'zenfone7',
78 'asus',
79 blob_fixups=blob_fixups,
80 lib_fixups=lib_fixups,
Nanhumlydbe61102025-01-03 15:45:50 +000081 namespace_imports=namespace_imports,
82)
83
84module.add_proprietary_file('proprietary-files-product.txt')
85module.add_proprietary_file('proprietary-files-vendor.txt')
86
87if __name__ == '__main__':
88 utils = ExtractUtils.device(module)
89 utils.run()