# # Copyright (C) 2016 The CyanogenMod Project # Copyright (C) 2017-2019 The LineageOS 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. # $(call inherit-product, $(SRC_TARGET_DIR)/product/product_launched_with_n.mk) # Get non-open-source specific aspects $(call inherit-product-if-exists, vendor/samsung/gts3llte/gts3llte-vendor.mk) LOCAL_PATH := device/samsung/gts3llte # Overlays DEVICE_PACKAGE_OVERLAYS += \ device/samsung/qcom-common/overlay \ $(LOCAL_PATH)/overlay \ $(LOCAL_PATH)/overlay-lineage # Screen density PRODUCT_AAPT_CONFIG := normal PRODUCT_AAPT_PREF_CONFIG := xxhdpi # Boot animation TARGET_SCREEN_HEIGHT := 2048 TARGET_SCREEN_WIDTH := 1536 TARGET_BOOTANIMATION_HALF_RES := true # Device characteristics PRODUCT_CHARACTERISTICS := tablet # 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.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.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.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.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-1.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.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.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/tablet_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/tablet_core_hardware.xml \ # QCOM PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/configs/privapp-permissions-qti.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/privapp-permissions-qti.xml \ $(LOCAL_PATH)/configs/qti_whitelist.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/sysconfig/qti_whitelist.xml # Additional native libraries PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/configs/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt # ANT+ PRODUCT_PACKAGES += \ AntHalService \ com.dsi.ant.antradio_library # Audio PRODUCT_PACKAGES += \ android.hardware.audio@2.0-service \ android.hardware.audio@5.0-impl.gts3l \ android.hardware.audio.effect@5.0-impl \ android.hardware.bluetooth.audio@2.0-impl \ android.hardware.soundtrigger@2.2-impl \ audio.a2dp.default \ audio.bluetooth.default \ audio.primary.msm8996:32 \ audio.r_submix.default \ audio.usb.default \ cplay \ liba2dpoffload \ libaudioroute \ libcirrusspkrprot \ libhdmiedid \ libhfp \ libqcompostprocbundle \ libqcomvisualizer \ libqcomvoiceprocessing \ libsndmonitor \ libspkrprot \ libvolumelistener \ sound_trigger.primary.msm8996 PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/audio/config/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \ $(LOCAL_PATH)/audio/config/audio_tuning_mixer.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer.txt \ $(LOCAL_PATH)/audio/config/audio_output_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_output_policy.conf \ $(LOCAL_PATH)/audio/config/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml \ $(LOCAL_PATH)/audio/config/audio_platform_info_diff.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_diff.xml \ $(LOCAL_PATH)/audio/config/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \ $(LOCAL_PATH)/audio/config/listen_platform_info.xml:system/etc/listen_platform_info.xml \ $(LOCAL_PATH)/audio/config/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \ $(LOCAL_PATH)/audio/config/sound_trigger_mixer_paths_wcd9330.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9330.xml \ $(LOCAL_PATH)/audio/config/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml \ $(LOCAL_PATH)/audio/config/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml PRODUCT_COPY_FILES += \ frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_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 # Camera PRODUCT_PACKAGES += \ android.frameworks.displayservice@1.0_32 \ android.hardware.camera.provider@2.4-impl \ android.hardware.camera.provider@2.4-service \ camera.device@1.0-impl \ camera.device@3.2-impl \ camera.device@3.3-impl \ camera.device@3.4-impl \ libcameraclient_shim \ Snap # Connectivity Engine support (CNE) PRODUCT_PACKAGES += \ libcnefeatureconfig # CryptfsHW PRODUCT_PACKAGES += \ vendor.qti.hardware.cryptfshw@1.0-service-qti.qsee # 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 \ android.hardware.memtrack@1.0-impl \ android.hardware.memtrack@1.0-service \ copybit.msm8996 \ gralloc.msm8996 \ hwcomposer.msm8996 \ memtrack.msm8996 \ libdisplayconfig \ liboverlay \ libqdMetaData.system \ libtinyxml PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/display/hdr_tm_config.xml:$(TARGET_COPY_OUT_VENDOR)/vendor/etc/hdr_tm_config.xml \ $(LOCAL_PATH)/display/qdcm_calib_data_ss_dsi_panel_ANA38401_AMS968HH01_QXGA.xml:$(TARGET_COPY_OUT_VENDOR)/vendor/etc/qdcm_calib_data_ss_dsi_panel_ANA38401_AMS968HH01_QXGA.xml # Doze mode PRODUCT_PACKAGES += \ SamsungDoze # DRM PRODUCT_PACKAGES += \ android.hardware.drm@1.0-impl:64 \ android.hardware.drm@1.0-service \ android.hardware.drm@1.2-service.clearkey # Fingerprint PRODUCT_PACKAGES += \ android.hardware.biometrics.fingerprint@2.1-service.samsung \ libbauthtzcommon_shim # For config.fs PRODUCT_PACKAGES += \ fs_config_files # Gatekeeper PRODUCT_PACKAGES += \ android.hardware.gatekeeper@1.0-impl \ android.hardware.gatekeeper@1.0-service # Healthd 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.vendor \ android.hidl.manager@1.0 \ android.hidl.manager@1.0.vendor \ libhidltransport \ libhidltransport.vendor \ libhwbinder \ libhwbinder.vendor # IPA Manager PRODUCT_PACKAGES += \ ipacm \ IPACM_cfg.xml # IPC router config PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/configs/sec_config:$(TARGET_COPY_OUT_VENDOR)/etc/sec_config # Keylayout PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/keylayout/gpio-keys.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/gpio-keys.kl \ $(LOCAL_PATH)/keylayout/sec_e-pen.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/sec_e-pen.kl \ $(LOCAL_PATH)/keylayout/sec_touchkey.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/sec_touchkey.kl \ $(LOCAL_PATH)/keylayout/synaptics_dsx.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/synaptics_dsx.kl \ $(LOCAL_PATH)/keylayout/Tab_S3_Book_Cover_Keyboard.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/Tab_S3_Book_Cover_Keyboard.kl \ # idc PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/idc/sec_e-pen.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/sec_e-pen.idc \ $(LOCAL_PATH)/idc/Tab_S3_Book_Cover_Keyboard.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/Tab_S3_Book_Cover_Keyboard.idc # Keymaster PRODUCT_PACKAGES += \ android.hardware.keymaster@4.0-impl \ android.hardware.keymaster@4.0-service # Lights PRODUCT_PACKAGES += \ android.hardware.light@2.0-service.samsung # LiveDisplay PRODUCT_PACKAGES += \ vendor.lineage.livedisplay@2.0-service.samsung-qcom # Media PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/media/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \ $(LOCAL_PATH)/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.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 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 += \ android.system.net.netd@1.0 \ libandroid_net \ netutils-wrapper-1.0 # OMX PRODUCT_PACKAGES += \ libc2dcolorconvert \ libgui_vendor \ libextmedia_jni \ libOmxAacEnc \ libOmxAmrEnc \ libOmxCore \ libOmxEvrcEnc \ libOmxG711Enc \ libOmxQcelp13Enc \ libOmxVdec \ libOmxVenc \ libOmxVidcCommon \ libstagefrighthw # Power PRODUCT_PACKAGES += \ android.hardware.power@1.2-service-qti # QMI PRODUCT_PACKAGES += \ libjson # RCS PRODUCT_PACKAGES += \ rcs_service_aidl \ rcs_service_aidl.xml \ rcs_service_api \ rcs_service_api.xml # Ramdisk PRODUCT_PACKAGES += \ fstab.qcom \ init.carrier.rc \ init.class_main.sh \ init.qcom.early_boot.sh \ init.qcom.post_boot.sh \ init.qcom.power.rc \ init.qcom.rc \ init.qcom.sensors.sh \ init.qcom.sh \ init.qcom.usb.rc \ init.qcom.usb.sh \ init.usb.configfs.rc \ init.rilchip.rc \ init.rilcommon.rc \ init.samsung.rc \ init.target.rc \ ueventd.qcom.rc \ wifi_qcom.rc \ wifi_sec.rc # Recovery PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/recovery/root/init.recovery.qcom.rc:root/init.recovery.qcom.rc # RenderScript PRODUCT_PACKAGES += \ android.hardware.renderscript@1.0-impl # RIL PRODUCT_PACKAGES += \ android.hardware.radio.deprecated@1.0 \ android.hardware.radio.deprecated@1.0-impl \ librmnetctl \ libxml2 # Seccomp policy PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/seccomp/mediacodec.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy \ $(LOCAL_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 # Soong namespaces PRODUCT_SOONG_NAMESPACES += \ $(LOCAL_PATH) \ hardware/samsung # Thermal PRODUCT_PACKAGES += \ android.hardware.thermal@1.0-impl \ android.hardware.thermal@1.0-service \ thermal.msm8996 # TextClassifier PRODUCT_PACKAGES += \ textclassifier.bundle1 # Trust HAL PRODUCT_PACKAGES += \ vendor.lineage.trust@1.0-service # USB PRODUCT_PACKAGES += \ android.hardware.usb@1.1-service.gts3l # VNDK PRODUCT_PACKAGES += \ vndk-sp # Vibrator PRODUCT_PACKAGES += \ android.hardware.vibrator@1.0-impl \ android.hardware.vibrator@1.0-service # WiFi PRODUCT_PACKAGES += \ android.hardware.wifi@1.0-service \ libqsap_sdk \ libQWiFiSoftApCfg \ libwpa_client \ hostapd \ wpa_supplicant \ wpa_supplicant.conf PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/wifi/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \ $(LOCAL_PATH)/wifi/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \ $(LOCAL_PATH)/wifi/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_qcom_cfg.ini # ADB PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ persist.sys.usb.config=adb \ ro.adb.secure=0 \ ro.secure=0 # Root PRODUCT_PACKAGES += \ su