8 Commits

Author SHA1 Message Date
Rodney Etienne
a65dfa39af pyxis: fix up dependencies 2024-10-16 16:07:34 -04:00
Rodney Etienne
a7be9126f4 pyxis: fix path to bcr 2024-07-11 19:19:49 -04:00
Rodney Etienne
9a434df6ac Pyxis:Disable Smart Pixels on UDFPS
With SmartPixels enabled, UDFPS does not work well.
 The higher the percentage of pixels to be disabled,
 the worse UDFPS works.

 Fix this by disabling SmartPixels when UDFPS is working.
2024-06-06 15:47:35 -04:00
Rodney Etienne
b82ac7d6b9 Pyxis: Enable 60 fps video in aperture 2024-06-05 21:14:24 -04:00
Rodney Etienne
42dd1da2b2 pyxis: Initialize for Evolution X 9.x 2024-05-16 20:55:58 -04:00
RODNEY ETIENNE
1cefe54ba3 pyxis: Initialize for Evolution X 9.x 2024-05-09 16:28:09 -04:00
RODNEY ETIENNE
faf2691aa2 pyxis: Correct Copyright 2024-04-22 10:05:57 -04:00
RODNEY ETIENNE
1219c6881f pyxis: Bring up for Evo X A14 2024-04-21 18:39:10 -04:00
20 changed files with 166 additions and 122 deletions

View File

@@ -6,3 +6,8 @@
PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/lineage_pyxis.mk
COMMON_LUNCH_CHOICES := \
lineage_pyxis-user \
lineage_pyxis-userdebug \
lineage_pyxis-eng

View File

@@ -1,5 +1,5 @@
#
# Copyright (C) 2022-2025 The LineageOS Project
# Copyright (C) 2022 The LineageOS Project
#
# SPDX-License-Identifier: Apache-2.0
#

View File

@@ -112,8 +112,6 @@
<device name="SND_DEVICE_IN_HEADSET_MIC" acdb_id="10008"/>
<device name="SND_DEVICE_IN_USB_HEADSET_MIC" acdb_id="10009"/>
<device name="SND_DEVICE_IN_VOICE_RECOG_USB_HEADSET_MIC" acdb_id="10009"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_STEREO" acdb_id="10010"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_STEREO" acdb_id="10010"/>
<device name="SND_DEVICE_OUT_HEADPHONES" acdb_id="10012"/>
<device name="SND_DEVICE_OUT_HEADPHONES_44_1" acdb_id="10012"/>
<device name="SND_DEVICE_OUT_USB_HEADSET" acdb_id="10012"/>

View File

@@ -1,5 +1,5 @@
#
# Copyright (C) 2022-2025 The LineageOS Project
# Copyright (C) 2022 The LineageOS Project
#
# SPDX-License-Identifier: Apache-2.0
#
@@ -27,13 +27,13 @@ PRODUCT_COPY_FILES += \
TARGET_SCREEN_HEIGHT := 2340
TARGET_SCREEN_WIDTH := 1080
# Camera
$(call soong_config_set,camera,override_format_from_reserved,true)
# Inherit BCR
$(call inherit-product, vendor/extras/bcr/bcr.mk)
# Overlays
DEVICE_PACKAGE_OVERLAYS += \
$(LOCAL_PATH)/overlay \
$(LOCAL_PATH)/overlay-lineage
$(LOCAL_PATH)/overlay-evolution
# QDCM
PRODUCT_COPY_FILES += \
@@ -50,6 +50,10 @@ PRODUCT_SHIPPING_API_LEVEL := 28
PRODUCT_SOONG_NAMESPACES += \
$(LOCAL_PATH)
# VNDK
PRODUCT_COPY_FILES += \
prebuilts/vndk/v29/arm/arch-arm-armv7-a-neon/shared/vndk-core/libprotobuf-cpp-full.so:$(TARGET_COPY_OUT_VENDOR)/lib/libprotobuf-cpp-full-v29.so
# WiFi
PRODUCT_PACKAGES += \
TargetWifiOverlay

View File

@@ -1,27 +1,10 @@
[
{
"repository": "device_xiaomi_sdm710-common",
"target_path": "device/xiaomi/sdm710-common",
"branch": "vic"
},
{
"repository": "vendor_xiaomi_sdm710-common",
"target_path": "vendor/xiaomi/sdm710-common",
"branch": "vic"
"target_path": "device/xiaomi/sdm710-common"
},
{
"repository": "vendor_xiaomi_pyxis",
"target_path": "vendor/xiaomi/pyxis",
"branch": "vic"
},
{
"repository": "hardware_xiaomi",
"target_path": "hardware/xiaomi",
"branch": "vic"
},
{
"repository": "kernel_xiaomi_sdm710",
"target_path": "kernel/xiaomi/sdm710",
"branch": "vic"
"target_path": "vendor/xiaomi/pyxis"
}
]

View File

@@ -1,52 +0,0 @@
#!/usr/bin/env -S PYTHONPATH=../../../tools/extract-utils python3
#
# SPDX-FileCopyrightText: 2024 The LineageOS Project
# SPDX-License-Identifier: Apache-2.0
#
from extract_utils.fixups_blob import (
blob_fixup,
blob_fixups_user_type,
)
from extract_utils.fixups_lib import (
lib_fixup_remove,
lib_fixups,
lib_fixups_user_type,
)
from extract_utils.main import (
ExtractUtils,
ExtractUtilsModule,
)
namespace_imports = [
'hardware/qcom-caf/sdm845',
'hardware/xiaomi',
'vendor/xiaomi/sdm710-common',
]
def lib_fixup_vendor_suffix(lib: str, partition: str, *args, **kwargs):
return f'{lib}_{partition}' if partition == 'vendor' else None
lib_fixups: lib_fixups_user_type = {
**lib_fixups,
}
blob_fixups: blob_fixups_user_type = {
'vendor/lib/hw/com.qti.chi.override.so': blob_fixup()
.binary_regex_replace(b'persist.vendor.camera.xiaomi.remapid',
b'vendor.camera.remapid\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0'),
} # fmt: skip
module = ExtractUtilsModule(
'pyxis',
'xiaomi',
blob_fixups=blob_fixups,
lib_fixups=lib_fixups,
namespace_imports=namespace_imports,
)
if __name__ == '__main__':
utils = ExtractUtils.device_with_common(module, 'sdm710-common', module.vendor)
utils.run()

29
extract-files.sh Executable file
View File

@@ -0,0 +1,29 @@
#!/bin/bash
#
# Copyright (C) 2016 The CyanogenMod Project
# Copyright (C) 2017-2020 The LineageOS Project
#
# SPDX-License-Identifier: Apache-2.0
#
function blob_fixup() {
case "${1}" in
vendor/lib/libswregistrationalgo.so)
${PATCHELF} --replace-needed "libprotobuf-cpp-full.so" "libprotobuf-cpp-full-v29.so" "${2}"
;;
esac
}
# If we're being sourced by the common script that we called,
# stop right here. No need to go down the rabbit hole.
if [ "${BASH_SOURCE[0]}" != "${0}" ]; then
return
fi
set -e
export DEVICE=pyxis
export DEVICE_COMMON=sdm710-common
export VENDOR=xiaomi
"./../../${VENDOR}/${DEVICE_COMMON}/extract-files.sh" "$@"

View File

@@ -8,15 +8,14 @@
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
# Inherit some common Lineage stuff.
# Inherit some common Evolution X configuration.
$(call inherit-product, vendor/lineage/config/common_full_phone.mk)
TARGET_USES_MINI_GAPPS := true
WITH_GMS := true
EXTRA_UDFPS_ANIMATIONS := true
TARGET_SUPPORTS_QUICK_TAP := true
TARGET_FACE_UNLOCK_SUPPORTED := true
TARGET_DISABLE_EPPE := true
EVO_BUILD_TYPE := Official
# Inherit from pyxis device
$(call inherit-product, device/xiaomi/pyxis/device.mk)
@@ -30,5 +29,6 @@ PRODUCT_MODEL := Mi 9 Lite
PRODUCT_GMS_CLIENTID_BASE := android-xiaomi
PRODUCT_BUILD_PROP_OVERRIDES += \
BuildDesc="pyxis-user 11 RKQ1.200826.002 V12.5.3.0.RFCEUXM release-keys" \
BuildFingerprint=Xiaomi/pyxis_eea/pyxis:11/RKQ1.200826.002/V12.5.3.0.RFCEUXM:user/release-keys
PRIVATE_BUILD_DESC="pyxis-user 11 RKQ1.200826.002 V12.5.3.0.RFCEUXM release-keys"
BUILD_FINGERPRINT := Xiaomi/pyxis_eea/pyxis:11/RKQ1.200826.002/V12.5.3.0.RFCEUXM:user/release-keys

View File

@@ -28,4 +28,7 @@
1 - LOCAL HBM
-->
<integer name="config_udfpsHbmType">0</integer>
<!-- Whether to disable Smart Pixels on UDFPS -->
<bool name="config_disableSmartPixelsOnUDFPS">true</bool>
</resources>

View File

@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
* Copyright (c) 2006, 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.
*/
-->
<resources>
<dimen name="rounded_corner_content_padding">16dp</dimen>
<dimen name="status_bar_extra_padding">16dp</dimen>
</resources>

View File

@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
SPDX-FileCopyrightText: 2022 The LineageOS Project
SPDX-License-Identifier: Apache-2.0
-->
<resources>
<!-- Enable auxiliary cameras selector. -->
<bool name="config_enableAuxCameras">true</bool>
<!-- List of ID of auxiliary cameras that must be ignored by the app. -->
<string-array name="config_ignoredAuxCameraIds">
<item>20</item>
<item>60</item>
<item>62</item>
<item>63</item>
<item>90</item>
<item>91</item>
<item>100</item>
<item>101</item>
</string-array>
<!-- An array of triplets made of (camera ID, qualities, framerates).
These video modes will be added to the available
quality/framerate combinations of a camera device.
Make sure the device is able to handle those configurations
and maintain a stable framerate at any condition.
Note that you can't add video qualities that aren't
exposed by the camera, only new framerates.
Valid values of resolution are:
- "sd" (480p)
- "hd" (720p)
- "fhd" (1080p)
- "uhd" (2160p)
Valid values of framerate are:
- "24"
- "30"
- "60"
- "120"
Example:
<string-array name="config_additionalVideoConfigurations">
<item>0</item> <item>sd|hd|fhd</item> <item>60|120</item>
<item>1</item> <item>sd|hd|fhd</item> <item>60</item>
</string-array>
-->
<string-array name="config_additionalVideoConfigurations">
<item>0</item> <item>sd|hd|fhd|uhd</item> <item>60</item>
<item>1</item> <item>sd|hd|fhd</item> <item>60</item>
<item>2</item> <item>sd|hd|fhd|uhd</item> <item>60</item>
<item>3</item> <item>sd|hd|fhd</item> <item>60</item>
</string-array>
</resources>

View File

@@ -1,21 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
SPDX-FileCopyrightText: 2022 The LineageOS Project
SPDX-License-Identifier: Apache-2.0
-->
<resources>
<!-- Enable auxiliary cameras selector. -->
<bool name="config_enableAuxCameras">true</bool>
<!-- List of ID of auxiliary cameras that must be ignored by the app. -->
<string-array name="config_ignoredAuxCameraIds">
<item>20</item>
<item>60</item>
<item>62</item>
<item>63</item>
<item>90</item>
<item>91</item>
<item>100</item>
<item>101</item>
</string-array>
</resources>

View File

@@ -18,11 +18,4 @@
<resources>
<!-- Height of the status bar header bar when on Keyguard -->
<dimen name="status_bar_header_height_keyguard">@*android:dimen/status_bar_height</dimen>
<!-- Microns/ums (1000 um = 1mm) per pixel for the given device. If unspecified, UI that
relies on this value will not be sized correctly. -->
<item name="pixel_pitch" format="float" type="dimen">62.19</item>
<!-- the padding on the start of the statusbar -->
<dimen name="status_bar_padding_start">30px</dimen>
</resources>

View File

@@ -1,10 +1,5 @@
# Unpinned blobs from pyxis-user 11 RKQ1.200826.002 V12.5.3.0.RFCEUXM release-keys
# Libraries with undefined symbols:
# - libVDSuperPhotoAPI
# - libhvx_proxy_stub
# - libmmcamera_faceproc
# ACDB
vendor/etc/acdbdata/Tutu/Tutu_Bluetooth_cal.acdb:vendor/etc/acdbdata/Forte/Forte_Bluetooth_cal.acdb
vendor/etc/acdbdata/Tutu/Tutu_General_cal.acdb:vendor/etc/acdbdata/Forte/Forte_General_cal.acdb
@@ -40,7 +35,7 @@ vendor/lib/hw/com.qti.chi.override.so
vendor/lib/libFaceGrade.so
vendor/lib/libSNPE.so
vendor/lib/libVDClearShot.so
vendor/lib/libVDSuperPhotoAPI.so;DISABLE_CHECKELF
vendor/lib/libVDSuperPhotoAPI.so
vendor/lib/libXMFD_AgeGender.so
vendor/lib/lib_denoiser3.so
vendor/lib/libc++_shared.so
@@ -54,7 +49,7 @@ vendor/lib/libcom.qti.chinodeutils.so
vendor/lib/libmialgo_fs.so
vendor/lib/libmialgo_sd.so
vendor/lib/libmibokeh_712.so
vendor/lib/libmmcamera_faceproc.so;DISABLE_CHECKELF
vendor/lib/libmmcamera_faceproc.so
vendor/lib/libmmcamera_faceproc2.so
vendor/lib/libmpbase.so
vendor/lib/libnanopb.so
@@ -65,7 +60,7 @@ vendor/lib/libvideoutils.so
vendor/lib/libvidhance.so
vendor/lib64/libVDClearShot.so
vendor/lib64/libVDDualCameraClearShot.so
vendor/lib64/libVDSuperPhotoAPI.so;DISABLE_CHECKELF
vendor/lib64/libVDSuperPhotoAPI.so
vendor/lib64/libmialgoengine.so
vendor/lib64/libmibokeh_712.so
vendor/lib64/libmpbase.so
@@ -179,6 +174,18 @@ vendor/etc/camera/model_front.dlc
vendor/etc/camera/sceneDetection.xml
vendor/etc/camera/visidon_clearshot_params_algoup.xml
# Camera (provider)
vendor/lib/hw/android.hardware.camera.provider@2.4-impl.so
vendor/lib/android.hardware.camera.provider@2.4-external.so
vendor/lib/android.hardware.camera.provider@2.4-legacy.so
vendor/lib/camera.device@1.0-impl.so
vendor/lib/camera.device@3.2-impl.so
vendor/lib/camera.device@3.3-impl.so
vendor/lib/camera.device@3.4-impl.so
vendor/lib/camera.device@3.5-impl.so
vendor/lib/vendor.qti.hardware.camera.device@2.0.so
vendor/lib/vendor.qti.hardware.camera.device@3.5.so
# Camera (sensors)
vendor/lib/camera/com.qti.sensor.pyxis_imx582.so
vendor/lib/camera/com.qti.sensor.pyxis_imx586.so
@@ -223,15 +230,24 @@ vendor/etc/hdr_config.cfg
vendor/etc/sdr_config.cfg
# Fingerprint
vendor/lib64/hw/fingerprint.goodix_fod.so:vendor/lib64/hw/fingerprint.goodix_fod.default.so;FIX_SONAME
vendor/lib64/hw/fingerprint.goodix_fod.so:vendor/lib64/hw/fingerprint.goodix_fod.default.so
vendor/lib64/libarm_proxy_skel.so
vendor/lib64/libgf_hal.so
vendor/lib64/libhvx_proxy_stub.so;DISABLE_CHECKELF
vendor/lib64/libhvx_proxy_stub.so
# Gatekeeper
vendor/bin/hw/android.hardware.gatekeeper@1.0-service-qti
vendor/etc/init/android.hardware.gatekeeper@1.0-service-qti.rc
vendor/lib64/hw/android.hardware.gatekeeper@1.0-impl-qti.so
vendor/lib64/libqcbor.so
# Keymaster
vendor/bin/hw/android.hardware.keymaster@4.0-service-qti
vendor/etc/init/android.hardware.keymaster@4.0-service-qti.rc
vendor/lib64/libkeymasterdeviceutils.so
vendor/lib64/libkeymasterprovision.so
vendor/lib64/libkeymasterutils.so
vendor/lib64/libqtikeymaster4.so
# Sensors
vendor/bin/hw/vendor.qti.hardware.sensorscalibrate@1.0-service

View File

@@ -1 +0,0 @@
#!./extract-files.py --regenerate_makefiles

15
setup-makefiles.sh Executable file
View File

@@ -0,0 +1,15 @@
#!/bin/bash
#
# Copyright (C) 2016 The CyanogenMod Project
# Copyright (C) 2017-2020 The LineageOS Project
#
# SPDX-License-Identifier: Apache-2.0
#
set -e
export DEVICE=pyxis
export DEVICE_COMMON=sdm710-common
export VENDOR=xiaomi
"./../../${VENDOR}/${DEVICE_COMMON}/setup-makefiles.sh" "$@"