* The MTK Neural Networks service is started via a property trigger.
This HAL starts a lot earlier than other HALs since it is started
with start instead of enable, the difference between them being
that start will immediately cause the service to try and start, while
enable effectively removes the disabled attribute from the service
(so in the case of a HAL, it will be started with all the other services
in class hal instead of immediately).
* This initially didn't have any side effects until I noticed the Neural Networks
service constantly crashing in offline charger mode. To fix this, simply
convert the start command to an enable to ensure that this service is not
only started at the right time (in class hal), but also only started when
needed (and not in offline charger mode).
Change-Id: Iacf310fb2211117aaf028ad6bf0814a7d447cf53
Signed-off-by: bengris32 <bengris32@protonmail.ch>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
* The libavservices_minijail_vendor library was substituted for
the vendor variant of libavservices_minijail in Android 13.
* Patchelf the C2 service to link against libavservices_minijail
instead of libavservices_minijail_vendor.
Signed-off-by: bengris32 <bengris32@protonmail.ch>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
This is done in preparation for uclamp migration and FAIR_GROUP_SCHED
enablement in kernel.
Change-Id: Ib486c9bcdfa18d7362461e1a8f66d6fb288af709
Signed-off-by: xyzuniverse <dev.xyzuniverse@gmail.com>
Signed-off-by: fjrXTR <fajarslebew31@gmail.com>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
F linker : CANNOT LINK EXECUTABLE /vendor/bin/hw/vendor.mediatek.hardware.pq@2.2-service: cannot locate symbol _ZN7android8String16aSEOS0_ referenced by /apex/com.android.vndk.v34/lib64/libhidlbase.so...
MTK has 15 volume steps, we have whatever is set in vc_call_vol_steps.
Mapping our range to theirs allows reaching higher volume levels.
A log curve is used to make gain transitions less abrupt at higher volumes.
Change-Id: I5f0e6467ba9fd0779d7e4abbf9f258b0b42224e4
Signed-off-by: fjrXTR <fajarslebew31@gmail.com>
Signed-off-by: xyzuniverse <dev.xyzuniverse@gmail.com>
Signed-off-by: fjrXTR <fajarslebew31@gmail.com>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
* Refactor and cleanup code
* Use proper way of getting audioDevice with getPort().type()
* Stop mixing up values between AudioSystem and AudioManager,
as values between AudioManager (java) and AudioSystem (native)
could change and become different from eachother.
Signed-off-by: bengris32 <bengris32@protonmail.ch>
Change-Id: I2311ed02b88148b71b374b19aaaf458f82f23824
Signed-off-by: fjrXTR <fajarslebew31@gmail.com>
Signed-off-by: xyzuniverse <dev.xyzuniverse@gmail.com>
Signed-off-by: fjrXTR <fajarslebew31@gmail.com>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
* My attempt at fixing in call gain control on MediaTek devices.
* It attempts to replicate what the stock MediaTek framework does
when controlling the volume of the earpiece speaker, since MTK's
audio HAL is not able to set the gain of the speaker from the
values sent by AOSP framework.
[LinkBoi00] Rebrand to Mediatek In-Call Service
Change-Id: I43f727f6fb73a0d38457a41a8361653d1d00e220
Signed-off-by: LinkBoi00 <linkdevel@protonmail.com>
Signed-off-by: fjrXTR <fajarslebew31@gmail.com>
Signed-off-by: xyzuniverse <dev.xyzuniverse@gmail.com>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
* fsverity flag in fstab is needed to make init run tune2fs -O verity on it
Change-Id: Iebc34457f8d92bf8e09cf1981a47e597aa7ab7c3
Signed-off-by: DarkJoker360 <simoespo159@gmail.com>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
* MediaTek ship their own modified task_profiles and use the V30 cgroups configuration.
Change-Id: I15245ea87b00925597db65f1564e808a094c937a
Signed-off-by: bengris32 <bengris32@protonmail.ch>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
Mediacodec did not have access and video recording didn't work.
Signed-off-by: fjrXTR <fajarslebew31@gmail.com>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
Apparently on AOSP builds, these nodes when read by the hals
with O_RDONLY attribute, need an elevated read permission, which
is apparently unneeded on mtk builds/stock rom.
This fixes video playback/OMX
Signed-off-by: Vaisakh Murali <mvaisakh@statixos.com>
Change-Id: I7f358d0037de569a4eb038e5ac2a17b7651d307d
Signed-off-by: fjrXTR <fajarslebew31@gmail.com>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
- init services fail to setup encoders on boot and camera and
screenrecord fails to open video1 when trying to encode a video.
- While we may wanna consider looking through services that make use of
these devs and correct their groups for AOSP, this gets the job done
for now.
Change-Id: I0278efe201a9cbaa20c650fdc32bed6f9ecfd017
Signed-off-by: fjrXTR <fajarslebew31@gmail.com>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
* We also changed zram_loopback_size with zram_backingdev_size so correct it.
Bug: 145116439
Test: confirmed there is no warning and zram backing device was configured
Signed-off-by: Minchan Kim <minchan@google.com>
Change-Id: I51be34c59203813a2f493eee6ab442c9940b75d7
Signed-off-by: fjrXTR <fajarslebew31@gmail.com>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
-Set max_comp_streams to num of cores since upstream also moves this to percpu.
Bug: 38249616
Test: boot and run zram-perf showing better performance
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
The ndk_platform backend will soon be deprecated because the ndk backend
can serve the same purpose. This is to eliminate the confusion about
having two variants (ndk and ndk_platform) for the same ndk backend.
Bug: 161456198
Test: m
Signed-off-by: xyzuniverse <dev.xyzuniverse@gmail.com>
Signed-off-by: fjrXTR <fajarslebew31@gmail.com>
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>