Compare commits

23 Commits
bka ... vic

Author SHA1 Message Date
Skyblueborb
de903ec0cd sm6125-common: Build QCamera wrapper
Allows SM6125 to use the common Lineage camera HAL without any source
edits. Shifts the camera struct for laurel_sprout to avoid get_cam_pos.
Edits metadata for ginkgo/willow to properly register ID 61 logical
camera.

Change-Id: Iabf37484a401e63dcbcebac3db6bfbd898d78b1f
Signed-off-by: Skyblueborb <tomaszborbely0710@gmail.com>
2025-09-05 00:03:15 +02:00
Skyblueborb
f53e61bae7 sm6125-common: sepolicy: Allow vendor_init to set camera remapid prop
Change-Id: I43dc9fa5d79b55ef338a1fd09f372ab0a3acefec
2025-09-05 00:03:15 +02:00
Skyblueborb
9614b6e51f sm6125-common: props: Switch to aux camera blacklist
Change-Id: Ide5f0007da2e7ec70ebebfa8e25aa398260a3ad1
2025-09-05 00:03:15 +02:00
Tim Zimmermann
4624c1be47 sm6125-common: Switch to AIDL camera HAL
Change-Id: Idc9ccc33c4ba9c2c6668d145405da623cf4dfc49
2025-09-05 00:03:15 +02:00
Michael Bestas
fcbfab03c9 sm6125-common: Enable UFFD GC
Kernel has support for it now.

Change-Id: I3863ee71477f321fe47646571b857fdc39a1902b
2025-08-11 17:59:31 +02:00
LuK1337
204c1d042f sm6125-common: Set SSR restart_level in init.qcom.rc
Change-Id: I31e174f8c3647c17152a2b225b1bb524e22e07aa
2025-08-11 17:59:31 +02:00
Yumi Yukimura
e6920755c3 sm6125-common: Migrate to QTI USB Gadget AIDL HAL
Change-Id: I6adbca2fab9a3fe0477d17f9786166828b786710
2025-08-11 17:59:31 +02:00
Yumi Yukimura
d08bb94b29 sm6125-common: Move usage of USB MTP/PTP functionality with USB F_FS driver
* `vendor/qcom/opensource/usb/vendor_product.mk` enables it for
  kernel 4.9~4.19, and we're on kernel 4.14

Change-Id: I7bc8153b4016ab804d4e385ece5808f187a87886
2025-08-11 17:59:31 +02:00
LuK1337
5b976910b7 sm6125-common: Pull appropriate USB props from vendor_product.mk
Change-Id: I93b25c5d0989c83d1c8d7b7946a083771febdddd
2025-08-11 17:59:31 +02:00
donjohanliebert
c2e6c6b9a9 sm6215: fix lag while app opening and QS lags
Signed-off-by: donjohanliebert <donjohanliebert@gmail.com>
Signed-off-by: Onelots <onelots@onelots.fr>
2025-06-11 23:50:16 +02:00
26429fe44c sm6125-common: move to EvolutionX hardware
Signed-off-by: Onelots <onelots@onelots.fr>
2025-06-11 23:50:16 +02:00
0cca6b8bb2 sm6125-common: dependencies: move to EvolutionX for hardware and vendor common
Signed-off-by: Onelots <onelots@onelots.fr>
2025-06-11 23:50:16 +02:00
Pranav Vashi
d08ba907ea sm6125-common: dolby: Add profiles overlay for moto dolby
Change-Id: Ided92625cb73f530656e86929b3ba70fea1e940d
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: firebird11 <hbgassel@gmail.com>
2025-06-11 23:50:16 +02:00
Pranav Vashi
462dea4cad sm6125-common: dolby: Update dax-default from moto
Change-Id: I430adc74c64093bf3c1439e66607567cb6444b80
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: firebird11 <hbgassel@gmail.com>
2025-06-11 23:50:16 +02:00
Pranav Vashi
c8d24f4cb6 sm6125-common: libstagefright_foundation-v33 moved to lineage compat
Change-Id: Ib1fd8644e6c2567c89d67967f31c62582cc006ef
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: firebird11 <hbgassel@gmail.com>
2025-06-11 23:50:16 +02:00
dogpoopy
19eb5b11fd sm6125-common: Switch dolby soundfx to libswdap
* libhwdap.so doesn't work with devices that doesn't have dolby hardware support
* libswdap.so from https://github.com/reiryuki/Dolby-Atmos-Moto-G52-Magisk-Module.git

[@neobuddy89: Pin libswdap.so from above module]
Change-Id: Icb22599d2d439a837b537b59330f30e558869532
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: firebird11 <hbgassel@gmail.com>
2025-06-11 23:50:16 +02:00
Pranav Vashi
17b4302068 sm6125-common: audio: Add dolby to audio effects
Change-Id: Ie4865489f79b617f2568fc29b382c56bb0cd6f11
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: firebird11 <hbgassel@gmail.com>
2025-06-11 23:50:16 +02:00
Pranav Vashi
33da526652 sm6125-common: audio: Apply NLSound 4.0 optimization for dolby
Change-Id: I221799b79f80933cc8302418f1290893722a5368
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: firebird11 <hbgassel@gmail.com>
2025-06-11 23:50:16 +02:00
basamaryan
8e1410fd09 sm6125-common: audio: Forcefully disable volume leveler
sed -i "/volume-leveler-enable/ s/true/false/g" configs/audio/dax-default.xml

Change-Id: I7ceb29291a9e55036d57975f5a28a149c7fcb435
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: firebird11 <hbgassel@gmail.com>
2025-06-11 23:50:16 +02:00
Fabian Leutenegger
5eb0a2f976 sm6125-common: Link Dolby Atmos dependencies against v33 libstagefright_foundation
* fixes crashes and absurdly high CPU usage while using dolby

Co-authored-by: Woomymy <woomy@woomy.be>
Change-Id: Ib72b775dae677f3085d0b0e2afcbb709d8690063
Signed-off-by: basamaryan <basam.aryan@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: firebird11 <hbgassel@gmail.com>
2025-06-11 23:50:16 +02:00
basamaryan
4dc89c625e sm6125-common: Build XiaomiDolby
Change-Id: I31ff2c27a479423951c8a645bf1cd65dc6ad6f81
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: firebird11 <hbgassel@gmail.com>
2025-06-11 23:50:16 +02:00
madmax7896
8154146a40 sm6125-common: Import Dolby audio blobs and sepolicy
Squashed with:
commit b1baf8e4109edf71727c39bff18077110174dff2
Author: Yuan Si <do4suki@gmail.com>
Date:   Sat Sep 16 06:35:46 2023 +0800

    sweet: sepolicy: Address more Dolby audio denials

    09-16 06:33:17.209   613   613 E SELinux : avc:  denied  { find } for interface=vendor.dolby.hardware.dms::IDms sid=u:r:mediacodec:s0 pid=1262 scontext=u:r:mediacodec:s0 tcontext=u:object_r:hal_dms_hwservice:s0 tclass=hwservice_manager permissive=0
    09-16 06:33:17.209  1262  8489 E DecDynamicConfig: connectService : Connect to Dolby Native Service failed
    09-16 06:33:17.209  1262  8489 E DecDynamicConfig: checkShareConfig: Dolby service is NULL

    Change-Id: Ideb557073b53e7b31f6535d6053933104b455ae7
    Signed-off-by: Yuan Si <do4suki@gmail.com>

commit e83b80995343c56382e43bf0656ee1e2b79ee067
Author: YuKongA <70465933+YuKongA@users.noreply.github.com>
Date:   Thu Oct 12 00:02:27 2023 +0800

    sweet: sepolicy: Address mediacodec denials

    Partially taken from ec0e9c641f and extended to hal_dms_server

    Change-Id: I51cfbbb2f8b9d83e74ef2f44196e8393189ca3dc
    Signed-off-by: basamaryan <basam.aryan@gmail.com>

commit 0a7aab81667f137c57fa95c4661fa7e43e0e2c1c
Author: Pranav Vashi <neobuddy89@gmail.com>
Date:   Fri Aug 2 20:27:52 2024 +0530

    sweet: Move dax-default to device tree

    Change-Id: Id2054bb5e61bcfe58706e32f44d37fe7524aa912
    Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>

Change-Id: I2d466238525d074269377a82627a816527aefd74
Signed-off-by: Mesquita <mesquita@aospa.co>
Signed-off-by: basamaryan <basam.aryan@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: firebird11 <hbgassel@gmail.com>
2025-06-11 23:50:16 +02:00
d9f56be716 sm6125-common: Welcome to EvolutionX
Signed-off-by: Onelots <onelots@onelots.fr>
2025-06-11 23:50:16 +02:00
24 changed files with 2124 additions and 14 deletions

18
camera/Android.bp Normal file
View File

@@ -0,0 +1,18 @@
cc_library_shared {
name: "camera.qcom",
relative_install_path: "hw",
srcs: ["camera.cpp"],
shared_libs: [
"libbase",
"libcamera_metadata",
"libdl",
"libhardware",
"liblog",
"libutils",
],
static_libs: [
"android.hardware.camera.common-helper",
],
vendor: true,
compile_multilib: "32",
}

71
camera/camera.cpp Normal file
View File

@@ -0,0 +1,71 @@
/*
* SPDX-FileCopyrightText: 2025 The LineageOS Project
* SPDX-License-Identifier: Apache-2.0
*/
#include <CameraMetadata.h>
#include <android-base/properties.h>
#include <cutils/log.h>
#include <hardware/camera_common.h>
#include <system/camera_metadata.h>
#include <dlfcn.h>
#include <string.h>
#include <cstdint>
#include <memory>
camera_module HMI;
camera_module* HMI_qcom;
static int camera_device_open(const hw_module_t* /*module*/, const char* id,
hw_device_t** hw_device) {
return HMI_qcom->common.methods->open(&HMI_qcom->common, id, hw_device);
}
int get_camera_info(int camera_id, struct camera_info* info) {
int ret = HMI_qcom->get_camera_info(camera_id, info);
if (camera_id == 61) {
using android::hardware::camera::common::helper::CameraMetadata;
CameraMetadata staticInfo(
const_cast<camera_metadata_t*>(info->static_camera_characteristics));
staticInfo.update(ANDROID_LOGICAL_MULTI_CAMERA_PHYSICAL_IDS,
(uint8_t[]){'0', 0, '2', '0', 0}, 5);
}
return ret;
}
__attribute__((constructor)) void camera_wrapper_init() {
auto handle = dlopen("/vendor/lib/hw/camera.trinket.so", RTLD_NOW);
HMI_qcom = reinterpret_cast<decltype(HMI_qcom)>(dlsym(handle, "HMI"));
HMI = *HMI_qcom;
if (android::base::GetProperty("ro.build.product", "") == "laurel_sprout") {
// laurel_sprout has a get_cam_pos function added, which breaks the struct
// Shift all functions by one to realign the struct with AOSP
HMI.get_camera_info = reinterpret_cast<decltype(HMI.get_camera_info)>(HMI.set_callbacks);
HMI.set_callbacks = reinterpret_cast<decltype(HMI.set_callbacks)>(HMI.get_vendor_tag_ops);
HMI.get_vendor_tag_ops =
reinterpret_cast<decltype(HMI.get_vendor_tag_ops)>(HMI.open_legacy);
HMI.open_legacy = reinterpret_cast<decltype(HMI.open_legacy)>(HMI.set_torch_mode);
HMI.set_torch_mode = reinterpret_cast<decltype(HMI.set_torch_mode)>(HMI.init);
HMI.init = reinterpret_cast<decltype(HMI.init)>(HMI.get_physical_camera_info);
HMI.get_physical_camera_info = reinterpret_cast<decltype(HMI.get_physical_camera_info)>(
HMI.is_stream_combination_supported);
HMI.is_stream_combination_supported =
reinterpret_cast<decltype(HMI.is_stream_combination_supported)>(
HMI.notify_device_state_change);
HMI.notify_device_state_change =
reinterpret_cast<decltype(HMI.notify_device_state_change)>(HMI.reserved[0]);
HMI.reserved[0] = nullptr;
} else {
// ginkgo/willow registers only 4 bytes for logical camera IDs
// Resize the struct and correct the values to 0+20
HMI.get_camera_info = get_camera_info;
}
static auto methods = *HMI.common.methods;
methods.open = &camera_device_open;
HMI.common.methods = &methods;
}

View File

@@ -27,7 +27,8 @@ PRODUCT_PACKAGES += \
# Audio configs
PRODUCT_COPY_FILES += \
$(call find-copy-subdir-files,*,$(LOCAL_PATH)/configs/audio/,$(TARGET_COPY_OUT_VENDOR)/etc)
$(call find-copy-subdir-files,*,$(LOCAL_PATH)/configs/audio/,$(TARGET_COPY_OUT_VENDOR)/etc) \
$(LOCAL_PATH)/configs/audio/dax-default.xml:$(TARGET_COPY_OUT_VENDOR)/etc/dolby/dax-default.xml
PRODUCT_COPY_FILES += \
frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
@@ -43,8 +44,8 @@ PRODUCT_PACKAGES += \
# Camera
PRODUCT_PACKAGES += \
android.hardware.camera.provider@2.4-impl \
android.hardware.camera.provider@2.4-service
android.hardware.camera.provider-service_32.lineage \
camera.qcom
# Charger
PRODUCT_PACKAGES += \
@@ -75,6 +76,10 @@ PRODUCT_PACKAGES += \
gralloc.qcom \
hwcomposer.qcom
# Dolby
PRODUCT_PACKAGES += \
XiaomiDolby
# DRM
PRODUCT_PACKAGES += \
android.hardware.drm-service.clearkey
@@ -102,6 +107,7 @@ PRODUCT_PACKAGES += \
IPACM_cfg.xml
# Kernel
PRODUCT_ENABLE_UFFD_GC := true
PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := true
# Lights
@@ -123,6 +129,11 @@ PRODUCT_PACKAGES += \
media_codecs_c2.xml \
media_codecs_performance_c2.xml
# Media
PRODUCT_PACKAGES += \
libstagefrighthw \
libstagefright_foundation-v33
# Overlays
DEVICE_PACKAGE_OVERLAYS += \
$(LOCAL_PATH)/overlay \
@@ -258,8 +269,10 @@ PRODUCT_PACKAGES += \
# USB
PRODUCT_PACKAGES += \
android.hardware.usb@1.3-service.dual_role_usb \
android.hardware.usb.gadget-service.qti \
init.qcom.usb.rc \
init.qcom.usb.sh
init.qcom.usb.sh \
usb_compositions.conf
PRODUCT_SOONG_NAMESPACES += vendor/qcom/opensource/usb/etc

View File

@@ -42,6 +42,16 @@
<library name="audiosphere" path="libasphere.so"/>
<library name="shoebox" path="libshoebox.so"/>
<library name="misoundfx" path="libmisoundfx.so"/>
<library name="v4a_re" path="libv4a_re.so"/>
<!--DOLBY DAP-->
<library name="dap" path="libswdap.so"/>
<!--DOLBY END-->
<!--DOLBY GAME-->
<library name="gamedap" path="libswgamedap.so"/>
<!--DOLBY END-->
<!--DOLBY VQE-->
<library name="vqe" path="libswvqe.so"/>
<!--DOLBY END-->
</libraries>
<effects>
<effectProxy name="bassboost" library="proxy" uuid="14804144-a5ee-4d24-aa88-0002a5d5c51b">
@@ -91,6 +101,16 @@
<effect name="audiosphere" library="audiosphere" uuid="184e62ab-2d19-4364-9d1b-c0a40733866c"/>
<effect name="shoebox" library="shoebox" uuid="1eab784c-1a36-4b2a-b7fc-e34c44cab89e"/>
<effect name="misoundfx" library="misoundfx" uuid="5b8e36a5-144a-4c38-b1d7-0002a5d5c51b"/>
<effect name="v4a_standard_re" library="v4a_re" uuid="90380da3-8536-4744-a6a3-5731970e640f"/>
<!--DOLBY DAP-->
<effect name="dap" library="dap" uuid="9d4921da-8225-4f29-aefa-39537a04bcaa"/>
<!--DOLBY END-->
<!--DOLBY GAME-->
<effect name="gamedap" library="gamedap" uuid="3783c334-d3a0-4d13-874f-0032e5fb80e2"/>
<!--DOLBY END-->
<!--DOLBY VQE-->
<effect name="vqe" library="vqe" uuid="64a0f614-7fa4-48b8-b081-d59dc954616f"/>
<!--DOLBY END-->
</effects>
<postprocess>
<stream type="music">

File diff suppressed because it is too large Load Diff

18
evolution.dependencies Normal file
View File

@@ -0,0 +1,18 @@
[
{
"repository": "hardware_xiaomi",
"target_path": "hardware/xiaomi"
},
{
"repository": "kernel_xiaomi_sm6125",
"target_path": "kernel/xiaomi/sm6125"
},
{
"repository": "hardware_xiaomi",
"target_path": "hardware/xiaomi"
},
{
"repository": "vendor_xiaomi_sm6125-common",
"target_path": "vendor/xiaomi/sm6125-common"
}
]

View File

@@ -39,6 +39,7 @@ blob_fixups: blob_fixups_user_type = {
.add_needed('libcrypto_shim.so'),
'vendor/etc/seccomp_policy/atfwd@2.0.policy': blob_fixup()
.add_line_if_missing('gettid: 1'),
('vendor/lib64/libdlbdsservice.so', 'vendor/lib/libstagefright_soft_ac4dec.so', 'vendor/lib/libstagefright_soft_ddpdec.so'): blob_fixup()
} # fmt: skip
module = ExtractUtilsModule(

View File

@@ -14,11 +14,6 @@
<transport>hwbinder</transport>
<fqname>@1.0::IBluetoothHci/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.camera.provider</name>
<transport>hwbinder</transport>
<fqname>@2.4::ICameraProvider/legacy/0</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.gatekeeper</name>
<transport>hwbinder</transport>

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2023-24 Paranoid Android
SPDX-License-Identifier: Apache-2.0
-->
<resources>
<!-- Dolby Atmos -->
<string-array name="dolby_profile_entries">
<item>@string/dolby_profile_dynamic</item>
<item>@string/dolby_profile_video</item>
<item>@string/dolby_profile_music</item>
<item>@string/dolby_profile_game</item>
<item>@string/dolby_profile_voice</item>
</string-array>
<string-array name="dolby_profile_values">
<item>0</item>
<item>1</item>
<item>2</item>
<item>8</item>
<item>9</item>
</string-array>
</resources>

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2023-24 Paranoid Android
SPDX-License-Identifier: Apache-2.0
-->
<resources>
<!-- Dolby profiles -->
<string name="dolby_profile_dynamic">Dynamic</string>
<string name="dolby_profile_video">Movie/Video</string>
<string name="dolby_profile_music">Music</string>
<string name="dolby_profile_game">Game</string>
<string name="dolby_profile_voice">Voice</string>
</resources>

View File

@@ -208,6 +208,24 @@ vendor/etc/init/dpmQmiMgr.rc
vendor/lib64/com.qualcomm.qti.dpm.api@1.0.so;MODULE_SUFFIX=_vendor
vendor/lib64/libdpmqmihal.so
# Dolby
vendor/bin/hw/vendor.dolby.hardware.dms@2.0-service
vendor/etc/init/vendor.dolby.hardware.dms@2.0-service.rc
vendor/etc/media_codecs_dolby_audio.xml
vendor/etc/vintf/manifest/manifest_vendor.dolby.hardware.dms.xml
vendor/lib/libdapparamstorage.so
vendor/lib/libdeccfg.so
vendor/lib/libstagefright_soft_ac4dec.so
vendor/lib/libstagefright_soft_ddpdec.so
vendor/lib/soundfx/libswdap.so|810d0e266e4a77f06cba72fe8bdde2e1ede4f9f9
vendor/lib/soundfx/libswgamedap.so
vendor/lib/soundfx/libswvqe.so
vendor/lib/vendor.dolby.hardware.dms@2.0.so
vendor/lib64/libdapparamstorage.so
vendor/lib64/libdlbdsservice.so
vendor/lib64/vendor.dolby.hardware.dms@2.0-impl.so
vendor/lib64/vendor.dolby.hardware.dms@2.0.so
# DRM
vendor/bin/hw/vendor.qti.hardware.qseecom@1.0-service
vendor/bin/qseecomd

View File

@@ -68,6 +68,14 @@ on early-boot
exec u:r:vendor_qti_init_shell:s0 -- /vendor/bin/init.qti.can.sh
setprop ro.sf.lcd_density ${vendor.display.lcd_density}
# SSR
write /sys/bus/msm_subsys/devices/subsys0/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys1/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys2/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys3/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys4/restart_level RELATED
write /sys/bus/msm_subsys/devices/subsys5/restart_level RELATED
chown system system /mnt/vendor/persist/data/pfm/licenses
chmod 0775 /mnt/vendor/persist/data/pfm/licenses

View File

@@ -275,7 +275,6 @@ on boot
setprop vendor.usb.rmnet.inst.name "rmnet"
setprop vendor.usb.dpl.inst.name "dpl"
setprop vendor.usb.qdss.inst.name "qdss"
setprop sys.usb.configfs 1
service vendor.pd_mapper /vendor/bin/pd-mapper
class core
@@ -311,7 +310,6 @@ on property:sys.shutdown.requested=*
on property:init.svc.vendor.charger=running
setprop vendor.usb.controller 4e00000.dwc3
setprop sys.usb.configfs 1
chown system system /sys/class/leds/red/brightness
write /sys/class/leds/red/brightness 255

4
sepolicy/vendor/attributes vendored Normal file
View File

@@ -0,0 +1,4 @@
# HALs
attribute hal_dms;
attribute hal_dms_client;
attribute hal_dms_server;

View File

@@ -10,6 +10,9 @@
# Display
/sys/devices/platform/soc/[a-z0-9]+.qcom,mdss_mdp/drm/card([0-3])+/card([0-3])+-DSI-1/disp_param u:object_r:vendor_sysfs_graphics:s0
# Dolby
/data/vendor/dolby(/.*)? u:object_r:vendor_data_file:s0
# Fingerprint
/vendor/bin/hw/android\.hardware\.biometrics\.fingerprint-service\.xiaomi u:object_r:hal_fingerprint_default_exec:s0
@@ -31,6 +34,9 @@
# (e.g. Google Camera App)
/mnt/vendor/dsp/fastrpc_shell_3 u:object_r:public_adsprpcd_file:s0
# Hals (Dolby)
/vendor/bin/hw/vendor\.dolby\.hardware\.dms@2\.0-service u:object_r:hal_dms_default_exec:s0
# IR
/dev/spidev[0-9]\.1 u:object_r:lirc_device:s0

View File

@@ -10,3 +10,7 @@ set_prop(hal_audio_default, vendor_audio_prop)
allow hal_audio_default audio_socket:sock_file rw_file_perms;
allow hal_audio_default system_suspend_hwservice:hwservice_manager find;
# Dolby
allow hal_audio_default hal_dms_hwservice:hwservice_manager find;
binder_call(hal_audio_default, hal_dms_default)

6
sepolicy/vendor/hal_dms.te vendored Normal file
View File

@@ -0,0 +1,6 @@
# HwBinder IPC from client to server, and callbacks
binder_call(hal_dms_client, hal_dms_server)
binder_call(hal_dms_server, hal_dms_client)
add_hwservice(hal_dms_server, hal_dms_hwservice)
allow hal_dms_client hal_dms_hwservice:hwservice_manager find;

10
sepolicy/vendor/hal_dms_default.te vendored Normal file
View File

@@ -0,0 +1,10 @@
type hal_dms_default, domain;
hal_server_domain(hal_dms_default, hal_dms)
type hal_dms_default_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(hal_dms_default)
allow hal_dms_default vendor_data_file:file { rw_file_perms create unlink };
allow hal_dms_default vendor_data_file:dir { rw_file_perms add_name remove_name };
allow hal_dms_default mediacodec:binder call;
binder_call(hal_dms_default, hal_audio_default)
binder_call(hal_dms_default, platform_app)

View File

@@ -1,2 +1,5 @@
type hal_rilnv_hwservice, hwservice_manager_type;
type nxpese_hwservice, hwservice_manager_type;
# Dolby
type hal_dms_hwservice, hwservice_manager_type;

View File

@@ -1,3 +1,6 @@
# Dolby
vendor.dolby.hardware.dms::IDms u:object_r:hal_dms_hwservice:s0
# Fingerprint
vendor.goodix.hardware.biometrics.fingerprint::IGoodixFingerprintDaemon u:object_r:hal_fingerprint_hwservice:s0
vendor.qti.hardware.fingerprintext::IWTFingerprint u:object_r:hal_fingerprint_hwservice:s0

5
sepolicy/vendor/mediacodec.te vendored Normal file
View File

@@ -0,0 +1,5 @@
allow mediacodec hal_dms_hwservice:hwservice_manager find;
binder_call(mediacodec, hal_dms_default)
allow mediacodec hal_dms_default:binder { call transfer };
allow mediacodec hal_dms_server:binder { call transfer };

View File

@@ -1,5 +1,6 @@
set_prop(vendor_init, vendor_alarm_boot_prop)
set_prop(vendor_init, vendor_camera_prop)
set_prop(vendor_init, vendor_camera_remapid_prop)
set_prop(vendor_init, vendor_video_prop)
set_prop(vendor_init, vendor_fingerprint_prop)

View File

@@ -1,6 +1,5 @@
# Camera
persist.vendor.camera.privapp.list=org.codeaurora.snapcam,com.android.camera
vendor.camera.aux.packagelist=org.codeaurora.snapcam,com.android.camera
vendor.camera.aux.packageexcludelist=org.telegram.messenger,org.thunderdog.challegram,us.zoom.videomeetings
# CNE
persist.vendor.cne.feature=1

View File

@@ -177,6 +177,11 @@ ro.hardware.vulkan=adreno
ro.opengles.version=196610
vendor.gralloc.disable_ubwc=0
# HWUI
ro.hwui.render_ahead=5
debug.hwui.use_hint_manager=true
debug.hwui.target_cpu_time_percent=30
# Keystore
ro.hardware.keystore_desede=true
@@ -210,8 +215,17 @@ ro.surface_flinger.protected_contents=true
ro.surface_flinger.enable_frame_rate_override=false
# USB
sys.usb.mtp.batchcancel=1
vendor.usb.controller=4e00000.dwc3
vendor.usb.device=4e00000.ssusb
vendor.usb.diag.func.name=diag
vendor.usb.use_ffs_mtp=0
vendor.usb.dpl.inst.name=dpl
vendor.usb.qdss.inst.name=qdss
vendor.usb.rmnet.func.name=gsi
vendor.usb.rmnet.inst.name=rmnet
vendor.usb.rndis.func.name=gsi
vendor.usb.use_ffs_mtp=1
vendor.usb.use_gadget_hal=1
# Zygote
zygote.critical_window.minute=10