sm8750-common: Adapt proprietary files list

Change-Id: I2c36864adf254bc445d10d30da2a771dd3bf1b20
This commit is contained in:
dianlujitao
2025-01-01 23:56:01 +08:00
committed by Bruno Martins
parent 35b578ffc4
commit 53965e5da5
18 changed files with 1360 additions and 2315 deletions

View File

@@ -1,28 +1,7 @@
//
// Copyright (C) 2021-2024 The LineageOS Project
// Copyright (C) 2021-2025 The LineageOS Project
// SPDX-License-Identifier: Apache-2.0
//
soong_namespace {
}
install_symlink {
name: "firmware_wlanmdsp.otaupdate_symlink",
vendor: true,
installed_location: "firmware/wlanmdsp.otaupdate",
symlink_target: "/data/vendor/firmware/wlanmdsp.mbn",
}
install_symlink {
name: "firmware_wlan_mac.bin_symlink",
vendor: true,
installed_location: "firmware/wlan/qca_cld/kiwi_v2/wlan_mac.bin",
symlink_target: "/mnt/vendor/persist/kiwi_v2/wlan_mac.bin",
}
install_symlink {
name: "firmware_WCNSS_qcom_cfg.ini_symlink",
vendor: true,
installed_location: "firmware/wlan/qca_cld/kiwi_v2/WCNSS_qcom_cfg.ini",
symlink_target: "/odm/vendor/etc/wifi/WCNSS_qcom_cfg.ini",
}

View File

@@ -184,7 +184,7 @@ TARGET_USERIMAGES_USE_F2FS := true
ENABLE_VENDOR_RIL_SERVICE := true
# Security
BOOT_SECURITY_PATCH := 2025-07-01
BOOT_SECURITY_PATCH := 2025-01-01
VENDOR_SECURITY_PATCH := $(BOOT_SECURITY_PATCH)
# SEPolicy

View File

@@ -1,47 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (C) 2015 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- USB Audio HAL Audio Policy Configuration file -->
<module name="usbv2" halVersion="2.0">
<mixPorts>
<mixPort name="usb_accessory output" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="usb_device output" role="source"/>
<mixPort name="usb_device input" role="sink"/>
</mixPorts>
<devicePorts>
<devicePort tagName="USB Host Out" type="AUDIO_DEVICE_OUT_USB_ACCESSORY" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="USB Device Out" type="AUDIO_DEVICE_OUT_USB_DEVICE" role="sink"/>
<devicePort tagName="USB Headset Out" type="AUDIO_DEVICE_OUT_USB_HEADSET" role="sink"/>
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source"/>
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source"/>
</devicePorts>
<routes>
<route type="mix" sink="USB Host Out"
sources="usb_accessory output"/>
<route type="mix" sink="USB Device Out"
sources="usb_device output"/>
<route type="mix" sink="USB Headset Out"
sources="usb_device output"/>
<route type="mix" sink="usb_device input"
sources="USB Device In,USB Headset In"/>
</routes>
</module>

View File

@@ -33,14 +33,9 @@ PRODUCT_PACKAGES += \
# Audio
PRODUCT_PACKAGES += \
android.hardware.audio@7.1-impl \
android.hardware.audio.effect@7.0-impl \
android.hardware.audio.service \
android.hardware.bluetooth.audio-impl \
android.hardware.soundtrigger@2.3-impl \
audio.bluetooth.default \
audio.r_submix.default \
audio.usbv2.default \
audio.usb.default \
audioadsprpcd \
libagm_compress_plugin \
libagm_mixer_plugin \
@@ -49,12 +44,21 @@ PRODUCT_PACKAGES += \
libbatterylistener \
libfmpal \
libhfp_pal \
libhotword_intf \
libmediautils_vendor.vendor \
libqcompostprocbundle \
libqcomvisualizer \
libqcomvoiceprocessing \
libvolumelistener \
sound_trigger.primary.kalama \
vendor.qti.hardware.AGMIPC@1.0-impl
libsndcardparser \
libvolumelistener
PRODUCT_PACKAGES += \
libbundleaidl \
libdownmixaidl \
libdynamicsprocessingaidl \
libloudnessenhanceraidl \
libreverbaidl \
libvisualizeraidl
AUDIO_HAL_DIR := hardware/qcom-caf/sm8750/audio/primary-hal
CONFIG_HAL_SRC_DIR := $(AUDIO_HAL_DIR)/configs/sun
@@ -81,6 +85,7 @@ PRODUCT_COPY_FILES += \
# Bluetooth
PRODUCT_PACKAGES += \
android.hardware.bluetooth.audio-impl \
lib_bt_aptx \
lib_bt_ble \
lib_bt_bundle
@@ -102,6 +107,10 @@ PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml
# Context Hub
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.context_hub.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/android.hardware.context_hub.xml
# Dalvik
$(call inherit-product, frameworks/native/build/phone-xhdpi-6144-dalvik-heap.mk)
@@ -113,9 +122,12 @@ PRODUCT_PACKAGES += \
android.hardware.graphics.mapper@4.0-impl-qti-display \
init.qti.display_boot.rc \
init.qti.display_boot.sh \
libfilefinder \
mapper.qti \
vendor.qti.hardware.display.allocator-service \
vendor.qti.hardware.display.composer-service \
vendor.qti.hardware.display.demura-service
vendor.qti.hardware.display.demura-service \
vendor.qti.hardware.display.snapalloc-impl
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml
@@ -159,8 +171,8 @@ PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-1.xml \
frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_1.xml \
frameworks/native/data/etc/android.hardware.vulkan.version-1_3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_3.xml \
frameworks/native/data/etc/android.software.opengles.deqp.level-2022-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml \
frameworks/native/data/etc/android.software.vulkan.deqp.level-2022-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml
frameworks/native/data/etc/android.software.opengles.deqp.level-2023-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml \
frameworks/native/data/etc/android.software.vulkan.deqp.level-2023-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml
# Health
PRODUCT_PACKAGES += \
@@ -177,19 +189,20 @@ PRODUCT_PACKAGES += \
IPACM_cfg.xml \
IPACM_Filter_cfg.xml
# IR
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.consumerir.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/android.hardware.consumerir.xml
# Init
PRODUCT_PACKAGES += \
fstab.default \
fstab.default.vendor_ramdisk \
init.class_main.sh \
init.kernel.post_boot.sh \
init.kernel.post_boot-kalama.sh \
init.oplus.rc \
init.qcom.early_boot.sh \
init.qcom.rc \
init.qcom.recovery.rc \
init.qcom.sh \
init.qti.kernel.rc \
init.target.rc \
ueventd.oplus.rc \
ueventd.qcom.rc
@@ -283,7 +296,7 @@ PRODUCT_PACKAGES += \
android.hardware.power-service-qti
PRODUCT_COPY_FILES += \
vendor/qcom/opensource/power/config/kalama/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml
vendor/qcom/opensource/power/config/sun/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml
# QSPA
PRODUCT_PACKAGES += \
@@ -402,7 +415,7 @@ PRODUCT_COPY_FILES += \
# Vibrator
PRODUCT_PACKAGES += \
android.hardware.vibrator.service.oplus-richtap
vendor.qti.hardware.vibrator.service.oplus
PRODUCT_COPY_FILES += \
vendor/qcom/opensource/vibrator/excluded-input-devices.xml:$(TARGET_COPY_OUT_VENDOR)/etc/excluded-input-devices.xml
@@ -412,12 +425,10 @@ DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := \
hardware/oplus/vintf/device_framework_matrix.xml \
hardware/qcom-caf/common/vendor_framework_compatibility_matrix.xml \
vendor/lineage/config/device_framework_matrix.xml
DEVICE_FRAMEWORK_MANIFEST_FILE += device/oneplus/sm8750-common/framework_manifest.xml
DEVICE_MATRIX_FILE := hardware/qcom-caf/common/compatibility_matrix.xml
DEVICE_MANIFEST_FILE := \
$(AUDIO_HAL_DIR)/configs/common/manifest_non_qmaa.xml \
$(AUDIO_HAL_DIR)/configs/common/manifest_non_qmaa_extn.xml \
$(LOCAL_PATH)/manifest_kalama.xml \
$(AUDIO_HAL_DIR)/configs/sun/manifest_audio_qti_services.xml \
$(LOCAL_PATH)/manifest_sun.xml \
$(LOCAL_PATH)/network_manifest.xml
ODM_MANIFEST_FILES := \
@@ -440,11 +451,5 @@ PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml
# WiFi firmware symlinks
PRODUCT_PACKAGES += \
firmware_wlanmdsp.otaupdate_symlink \
firmware_wlan_mac.bin_symlink \
firmware_WCNSS_qcom_cfg.ini_symlink
# Inherit from the proprietary files makefile.
$(call inherit-product, vendor/oneplus/sm8750-common/sm8750-common-vendor.mk)

View File

@@ -10,16 +10,10 @@ NTP_SERVER=time.xtracloud.net
XTRA_CA_PATH=/usr/lib/ssl-1.1/certs
# DEBUG LEVELS: 0 - none, 1 - Error, 2 - Warning, 3 - Info
# 4 - Debug, 5 - Verbose,
# 6-ALL (extra verbose for those repeated events)
# 4 - Debug, 5 - Verbose
# If DEBUG_LEVEL is commented, Android's logging levels will be used
DEBUG_LEVEL = 2
# QXDM LOG if ENABLED (1) LOC_LOG macros will go to QXDM as well as adb
# LOC_DIAGIFACE_ENABLED must be enabled as well
# 1=enable, 0=disable
QXDM_LOG = 0
# Intermediate position report, 1=enable, 0=disable
INTERMEDIATE_POS=0
@@ -163,7 +157,7 @@ A_GLONASS_POS_PROTOCOL_SELECT = 15
# 0x8: Sensor Barometer Measurement LPPe CP
# 0x10: Allow LPPe during non-E911 session over CP
# 0x20: Allow shipping the Civic Address to the server over CP
#LPPE_CP_TECHNOLOGY = 0
LPPE_CP_TECHNOLOGY = 0x1b
##################################################
# Select technology for LPPe User Plane
@@ -174,7 +168,7 @@ A_GLONASS_POS_PROTOCOL_SELECT = 15
# 0x8: Sensor Barometer Measurement LPPe UP
# 0x10: Allow LPPe during non-E911 session over UP
# 0x20: Allow shipping the Civic Address to the server over UP
#LPPE_UP_TECHNOLOGY = 0
LPPE_UP_TECHNOLOGY = 0x1b
##################################################
# AGPS_CONFIG_INJECT
@@ -353,6 +347,7 @@ NFW_CLIENT_SUPL = com.google.android.carrierlocation
NFW_CLIENT_IMS = com.google.android.carrierlocation
NFW_CLIENT_SIM = com.google.android.carrierlocation
NFW_CLIENT_MDT = com.google.android.carrierlocation
NFW_CLIENT_NTN = com.google.android.carrierlocation
NFW_CLIENT_TLOC = com.google.android.carrierlocation
NFW_CLIENT_RLOC = com.google.android.carrierlocation
NFW_CLIENT_V2X = com.google.android.carrierlocation

View File

@@ -1,3 +1,3 @@
sensors.dynamic_sensor_hal.so
sensors.ssc.so
sensors.oplus.so
sensors.qsh.so

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env -S PYTHONPATH=../../../tools/extract-utils python3
#
# SPDX-FileCopyrightText: 2024 The LineageOS Project
# SPDX-FileCopyrightText: 2024-2025 The LineageOS Project
# SPDX-License-Identifier: Apache-2.0
#
@@ -9,7 +9,6 @@ from extract_utils.fixups_blob import (
blob_fixups_user_type,
)
from extract_utils.fixups_lib import (
lib_fixup_remove,
lib_fixups,
lib_fixups_user_type,
)
@@ -29,101 +28,108 @@ namespace_imports = [
]
def lib_fixup_odm_suffix(lib: str, partition: str, *args, **kwargs):
return f'{lib}_{partition}' if partition == 'odm' else None
def lib_fixup_vendor_suffix(lib: str, partition: str, *args, **kwargs):
return f'{lib}_{partition}' if partition == 'vendor' else None
def lib_fixup_odm_suffix(lib: str, partition: str, *args, **kwargs):
return f'{lib}_{partition}' if partition == 'odm' else None
lib_fixups: lib_fixups_user_type = {
**lib_fixups,
(
'libpwirisfeature',
'libpwirishalwrapper',
): lib_fixup_odm_suffix,
(
'com.qualcomm.qti.dpm.api@1.0',
'libQnnCpu',
'libQnnHtp',
'libQnnHtpPrepare',
'libQnnHtpV73Stub',
'libhwconfigurationutil',
'vendor.oplus.hardware.cammidasservice-V1-ndk',
'vendor.oplus.hardware.communicationcenter-V2-ndk',
'vendor.pixelworks.hardware.display@1.0',
'vendor.pixelworks.hardware.display@1.1',
'vendor.pixelworks.hardware.display@1.2',
'vendor.pixelworks.hardware.feature@1.0',
'vendor.pixelworks.hardware.feature@1.1',
'vendor.qti.diaghal@1.0',
'vendor.qti.hardware.dpmservice@1.0',
'vendor.qti.hardware.qccsyshal@1.0',
'vendor.qti.hardware.qccsyshal@1.1',
'vendor.qti.hardware.qccsyshal@1.2',
'vendor.qti.hardware.qccvndhal@1.0',
'vendor.qti.hardware.wifidisplaysession@1.0',
'vendor.qti.imsrtpservice@3.0',
'vendor.qti.imsrtpservice@3.1',
'vendor.qti.ImsRtpService-V1-ndk',
'vendor.qti.diaghal-V1-ndk',
'vendor.qti.hardware.dpmaidlservice-V1-ndk',
'vendor.qti.hardware.wifidisplaysession_aidl-V1-ndk',
'vendor.qti.qccsyshal_aidl-V1-ndk',
'vendor.qti.qccvndhal_aidl-V1-ndk',
): lib_fixup_vendor_suffix,
(
'libar-acdb',
'libar-gsl',
'liblx-osal',
'libats',
'libagmclient',
'libpalclient',
'vendor.qti.hardware.AGMIPC@1.0-impl',
): lib_fixup_remove,
'vendor.oplus.hardware.displaypanelfeature-V1-ndk',
): lib_fixup_odm_suffix,
}
blob_fixups: blob_fixups_user_type = {
'odm/bin/hw/vendor.oplus.hardware.biometrics.fingerprint@2.1-service_uff': blob_fixup()
.add_needed('libshims_aidl_fingerprint_v2.oplus.so'),
'odm/bin/hw/vendor.oplus.hardware.charger-V6-service': blob_fixup()
.add_needed('libbase_shim.so'),
.add_needed('libshims_aidl_fingerprint_v3.oplus.so'),
'odm/lib64/libAlgoProcess.so': blob_fixup()
.replace_needed('android.hardware.graphics.common-V3-ndk.so', 'android.hardware.graphics.common-V6-ndk.so'),
('odm/lib64/libCOppLceTonemapAPI.so', 'odm/lib64/libCS.so', 'odm/lib64/libSuperRaw.so', 'odm/lib64/libYTCommon.so', 'odm/lib64/libyuv2.so'): blob_fixup()
.replace_needed('libstdc++.so', 'libstdc++_vendor.so'),
('odm/lib64/libHIS.so', 'odm/lib64/libOGLManager.so'): blob_fixup()
.replace_needed('android.hardware.graphics.common-V5-ndk.so', 'android.hardware.graphics.common-V6-ndk.so'),
(
'odm/lib64/libAncHumanSegFigureFusion.so',
'odm/lib64/libEIS.so',
'odm/lib64/libHIS.so',
'odm/lib64/libOPAlgoCamAiBeautyFaceRetouchCn.so',
'odm/lib64/libOPAlgoCamAiUnifySkin.so',
'odm/lib64/libOPAlgoCamFaceBeautyCap.so',
): blob_fixup()
.clear_symbol_version('AHardwareBuffer_acquire')
.clear_symbol_version('AHardwareBuffer_allocate')
.clear_symbol_version('AHardwareBuffer_describe')
.clear_symbol_version('AHardwareBuffer_lock')
.clear_symbol_version('AHardwareBuffer_lockPlanes')
.clear_symbol_version('AHardwareBuffer_release')
.clear_symbol_version('AHardwareBuffer_unlock'),
'odm/lib64/libarcsoft_high_dynamic_range_v4.so': blob_fixup()
.clear_symbol_version('remote_handle_close')
.clear_symbol_version('remote_handle_invoke')
.clear_symbol_version('remote_handle_open')
.clear_symbol_version('remote_register_buf_attr')
.clear_symbol_version('remote_register_buf'),
'odm/lib64/libextensionlayer.so': blob_fixup()
.replace_needed('libziparchive.so', 'libziparchive_odm.so'),
'product/etc/sysconfig/com.android.hotwordenrollment.common.util.xml': blob_fixup()
.regex_replace('/my_product', '/product'),
'system_ext/bin/wfdservice64': blob_fixup()
.add_needed('libwfdservice_shim.so'),
'system_ext/lib64/libwfdnative.so': blob_fixup()
.replace_needed('android.hidl.base@1.0.so', 'libhidlbase.so'),
'system_ext/lib64/libwfdservice.so': blob_fixup()
.replace_needed('android.media.audio.common.types-V2-cpp.so', 'android.media.audio.common.types-V4-cpp.so'),
('vendor/bin/hw/android.hardware.security.keymint-service-qti', 'vendor/lib64/libqtikeymint.so'): blob_fixup()
.add_needed('android.hardware.security.rkp-V3-ndk.so'),
'vendor/etc/libnfc-nci.conf': blob_fixup()
.regex_replace('NFC_DEBUG_ENABLED=1', 'NFC_DEBUG_ENABLED=0'),
'vendor/etc/libnfc-nxp.conf': blob_fixup()
.regex_replace('(NXPLOG_.*_LOGLEVEL)=0x03', '\\1=0x02')
.regex_replace('NFC_DEBUG_ENABLED=1', 'NFC_DEBUG_ENABLED=0'),
'vendor/etc/media_codecs_kalama.xml': blob_fixup()
'vendor/etc/media_codecs_sun.xml': blob_fixup()
.regex_replace('.*media_codecs_(google_audio|google_c2|google_telephony|google_video|vendor_audio).*\n', ''),
'vendor/etc/seccomp_policy/qwesd@2.0.policy': blob_fixup()
.add_line_if_missing('pipe2: 1'),
(
'vendor/lib64/camera/components/com.qti.node.dewarp.so',
'vendor/lib64/hw/com.qti.chi.override.so',
'vendor/lib64/libcamximageformatutils.so',
'vendor/lib64/libchifeature2.so',
'vendor/lib64/vendor.qti.hardware.camera.offlinecamera-service-impl.so',
): blob_fixup()
.replace_needed('android.hardware.graphics.allocator-V1-ndk.so', 'android.hardware.graphics.allocator-V2-ndk.so'),
(
'vendor/lib64/hw/libaudiocorehal.default.so',
'vendor/lib64/libaudioplatformconverter.qti.so',
'vendor/lib64/libqtigefar.so',
): blob_fixup()
.replace_needed('android.hardware.audio.core-V2-ndk.so', 'android.hardware.audio.core-V3-ndk.so')
.replace_needed('android.media.audio.common.types-V3-ndk.so', 'android.media.audio.common.types-V4-ndk.so'),
'vendor/lib64/hw/libaudiocorehal.qti.so': blob_fixup()
.replace_needed('android.media.audio.common.types-V3-ndk.so', 'android.media.audio.common.types-V4-ndk.so')
.replace_needed('android.hardware.audio.core-V2-ndk.so', 'android.hardware.audio.core-V3-ndk.so')
.replace_needed('android.hardware.audio.effect-V2-ndk.so', 'android.hardware.audio.effect-V3-ndk.so')
.replace_needed('android.hardware.audio.core.sounddose-V1-ndk.so', 'android.hardware.audio.core.sounddose-V3-ndk.so')
.replace_needed('android.hardware.audio.common-V1-ndk.so', 'android.hardware.audio.common-V4-ndk.so'),
'vendor/lib64/hw/android.hardware.bluetooth.audio_sw.so': blob_fixup()
.replace_needed('android.hardware.audio.core-V2-ndk.so', 'android.hardware.audio.core-V3-ndk.so')
.replace_needed('android.media.audio.common.types-V3-ndk.so', 'android.media.audio.common.types-V4-ndk.so')
.replace_needed('android.hardware.bluetooth.audio-V4-ndk.so', 'android.hardware.bluetooth.audio-V5-ndk.so'),
(
'vendor/lib64/btaudio_offload_if.so',
'vendor/lib64/hw/android.hardware.bluetooth.audio-impl-qti.so',
'vendor/lib64/hw/audio.bluetooth_qti.default.so',
'vendor/lib64/libbluetooth_audio_session_aidl_qti.so',
): blob_fixup()
.replace_needed('android.hardware.bluetooth.audio-V4-ndk.so', 'android.hardware.bluetooth.audio-V5-ndk.so'),
(
'vendor/lib64/libapengine.so',
'vendor/lib64/libqti-perfd.so',
): blob_fixup()
.replace_needed('vendor.qti.hardware.display.config-V5-ndk.so', 'vendor.qti.hardware.display.config-V12-ndk.so'),
(
'vendor/lib64/libcwb_qcom_aidl.so',
'vendor/lib64/libsdmclient.so',
): blob_fixup()
.replace_needed('vendor.qti.hardware.display.config-V11-ndk.so', 'vendor.qti.hardware.display.config-V12-ndk.so'),
'vendor/lib64/libqcodec2_core.so': blob_fixup()
.add_needed('libcodec2_shim.so'),
'vendor/lib64/vendor.libdpmframework.so': blob_fixup()
.add_needed('libhidlbase_shim.so'),
'vendor/lib64/libwfdmmsrc_proprietary.so': blob_fixup()
.replace_needed('android.media.audio.common.types-V2-ndk.so', 'android.media.audio.common.types-V4-ndk.so')
.replace_needed('android.hardware.audio.core-V2-ndk.so', 'android.hardware.audio.core-V3-ndk.so'),
} # fmt: skip
module = ExtractUtilsModule(

View File

@@ -1,11 +0,0 @@
<manifest version="1.0" type="framework">
<hal format="hidl">
<name>vendor.qti.hardware.qccsyshal</name>
<transport>hwbinder</transport>
<version>1.2</version>
<interface>
<name>IQccsyshal</name>
<instance>qccsyshal</instance>
</interface>
</hal>
</manifest>

View File

@@ -17,13 +17,6 @@ prebuilt_etc {
vendor_ramdisk_available: true,
}
prebuilt_etc {
name: "init.qti.kernel.rc",
src: "init.qti.kernel.rc",
sub_dir: "init/hw",
vendor: true,
}
prebuilt_etc {
name: "init.oplus.rc",
src: "init.oplus.rc",
@@ -72,18 +65,6 @@ sh_binary {
vendor: true,
}
sh_binary {
name: "init.kernel.post_boot.sh",
src: "init.kernel.post_boot.sh",
vendor: true,
}
sh_binary {
name: "init.kernel.post_boot-kalama.sh",
src: "init.kernel.post_boot-kalama.sh",
vendor: true,
}
sh_binary {
name: "init.qcom.early_boot.sh",
src: "init.qcom.early_boot.sh",

View File

@@ -1,274 +0,0 @@
#=============================================================================
# Copyright (c) 2020-2022 Qualcomm Technologies, Inc.
# All Rights Reserved.
# Confidential and Proprietary - Qualcomm Technologies, Inc.
#
# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# * Neither the name of The Linux Foundation nor
# the names of its contributors may be used to endorse or promote
# products derived from this software without specific prior written
# permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
rev=`cat /sys/devices/soc0/revision`
ddr_type=`od -An -tx /proc/device-tree/memory/ddr_device_type`
ddr_type4="07"
ddr_type5="08"
# Configure RT parameters:
# Long running RT task detection is confined to consolidated builds.
# Set RT throttle runtime to 50ms more than long running RT
# task detection time.
# Set RT throttle period to 100ms more than RT throttle runtime.
long_running_rt_task_ms=1200
sched_rt_runtime_ms=`expr $long_running_rt_task_ms + 50`
sched_rt_runtime_us=`expr $sched_rt_runtime_ms \* 1000`
sched_rt_period_ms=`expr $sched_rt_runtime_ms + 100`
sched_rt_period_us=`expr $sched_rt_period_ms \* 1000`
echo $sched_rt_period_us > /proc/sys/kernel/sched_rt_period_us
echo $sched_rt_runtime_us > /proc/sys/kernel/sched_rt_runtime_us
# Core control parameters for gold
echo 3 > /sys/devices/system/cpu/cpu3/core_ctl/min_cpus
echo 60 > /sys/devices/system/cpu/cpu3/core_ctl/busy_up_thres
echo 30 > /sys/devices/system/cpu/cpu3/core_ctl/busy_down_thres
echo 100 > /sys/devices/system/cpu/cpu3/core_ctl/offline_delay_ms
echo 4 > /sys/devices/system/cpu/cpu3/core_ctl/task_thres
echo 0 0 1 1 > /sys/devices/system/cpu/cpu3/core_ctl/not_preferred
# Core control parameters for gold+
echo 0 > /sys/devices/system/cpu/cpu7/core_ctl/min_cpus
echo 60 > /sys/devices/system/cpu/cpu7/core_ctl/busy_up_thres
echo 30 > /sys/devices/system/cpu/cpu7/core_ctl/busy_down_thres
echo 100 > /sys/devices/system/cpu/cpu7/core_ctl/offline_delay_ms
echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/task_thres
# Controls how many more tasks should be eligible to run on gold CPUs
# w.r.t number of gold CPUs available to trigger assist (max number of
# tasks eligible to run on previous cluster minus number of CPUs in
# the previous cluster).
#
# Setting to 1 by default which means there should be at least
# 5 tasks eligible to run on gold cluster (tasks running on gold cores
# plus misfit tasks on silver cores) to trigger assitance from gold+.
echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/nr_prev_assist_thresh
# Disable Core control on silver
echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable
# Setting b.L scheduler parameters
echo 95 95 > /proc/sys/walt/sched_upmigrate
echo 85 85 > /proc/sys/walt/sched_downmigrate
echo 100 > /proc/sys/walt/sched_group_upmigrate
echo 85 > /proc/sys/walt/sched_group_downmigrate
echo 1 > /proc/sys/walt/sched_walt_rotate_big_tasks
echo 400000000 > /proc/sys/walt/sched_coloc_downmigrate_ns
echo 16000000 16000000 16000000 16000000 16000000 16000000 16000000 5000000 > /proc/sys/walt/sched_coloc_busy_hyst_cpu_ns
echo 248 > /proc/sys/walt/sched_coloc_busy_hysteresis_enable_cpus
echo 10 10 10 10 10 10 10 95 > /proc/sys/walt/sched_coloc_busy_hyst_cpu_busy_pct
echo 8500000 8500000 8500000 8500000 8500000 8500000 8500000 2000000 > /proc/sys/walt/sched_util_busy_hyst_cpu_ns
echo 255 > /proc/sys/walt/sched_util_busy_hysteresis_enable_cpus
echo 1 1 1 1 1 1 1 15 > /proc/sys/walt/sched_util_busy_hyst_cpu_util
echo 40 > /proc/sys/walt/sched_cluster_util_thres_pct
echo 30 > /proc/sys/walt/sched_idle_enough
echo 10 > /proc/sys/walt/sched_ed_boost
#Set early upmigrate tunables
freq_to_migrate=1228800
silver_fmax=`cat /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq`
silver_early_upmigrate="$((1024 * $silver_fmax / $freq_to_migrate))"
silver_early_downmigrate="$((((1024 * $silver_fmax) / (((10*$freq_to_migrate) - $silver_fmax) / 10))))"
sched_upmigrate=`cat /proc/sys/walt/sched_upmigrate`
sched_downmigrate=`cat /proc/sys/walt/sched_downmigrate`
sched_upmigrate=${sched_upmigrate:0:2}
sched_downmigrate=${sched_downmigrate:0:2}
gold_early_upmigrate="$((1024 * 100 / $sched_upmigrate))"
gold_early_downmigrate="$((1024 * 100 / $sched_downmigrate))"
echo $silver_early_downmigrate $gold_early_downmigrate > /proc/sys/walt/sched_early_downmigrate
echo $silver_early_upmigrate $gold_early_upmigrate > /proc/sys/walt/sched_early_upmigrate
# set the threshold for low latency task boost feature which prioritize
# binder activity tasks
echo 325 > /proc/sys/walt/walt_low_latency_task_threshold
# cpuset parameters
echo 0-2 > /dev/cpuset/background/cpus
echo 0-2 > /dev/cpuset/system-background/cpus
# Turn off scheduler boost at the end
echo 0 > /proc/sys/walt/sched_boost
# Reset the RT boost, which is 1024 (max) by default.
echo 0 > /proc/sys/kernel/sched_util_clamp_min_rt_default
# configure governor settings for silver cluster
echo "walt" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor
echo 0 > /sys/devices/system/cpu/cpufreq/policy0/walt/down_rate_limit_us
echo 0 > /sys/devices/system/cpu/cpufreq/policy0/walt/up_rate_limit_us
if [ $rev == "1.0" ] || [ $rev == "1.1" ]; then
echo 1324800 > /sys/devices/system/cpu/cpufreq/policy0/walt/hispeed_freq
else
echo 1267200 > /sys/devices/system/cpu/cpufreq/policy0/walt/hispeed_freq
fi
echo 556800 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq
echo 1 > /sys/devices/system/cpu/cpufreq/policy0/walt/pl
# configure input boost settings
if [ $rev == "1.0" ] || [ $rev == "1.1" ]; then
echo 1382800 0 0 0 0 0 0 0 > /proc/sys/walt/input_boost/input_boost_freq
else
echo 1228800 0 0 0 0 0 0 0 > /proc/sys/walt/input_boost/input_boost_freq
fi
echo 100 > /proc/sys/walt/input_boost/input_boost_ms
# configure governor settings for gold cluster
echo "walt" > /sys/devices/system/cpu/cpufreq/policy3/scaling_governor
echo 0 > /sys/devices/system/cpu/cpufreq/policy3/walt/down_rate_limit_us
echo 0 > /sys/devices/system/cpu/cpufreq/policy3/walt/up_rate_limit_us
if [ $rev == "1.0" ] || [ $rev == "1.1" ]; then
echo 1555200 > /sys/devices/system/cpu/cpufreq/policy3/walt/hispeed_freq
else
echo 1555200 > /sys/devices/system/cpu/cpufreq/policy3/walt/hispeed_freq
fi
echo 537600 > /sys/devices/system/cpu/cpufreq/policy3/scaling_min_freq
echo 1 > /sys/devices/system/cpu/cpufreq/policy3/walt/pl
# configure governor settings for gold+ cluster
echo "walt" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor
echo 0 > /sys/devices/system/cpu/cpufreq/policy7/walt/down_rate_limit_us
echo 0 > /sys/devices/system/cpu/cpufreq/policy7/walt/up_rate_limit_us
if [ $rev == "1.0" ] || [ $rev == "1.1" ]; then
echo 1593600 > /sys/devices/system/cpu/cpufreq/policy7/walt/hispeed_freq
else
echo 1728000 > /sys/devices/system/cpu/cpufreq/policy7/walt/hispeed_freq
fi
echo 748800 > /sys/devices/system/cpu/cpufreq/policy7/scaling_min_freq
echo 1 > /sys/devices/system/cpu/cpufreq/policy7/walt/pl
# configure bus-dcvs
bus_dcvs="/sys/devices/system/cpu/bus_dcvs"
for device in $bus_dcvs/*
do
cat $device/hw_min_freq > $device/boost_freq
done
for llccbw in $bus_dcvs/LLCC/*bwmon-llcc
do
echo "4577 7110 9155 12298 14236 15258" > $llccbw/mbps_zones
echo 4 > $llccbw/sample_ms
echo 80 > $llccbw/io_percent
echo 20 > $llccbw/hist_memory
echo 5 > $llccbw/hyst_length
echo 1 > $llccbw/idle_length
echo 30 > $llccbw/down_thres
echo 0 > $llccbw/guard_band_mbps
echo 250 > $llccbw/up_scale
echo 1600 > $llccbw/idle_mbps
echo 806000 > $llccbw/max_freq
echo 40 > $llccbw/window_ms
done
for ddrbw in $bus_dcvs/DDR/*bwmon-ddr
do
echo "2086 5931 6515 7980 12191 16259" > $ddrbw/mbps_zones
echo 4 > $ddrbw/sample_ms
echo 80 > $ddrbw/io_percent
echo 20 > $ddrbw/hist_memory
echo 5 > $ddrbw/hyst_length
echo 1 > $ddrbw/idle_length
echo 30 > $ddrbw/down_thres
echo 0 > $ddrbw/guard_band_mbps
echo 250 > $ddrbw/up_scale
echo 1600 > $ddrbw/idle_mbps
echo 2736000 > $ddrbw/max_freq
echo 40 > $ddrbw/window_ms
done
for latfloor in $bus_dcvs/*/*latfloor
do
echo 25000 > $latfloor/ipm_ceil
done
for l3gold in $bus_dcvs/L3/*gold
do
echo 4000 > $l3gold/ipm_ceil
done
for l3prime in $bus_dcvs/L3/*prime
do
echo 20000 > $l3prime/ipm_ceil
done
for qosgold in $bus_dcvs/DDRQOS/*gold
do
echo 50 > $qosgold/ipm_ceil
done
for qosprime in $bus_dcvs/DDRQOS/*prime
do
echo 100 > $qosprime/ipm_ceil
done
for ddrprime in $bus_dcvs/DDR/*prime
do
echo 25 > $ddrprime/freq_scale_pct
echo 1500 > $ddrprime/freq_scale_floor_mhz
echo 2726 > $ddrprime/freq_scale_ceil_mhz
done
echo s2idle > /sys/power/mem_sleep
echo N > /sys/devices/system/cpu/qcom_lpm/parameters/sleep_disabled
# Let kernel know our image version/variant/crm_version
if [ -f /sys/devices/soc0/select_image ]; then
image_version="10:"
image_version+=`getprop ro.build.id`
image_version+=":"
image_version+=`getprop ro.build.version.incremental`
image_variant=`getprop ro.product.name`
image_variant+="-"
image_variant+=`getprop ro.build.type`
oem_version=`getprop ro.build.version.codename`
echo 10 > /sys/devices/soc0/select_image
echo $image_version > /sys/devices/soc0/image_version
echo $image_variant > /sys/devices/soc0/image_variant
echo $oem_version > /sys/devices/soc0/image_crm_version
fi
echo 4 > /proc/sys/kernel/printk
# Change console log level as per console config property
console_config=`getprop persist.vendor.console.silent.config`
case "$console_config" in
"1")
echo "Enable console config to $console_config"
echo 0 > /proc/sys/kernel/printk
;;
*)
echo "Enable console config to $console_config"
;;
esac
setprop vendor.post_boot.parsed 1

View File

@@ -1,179 +0,0 @@
#=============================================================================
# Copyright (c) 2019-2022 Qualcomm Technologies, Inc.
# All Rights Reserved.
# Confidential and Proprietary - Qualcomm Technologies, Inc.
#
# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# * Neither the name of The Linux Foundation nor
# the names of its contributors may be used to endorse or promote
# products derived from this software without specific prior written
# permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
if [[ "$(getprop vendor.post_boot.custom)" == "true" ]]; then
echo "Device overrides post_boot, skipping $0"
exit 0
fi
function configure_zram_parameters() {
MemTotalStr=`cat /proc/meminfo | grep MemTotal`
MemTotal=${MemTotalStr:16:8}
low_ram=`getprop ro.config.low_ram`
# Zram disk - 75% for Go and < 2GB devices .
# For >2GB Non-Go devices, size = 50% of RAM size. Limit the size to 4GB.
# And enable lz4 zram compression for Go targets.
let RamSizeGB="( $MemTotal / 1048576 ) + 1"
diskSizeUnit=M
if [ $RamSizeGB -le 2 ]; then
let zRamSizeMB="( $RamSizeGB * 1024 ) * 3 / 4"
else
let zRamSizeMB="( $RamSizeGB * 1024 ) / 2"
fi
# use MB avoid 32 bit overflow
if [ $zRamSizeMB -gt 4096 ]; then
let zRamSizeMB=4096
fi
if [ "$low_ram" == "true" ]; then
echo lz4 > /sys/block/zram0/comp_algorithm
fi
if [ -f /sys/block/zram0/disksize ]; then
if [ -f /sys/block/zram0/use_dedup ]; then
echo 1 > /sys/block/zram0/use_dedup
fi
echo "$zRamSizeMB""$diskSizeUnit" > /sys/block/zram0/disksize
# ZRAM may use more memory than it saves if SLAB_STORE_USER
# debug option is enabled.
if [ -e /sys/kernel/slab/zs_handle ]; then
echo 0 > /sys/kernel/slab/zs_handle/store_user
fi
if [ -e /sys/kernel/slab/zspage ]; then
echo 0 > /sys/kernel/slab/zspage/store_user
fi
mkswap /dev/block/zram0
swapon /dev/block/zram0 -p 32758
fi
}
function configure_read_ahead_kb_values() {
MemTotalStr=`cat /proc/meminfo | grep MemTotal`
MemTotal=${MemTotalStr:16:8}
dmpts=$(ls /sys/block/*/queue/read_ahead_kb | grep -e dm -e mmc -e sd)
# dmpts holds below read_ahead_kb nodes if exists:
# /sys/block/dm-0/queue/read_ahead_kb to /sys/block/dm-10/queue/read_ahead_kb
# /sys/block/sda/queue/read_ahead_kb to /sys/block/sdh/queue/read_ahead_kb
# Set 128 for <= 4GB &
# set 512 for >= 5GB targets.
if [ $MemTotal -le 4194304 ]; then
ra_kb=128
else
ra_kb=512
fi
if [ -f /sys/block/mmcblk0/bdi/read_ahead_kb ]; then
echo $ra_kb > /sys/block/mmcblk0/bdi/read_ahead_kb
fi
if [ -f /sys/block/mmcblk0rpmb/bdi/read_ahead_kb ]; then
echo $ra_kb > /sys/block/mmcblk0rpmb/bdi/read_ahead_kb
fi
for dm in $dmpts; do
if [ `cat $(dirname $dm)/../removable` -eq 0 ]; then
echo $ra_kb > $dm
fi
done
}
function configure_memory_parameters() {
# Set Memory parameters.
#
# Set per_process_reclaim tuning parameters
# All targets will use vmpressure range 50-70,
# All targets will use 512 pages swap size.
#
# Set Low memory killer minfree parameters
# 32 bit Non-Go, all memory configurations will use 15K series
# 32 bit Go, all memory configurations will use uLMK + Memcg
# 64 bit will use Google default LMK series.
#
# Set ALMK parameters (usually above the highest minfree values)
# vmpressure_file_min threshold is always set slightly higher
# than LMK minfree's last bin value for all targets. It is calculated as
# vmpressure_file_min = (last bin - second last bin ) + last bin
#
# Set allocstall_threshold to 0 for all targets.
#
configure_zram_parameters
configure_read_ahead_kb_values
echo 100 > /proc/sys/vm/swappiness
# Disable periodic kcompactd wakeups. We do not use THP, so having many
# huge pages is not as necessary.
echo 0 > /proc/sys/vm/compaction_proactiveness
# With THP enabled, the kernel greatly increases min_free_kbytes over its
# default value. Disable THP to prevent resetting of min_free_kbytes
# value during online/offline pages.
if [ -f /sys/kernel/mm/transparent_hugepage/enabled ]; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
MemTotalStr=`cat /proc/meminfo | grep MemTotal`
MemTotal=${MemTotalStr:16:8}
let RamSizeGB="( $MemTotal / 1048576 ) + 1"
# Set the min_free_kbytes to standard kernel value
if [ $RamSizeGB -ge 8 ]; then
echo 11584 > /proc/sys/vm/min_free_kbytes
elif [ $RamSizeGB -ge 4 ]; then
echo 8192 > /proc/sys/vm/min_free_kbytes
elif [ $RamSizeGB -ge 2 ]; then
echo 5792 > /proc/sys/vm/min_free_kbytes
else
echo 4096 > /proc/sys/vm/min_free_kbytes
fi
}
configure_memory_parameters
if [ -f /sys/devices/soc0/soc_id ]; then
platformid=`cat /sys/devices/soc0/soc_id`
fi
case "$platformid" in
"519"|"536"|"600"|"601"|"603"|"604")
/vendor/bin/sh /vendor/bin/init.kernel.post_boot-kalama.sh
;;
*)
echo "***WARNING***: Invalid SoC ID\n\t No postboot settings applied!!\n"
;;
esac

View File

@@ -1,195 +0,0 @@
#=============================================================================
# Copyright (c) 2019-2022 Qualcomm Technologies, Inc.
# All Rights Reserved.
# Confidential and Proprietary - Qualcomm Technologies, Inc.
#
# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# * Neither the name of The Linux Foundation nor
# the names of its contributors may be used to endorse or promote
# products derived from this software without specific prior written
# permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
import /vendor/etc/init/hw/init.qti.kernel.test.rc
on early-init
# Set the console loglevel to < KERN_WARN
# Set the default message loglevel to KERN_INFO
write /proc/sys/kernel/printk "4 6 1 7"
start gki.modprobe
start vendor.modprobe
# Mount tracefs in /sys/kernel/tracing as CONFIG_DEBUG_FS might be
# disabled and /sys/kernel/debug/tracing might not be available
mount tracefs tracefs /sys/kernel/tracing
chmod 0755 /sys/kernel/tracing
chown root system /dev/kmsg
chmod 0620 /dev/kmsg
write /proc/sys/kernel/sched_boost 1
write /proc/sys/kernel/firmware_config/force_sysfs_fallback 1
on post-fs
wait_for_prop vendor.all.modules.ready 1
# Create cgroup mount point for memory
mkdir /sys/fs/cgroup/memory/bg 0750 root system
write /sys/fs/cgroup/memory/bg/memory.swappiness 140
write /sys/fs/cgroup/memory/bg/memory.move_charge_at_immigrate 1
chown root system /sys/fs/cgroup/memory/bg/tasks
chmod 0660 /sys/fs/cgroup/memory/bg/tasks
# update scheduler tunables
write /dev/cpuctl/foreground/cpu.uclamp.sched_boost_no_override 1
write /dev/cpuctl/top-app/cpu.uclamp.sched_boost_no_override 1
write /dev/cpuctl/background/cpu.uclamp.colocate 0
write /dev/cpuctl/foreground/cpu.uclamp.colocate 0
write /dev/cpuctl/top-app/cpu.uclamp.colocate 1
# set aggressive read ahead for dm-0 and dm-1 during boot up
write /sys/block/dm-0/queue/read_ahead_kb 2048
write /sys/block/dm-1/queue/read_ahead_kb 2048
write /sys/block/dm-2/queue/read_ahead_kb 2048
on early-boot
# Allow subsystem (modem etc) debugging
exec_background u:r:vendor_qti_init_shell_bg:s0 -- /vendor/bin/init.qti.write.sh /sys/kernel/boot_adsp/boot 1
exec_background u:r:vendor_qti_init_shell_bg:s0 -- /vendor/bin/init.qti.write.sh /sys/kernel/boot_cdsp/boot 1
exec_background u:r:vendor_qti_init_shell_bg:s0 -- /vendor/bin/init.qti.write.sh /sys/devices/virtual/cvp/cvp/boot 1
on boot
# Allow access to dload sysfs node
chown root system /sys/kernel/dload/emmc_dload
chmod 0660 /sys/kernel/dload/emmc_dload
chown root system /dev/block/bootdevice/by-name/ramdump
chmod 0660 /dev/block/bootdevice/by-name/ramdump
chown root system /sys/kernel/dload/dload_mode
chmod 0660 /sys/kernel/dload/dload_mode
# set the io-scheduler to bfq on all mq support devices
write /sys/block/sda/queue/scheduler bfq
write /sys/block/sdb/queue/scheduler bfq
write /sys/block/sdc/queue/scheduler bfq
write /sys/block/sdd/queue/scheduler bfq
write /sys/block/sde/queue/scheduler bfq
write /sys/block/sdf/queue/scheduler bfq
write /sys/block/sdg/queue/scheduler bfq
write /sys/block/sdh/queue/scheduler bfq
write /sys/class/block/mmcblk0/queue/scheduler bfq
write /sys/class/block/mmcblk1/queue/scheduler bfq
# update io-scheduler tunables
write /sys/block/sda/queue/iosched/slice_idle 0
write /sys/block/sdb/queue/iosched/slice_idle 0
write /sys/block/sdc/queue/iosched/slice_idle 0
write /sys/block/sdd/queue/iosched/slice_idle 0
write /sys/block/sde/queue/iosched/slice_idle 0
write /sys/block/sdf/queue/iosched/slice_idle 0
write /sys/block/sdg/queue/iosched/slice_idle 0
write /sys/block/sdh/queue/iosched/slice_idle 0
write /sys/class/block/mmcblk0/queue/iosched/slice_idle 0
write /sys/class/block/mmcblk1/queue/iosched/slice_idle 0
# Allow access to memory hotplug device attributes
chown system system /sys/kernel/mem-offline/anon_migrate
on post-fs-data
# Create directory used for dump collection
mkdir /data/vendor/ssrdump 0770 root system
on property:persist.sys.ssr.enable_debug=*
write /sys/module/subsys_pil_tz/parameters/enable_debug ${persist.sys.ssr.enable_debug}
on property:persist.sys.mba_boot_timeout=*
write /sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms ${persist.sys.mba_boot_timeout}
on property:persist.sys.modem_auth_timeout=*
write /sys/module/pil_msa/parameters/modem_auth_timeout_ms ${persist.sys.modem_auth_timeout}
on property:persist.sys.pil_proxy_timeout=*
write /sys/module/peripheral_loader/parameters/proxy_timeout_ms ${persist.sys.pil_proxy_timeout}
on property:persist.vendor.ssr.enable_ramdumps=1
write /sys/module/subsystem_restart/parameters/enable_ramdumps 1
on property:persist.vendor.ssr.enable_ramdumps=0
write /sys/module/subsystem_restart/parameters/enable_ramdumps 0
on property:persist.vendor.sys.rawdump_copy=1
write /sys/kernel/dload/emmc_dload 1
on property:persist.vendor.sys.rawdump_copy=0
write /sys/kernel/dload/emmc_dload 0
service kernel-boot /vendor/bin/sh /vendor/bin/init.qti.kernel.sh
class core
user root
group root
disabled
oneshot
service kernel-post-boot /vendor/bin/sh /vendor/bin/init.kernel.post_boot.sh
class core
user root
group root system wakelock graphics
disabled
oneshot
on property:sys.boot_completed=1
write /dev/kmsg "Boot completed "
#Reset read ahead for dm-0, dm-1 and dm-2 to 512kb
write /sys/block/dm-0/queue/read_ahead_kb 512
write /sys/block/dm-1/queue/read_ahead_kb 512
write /sys/block/dm-2/queue/read_ahead_kb 512
write /proc/sys/vm/page-cluster 0
start kernel-boot
start kernel-post-boot
on charger
start kernel-post-boot
service vendor.msm_irqbalance /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance.conf
class core
user root
group root
disabled
service gki.modprobe /vendor/bin/system_dlkm_modprobe.sh
class main
user root
group root system
disabled
stdio_to_kmsg
seclabel u:r:vendor_modprobe:s0
oneshot
service vendor.modprobe /vendor/bin/vendor_modprobe.sh
class main
user root
group root system
disabled
stdio_to_kmsg
seclabel u:r:vendor_modprobe:s0
oneshot

View File

@@ -1,366 +0,0 @@
<!--
Copyright (C) 2022 The Linux Foundation
SPDX-License-Identifier: BSD-3-Clause
-->
<manifest version="5.0" type="device" target-level="7">
<hal format="hidl">
<name>android.hardware.audio</name>
<transport>hwbinder</transport>
<version>7.1</version>
<interface>
<name>IDevicesFactory</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.audio.effect</name>
<transport>hwbinder</transport>
<version>7.0</version>
<interface>
<name>IEffectsFactory</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.bluetooth</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IBluetoothHci</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.camera.provider</name>
<transport>hwbinder</transport>
<version>2.4</version>
<interface>
<name>ICameraProvider</name>
<instance>legacy/1</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.drm</name>
<transport>hwbinder</transport>
<fqname>@1.3::ICryptoFactory/wfdhdcp</fqname>
<fqname>@1.3::IDrmFactory/wfdhdcp</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.gatekeeper</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IGatekeeper</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.secure_element</name>
<transport>hwbinder</transport>
<version>1.2</version>
<interface>
<name>ISecureElement</name>
<instance>SIM1</instance>
<instance>SIM2</instance>
<instance>eSE1</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.tetheroffload.config</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IOffloadConfig</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.tetheroffload.control</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IOffloadControl</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>com.dsi.ant</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IAnt</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>com.qualcomm.qti.dpm.api</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IdpmQmi</name>
<instance>dpmQmiService</instance>
</interface>
</hal>
<hal format="hidl">
<name>com.qualcomm.qti.imscmservice</name>
<transport>hwbinder</transport>
<version>2.2</version>
<interface>
<name>IImsCmService</name>
<instance>qti.ims.connectionmanagerservice</instance>
</interface>
</hal>
<hal format="hidl">
<name>com.qualcomm.qti.uceservice</name>
<transport>hwbinder</transport>
<version>2.3</version>
<interface>
<name>IUceService</name>
<instance>com.qualcomm.qti.uceservice</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.data.factory</name>
<transport>hwbinder</transport>
<version>2.7</version>
<interface>
<name>IFactory</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.esepowermanager</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IEsePowerManager</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.alarm</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IAlarm</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.bluetooth_audio</name>
<transport>hwbinder</transport>
<version>2.1</version>
<interface>
<name>IBluetoothAudioProvidersFactory</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.bluetooth_sar</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IBluetoothSar</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.btconfigstore</name>
<transport>hwbinder</transport>
<version>2.0</version>
<interface>
<name>IBTConfigStore</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.cacert</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IService</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.capabilityconfigstore</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ICapabilityConfigStore</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.data.latency</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ILinkLatency</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.dpmservice</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IDpmService</name>
<instance>DpmService</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.dsp</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IDspService</name>
<instance>dspservice</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.embmssl</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IEmbms</name>
<instance>embmsslServer0</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.factory</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IFactory</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.fm</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IFmHci</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.iop</name>
<transport>hwbinder</transport>
<version>2.0</version>
<interface>
<name>IIop</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.mwqemadapter</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IMwqemAdapter</name>
<instance>MwqemAdapter</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.qccvndhal</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IQccvndhal</name>
<instance>qccvndhal</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.qseecom</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IQSEECom</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.internal.deviceinfo</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IDeviceInfo</name>
<instance>deviceinfo</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.sensorscalibrate</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ISensorsCalibrate</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.soter</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ISoter</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.wifi.wifilearner</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IWifiStats</name>
<instance>wifiStats</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.ims.callinfo</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IService</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.ims.factory</name>
<transport>hwbinder</transport>
<version>1.1</version>
<version>2.2</version>
<interface>
<name>IImsFactory</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.imsrtpservice</name>
<transport>hwbinder</transport>
<version>3.1</version>
<interface>
<name>IRTPService</name>
<instance>imsrtpservice</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.qesdhal</name>
<transport>hwbinder</transport>
<version>1.3</version>
<interface>
<name>IQesdhal</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.qspmhal</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IQspmhal</name>
<instance>default</instance>
</interface>
</hal>
</manifest>

14
manifest_sun.xml Normal file
View File

@@ -0,0 +1,14 @@
<!--
Copyright (C) 2022 The Linux Foundation
SPDX-License-Identifier: BSD-3-Clause
-->
<manifest version="8.0" type="device" target-level="8">
<hal format="aidl">
<name>android.hardware.gatekeeper</name>
<version>1</version>
<interface>
<name>IGatekeeper</name>
<instance>default</instance>
</interface>
</hal>
</manifest>

View File

@@ -3,9 +3,18 @@
SPDX-License-Identifier: BSD-3-Clause
-->
<manifest version="1.0" type="device">
<hal format="aidl">
<name>android.hardware.radio.data</name>
<version>3</version>
<interface>
<name>IRadioData</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
</hal>
<hal format="aidl">
<name>android.hardware.radio.messaging</name>
<version>1</version>
<version>3</version>
<interface>
<name>IRadioMessaging</name>
<instance>slot1</instance>
@@ -14,7 +23,7 @@
</hal>
<hal format="aidl">
<name>android.hardware.radio.modem</name>
<version>1</version>
<version>3</version>
<interface>
<name>IRadioModem</name>
<instance>slot1</instance>
@@ -23,7 +32,7 @@
</hal>
<hal format="aidl">
<name>android.hardware.radio.network</name>
<version>1</version>
<version>3</version>
<interface>
<name>IRadioNetwork</name>
<instance>slot1</instance>
@@ -31,8 +40,17 @@
</interface>
</hal>
<hal format="aidl">
<name>android.hardware.radio.sim</name>
<name>android.hardware.radio.sap</name>
<version>1</version>
<interface>
<name>ISap</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
</hal>
<hal format="aidl">
<name>android.hardware.radio.sim</name>
<version>3</version>
<interface>
<name>IRadioSim</name>
<instance>slot1</instance>
@@ -41,21 +59,40 @@
</hal>
<hal format="aidl">
<name>android.hardware.radio.voice</name>
<version>1</version>
<version>3</version>
<interface>
<name>IRadioVoice</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
</hal>
<hal format="aidl">
<name>vendor.qti.hardware.data.connectionaidl</name>
<version>1</version>
<interface>
<name>IDataConnection</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
</hal>
<hal format="aidl">
<name>vendor.qti.hardware.data.connectionfactory</name>
<version>1</version>
<interface>
<name>IFactory</name>
<instance>slot0</instance>
<instance>slot1</instance>
</interface>
</hal>
<hal format="aidl">
<name>vendor.qti.hardware.data.iwlandata</name>
<version>2</version>
<interface>
<name>IIWlan</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
</hal>
<hal format="aidl">
<name>vendor.qti.hardware.radio.am</name>
<version>1</version>
@@ -67,13 +104,22 @@
</hal>
<hal format="aidl">
<name>vendor.qti.hardware.radio.ims</name>
<version>12</version>
<version>16</version>
<interface>
<name>IImsRadio</name>
<instance>imsradio0</instance>
<instance>imsradio1</instance>
</interface>
</hal>
<hal format="aidl">
<name>vendor.qti.hardware.radio.lpa</name>
<version>1</version>
<interface>
<name>IUimLpa</name>
<instance>UimLpa0</instance>
<instance>UimLpa1</instance>
</interface>
</hal>
<hal format="aidl">
<name>vendor.qti.hardware.radio.qcrilhook</name>
<version>1</version>
@@ -85,66 +131,34 @@
</hal>
<hal format="aidl">
<name>vendor.qti.hardware.radio.qtiradio</name>
<version>9</version>
<version>13</version>
<interface>
<name>IQtiRadioStable</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.data.connection</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IDataConnection</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
</hal> <hal format="hidl">
<name>vendor.qti.hardware.data.iwlan</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IIWlan</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.lpa</name>
<transport>hwbinder</transport>
<version>1.3</version>
<interface>
<name>IUimLpa</name>
<instance>UimLpa0</instance>
<instance>UimLpa1</instance>
</interface>
</hal>
<hal format="hidl">
<hal format="aidl">
<name>vendor.qti.hardware.radio.uim_remote_client</name>
<transport>hwbinder</transport>
<version>1.0</version>
<version>1</version>
<interface>
<name>IUimRemoteServiceClient</name>
<instance>uimRemoteClient0</instance>
<instance>uimRemoteClient1</instance>
</interface>
</hal>
<hal format="hidl">
<hal format="aidl">
<name>vendor.qti.hardware.radio.uim_remote_server</name>
<transport>hwbinder</transport>
<version>1.0</version>
<version>1</version>
<interface>
<name>IUimRemoteServiceServer</name>
<instance>uimRemoteServer0</instance>
<instance>uimRemoteServer1</instance>
</interface>
</hal>
<hal format="hidl">
<hal format="aidl">
<name>vendor.qti.hardware.radio.uim</name>
<transport>hwbinder</transport>
<version>1.2</version>
<version>1</version>
<interface>
<name>IUim</name>
<instance>Uim0</instance>

View File

@@ -30,4 +30,13 @@
<instance>OplusRadio1</instance>
</interface>
</hal>
<hal format="aidl">
<name>vendor.oplus.hardware.subsys_interface.subsys_radio</name>
<version>4</version>
<interface>
<name>ISubsysRadio</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
</hal>
</manifest>

File diff suppressed because it is too large Load Diff

View File

@@ -23,7 +23,6 @@ persist.dbg.vt_avail_ovr=1
persist.dbg.wfc_avail_ovr=1
# Media
media.settings.xml=/vendor/etc/media_profiles_vendor.xml
media.stagefright.thumbnail.prefer_hw_codecs=true
ro.media.recorder-max-base-layer-fps=60
vendor.mm.enable.qcom_parser=4044018