# # Copyright (C) 2019 The LineageOS Project # # SPDX-License-Identifier: Apache-2.0 # # Inherit from those products. Most specific first. $(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk) $(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk) $(call inherit-product, $(SRC_TARGET_DIR)/product/product_launched_with_p.mk) # Setup dalvik vm configs $(call inherit-product, frameworks/native/build/phone-xhdpi-6144-dalvik-heap.mk) # Get non-open-source specific aspects $(call inherit-product-if-exists, vendor/lenovo/zippo/zippo-vendor.mk) # VNDK PRODUCT_TARGET_VNDK_VERSION := 29 # Boot animation TARGET_SCREEN_HEIGHT := 2340 TARGET_SCREEN_WIDTH := 1080 # Overlays DEVICE_PACKAGE_OVERLAYS += \ $(LOCAL_PATH)/overlay \ $(LOCAL_PATH)/overlay-lineage # Device uses high-density artwork where available PRODUCT_AAPT_CONFIG := normal PRODUCT_AAPT_PREF_CONFIG := xxhdpi # Permissions PRODUCT_COPY_FILES += \ external/ant-wireless/antradio-library/com.dsi.ant.antradio_library.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.dsi.ant.antradio_library.xml \ frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \ frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \ frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \ frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \ 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 \ frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml \ frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \ frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \ frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \ frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \ frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \ frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \ frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \ frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml \ frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \ frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \ frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \ frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \ frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \ frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \ frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute.xml \ frameworks/native/data/etc/android.hardware.vulkan.level-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \ frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml \ frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \ frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \ frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \ frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml \ frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml \ frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml \ frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml \ vendor/lineage/config/permissions/vendor.lineage.biometrics.fingerprint.inscreen.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/vendor.lineage.biometrics.fingerprint.inscreen.xml # AID/fs configs PRODUCT_PACKAGES += \ fs_config_files # ANT+ PRODUCT_PACKAGES += \ AntHalService \ com.dsi.ant.antradio_library # Audio PRODUCT_PACKAGES += \ android.hardware.audio@2.0-service \ android.hardware.audio@5.0-impl \ android.hardware.audio.effect@5.0-impl \ android.hardware.bluetooth.audio@2.0-impl \ android.hardware.soundtrigger@2.1-impl \ audio.a2dp.default \ audio.bluetooth.default \ audio.r_submix.default \ audio.usb.default \ libaudio-resampler \ libqcompostprocbundle \ libqcomvisualizer \ libqcomvoiceprocessing \ libqcomvoiceprocessingdescriptors \ libvolumelistener \ libtinycompress \ tinymix PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/audio/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \ $(LOCAL_PATH)/audio/audio_io_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_io_policy.conf \ $(LOCAL_PATH)/audio/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml \ $(LOCAL_PATH)/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \ $(LOCAL_PATH)/audio/audio_tuning_mixer.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer.txt \ $(LOCAL_PATH)/audio/audio_tuning_mixer_tavil.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer_tavil.txt \ $(LOCAL_PATH)/audio/graphite_ipc_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/graphite_ipc_platform_info.xml \ $(LOCAL_PATH)/audio/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \ $(LOCAL_PATH)/audio/sound_trigger_mixer_paths_wcd9340.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9340.xml \ $(LOCAL_PATH)/audio/sound_trigger_mixer_paths_wcd9340_qrd.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9340_qrd.xml \ $(LOCAL_PATH)/audio/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml PRODUCT_COPY_FILES += \ frameworks/av/services/audiopolicy/config/a2dp_in_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration.xml \ frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \ frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration.xml:/$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration.xml \ frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \ frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \ frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \ # Bluetooth PRODUCT_PACKAGES += \ libbthost_if \ libldacBT_dec \ vendor.qti.hardware.bluetooth_audio@2.0.vendor # Camera PRODUCT_PACKAGES += \ libdng_sdk.vendor \ Snap # Device init scripts PRODUCT_PACKAGES += \ fstab.qcom \ init.class_main.sh \ init.crda.sh \ init.mdm.sh \ init.qcom.class_core.sh \ init.qcom.coex.sh \ init.qcom.crashdata.sh \ init.qcom.early_boot.sh \ init.qcom.efs.sync.sh \ init.qcom.post_boot.sh \ init.qcom.sdio.sh \ init.qcom.sensors.sh \ init.qcom.sh \ init.qcom.usb.sh \ init.qti.fm.sh \ init.qti.ims.sh \ init.lenovo.common.rc \ init.lenovo.rc \ init.lenovo.usb.configfs.rc \ init.msm.usb.configfs.rc \ init.qcom.factory.rc \ init.qcom.rc \ init.qcom.usb.rc \ init.recovery.qcom.rc \ init.target.rc \ ueventd.rc # Device-specific settings PRODUCT_PACKAGES += \ LenovoParts # Display PRODUCT_PACKAGES += \ android.hardware.graphics.composer@2.3-service \ android.hardware.graphics.mapper@2.0-impl-qti-display \ android.hardware.memtrack@1.0-impl \ android.hardware.memtrack@1.0-service \ gralloc.msmnile \ hwcomposer.msmnile \ libdisplayconfig \ libdisplayconfig.vendor \ libdisplaydebug \ libqdMetaData \ libqdMetaData.system \ libqdutils \ libtinyxml \ libvulkan \ memtrack.msmnile \ vendor.display.config@1.10 \ vendor.qti.hardware.display.allocator-service \ vendor.qti.hardware.display.allocator@1.0-service \ vendor.qti.hardware.display.allocator@1.0.vendor \ vendor.qti.hardware.display.mapper@2.0.vendor \ vendor.qti.hardware.display.mapperextensions@1.1.vendor # DRM PRODUCT_PACKAGES += \ android.hardware.drm@1.0-impl \ android.hardware.drm@1.0-service \ android.hardware.drm@1.2-service.clearkey # Fingerprint PRODUCT_PACKAGES += \ lineage.biometrics.fingerprint.inscreen@1.0-service.lenovo_zippo # FM PRODUCT_PACKAGES += \ FM2 \ libqcomfm_jni \ qcom.fmradio # GPS PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/configs/gps/apdr.conf:$(TARGET_COPY_OUT_VENDOR)/etc/apdr.conf \ $(LOCAL_PATH)/configs/gps/flp.conf:$(TARGET_COPY_OUT_VENDOR)/etc/flp.conf \ $(LOCAL_PATH)/configs/gps/gps.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gps.conf \ $(LOCAL_PATH)/configs/gps/izat.conf:$(TARGET_COPY_OUT_VENDOR)/etc/izat.conf \ $(LOCAL_PATH)/configs/gps/lowi.conf:$(TARGET_COPY_OUT_VENDOR)/etc/lowi.conf \ $(LOCAL_PATH)/configs/gps/sap.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sap.conf \ $(LOCAL_PATH)/configs/gps/xtwifi.conf:$(TARGET_COPY_OUT_VENDOR)/etc/xtwifi.conf # Health PRODUCT_PACKAGES += \ android.hardware.health@2.0-service # HIDL PRODUCT_PACKAGES += \ android.hidl.base@1.0 \ android.hidl.base@1.0_system \ android.hidl.manager@1.0 \ android.hidl.manager@1.0_system # Input PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/keylayout/gpio-keys.kl:system/usr/keylayout/gpio-keys.kl \ $(LOCAL_PATH)/keylayout/slip-cover.kl:system/usr/keylayout/slip-cover.kl # IPA PRODUCT_PACKAGES += \ ipacm \ IPACM_cfg.xml # IRQ balance PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/configs/msm_irqbalance.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance.conf # IRSC PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/configs/sec_config:$(TARGET_COPY_OUT_VENDOR)/etc/sec_config # Lights PRODUCT_PACKAGES += \ android.hardware.light@2.0-service.lenovo_zippo # LiveDisplay PRODUCT_PACKAGES += \ vendor.lineage.livedisplay@2.0-service-sdm # Media PRODUCT_PACKAGES += \ libc2dcolorconvert \ libcodec2_hidl@1.0.vendor \ libcodec2_vndk.vendor \ libOmxAacEnc \ libOmxAmrEnc \ libOmxCore \ libOmxEvrcEnc \ libOmxG711Enc \ libOmxQcelp13Enc \ libOmxVdec \ libOmxVenc \ libOmxVidcCommon \ libstagefrighthw PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \ $(LOCAL_PATH)/media/media_codecs_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml \ $(LOCAL_PATH)/media/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \ $(LOCAL_PATH)/media/media_codecs_vendor_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_audio.xml \ $(LOCAL_PATH)/media/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \ $(LOCAL_PATH)/media/media_profiles_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml \ $(LOCAL_PATH)/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml \ $(LOCAL_PATH)/media/system_properties.xml:$(TARGET_COPY_OUT_VENDOR)/etc/system_properties.xml PRODUCT_COPY_FILES += \ frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_video_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video_le.xml # Net PRODUCT_PACKAGES += \ netutils-wrapper-1.0 # Perf PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/configs/perf/perfboostsconfig.xml:$(TARGET_COPY_OUT_PRODUCT)/vendor_overlay/$(PRODUCT_TARGET_VNDK_VERSION)/etc/perf/perfboostsconfig.xml # Power PRODUCT_PACKAGES += \ android.hardware.power@1.2-service # QMI PRODUCT_PACKAGES += \ libjson \ libqti_vndfwk_detect \ libqti_vndfwk_detect.vendor # RCS PRODUCT_PACKAGES += \ rcs_service_aidl \ rcs_service_aidl.xml \ rcs_service_api \ rcs_service_api.xml # RenderScript PRODUCT_PACKAGES += \ android.hardware.renderscript@1.0-impl # RIL PRODUCT_PACKAGES += \ android.hardware.radio@1.2 \ android.hardware.radio.config@1.0 \ android.hardware.secure_element@1.0 \ libprotobuf-cpp-full \ libril \ librilutils \ librmnetctl \ libxml2 # Seccomp policy PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/seccomp_policy/codec2.vendor.ext.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/codec2.vendor.ext.policy \ $(LOCAL_PATH)/seccomp_policy/mediacodec.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy # Soong namespaces PRODUCT_SOONG_NAMESPACES += \ $(LOCAL_PATH) # Telephony PRODUCT_PACKAGES += \ ims-ext-common \ ims_ext_common.xml \ qti-telephony-hidl-wrapper \ qti_telephony_hidl_wrapper.xml \ qti-telephony-utils \ qti_telephony_utils.xml \ telephony-ext PRODUCT_BOOT_JARS += \ telephony-ext # TextClassifier PRODUCT_PACKAGES += \ textclassifier.bundle1 # Thermal PRODUCT_PACKAGES += \ android.hardware.thermal@1.0-impl \ android.hardware.thermal@1.0-service \ thermal.msmnile # USB PRODUCT_PACKAGES += \ android.hardware.usb@1.0-service # WiFi PRODUCT_PACKAGES += \ android.hardware.wifi@1.0-service \ hostapd \ libwifi-hal-qcom \ libwpa_client \ wpa_supplicant \ wpa_supplicant.conf PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/wifi/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \ $(LOCAL_PATH)/wifi/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \ $(LOCAL_PATH)/wifi/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_qcom_cfg.ini # WiFi Display PRODUCT_PACKAGES += \ libnl PRODUCT_BOOT_JARS += \ WfdCommon