blob: e7c3284983b844c0d573a39e3cfe40fdf49bfcde [file] [log] [blame]
Nahhk7117b472025-03-19 06:23:56 -05001#!/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
21namespace_imports = [
22 'device/xiaomi/sm6225-common',
Nikita Savchenko89cc3bf2025-07-03 15:30:32 +000023 'hardware/qcom-caf/sm6225',
24 'hardware/qcom-caf/wlan',
25 'hardware/xiaomi',
26 'vendor/qcom/opensource/commonsys-intf/display',
27 'vendor/qcom/opensource/dataservices',
Nahhk7117b472025-03-19 06:23:56 -050028]
29
30
Nikita Savchenko89cc3bf2025-07-03 15:30:32 +000031libs_add_vendor_suffix = (
32 'vendor.qti.hardware.qccsyshal@1.0',
33 'vendor.qti.hardware.qccsyshal@1.1',
34 'vendor.qti.hardware.qccsyshal@1.2',
35 'vendor.qti.hardware.qccvndhal@1.0',
36 'vendor.qti.hardware.sigma_miracast@1.0',
37 'vendor.qti.hardware.wifidisplaysession@1.0',
38 'vendor.qti.imsrtpservice@3.0',
39 'vendor.qti.imsrtpservice@3.1',
40 'vendor.qti.diaghal@1.0',
41 'com.qualcomm.qti.dpm.api@1.0',
42)
43
44libs_remove = (
45 'libar-pal',
46 'libar-acdb',
47 'liblx-osal',
48 'libats',
49 'libagm',
50 'libpalclient',
51)
52
53
Nahhk7117b472025-03-19 06:23:56 -050054def lib_fixup_vendor_suffix(lib: str, partition: str, *args, **kwargs):
55 return f'{lib}_{partition}' if partition == 'vendor' else None
56
57
58lib_fixups: lib_fixups_user_type = {
59 **lib_fixups,
Nikita Savchenko89cc3bf2025-07-03 15:30:32 +000060 libs_add_vendor_suffix: lib_fixup_vendor_suffix,
61 libs_remove: lib_fixup_remove,
Nahhk7117b472025-03-19 06:23:56 -050062}
63
64blob_fixups: blob_fixups_user_type = {
Michael Bestasd1e8a902024-08-25 21:46:46 +030065 'system_ext/lib64/libwfdservice.so': blob_fixup()
66 .replace_needed('android.media.audio.common.types-V2-cpp.so', 'android.media.audio.common.types-V4-cpp.so'),
Cosmin Tanislav26c22112024-08-16 14:47:52 +030067 ('vendor/bin/hw/android.hardware.security.keymint-service-qti', 'vendor/lib64/libqtikeymint.so'): blob_fixup()
Aaron Kling96b00602024-08-18 17:05:38 -050068 .add_needed('android.hardware.security.rkp-V1-ndk.so'),
Arian52f4d322024-09-06 14:01:17 +020069 'vendor/lib64/vendor.libdpmframework.so': blob_fixup()
70 .add_needed('libhidlbase_shim.so'),
Bruno Martinsb5701922024-10-01 14:42:47 +010071 'vendor/lib64/libqcodec2_core.so': blob_fixup()
72 .add_needed('libcodec2_shim.so'),
73} # fmt: skip
Nahhk7117b472025-03-19 06:23:56 -050074
75module = ExtractUtilsModule(
76 'sm6225-common',
77 'xiaomi',
78 blob_fixups=blob_fixups,
79 lib_fixups=lib_fixups,
80 namespace_imports=namespace_imports,
81)
82
83if __name__ == '__main__':
84 utils = ExtractUtils.device(module)
85 utils.run()