# Copyright (C) 2020 The LineageOS Project # Copyright (C) 2020 The PixelExperience 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. # 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_o_mr1.mk) # Inherit proprietary files $(call inherit-product, vendor/motorola/msm8953-common/msm8953-common-vendor.mk) # Common Tree Path COMMON_PATH := device/motorola/msm8953-common # Inherit properties $(call inherit-product, $(COMMON_PATH)/common_prop.mk) # Soong namespaces PRODUCT_SOONG_NAMESPACES += $(COMMON_PATH) #ANT+ stack PRODUCT_PACKAGES += \ AntHalService \ libantradio \ antradio_app # Audio PRODUCT_PACKAGES += \ android.hardware.audio@5.0-impl \ android.hardware.audio@2.0-service \ android.hardware.audio.effect@5.0-impl \ android.hardware.audio.effect@2.0-service \ android.hardware.soundtrigger@2.2-impl \ android.hardware.soundtrigger@2.2-service \ audiod \ audio.a2dp.default \ audio.primary.msm8953 \ audio.r_submix.default \ audio.usb.default \ libaacwrapper \ libaudio-resampler \ libqcompostprocbundle \ libqcomvisualizer \ libqcomvoiceprocessing \ libvolumelistener \ tinymix # Audio Policy 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 += \ android.hardware.bluetooth@1.0 \ audio.bluetooth.default \ android.hardware.bluetooth.audio@2.0-impl \ libbt-vendor \ vendor.qti.hardware.btconfigstore@1.0.vendor # Camera PRODUCT_PACKAGES += \ android.hardware.camera.provider@2.4-service \ android.hardware.camera.provider@2.4-impl \ camera.device@1.0-impl \ camera.device@3.2-impl \ libwui \ vendor.qti.hardware.camera.device@1.0 \ vendor.qti.hardware.camera.device@1.0_vendor \ MotCamera2 # Codec2 modules PRODUCT_PACKAGES += \ com.android.media.swcodec \ libsfplugin_ccodec # Display PRODUCT_PACKAGES += \ android.hardware.graphics.allocator@2.0-impl \ android.hardware.graphics.allocator@2.0-service \ android.hardware.graphics.composer@2.1-impl \ android.hardware.graphics.composer@2.1-service \ android.hardware.graphics.mapper@2.0-impl-2.1 \ android.hardware.memtrack@1.0-impl \ android.hardware.memtrack@1.0-service \ copybit.msm8953 \ gralloc.msm8953 \ hwcomposer.msm8953 \ memtrack.msm8953 \ libdisplayconfig \ libgenlock \ liboverlay \ libqdMetaData.system \ libvulkan \ libtinyxml # DRM PRODUCT_PACKAGES += \ android.hardware.drm@1.0-service \ android.hardware.drm@1.0-impl \ android.hardware.drm@1.2-service.clearkey # Fingerprint PRODUCT_PACKAGES += \ android.hardware.biometrics.fingerprint@2.1 # Fwk-detect PRODUCT_PACKAGES += \ libqti_vndfwk_detect \ libqti_vndfwk_detect.vendor # FM PRODUCT_PACKAGES += \ FM2 \ libqcomfm_jni \ init.qti.fm.sh \ qcom.fmradio PRODUCT_BOOT_JARS += qcom.fmradio PRODUCT_GMS_CLIENTID_BASE := android-motorola # Fingerprint IDC PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/idc/uinput-fpc.idc:$(TARGET_COPY_OUT_SYSTEM)/usr/idc/uinput-fpc.idc # Gatekeeper HAL PRODUCT_PACKAGES += \ android.hardware.gatekeeper@1.0-impl \ android.hardware.gatekeeper@1.0-service # GPS Config PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/gps/apdr.conf:$(TARGET_COPY_OUT_VENDOR)/etc/apdr.conf \ $(COMMON_PATH)/configs/gps/flp.conf:$(TARGET_COPY_OUT_VENDOR)/etc/flp.conf \ $(COMMON_PATH)/configs/gps/gps.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gps.conf \ $(COMMON_PATH)/configs/gps/izat.conf:$(TARGET_COPY_OUT_VENDOR)/etc/izat.conf \ $(COMMON_PATH)/configs/gps/sap.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sap.conf \ $(COMMON_PATH)/configs/gps/xtwifi.conf:$(TARGET_COPY_OUT_VENDOR)/etc/xtwifi.conf # HW crypto PRODUCT_PACKAGES += \ vendor.qti.hardware.cryptfshw@1.0-service-qti.qsee # health PRODUCT_PACKAGES += \ android.hardware.health@2.0-impl \ 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_java # IMS PRODUCT_PACKAGES += \ ims-ext-common \ ims_ext_common.xml # IMS PRODUCT_PACKAGES += \ com.android.ims.rcsmanager # IRSC PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/sec_config:$(TARGET_COPY_OUT_VENDOR)/etc/sec_config # IRQ PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/msm_irqbalance.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance.conf \ $(COMMON_PATH)/configs/msm_irqbalance_little_big.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance_little_big.conf # Init PRODUCT_PACKAGES += \ init.class_main.sh \ init.mmi.boot.sh \ init.mmi.usb.sh \ init.qcom.early_boot.sh \ init.qcom.post_boot.sh \ init.qcom.sensors.sh \ init.qcom.sh \ init.qti.qseecomd.sh \ init.hidl.sensor.rc \ init.mmi.chipset.rc \ init.mmi.overlay.rc \ init.mmi.usb.rc \ init.mmi.rc \ init.qcom.rc \ init.target.rc \ ueventd.qcom.rc # IPACM PRODUCT_PACKAGES += \ ipacm \ IPACM_cfg.xml \ libipanat \ liboffloadhal # Keymaster HAL PRODUCT_PACKAGES += \ android.hardware.keymaster@3.0-impl \ android.hardware.keymaster@3.0-service # Keylayouts PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/keylayout/ft5x06_ts.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/ft5x06_ts.kl \ $(COMMON_PATH)/configs/keylayout/gpio-keys.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/gpio-keys.kl \ $(COMMON_PATH)/configs/keylayout/synaptics_dsx.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/synaptics_dsx.kl \ $(COMMON_PATH)/configs/keylayout/synaptics_dsxv26.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/synaptics_dsxv26.kl \ $(COMMON_PATH)/configs/keylayout/synaptics_rmi4_i2c.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/synaptics_rmi4_i2c.kl \ $(COMMON_PATH)/configs/keylayout/uinput-fpc.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/uinput-fpc.kl # Lights PRODUCT_PACKAGES += \ android.hardware.light@2.0-impl \ android.hardware.light@2.0-service.motorola_msm8953 # Media PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \ $(COMMON_PATH)/configs/media/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \ $(COMMON_PATH)/configs/media/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml # Media Google 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 # Netutils PRODUCT_PACKAGES += \ android.system.net.netd@1.0 \ libandroid_net \ libandroid_net_32 \ netutils-wrapper-1.0 # MotoActions PRODUCT_PACKAGES += \ MotoActions # OMX PRODUCT_PACKAGES += \ libc2dcolorconvert \ libextmedia_jni \ libOmxAacEnc \ libOmxAmrEnc \ libOmxCore \ libOmxEvrcEnc \ libOmxQcelp13Enc \ libOmxVdec \ libOmxVenc \ libOmxVidcCommon \ libstagefrighthw # Overlay DEVICE_PACKAGE_OVERLAYS += \ $(COMMON_PATH)/overlay # Power PRODUCT_PACKAGES += \ power.qcom \ android.hardware.power@1.0-impl \ android.hardware.power@1.0-service # Powerhint PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml # Perf configs PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/perf/commonresourceconfigs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/perf/commonresourceconfigs.xml \ $(COMMON_PATH)/configs/perf/perfboostsconfig.xml:$(TARGET_COPY_OUT_VENDOR)/etc/perf/perfboostsconfig.xml \ $(COMMON_PATH)/configs/perf/perfconfigstore.xml:$(TARGET_COPY_OUT_VENDOR)/etc/perf/perfconfigstore.xml \ $(COMMON_PATH)/configs/perf/targetconfig.xml:$(TARGET_COPY_OUT_VENDOR)/etc/perf/targetconfig.xml \ $(COMMON_PATH)/configs/perf/targetresourceconfigs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/perf/targetresourceconfigs.xml # These are the hardware-specific features PRODUCT_COPY_FILES += \ 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.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml \ frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_nfc/android.hardware.nfc.xml \ frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_nfc/android.hardware.nfc.hce.xml \ frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_nfc/android.hardware.nfc.hcef.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.level-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-0.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.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.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.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml \ frameworks/native/data/etc/android.software.print.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.print.xml \ frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \ frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml \ frameworks/native/data/etc/com.android.nfc_extras.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.android.nfc_extras.xml \ frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/com.nxp.mifare.xml # Radio PRODUCT_PACKAGES += \ librmnetctl \ libprotobuf-cpp-full # AOT Preload PRODUCT_DEXPREOPT_SPEED_APPS += \ SystemUI \ NexusLauncherRelease # Qualcomm PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/permissions/privapp-permissions-qti.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/privapp-permissions-qti.xml \ $(COMMON_PATH)/configs/permissions/telephony_product_privapp-permissions-qti.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/telephony_product_privapp-permissions-qti.xml \ $(COMMON_PATH)/configs/qti_whitelist.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/sysconfig/qti_whitelist.xml PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ ro.vendor.qti.va_aosp.support=1 PRODUCT_ODM_PROPERTIES += \ ro.vendor.qti.va_odm.support=1 # QMI PRODUCT_PACKAGES += \ libjson # RCS PRODUCT_PACKAGES += \ rcs_service_aidl \ rcs_service_aidl.xml \ rcs_service_api \ rcs_service_api.xml # RenderScript HAL PRODUCT_PACKAGES += \ android.hardware.renderscript@1.0-impl # Telephony PRODUCT_PACKAGES += \ qti-telephony-hidl-wrapper \ qti_telephony_hidl_wrapper.xml \ qti-telephony-utils \ qti_telephony_utils.xml \ telephony-ext PRODUCT_BOOT_JARS += \ telephony-ext # Seccomp policy PRODUCT_COPY_FILES += \ $(COMMON_PATH)/seccomp/mediacodec.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy \ $(COMMON_PATH)/seccomp/mediaextractor.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediaextractor.policy # Sensors PRODUCT_PACKAGES += \ android.hardware.sensors@1.0-impl \ android.hardware.sensors@1.0-service \ libsensorndkbridge # Shims PRODUCT_PACKAGES += \ libqsap_shim # USB HAL PRODUCT_PACKAGES += \ android.hardware.usb@1.0-service.basic # VNDK PRODUCT_PACKAGES += \ vndk_package \ libstdc++.vendor # Vibrator PRODUCT_PACKAGES += \ android.hardware.vibrator@1.0-impl \ android.hardware.vibrator@1.0-service # Thermal PRODUCT_PACKAGES += \ android.hardware.thermal@1.0-impl \ android.hardware.thermal@1.0-service \ thermal.msm8953 # Wifi PRODUCT_PACKAGES += \ android.hardware.wifi@1.0-service \ dhcpcd.conf \ hostapd \ hostapd_cli \ libnl_2 \ libnl \ libqsap_sdk \ libQWiFiSoftApCfg \ libwifi-hal-qcom \ libwpa_client \ wcnss_service \ wificond \ wifilogd \ wpa_supplicant \ wpa_supplicant.conf \ wpa_supplicant_wcn.conf PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/wifi/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \ $(COMMON_PATH)/configs/wifi/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \ $(COMMON_PATH)/configs/wifi/WCNSS_cfg.dat:$(TARGET_COPY_OUT_VENDOR)/firmware/wlan/prima/WCNSS_cfg.dat \ $(COMMON_PATH)/configs/wifi/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/firmware/wlan/prima/WCNSS_qcom_cfg.ini # Wi-Fi Display PRODUCT_BOOT_JARS += \ WfdCommon