Update and move to msm8974 kernel

This commit is contained in:
Valera1978 2017-10-10 20:03:00 +03:00
parent f818061201
commit 0fc33c1533
61 changed files with 2583 additions and 3338 deletions

View file

@ -1,5 +1,5 @@
# #
# Copyright (C) 2012 The Android Open-Source Project # Copyright (C) 2014 The CyanogenMod Project
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -14,16 +14,8 @@
# limitations under the License. # limitations under the License.
# #
# WARNING: Everything listed here will be built on ALL platforms,
# including x86, the emulator, and the SDK. Modules must be uniquely
# named (liblights.tuna), and must build everywhere, or limit themselves
# to only building on ARM if they include assembly. Individual makefiles
# are responsible for having their own logic, for fine-grained control.
LOCAL_PATH := $(call my-dir) LOCAL_PATH := $(call my-dir)
ifeq ($(TARGET_DEVICE),viennalte) ifeq ($(TARGET_DEVICE),viennalte)
include $(call all-subdir-makefiles,$(LOCAL_PATH)) include $(call all-subdir-makefiles,$(LOCAL_PATH))
endif endif

View file

@ -1,3 +1,4 @@
# Copyright (C) 2016 The CyanogenMod Project
# Copyright (C) 2017 The LineageOS Project # Copyright (C) 2017 The LineageOS Project
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
@ -12,14 +13,6 @@
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
#
# This file sets variables that control the way modules are built
# thorughout the system. It should not be used to conditionally
# disable makefiles (the proper mechanism to control what gets
# included in a build is to use PRODUCT_PACKAGES in a product
# definition file).
#
# inherit from common msm8974 # inherit from common msm8974
-include device/samsung/msm8974-common/BoardConfigCommon.mk -include device/samsung/msm8974-common/BoardConfigCommon.mk
@ -30,6 +23,7 @@ TARGET_SPECIFIC_HEADER_PATH := $(LOCAL_PATH)/include
TARGET_OTA_ASSERT_DEVICE := viennalte,viennaltexx TARGET_OTA_ASSERT_DEVICE := viennalte,viennaltexx
# BLOCK_BASED_OTA:= false # BLOCK_BASED_OTA:= false
# WITH_TWRP := true
# Use Snapdragon LLVM if available on build server # Use Snapdragon LLVM if available on build server
TARGET_USE_SDCLANG := true TARGET_USE_SDCLANG := true
@ -43,13 +37,15 @@ BOARD_KERNEL_CMDLINE := console=null androidboot.hardware=qcom user_debug=31 msm
BOARD_KERNEL_PAGESIZE := 2048 BOARD_KERNEL_PAGESIZE := 2048
BOARD_KERNEL_SEPARATED_DT := true BOARD_KERNEL_SEPARATED_DT := true
BOARD_MKBOOTIMG_ARGS := --ramdisk_offset 0x02000000 --tags_offset 0x01E00000 BOARD_MKBOOTIMG_ARGS := --ramdisk_offset 0x02000000 --tags_offset 0x01E00000
BOARD_CUSTOM_BOOTIMG_MK := $(LOCAL_PATH)/mkbootimg.mk BOARD_CUSTOM_BOOTIMG := true
TARGET_KERNEL_CONFIG := lineageos_viennalteeur_defconfig BOARD_CUSTOM_BOOTIMG_MK := hardware/samsung/mkbootimg.mk
TARGET_KERNEL_CROSS_COMPILE_PREFIX := arm-linux-androideabi- TARGET_KERNEL_CROSS_COMPILE_PREFIX := arm-linux-androideabi-
TARGET_KERNEL_SOURCE := kernel/samsung/lt03lte TARGET_KERNEL_CONFIG := lineageos_viennalteeur_defconfig
TARGET_KERNEL_SOURCE := kernel/samsung/msm8974
# Init # Init
TARGET_INIT_VENDOR_LIB := libinit_msm8974 TARGET_INIT_VENDOR_LIB := libinit_msm8974
TARGET_LIBINIT_MSM8974_DEFINES_FILE := device/samsung/viennalte/init/init_viennalte.cpp
# Audio # Audio
BOARD_HAVE_NEW_QCOM_CSDCLIENT := true BOARD_HAVE_NEW_QCOM_CSDCLIENT := true
@ -62,29 +58,17 @@ BOARD_BLUETOOTH_USES_HCIATTACH_PROPERTY := false
BOARD_HAVE_BLUETOOTH_BCM := true BOARD_HAVE_BLUETOOTH_BCM := true
# Camera # Camera
#TARGET_PROVIDES_CAMERA_HAL := true
TARGET_HAS_LEGACY_CAMERA_HAL1 := true TARGET_HAS_LEGACY_CAMERA_HAL1 := true
USE_DEVICE_SPECIFIC_CAMERA := true USE_DEVICE_SPECIFIC_CAMERA := true
#TARGET_NEEDS_GCC_LIBC := true
# Charger # CMHW
BOARD_CHARGER_SHOW_PERCENTAGE := true
# Hardware
BOARD_HARDWARE_CLASS += $(LOCAL_PATH)/cmhw BOARD_HARDWARE_CLASS += $(LOCAL_PATH)/cmhw
# Display
TARGET_BOOTANIMATION_MULTITHREAD_DECODE := true
SF_VSYNC_EVENT_PHASE_OFFSET_NS := 5000000
VSYNC_EVENT_PHASE_OFFSET_NS := 7500000
# Legacy BLOB Support # Legacy BLOB Support
TARGET_NEEDS_PLATFORM_TEXT_RELOCATIONS := true TARGET_NEEDS_PLATFORM_TEXT_RELOCATIONS := true
# Lights
TARGET_PROVIDES_LIBLIGHT := true
# Partitions # Partitions
BOARD_FLASH_BLOCK_SIZE := 131072
BOARD_BOOTIMAGE_PARTITION_SIZE := 10485760 BOARD_BOOTIMAGE_PARTITION_SIZE := 10485760
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 13631488 BOARD_RECOVERYIMAGE_PARTITION_SIZE := 13631488
# sm-p905 eu size 2810183680 # sm-p905 eu size 2810183680
@ -92,44 +76,54 @@ BOARD_RECOVERYIMAGE_PARTITION_SIZE := 13631488
# us size can be less, reduce system # us size can be less, reduce system
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 2000000000 BOARD_SYSTEMIMAGE_PARTITION_SIZE := 2000000000
BOARD_USERDATAIMAGE_PARTITION_SIZE := 27847015936 BOARD_USERDATAIMAGE_PARTITION_SIZE := 27847015936
BOARD_FLASH_BLOCK_SIZE := 131072 BOARD_CACHEIMAGE_PARTITION_SIZE := 524288000
TARGET_USERIMAGES_USE_EXT4 := true TARGET_USERIMAGES_USE_EXT4 := true
TARGET_USERIMAGES_USE_F2FS := true TARGET_USERIMAGES_USE_F2FS := true
BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := f2fs
# PowerHAL # Power HAL
TARGET_POWERHAL_VARIANT := qcom
TARGET_POWERHAL_SET_INTERACTIVE_EXT := $(LOCAL_PATH)/power/power_ext.c TARGET_POWERHAL_SET_INTERACTIVE_EXT := $(LOCAL_PATH)/power/power_ext.c
TARGET_POWERHAL_VARIANT := qcom
# RIL # Radio
BOARD_RIL_CLASS := ../../../device/samsung/viennalte/ril BOARD_RIL_CLASS := ../../../device/samsung/viennalte/ril
# Recovery # Recovery
BOARD_CUSTOM_RECOVERY_KEYMAPPING := ../../device/samsung/viennalte/recovery/recovery_keys.c
BOARD_USE_CUSTOM_RECOVERY_FONT := \"roboto_23x41.h\"
BOARD_USES_MMCUTILS := true
BOARD_HAS_LARGE_FILESYSTEM := true BOARD_HAS_LARGE_FILESYSTEM := true
BOARD_HAS_NO_MISC_PARTITION := true BOARD_HAS_NO_MISC_PARTITION := true
BOARD_HAS_NO_SELECT_BUTTON := true BOARD_HAS_NO_SELECT_BUTTON := true
BOARD_RECOVERY_SWIPE := true BOARD_RECOVERY_SWIPE := true
BOARD_USE_CUSTOM_RECOVERY_FONT := \"roboto_23x41.h\"
BOARD_USES_MMCUTILS := true
TARGET_RECOVERY_FSTAB := $(LOCAL_PATH)/rootdir/etc/fstab.qcom TARGET_RECOVERY_FSTAB := $(LOCAL_PATH)/rootdir/etc/fstab.qcom
# SELinux # SELinux
-include device/qcom/sepolicy/sepolicy.mk -include device/qcom/sepolicy/sepolicy.mk
BOARD_SEPOLICY_DIRS += $(LOCAL_PATH)/sepolicy BOARD_SEPOLICY_DIRS += $(LOCAL_PATH)/sepolicy
# WiFi # Sensors
#TARGET_NO_SENSOR_PERMISSION_CHECK := true
# TWRP Support - Optional
ifeq ($(WITH_TWRP),true)
-include $(LOCAL_PATH)/twrp.mk
endif
# Wifi
BOARD_HAVE_SAMSUNG_WIFI := true BOARD_HAVE_SAMSUNG_WIFI := true
BOARD_WLAN_DEVICE := bcmdhd
BOARD_HOSTAPD_DRIVER := NL80211 BOARD_HOSTAPD_DRIVER := NL80211
BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE)
BOARD_WPA_SUPPLICANT_DRIVER := NL80211 BOARD_WPA_SUPPLICANT_DRIVER := NL80211
BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE)
WPA_SUPPLICANT_VERSION := VER_0_8_X WPA_SUPPLICANT_VERSION := VER_0_8_X
WIFI_BAND := 802_11_ABG WIFI_BAND := 802_11_ABG
BOARD_WLAN_DEVICE := bcmdhd
BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE)
BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE)
WIFI_DRIVER_FW_PATH_AP := "/system/etc/wifi/bcmdhd_apsta.bin"
WIFI_DRIVER_FW_PATH_PARAM := "/sys/module/dhd/parameters/firmware_path"
WIFI_DRIVER_FW_PATH_STA := "/system/etc/wifi/bcmdhd_sta.bin"
WIFI_DRIVER_MODULE_ARG := "firmware_path=/system/etc/wifi/bcmdhd_sta.bin nvram_path=/system/etc/wifi/nvram_net.txt" WIFI_DRIVER_MODULE_ARG := "firmware_path=/system/etc/wifi/bcmdhd_sta.bin nvram_path=/system/etc/wifi/nvram_net.txt"
WIFI_DRIVER_MODULE_AP_ARG := "firmware_path=/system/etc/wifi/bcmdhd_apsta.bin nvram_path=/system/etc/wifi/nvram_net.txt" WIFI_DRIVER_MODULE_AP_ARG := "firmware_path=/system/etc/wifi/bcmdhd_apsta.bin nvram_path=/system/etc/wifi/nvram_net.txt"
WIFI_DRIVER_FW_PATH_PARAM := "/sys/module/dhd/parameters/firmware_path"
WIFI_DRIVER_FW_PATH_STA := "/system/etc/wifi/bcmdhd_sta.bin"
WIFI_DRIVER_FW_PATH_AP := "/system/etc/wifi/bcmdhd_apsta.bin"
#WIFI_DRIVER_NVRAM_PATH_PARAM:= "/sys/module/dhd/parameters/nvram_path" # inherit from the proprietary version
#WIFI_DRIVER_NVRAM_PATH := "/system/etc/wifi/nvram_net.txt" -include vendor/samsung/viennalte/BoardConfigVendor.mk

View file

@ -32,7 +32,7 @@ repo init -u git://github.com/LineageOS/android.git -b cm-14.1
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<manifest> <manifest>
<project name="Valera1978/android_device_samsung_viennalte" path="device/samsung/viennalte" remote="github" revision="cm14.0_alt" /> <project name="Valera1978/android_device_samsung_viennalte" path="device/samsung/viennalte" remote="github" revision="cm14.0_alt" />
<project name="Valera1978/android_kernel_samsung_lt03lte" path="kernel/samsung/lt03lte" remote="github" revision="cm-14.1" /> <project name="Valera1978/android_kernel_samsung_msm8974" path="kernel/samsung/msm8974" remote="github" />
<project name="Valera1978/android_vendor_samsung_viennalte" path="vendor/samsung/viennalte" remote="github" revision="cm14.0_alt" /> <project name="Valera1978/android_vendor_samsung_viennalte" path="vendor/samsung/viennalte" remote="github" revision="cm14.0_alt" />
<project name="LineageOS/android_external_sony_boringssl-compat" path="external/sony/boringssl-compat" remote="github" /> <project name="LineageOS/android_external_sony_boringssl-compat" path="external/sony/boringssl-compat" remote="github" />
<project name="LineageOS/android_device_samsung_msm8974-common" path="device/samsung/msm8974-common" remote="github" /> <project name="LineageOS/android_device_samsung_msm8974-common" path="device/samsung/msm8974-common" remote="github" />

15
configs/clatd.conf Executable file
View file

@ -0,0 +1,15 @@
# host ID to use as the source of CLAT traffic
# this is a /128 taken out of the /64 routed to the phone
ipv6_host_id ::464
# ipv4 subnet for the local traffic to use. This is a /32 host address
ipv4_local_subnet 192.0.0.4
# get the plat_subnet from dns lookups (requires DNS64)
plat_from_dns64 yes
# hostname to use to lookup plat subnet. must contain only A records
plat_from_dns64_hostname ipv4.google.com
# plat subnet to send ipv4 traffic to. This is a /96 subnet.
# This setting only makes sense with: plat_from_dns64 no
#plat_subnet 64:ff9b::

View file

@ -29,7 +29,7 @@ BATCH_SIZE=20
# GEOFENCE = 0x01 # GEOFENCE = 0x01
# BATCHING = 0x02 # BATCHING = 0x02
# default = GEOFENCE | BATCHING # default = GEOFENCE | BATCHING
CAPABILITIES=0x03 CAPABILITIES=0x00
################################### ###################################
# FLP BATCHING ACCURACY # FLP BATCHING ACCURACY

124
configs/gps.conf Executable file
View file

@ -0,0 +1,124 @@
#Uncommenting these urls would only enable
#the power up auto injection and force injection(test case).
XTRA_SERVER_1=http://xtrapath1.izatcloud.net/xtra2.bin
XTRA_SERVER_2=http://xtrapath2.izatcloud.net/xtra2.bin
XTRA_SERVER_3=http://xtrapath3.izatcloud.net/xtra2.bin
#Version check for XTRA
#DISABLE = 0
#AUTO = 1
#XTRA2 = 2
#XTRA3 = 3
XTRA_VERSION_CHECK=0
# Error Estimate
# _SET = 1
# _CLEAR = 0
ERR_ESTIMATE=0
#Test
NTP_SERVER=time.gpsonextra.net
#Asia
# NTP_SERVER=asia.pool.ntp.org
#Europe
# NTP_SERVER=europe.pool.ntp.org
#North America
# NTP_SERVER=north-america.pool.ntp.org
# DEBUG LEVELS: 0 - none, 1 - Error, 2 - Warning, 3 - Info
# 4 - Debug, 5 - Verbose
# If DEBUG_LEVEL is commented, Android's logging levels will be used
DEBUG_LEVEL = 4
# Intermediate position report, 1=enable, 0=disable
INTERMEDIATE_POS=0
# Below bit mask configures how GPS functionalities
# should be locked when user turns off GPS on Settings
# Set bit 0x1 if MO GPS functionalities are to be locked
# Set bit 0x2 if NI GPS functionalities are to be locked
# default - non is locked for backward compatibility
#GPS_LOCK = 0
# supl version 1.0
SUPL_VER=0x10000
# Emergency SUPL, 1=enable, 0=disable
SUPL_ES=0 # Sensor R&D : Non-SUPL ES should be default
#Choose PDN for Emergency SUPL
#1 - Use emergency PDN
#0 - Use regular SUPL PDN for Emergency SUPL
USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL=1
#SUPL_MODE is a bit mask set in config.xml per carrier by default.
#If it is uncommented here, this value will over write the value from
#config.xml.
#MSA=0X2
#MSB=0X1
SUPL_MODE=0x3 #Sensor R&D : Change default bit mask
# GPS Capabilities bit mask
# SCHEDULING = 0x01
# MSB = 0x02
# MSA = 0x04
# ON_DEMAND_TIME = 0x10
# GEOFENCE = 0x20
# default = ON_DEMAND_TIME | MSA | MSB | SCHEDULING | GEOFENCE
CAPABILITIES=0x37
# Accuracy threshold for intermediate positions
# less accurate positions are ignored, 0 for passing all positions
# ACCURACY_THRES=5000
################################
##### AGPS server settings #####
################################
# FOR SUPL SUPPORT, set the following
# SUPL_HOST=supl.host.com or IP
# SUPL_PORT=1234
# FOR C2K PDE SUPPORT, set the following
# C2K_HOST=c2k.pde.com or IP
# C2K_PORT=1234
# Bitmask of slots that are available
# for write/install to, where 1s indicate writable,
# and the default value is 0 where no slots
# are writable. For example, AGPS_CERT_WRITABLE_MASK
# of b1000001010 makes 3 slots available
# and the remaining 7 slots unwritable.
#AGPS_CERT_WRITABLE_MASK=0
####################################
# LTE Positioning Profile Settings
####################################
# 0: Enable RRLP on LTE(Default)
# 1: Enable LPP_User_Plane on LTE
# 2: Enable LPP_Control_Plane
# 3: Enable both LPP_User_Plane and LPP_Control_Plane
LPP_PROFILE = 0 # Sensor R&D : This will not be injected to MODEM
################################
# EXTRA SETTINGS
################################
# NMEA provider (1=Modem Processor, 0=Application Processor)
NMEA_PROVIDER=1
# Mark if it is a SGLTE target (1=SGLTE, 0=nonSGLTE)
SGLTE_TARGET=0
##################################################
# Select Positioning Protocol on A-GLONASS system
##################################################
# 0x1: RRC CPlane
# 0x2: RRLP UPlane
# 0x4: LLP Uplane
A_GLONASS_POS_PROTOCOL_SELECT = 0 # Sensor R&D : This will not be injected to MODEM
##################################################
# Delete only Ephemeris files
##################################################
#0 : off - default
#1 : on - Erase only eph files when we use 'delete aiding data' function.
DEL_EPH_ONLY = 0

176
configs/izat.conf Executable file
View file

@ -0,0 +1,176 @@
########################################
# NLP/WIFI positioning options bit mask
########################################
# Enable NLP fixes for WIPER/ODCPI feature => WIPER = 0x1
# Enable free wifi scan injections for GEOFENCE => FREE_WIFI = 0x2
# Enable SUPL2 MLD wifi => SUPL_WIFI = 0x4
# Enable Attached Wifi AP info injection for GEOFENCE => FREE_AP_INFO = 0x8
# default = WIPER | FREE_WIFI | SUPL_WIFI | FREE_AP_INFO
NLP_WIFI_LISTENER_MODE = 0
##################################################
# Select WIFI Wait Timeout value in seconds for SUPL
##################################################
WIFI_WAIT_TIMEOUT_SELECT = 0
################################
# NLP Settings
################################
# NLP_MODE 1: GNP Only, 2: QNP Only, 3: Combo
# NLP_TOLERANCE_TIME_FIRST: Time in ms used in Combo mode
# to determine how much Tolerance for first position
# NLP_TOLERANCE_TIME_AFTER: Time in ms used in Combo mode
# to determine how much Tolerance for positions after first
# NLP_THRESHOLD: Sets how many failures needed before
# switching preferred NLP in Combo mode
# NLP_ACCURACY_MULTIPLE: Determines how far off the accuracy
# must be, in multiples, between two NLP location reports to
# be considered much worse accuracy. Used in switching logic
NLP_MODE = 1
NLP_TOLERANCE_TIME_FIRST = 5000
NLP_TOLERANCE_TIME_AFTER = 20000
NLP_THRESHOLD = 3
NLP_ACCURACY_MULTIPLE = 2
# Threshold period for ZPP triggers
ZPP_TRIGGER_THRESHOLD=10000
###################################
# GEOFENCE SERVICES
###################################
# If set to one of the defined values below, it will override
# the responsiveness for geofence services, which implements
# the Proximity Alert API. If not set to a value defined below,
# which is default, it will not override the responsivness.
# The geofence HAL API is unaffected by this value.
# GEOFENCE_SERVICES_RESPONSIVENESS_OVERRIDE Values:
# 1: LOW responsiveness
# 2: MEDIUM responsiveness
# 3: HIGH responsiveness
GEOFENCE_SERVICES_RESPONSIVENESS_OVERRIDE = 0
#####################################
# IZAT PREMIUM FEATURE SETTINGS
#####################################
#Possible states of a feature:
#DISABLED
#BASIC
#PREMIUM
#GTP_CELL_PROC valid options:
# AP
# MODEM
GTP_CELL_PROC=MODEM
#GTP_CELL valid modes:
# DISABLED
# BASIC
GTP_CELL=BASIC
#GTP_WIFI valid modes:
# DISABLED
# BASIC
GTP_WIFI=BASIC
#GTP_WAA valid modes:
# DISABLED
# BASIC
GTP_WAA=DISABLED
#SAP valid modes:
# DISABLED
# BASIC
# PREMIUM
SAP=BASIC
#PIP valid modes:
# DISABLED
# PREMIUM
PIP=DISABLED
#####################################
# Location process launcher settings
#####################################
#Values for PROCESS_STATE:
# ENABLED
# DISABLED
#FEATURE MASKS:
# GTP-WIFI 0X03
# GTP-CELL 0X0c
# GTP-WAA 0X300
# PIP 0x30
# SAP 0Xc0
#Values for PLATFORMS can be:
#1. Any valid values obtained from ro.board.platform separated by single space. For example: msm8960 msm8226
#2. all -> for All platforms
#Values for BASEBAND can be:
#1. Any valid values obtained from ro.baseband separated by single space. For example: sglte sglte2
#2. all -> for all basebands
PROCESS_NAME=/system/bin/gpsone_daemon
PROCESS_STATE=DISABLED
PROCESS_GROUPS=inet net_raw
PREMIUM_FEATURE=0
IZAT_FEATURE_MASK=0
PLATFORMS=msm7630_fusion
BASEBAND=svlte2a sglte sglte2
PROCESS_NAME=/system/bin/location-mq
PROCESS_STATE=ENABLED
PROCESS_GROUPS=gps
PREMIUM_FEATURE=1
IZAT_FEATURE_MASK=0x33f
PLATFORMS=all
BASEBAND=all
PROCESS_NAME=/system/bin/lowi-server
PROCESS_STATE=ENABLED
PROCESS_GROUPS=gps net_admin wifi inet qcom_diag net_raw
PREMIUM_FEATURE=1
IZAT_FEATURE_MASK=0x333
PLATFORMS=all
BASEBAND=all
PROCESS_NAME=/system/bin/quipc_igsn
PROCESS_STATE=ENABLED
PROCESS_GROUPS=inet gps qcom_diag
PREMIUM_FEATURE=1
IZAT_FEATURE_MASK=0x30
PLATFORMS=all
BASEBAND=all
PROCESS_NAME=/system/bin/quipc_main
PROCESS_STATE=ENABLED
PROCESS_GROUPS=gps net_admin wifi inet qcom_diag
PREMIUM_FEATURE=1
IZAT_FEATURE_MASK=0x30
PLATFORMS=all
BASEBAND=all
PROCESS_NAME=/system/bin/xtwifi-inet-agent
PROCESS_STATE=ENABLED
PROCESS_GROUPS=inet gps
PREMIUM_FEATURE=1
IZAT_FEATURE_MASK=0x0f
PLATFORMS=all
BASEBAND=all
PROCESS_NAME=/system/bin/xtwifi-client
PROCESS_STATE=ENABLED
PROCESS_GROUPS=net_admin wifi inet gps
PREMIUM_FEATURE=1
IZAT_FEATURE_MASK=0x30f
PLATFORMS=all
BASEBAND=all
PROCESS_NAME=/system/vendor/bin/slim_ap_daemon
PROCESS_STATE=ENABLED
PROCESS_GROUPS=gps net_raw misc qcom_oncrpc qcom_diag
PREMIUM_FEATURE=1
IZAT_FEATURE_MASK=0xf0
PLATFORMS=all
BASEBAND=all

View file

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2010 The Android Open Source Project <!-- Copyright (C) 2010 The Android Open Source Project
Copyright (C) 2012-2013 The Linux Foundation. All rights reserved. Copyright (C) 2014 The Linux Foundation. All rights reserved.
Not a contribution. Not a contribution.
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
@ -24,7 +24,7 @@
AudioDecoderCap)> AudioDecoderCap)>
<!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)> <!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)>
<!ELEMENT EncoderProfile (Video, Audio)> <!ELEMENT EncoderProfile (Video, Audio)>
<!ATTLIST EncoderProfile quality (low|high|qcif|qvga|720p|1080p|timelapselow|timelapsehigh|timelapseqcif|timelapseqvga|timelapse720p|timelapse1080p) #REQUIRED> <!ATTLIST EncoderProfile quality (low|high|480p|720p|1080p) #REQUIRED>
<!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED> <!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED>
<!ATTLIST EncoderProfile duration (30|60) #REQUIRED> <!ATTLIST EncoderProfile duration (30|60) #REQUIRED>
<!ATTLIST EncoderProfile cameraId (0|1) #REQUIRED> <!ATTLIST EncoderProfile cameraId (0|1) #REQUIRED>
@ -35,10 +35,10 @@
<!ATTLIST Video height CDATA #REQUIRED> <!ATTLIST Video height CDATA #REQUIRED>
<!ATTLIST Video frameRate CDATA #REQUIRED> <!ATTLIST Video frameRate CDATA #REQUIRED>
<!ELEMENT Audio EMPTY> <!ELEMENT Audio EMPTY>
<!ATTLIST Audio codec (amrnb|amrwb|aac|lpcm) #REQUIRED> <!ATTLIST Audio codec (amrnb|amrwb|aac) #REQUIRED>
<!ATTLIST Audio bitRate CDATA #REQUIRED> <!ATTLIST Audio bitRate CDATA #REQUIRED>
<!ATTLIST Audio sampleRate CDATA #REQUIRED> <!ATTLIST Audio sampleRate CDATA #REQUIRED>
<!ATTLIST Audio channels (1|2|6) #REQUIRED> <!ATTLIST Audio channels (1|2) #REQUIRED>
<!ELEMENT ImageEncoding EMPTY> <!ELEMENT ImageEncoding EMPTY>
<!ATTLIST ImageEncoding quality (90|80|70|60|50|40) #REQUIRED> <!ATTLIST ImageEncoding quality (90|80|70|60|50|40) #REQUIRED>
<!ELEMENT ImageDecoding EMPTY> <!ELEMENT ImageDecoding EMPTY>
@ -58,14 +58,14 @@
<!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED> <!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED>
<!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED> <!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED>
<!ELEMENT AudioEncoderCap EMPTY> <!ELEMENT AudioEncoderCap EMPTY>
<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma|lpcm) #REQUIRED> <!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma) #REQUIRED>
<!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED> <!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED>
<!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED> <!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED>
<!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED> <!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED>
<!ATTLIST AudioEncoderCap minSampleRate CDATA #REQUIRED> <!ATTLIST AudioEncoderCap minSampleRate CDATA #REQUIRED>
<!ATTLIST AudioEncoderCap maxSampleRate CDATA #REQUIRED> <!ATTLIST AudioEncoderCap maxSampleRate CDATA #REQUIRED>
<!ATTLIST AudioEncoderCap minChannels (1|2|6) #REQUIRED> <!ATTLIST AudioEncoderCap minChannels (1|2) #REQUIRED>
<!ATTLIST AudioEncoderCap maxChannels (1|2|6) #REQUIRED> <!ATTLIST AudioEncoderCap maxChannels (1|2) #REQUIRED>
<!ELEMENT VideoDecoderCap EMPTY> <!ELEMENT VideoDecoderCap EMPTY>
<!ATTLIST VideoDecoderCap name (wmv) #REQUIRED> <!ATTLIST VideoDecoderCap name (wmv) #REQUIRED>
<!ATTLIST VideoDecoderCap enabled (true|false) #REQUIRED> <!ATTLIST VideoDecoderCap enabled (true|false) #REQUIRED>
@ -82,58 +82,6 @@
<!-- Back Camera --> <!-- Back Camera -->
<CamcorderProfiles cameraId="0" startOffsetMs="700"> <CamcorderProfiles cameraId="0" startOffsetMs="700">
<EncoderProfile quality="low" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="384000"
width="176"
height="144"
frameRate="30" />
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="high" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="17000000"
width="1920"
height="1080"
frameRate="30" />
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="qcif" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="384000"
width="176"
height="144"
frameRate="30" />
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="qvga" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="767000"
width="320"
height="240"
frameRate="30" />
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="480p" fileFormat="mp4" duration="30"> <EncoderProfile quality="480p" fileFormat="mp4" duration="30">
<Video codec="h264" <Video codec="h264"
bitRate="3449000" bitRate="3449000"
@ -173,125 +121,6 @@
channels="2" /> channels="2" />
</EncoderProfile> </EncoderProfile>
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="384000"
width="176"
height="144"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="17000000"
width="1920"
height="1080"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="384000"
width="176"
height="144"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapseqvga" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="767000"
width="320"
height="240"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="3449000"
width="720"
height="480"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="12000000"
width="1280"
height="720"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="17000000"
width="1920"
height="1080"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<ImageEncoding quality="95" /> <ImageEncoding quality="95" />
<ImageEncoding quality="80" /> <ImageEncoding quality="80" />
<ImageEncoding quality="70" /> <ImageEncoding quality="70" />
@ -302,58 +131,6 @@
<!-- Front Camera --> <!-- Front Camera -->
<CamcorderProfiles cameraId="1" startOffsetMs="700"> <CamcorderProfiles cameraId="1" startOffsetMs="700">
<EncoderProfile quality="low" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="384000"
width="176"
height="144"
frameRate="30" />
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="high" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="17000000"
width="1920"
height="1080"
frameRate="30" />
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="qcif" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="384000"
width="176"
height="144"
frameRate="30" />
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="qvga" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="767000"
width="320"
height="240"
frameRate="30" />
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="480p" fileFormat="mp4" duration="30"> <EncoderProfile quality="480p" fileFormat="mp4" duration="30">
<Video codec="h264" <Video codec="h264"
bitRate="3449000" bitRate="3449000"
@ -393,125 +170,6 @@
channels="2" /> channels="2" />
</EncoderProfile> </EncoderProfile>
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="384000"
width="176"
height="144"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="17000000"
width="1920"
height="1080"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="384000"
width="176"
height="144"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapseqvga" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="767000"
width="320"
height="240"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="3449000"
width="720"
height="480"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="12000000"
width="1280"
height="720"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="17000000"
width="1920"
height="1080"
frameRate="30" />
<!--
The Audio part of the profile will not be used since time lapse mode
does not capture audio
-->
<Audio codec="aac"
bitRate="128000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<ImageEncoding quality="95" /> <ImageEncoding quality="95" />
<ImageEncoding quality="80" /> <ImageEncoding quality="80" />
<ImageEncoding quality="70" /> <ImageEncoding quality="70" />
@ -570,11 +228,6 @@
minSampleRate="8000" maxSampleRate="8000" minSampleRate="8000" maxSampleRate="8000"
minChannels="1" maxChannels="1" /> minChannels="1" maxChannels="1" />
<AudioEncoderCap name="lpcm" enabled="true"
minBitRate="768000" maxBitRate="4608000"
minSampleRate="48000" maxSampleRate="48000"
minChannels="1" maxChannels="6" />
<!-- <!--
FIXME: FIXME:
We do not check decoder capabilities at present We do not check decoder capabilities at present

View file

@ -0,0 +1,14 @@
disable_scan_offload=1
p2p_listen_reg_class=81
p2p_listen_channel=1
p2p_oper_reg_class=124
p2p_oper_channel=149
manufacturer=SAMSUNG_ELECTRONICS
model_name=SAMSUNG_MOBILE
model_number=2014
serial_number=19691101
update_config=1
ip_addr_go=192.168.49.1
ip_addr_mask=255.255.255.0
ip_addr_start=192.168.49.200
ip_addr_end=192.168.49.254

44
configs/sap.conf Executable file
View file

@ -0,0 +1,44 @@
################################
# Sensor Settings
################################
#The following parameters are optional.
#Internal defaults support MEMS sensors
#native to most handset devices.
#Device specific sensor characterization
#for improved performance is possible as
#described in SAP application notes.
#GYRO_BIAS_RANDOM_WALK=
#ACCEL_RANDOM_WALK_SPECTRAL_DENSITY=
#ANGLE_RANDOM_WALK_SPECTRAL_DENSITY=
#RATE_RANDOM_WALK_SPECTRAL_DENSITY=
#VELOCITY_RANDOM_WALK_SPECTRAL_DENSITY=
# Sensor Sampling Rate Parameters for Low-Data Rate Filter (should be greater than 0)
# used in loc_eng_reinit
SENSOR_ACCEL_BATCHES_PER_SEC=3
SENSOR_ACCEL_SAMPLES_PER_BATCH=5
SENSOR_GYRO_BATCHES_PER_SEC=3
SENSOR_GYRO_SAMPLES_PER_BATCH=5
# Sensor Sampling Rate Parameters for High-Data Rate Filter (should be greater than 0)
SENSOR_ACCEL_BATCHES_PER_SEC_HIGH=4
SENSOR_ACCEL_SAMPLES_PER_BATCH_HIGH=25
SENSOR_GYRO_BATCHES_PER_SEC_HIGH=4
SENSOR_GYRO_SAMPLES_PER_BATCH_HIGH=25
# Sensor Control Mode (0=AUTO, 1=FORCE_ON)
# used in loc_eng_reinit
SENSOR_CONTROL_MODE=0
# Enable or Disable Sensors for GPS use (0=Enable, 1=Disable)
# used in loc_eng_reinit
SENSOR_USAGE=1
# Choose GSIFF sensor provider (1=Snapdragon Sensors Core, 2=Android NDK)
SENSOR_PROVIDER=2
# Bit mask used to define which sensor algorithms are used.
# Setting each bit has the following definition:
# 0x1 - DISABLE_INS_POSITIONING_FILTER
# 0x0 - ENABLE_INS_POSITIONING_FILTER
SENSOR_ALGORITHM_CONFIG_MASK=0x1

View file

@ -1,80 +0,0 @@
debug
sampling 5000
[tsens_tz_sensor0]
sampling 1000
thresholds 60 90 95 100 105 110 115 120
thresholds_clr 57 85 90 95 100 105 110 115
actions cpu cpu cpu cpu cpu cpu cpu shutdown
action_info 1512000 1188000 918000 756000 648000 540000 486000 5000
[tsens_tz_sensor1]
sampling 1000
thresholds 60 90 95 100 105 110 115 120
thresholds_clr 57 85 90 95 100 105 110 115
actions cpu cpu cpu cpu cpu cpu cpu shutdown
action_info 1512000 1188000 918000 756000 648000 540000 486000 5000
[tsens_tz_sensor2]
sampling 1000
thresholds 60 90 95 100 105 110 115 120
thresholds_clr 57 85 90 95 100 105 110 115
actions cpu cpu cpu cpu cpu cpu cpu shutdown
action_info 1512000 1188000 918000 756000 648000 540000 486000 5000
[tsens_tz_sensor3]
sampling 1000
thresholds 60 90 95 100 105 110 115 120
thresholds_clr 57 85 90 95 100 105 110 115
actions cpu cpu cpu cpu cpu cpu cpu shutdown
action_info 1512000 1188000 918000 756000 648000 540000 486000 5000
[tsens_tz_sensor4]
sampling 1000
thresholds 60 90 95 100 105 110 115 120
thresholds_clr 57 85 90 95 100 105 110 115
actions cpu cpu cpu cpu cpu cpu cpu shutdown
action_info 1512000 1188000 918000 756000 648000 540000 486000 5000
[tsens_tz_sensor5]
sampling 1000
thresholds 60 90 95 100 105 110 115 120
thresholds_clr 57 85 90 95 100 105 110 115
actions cpu cpu cpu cpu cpu cpu cpu shutdown
action_info 1512000 1188000 918000 756000 648000 540000 486000 5000
[tsens_tz_sensor6]
sampling 1000
thresholds 60 90 95 100 105 110 115 120
thresholds_clr 57 85 90 95 100 105 110 115
actions cpu cpu cpu cpu cpu cpu cpu shutdown
action_info 1512000 1188000 918000 756000 648000 540000 486000 5000
[tsens_tz_sensor7]
sampling 1000
thresholds 60 90 95 100 105 110 115 120
thresholds_clr 57 85 90 95 100 105 110 115
actions cpu cpu cpu cpu cpu cpu cpu shutdown
action_info 1512000 1188000 918000 756000 648000 540000 486000 5000
[tsens_tz_sensor8]
sampling 1000
thresholds 60 90 95 100 105 110 115 120
thresholds_clr 57 85 90 95 100 105 110 115
actions cpu cpu cpu cpu cpu cpu cpu shutdown
action_info 1512000 1188000 918000 756000 648000 540000 486000 5000
[tsens_tz_sensor9]
sampling 1000
thresholds 60 90 95 100 105 110 115 120
thresholds_clr 57 85 90 95 100 105 110 115
actions cpu cpu cpu cpu cpu cpu cpu shutdown
action_info 1512000 1188000 918000 756000 648000 540000 486000 5000
[tsens_tz_sensor10]
sampling 1000
thresholds 60 90 95 100 105 110 115 120
thresholds_clr 57 85 90 95 100 105 110 115
actions cpu cpu cpu cpu cpu cpu cpu shutdown
action_info 1512000 1188000 918000 756000 648000 540000 486000 5000

View file

@ -0,0 +1,4 @@
p2p_disabled=1
autoscan=samsung_exponential:8:128
update_config=1
pmf=1

112
device.mk
View file

@ -1,4 +1,5 @@
# #
# Copyright (C) 2014-2016 The CyanogenMod Project
# Copyright (C) 2017 The LineageOS Project # Copyright (C) 2017 The LineageOS Project
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
@ -22,13 +23,18 @@ $(call inherit-product-if-exists, vendor/samsung/viennalte/viennalte-vendor.mk)
# We are a tablet, not a phone # We are a tablet, not a phone
PRODUCT_CHARACTERISTICS := tablet PRODUCT_CHARACTERISTICS := tablet
# overlays # Overlays
DEVICE_PACKAGE_OVERLAYS += $(LOCAL_PATH)/overlay DEVICE_PACKAGE_OVERLAYS += $(LOCAL_PATH)/overlay
# Device uses high-density artwork where available # Device uses high-density artwork where available
PRODUCT_AAPT_CONFIG := normal PRODUCT_AAPT_CONFIG := normal
PRODUCT_AAPT_PREF_CONFIG := xhdpi PRODUCT_AAPT_PREF_CONFIG := xhdpi
# Boot animation
TARGET_SCREEN_WIDTH := 2560
TARGET_SCREEN_HEIGHT := 1600
TARGET_BOOTANIMATION_HALF_RES := true
$(call inherit-product, frameworks/native/build/tablet-10in-xhdpi-2048-dalvik-heap.mk) $(call inherit-product, frameworks/native/build/tablet-10in-xhdpi-2048-dalvik-heap.mk)
$(call inherit-product-if-exists, frameworks/native/build/phone-xxxhdpi-3072-hwui-memory.mk) $(call inherit-product-if-exists, frameworks/native/build/phone-xxxhdpi-3072-hwui-memory.mk)
@ -49,21 +55,38 @@ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/audio/audio_policy.conf:system/etc/audio_policy.conf \ $(LOCAL_PATH)/audio/audio_policy.conf:system/etc/audio_policy.conf \
$(LOCAL_PATH)/audio/mixer_paths.xml:system/etc/mixer_paths.xml $(LOCAL_PATH)/audio/mixer_paths.xml:system/etc/mixer_paths.xml
# Camera
PRODUCT_PACKAGES += \
camera.msm8974 \
libxml2
# Doze
PRODUCT_PACKAGES += \
SamsungDoze
# GPS # GPS
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
gps.msm8974 gps.msm8974
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/flp.conf:system/etc/flp.conf $(LOCAL_PATH)/configs/clatd.conf:system/etc/clatd.conf \
$(LOCAL_PATH)/configs/flp.conf:system/etc/flp.conf \
$(LOCAL_PATH)/configs/gps.conf:system/etc/gps.conf \
$(LOCAL_PATH)/configs/izat.conf:system/etc/izat.conf \
$(LOCAL_PATH)/configs/sap.conf:system/etc/sap.conf
# Camera
PRODUCT_PACKAGES += \
camera.msm8974 \
libstlport \
libxml2
#PRODUCT_PACKAGES += \
# Snap
# Doze
PRODUCT_PACKAGES += \
SamsungDoze
# IPv6 tethering
PRODUCT_PACKAGES += \
ebtables \
ethertypes
# IR Blaster
PRODUCT_PACKAGES += \
consumerir.msm8974
# Input device # Input device
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
@ -71,10 +94,6 @@ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/idc/Synaptics_HID_TouchPad.idc:system/usr/idc/Synaptics_HID_TouchPad.idc \ $(LOCAL_PATH)/idc/Synaptics_HID_TouchPad.idc:system/usr/idc/Synaptics_HID_TouchPad.idc \
$(LOCAL_PATH)/idc/Synaptics_RMI4_TouchPad_Sensor.idc:system/usr/idc/Synaptics_RMI4_TouchPad_Sensor.idc $(LOCAL_PATH)/idc/Synaptics_RMI4_TouchPad_Sensor.idc:system/usr/idc/Synaptics_RMI4_TouchPad_Sensor.idc
# IR
PRODUCT_PACKAGES += \
consumerir.msm8974
# Keylayouts # Keylayouts
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/keylayout/atmel_mxt_ts.kl:system/usr/keylayout/atmel_mxt_ts.kl \ $(LOCAL_PATH)/keylayout/atmel_mxt_ts.kl:system/usr/keylayout/atmel_mxt_ts.kl \
@ -83,13 +102,9 @@ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/keylayout/sec_touchscreen.kl:system/usr/keylayout/sec_touchscreen.kl \ $(LOCAL_PATH)/keylayout/sec_touchscreen.kl:system/usr/keylayout/sec_touchscreen.kl \
$(LOCAL_PATH)/keylayout/synaptics_rmi4_i2c.kl:system/usr/keylayout/synaptics_rmi4_i2c.kl $(LOCAL_PATH)/keylayout/synaptics_rmi4_i2c.kl:system/usr/keylayout/synaptics_rmi4_i2c.kl
# Keystore
PRODUCT_PACKAGES += \
keystore.msm8974
# Lights # Lights
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
lights.msm8974 lights.MSM8974
# Media # Media
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
@ -102,63 +117,30 @@ PRODUCT_PACKAGES += \
# Ramdisk # Ramdisk
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
fstab.qcom \ fstab.qcom \
init.carrier.rc \
init.crda.sh \
init.input.sh \
init.qcom.rc \ init.qcom.rc \
init.qcom.usb.rc \ init.qcom.usb.rc \
init.target.rc \ init.sec.boot.sh \
ueventd.qcom.rc ueventd.qcom.rc
# Ssl
PRODUCT_PACKAGES += \
libboringssl-compat
# Stlport
PRODUCT_PACKAGES += \
libstlport
# Gello
PRODUCT_PACKAGES += \
Gello
# Root
PRODUCT_PACKAGES += \
su
# Thermal # Thermal
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/thermal-engine-8974.conf:system/etc/thermal-engine-8974.conf \ $(LOCAL_PATH)/configs/thermal-engine-8974.conf:system/etc/thermal-engine-8974.conf
$(LOCAL_PATH)/configs/thermald-8974.conf:system/etc/thermald-8974.conf
# Wifi # Wifi
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
libnetcmdiface \
macloader
PRODUCT_PACKAGES += \
hostapd.accept \
hostapd.deny \
hostapd \ hostapd \
hostapd_default.conf \
libwpa_client \
macloader \
wpa_supplicant \ wpa_supplicant \
wpa_supplicant.conf wpa_supplicant.conf
# IPv6 tethering PRODUCT_COPY_FILES += \
PRODUCT_PACKAGES += \ $(LOCAL_PATH)/configs/wpa_supplicant_overlay.conf:system/etc/wifi/wpa_supplicant_overlay.conf \
ebtables \ $(LOCAL_PATH)/configs/p2p_supplicant_overlay.conf:system/etc/wifi/p2p_supplicant_overlay.conf
ethertypes
# Boot animation # common msm8974
TARGET_BOOTANIMATION_HALF_RES := true
TARGET_SCREEN_WIDTH := 2560
TARGET_SCREEN_HEIGHT := 1600
# Default Properties
#ADDITIONAL_DEFAULT_PROPERTIES += \
# persist.service.adb.enable=1 \
# persist.service.debuggable=1 \
# ro.adb.secure=0
# Wifi
PRODUCT_PACKAGES += \
libnetcmdiface
# Common msm8974
$(call inherit-product, device/samsung/msm8974-common/msm8974.mk) $(call inherit-product, device/samsung/msm8974-common/msm8974.mk)

View file

@ -1,5 +1,66 @@
#!/bin/bash #!/bin/bash
#
# Copyright (C) 2016 The CyanogenMod Project
# Copyright (C) 2017 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.
#
set -e set -e
. ../../samsung/viennalte/extract-function.sh export DEVICE=viennalte
export DEVICE_COMMON=viennalte
export VENDOR=samsung
# Load extract_utils and do some sanity checks
MY_DIR="${BASH_SOURCE%/*}"
if [[ ! -d "$MY_DIR" ]]; then MY_DIR="$PWD"; fi
CM_ROOT="$MY_DIR"/../../..
HELPER="$CM_ROOT"/vendor/cm/build/tools/extract_utils.sh
if [ ! -f "$HELPER" ]; then
echo "Unable to find helper script at $HELPER"
exit 1
fi
. "$HELPER"
if [ $# -eq 0 ]; then
SRC=adb
else
if [ $# -eq 1 ]; then
SRC=$1
else
echo "$0: bad number of arguments"
echo ""
echo "usage: $0 [PATH_TO_EXPANDED_ROM]"
echo ""
echo "If PATH_TO_EXPANDED_ROM is not specified, blobs will be extracted from"
echo "the device using adb pull."
exit 1
fi
fi
# Initialize the helper for common device
setup_vendor "$DEVICE_COMMON" "$VENDOR" "$CM_ROOT" true
extract "$MY_DIR"/common-proprietary-files.txt "$SRC"
# Reinitialize the helper for device
setup_vendor "$DEVICE" "$VENDOR" "$CM_ROOT"
for BLOB_LIST in "$MY_DIR"/../$DEVICE/device-proprietary-files*.txt; do
extract $BLOB_LIST "$SRC"
done
"$MY_DIR"/setup-makefiles.sh

View file

@ -1,68 +0,0 @@
if [ $# -eq 0 ]; then
SRC=adb
else
if [ $# -eq 1 ]; then
SRC=$1
else
echo "$0: bad number of arguments"
echo ""
echo "usage: $0 [PATH_TO_EXPANDED_ROM]"
echo ""
echo "If PATH_TO_EXPANDED_ROM is not specified, blobs will be extracted from"
echo "the device using adb pull."
exit 1
fi
fi
FP=$(cd ${0%/*} && pwd -P)
export VENDOR=$(basename $(dirname $FP))
export DEVICE=$(basename $FP)
function extract() {
for FILE in `egrep -v '(^#|^$)' $1`; do
echo "Extracting /system/$FILE ..."
OLDIFS=$IFS IFS=":" PARSING_ARRAY=($FILE) IFS=$OLDIFS
FILE=`echo ${PARSING_ARRAY[0]} | sed -e "s/^-//g"`
DEST=${PARSING_ARRAY[1]}
if [ -z $DEST ]
then
DEST=$FILE
fi
DIR=`dirname $FILE`
if [ ! -d $2/$DIR ]; then
mkdir -p $2/$DIR
fi
if [ "$SRC" = "adb" ]; then
adb pull /system/$FILE $2/$DEST
# if file dot not exist try destination
if [ "$?" != "0" ]
then
adb pull /system/$DEST $2/$DEST
fi
else
cp $SRC/system/$FILE $2/$DEST
# if file dot not exist try destination
if [ "$?" != "0" ]
then
cp $SRC/system/$DEST $2/$DEST
fi
fi
done
}
BASE_PROP=../../samsung/viennalte/proprietary-files.txt
BASE=vendor/samsung/viennalte
BASE_DIR=$BASE/proprietary
rm -rf ../../../$BASE/*
DEV_PROP=../../$VENDOR/$DEVICE/device-proprietary-files.txt
DEV_BASE=vendor/$VENDOR/$DEVICE
DEV_DIR=$DEV_BASE/proprietary
rm -rf ../../../$DEV_BASE/*
extract $BASE_PROP ../../../$BASE_DIR
extract $DEV_PROP ../../../$DEV_DIR
./../../samsung/viennalte/setup-makefiles.sh $BASE_PROP ../../../$BASE $BASE_DIR viennalte
./../../samsung/viennalte/setup-makefiles.sh $DEV_PROP ../../../$DEV_BASE $DEV_DIR $DEVICE

View file

@ -1,4 +1,4 @@
# Copyright (C) 2011 The Android Open Source Project # Copyright (C) 2014 The CyanogenMod Project
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -12,25 +12,15 @@
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
# # Inherit from those products. Most specific first.
# This file is the build configuration for a full Android $(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
# build for viennalte hardware. This cleanly combines a set of
# device-specific aspects (drivers) with a device-agnostic
# product configuration (apps). Except for a few implementation
# details, it only fundamentally contains two inherit-product
# lines, full and viennalte, hence its name.
#
# Inherit from viennalte device # Inherit from viennalte device
$(call inherit-product, device/samsung/viennalte/device.mk) $(call inherit-product, device/samsung/viennalte/device.mk)
# Inherit from those products. Most specific first.
$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
# Set those variables here to overwrite the inherited values. # Set those variables here to overwrite the inherited values.
PRODUCT_NAME := viennalte PRODUCT_NAME := full_viennaltexx
PRODUCT_DEVICE := viennalte PRODUCT_DEVICE := viennaltexx
PRODUCT_MODEL := Samsung Galaxy Note Pro 12.2 SM-P905
PRODUCT_BRAND := samsung PRODUCT_BRAND := samsung
PRODUCT_MANUFACTURER := samsung PRODUCT_MANUFACTURER := samsung
PRODUCT_MODEL := viennalte

24
include/device_perms.h Executable file
View file

@ -0,0 +1,24 @@
/*
* Copyright (C) 2012 The CyanogenMod 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.
*/
#ifndef DEVICE_PERMS_H
#define DEVICE_PERMS_H
#define PROPERTY_PERMS_APPEND \
{ "persist.audio.", AID_SYSTEM, 0 }, \
{ "persist.sys.camera.", AID_MEDIA, 0 }, \
{ "wlan.hdcp2.", AID_MEDIA, 0 },
#endif /* DEVICE_PERMS_H */

54
include/samsung_lights.h Executable file
View file

@ -0,0 +1,54 @@
/*
* Copyright (C) 2016 The CyanogenMod Project
* Copyright (C) 2017 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.
*/
#ifndef SAMSUNG_LIGHTS_H
#define SAMSUNG_LIGHTS_H
/*
* Board specific nodes
*
* If your kernel exposes these controls in another place, you can either
* symlink to the locations given here, or override this header in your
* device tree.
*/
#define PANEL_BRIGHTNESS_NODE "/sys/class/leds/lcd-backlight/brightness"
#define PANEL_MAX_BRIGHTNESS_NODE "/sys/class/leds/lcd-backlight/max_brightness"
#define BUTTON_BRIGHTNESS_NODE "/sys/class/sec/sec_touchkey/brightness"
#define LED_BLINK_NODE "/sys/class/sec/led/led_blink"
/*
* Brightness adjustment factors
*
* If one of your device's LEDs is more powerful than the others, use these
* values to equalise them. This value is in the range 0.0-1.0.
*/
#define LED_ADJUSTMENT_R 1.0
#define LED_ADJUSTMENT_G 1.0
#define LED_ADJUSTMENT_B 1.0
/*
* Light brightness factors
*
* It might make sense for all colours to be scaled down (for example, if your
* LED is too bright). Use these values to adjust the brightness of each
* light. This value is within the range 0-255.
*/
#define LED_BRIGHTNESS_BATTERY 255
#define LED_BRIGHTNESS_NOTIFICATION 255
#define LED_BRIGHTNESS_ATTENTION 255
#endif // SAMSUNG_LIGHTS_H

40
include/samsung_macloader.h Executable file
View file

@ -0,0 +1,40 @@
/*
* Copyright (C) 2017 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.
*/
#ifndef SAMSUNG_MACLOADER_H
#define SAMSUNG_MACLOADER_H
/*
* Board specific nodes
*
* If your kernel exposes these controls in another place, you can either
* symlink to the locations given here, or override this header in your
* device tree.
*/
/* NVRAM calibration, NULL if calibration unneeded */
#define WIFI_DRIVER_NVRAM_PATH "/system/etc/wifi/nvram_net.txt"
/* NVRAM calibration parameters */
#define WIFI_DRIVER_NVRAM_PATH_PARAM "/sys/module/dhd/parameters/nvram_path"
/* Physical address (MAC) */
#define MACADDR_PATH "/efs/wifi/.mac.info"
/* Consumer identification number (CID) */
#define CID_PATH "/data/.cid.info"
#endif // SAMSUNG_MACLOADER_H

50
init/init_viennalte.cpp Executable file
View file

@ -0,0 +1,50 @@
/*
Copyright (c) 2016, The Linux Foundation. All rights reserved.
Copyright (c) 2017, The LineageOS Project. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
* Neither the name of The Linux Foundation nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include <stdlib.h>
#include <stdio.h>
#include "vendor_init.h"
#include "property_service.h"
#include "log.h"
#include "util.h"
#include "init_msm8974.h"
void init_target_properties()
{
property_override("ro.build.fingerprint", "samsung/viennaltexx/viennalte:5.0.2/LRX22G/P905XXUABPE2:user/release-keys");
property_override("ro.build.description", "viennaltexx-user 5.0.2 LRX22G P905XXUABPE2 release-keys");
property_override("ro.product.model", "SM-P905");
property_override("ro.product.device", "viennalte");
property_set("ro.telephony.default_network", "9");
property_set("telephony.lteOnGsmDevice", "1");
}

View file

@ -1,31 +0,0 @@
# Copyright (C) 2017 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.
LOCAL_PATH:= $(call my-dir)
# HAL module implemenation stored in
# hw/<COPYPIX_HARDWARE_MODULE_ID>.<ro.board.platform>.so
include $(CLEAR_VARS)
LOCAL_SRC_FILES := lights.c
LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw
LOCAL_SHARED_LIBRARIES := liblog
LOCAL_MODULE := lights.msm8974
LOCAL_MODULE_TAGS := optional
include $(BUILD_SHARED_LIBRARY)

View file

@ -1,190 +0,0 @@
Copyright (C) 2008 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.
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.
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS

View file

@ -1,170 +0,0 @@
/*
* Copyright (C) 2008 The Android Open Source Project
* Copyright (C) 2017 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.
*/
//#define LOG_NDEBUG 0
#define LOG_TAG "lights"
#include <cutils/log.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <errno.h>
#include <fcntl.h>
#include <pthread.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <hardware/lights.h>
static pthread_once_t g_init = PTHREAD_ONCE_INIT;
static pthread_mutex_t g_lock = PTHREAD_MUTEX_INITIALIZER;
char const*const PANEL_FILE = "/sys/class/leds/lcd-backlight/brightness";
char const*const BUTTON_FILE = "/sys/class/sec/sec_touchkey/brightness";
void init_g_lock(void)
{
pthread_mutex_init(&g_lock, NULL);
}
static int write_int(char const *path, int value)
{
int fd;
static int already_warned;
already_warned = 0;
ALOGV("write_int: path %s, value %d", path, value);
fd = open(path, O_RDWR);
if (fd >= 0) {
char buffer[20];
int bytes = sprintf(buffer, "%d\n", value);
int amt = write(fd, buffer, bytes);
close(fd);
return amt == -1 ? -errno : 0;
} else {
if (already_warned == 0) {
ALOGE("write_int failed to open %s\n", path);
already_warned = 1;
}
return -errno;
}
}
static int rgb_to_brightness(struct light_state_t const *state)
{
int color = state->color & 0x00ffffff;
return ((77*((color>>16) & 0x00ff))
+ (150*((color>>8) & 0x00ff)) + (29*(color & 0x00ff))) >> 8;
}
static int is_lit(struct light_state_t const* state)
{
return state->color & 0x00ffffff;
}
static int set_light_backlight(struct light_device_t *dev,
struct light_state_t const *state)
{
int err = 0;
int brightness = rgb_to_brightness(state);
pthread_mutex_lock(&g_lock);
err = write_int(PANEL_FILE, brightness);
pthread_mutex_unlock(&g_lock);
return err;
}
static int
set_light_buttons(struct light_device_t* dev,
struct light_state_t const* state)
{
int err = 0;
int on = is_lit(state);
pthread_mutex_lock(&g_lock);
err = write_int(BUTTON_FILE, on?1:0);
pthread_mutex_unlock(&g_lock);
return err;
}
static int close_lights(struct light_device_t *dev)
{
ALOGV("close_light is called");
if (dev)
free(dev);
return 0;
}
static int set_light_leds_noop(struct light_device_t *dev,
struct light_state_t const *state)
{
return 0;
}
static int open_lights(const struct hw_module_t *module, char const *name,
struct hw_device_t **device)
{
int (*set_light)(struct light_device_t *dev,
struct light_state_t const *state);
if (0 == strcmp(LIGHT_ID_BACKLIGHT, name))
set_light = set_light_backlight;
else if (0 == strcmp(LIGHT_ID_BUTTONS, name))
set_light = set_light_buttons;
else if (0 == strcmp(LIGHT_ID_BATTERY, name))
set_light = set_light_leds_noop;
else if (0 == strcmp(LIGHT_ID_NOTIFICATIONS, name))
set_light = set_light_leds_noop;
else if (0 == strcmp(LIGHT_ID_ATTENTION, name))
set_light = set_light_leds_noop;
else
return -EINVAL;
pthread_once(&g_init, init_g_lock);
struct light_device_t *dev = malloc(sizeof(struct light_device_t));
memset(dev, 0, sizeof(*dev));
dev->common.tag = HARDWARE_DEVICE_TAG;
dev->common.version = 0;
dev->common.module = (struct hw_module_t *)module;
dev->common.close = (int (*)(struct hw_device_t *))close_lights;
dev->set_light = set_light;
*device = (struct hw_device_t *)dev;
return 0;
}
static struct hw_module_methods_t lights_module_methods = {
.open = open_lights,
};
struct hw_module_t HAL_MODULE_INFO_SYM = {
.tag = HARDWARE_MODULE_TAG,
.version_major = 1,
.version_minor = 0,
.id = LIGHTS_HARDWARE_MODULE_ID,
.name = "Viennalte Lights Module",
.author = "The LineageOS Project",
.methods = &lights_module_methods,
};

View file

@ -1,7 +1,6 @@
$(call inherit-product, device/samsung/viennalte/full_viennalte.mk)
# Inherit some common CM stuff.
$(call inherit-product, vendor/cm/config/common_full_phone.mk) $(call inherit-product, vendor/cm/config/common_full_phone.mk)
$(call inherit-product, device/samsung/viennalte/full_viennalte.mk)
PRODUCT_DEVICE := viennalte PRODUCT_DEVICE := viennalte
PRODUCT_NAME := lineage_viennalte PRODUCT_NAME := lineage_viennalte

View file

@ -1,41 +0,0 @@
LOCAL_PATH := $(call my-dir)
CM_DTB_FILES = $(wildcard $(TOP)/$(TARGET_KERNEL_SOURCE)/arch/arm/boot/*.dtb)
CM_DTS_FILE = $(lastword $(subst /, ,$(1)))
DTB_FILE := $(addprefix $(KERNEL_OUT)/arch/arm/boot/,$(patsubst %.dts,%.dtb,$(call CM_DTS_FILE,$(1))))
ZIMG_FILE = $(addprefix $(KERNEL_OUT)/arch/arm/boot/,$(patsubst %.dts,%-zImage,$(call CM_DTS_FILE,$(1))))
KERNEL_ZIMG = $(KERNEL_OUT)/arch/arm/boot/zImage
define append-cm-dtb
mkdir -p $(KERNEL_OUT)/arch/arm/boot;\
$(foreach d, $(CM_DTB_FILES), \
cat $(KERNEL_ZIMG) $(call DTB_FILE,$(d)) > $(call ZIMG_FILE,$(d));)
endef
## Build and run dtbtool
DTBTOOL := $(HOST_OUT_EXECUTABLES)/dtbToolCM$(HOST_EXECUTABLE_SUFFIX)
INSTALLED_DTIMAGE_TARGET := $(PRODUCT_OUT)/dt.img
$(INSTALLED_DTIMAGE_TARGET): $(DTBTOOL) $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr $(INSTALLED_KERNEL_TARGET)
@echo -e ${CL_CYN}"Start DT image: $@"${CL_RST}
$(call append-cm-dtb)
$(call pretty,"Target dt image: $(INSTALLED_DTIMAGE_TARGET)")
$(hide) $(DTBTOOL) -2 -o $(INSTALLED_DTIMAGE_TARGET) -s $(BOARD_KERNEL_PAGESIZE) -p $(KERNEL_OUT)/scripts/dtc/ $(KERNEL_OUT)/arch/arm/boot/
@echo -e ${CL_CYN}"Made DT image: $@"${CL_RST}
## Overload bootimg generation: Same as the original, + --dt arg
$(INSTALLED_BOOTIMAGE_TARGET): $(MKBOOTIMG) $(INTERNAL_BOOTIMAGE_FILES) $(INSTALLED_DTIMAGE_TARGET)
$(call pretty,"Target boot image: $@")
$(hide) $(MKBOOTIMG) $(INTERNAL_BOOTIMAGE_ARGS) $(BOARD_MKBOOTIMG_ARGS) --dt $(INSTALLED_DTIMAGE_TARGET) --output $@
$(hide) $(call assert-max-image-size,$@,$(BOARD_BOOTIMAGE_PARTITION_SIZE),raw)
@echo -e ${CL_CYN}"Made boot image: $@"${CL_RST}
## Overload recoveryimg generation: Same as the original, + --dt arg
$(INSTALLED_RECOVERYIMAGE_TARGET): $(MKBOOTIMG) $(INSTALLED_DTIMAGE_TARGET) \
$(recovery_ramdisk) \
$(recovery_kernel)
$(call build-recoveryimage-target, $@)
$(hide) $(MKBOOTIMG) $(INTERNAL_RECOVERYIMAGE_ARGS) $(BOARD_MKBOOTIMG_ARGS) --dt $(INSTALLED_DTIMAGE_TARGET) --output $@
@echo -e ${CL_CYN}"Made recovery image: $@"${CL_RST}

View file

@ -2,6 +2,7 @@
<!-- <!--
/* /*
** Copyright 2011, The Android Open Source Project ** Copyright 2011, The Android Open Source Project
** Copyright 2017, The LineageOS Project
** **
** Licensed under the Apache License, Version 2.0 (the "License"); ** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License. ** you may not use this file except in compliance with the License.
@ -38,10 +39,19 @@
Must be overridden in platform specific overlays --> Must be overridden in platform specific overlays -->
<integer-array name="config_autoBrightnessLevels"> <integer-array name="config_autoBrightnessLevels">
<item>2</item>
<item>7</item>
<item>15</item> <item>15</item>
<item>150</item> <item>50</item>
<item>100</item>
<item>200</item>
<item>400</item>
<item>1000</item> <item>1000</item>
<item>2000</item>
<item>3000</item>
<item>5000</item> <item>5000</item>
<item>10000</item>
<item>30000</item>
</integer-array> </integer-array>
<!-- Array of output values for LCD backlight corresponding to the LUX values <!-- Array of output values for LCD backlight corresponding to the LUX values
@ -49,11 +59,20 @@
than the size of the config_autoBrightnessLevels array. than the size of the config_autoBrightnessLevels array.
This must be overridden in platform specific overlays --> This must be overridden in platform specific overlays -->
<integer-array name="config_autoBrightnessLcdBacklightValues"> <integer-array name="config_autoBrightnessLcdBacklightValues">
<item>10</item> <item>13</item> <!-- 0-2 -->
<item>80</item> <item>25</item> <!-- 3-7 -->
<item>162</item> <item>32</item> <!-- 5-15 -->
<item>190</item> <item>41</item> <!-- 15-50 -->
<item>255</item> <item>52</item> <!-- 50-100 -->
<item>62</item> <!-- 100-200 -->
<item>69</item> <!-- 200-400 -->
<item>78</item> <!-- 400-1000 -->
<item>88</item> <!-- 1000-2000 -->
<item>134</item> <!-- 2000-3000 -->
<item>178</item> <!-- 3000-5000 -->
<item>225</item> <!-- 5000-10000 -->
<item>255</item> <!-- 10000-30000 -->
<item>255</item> <!-- 30000+ -->
</integer-array> </integer-array>
<!-- Array of output values for button backlight corresponding to the LUX values <!-- Array of output values for button backlight corresponding to the LUX values
@ -68,9 +87,15 @@
<item>0</item> <item>0</item>
</integer-array> </integer-array>
<!-- Minimum screen brightness allowed by the power manager. --> <!-- Minimum screen brightness allowed by the power manager. -->
<integer name="config_screenBrightnessDim">14</integer> <integer name="config_screenBrightnessDim">2</integer>
<!-- Screen brightness when dozing. -->
<integer name="config_screenBrightnessDoze">17</integer>
<!-- Dream of notifications -->
<string name="config_dozeComponent">com.android.systemui/com.android.systemui.doze.DozeService</string>
<bool name="config_dozeAfterScreenOff">true</bool>
<!-- Default screen brightness setting. <!-- Default screen brightness setting.
Must be in the range specified by minimum and maximum. --> Must be in the range specified by minimum and maximum. -->
@ -78,7 +103,11 @@
<!-- Minimum screen brightness setting allowed by the power manager. <!-- Minimum screen brightness setting allowed by the power manager.
The user is forbidden from setting the brightness below this level. --> The user is forbidden from setting the brightness below this level. -->
<integer name="config_screenBrightnessSettingMinimum">4</integer> <integer name="config_screenBrightnessSettingMinimum">2</integer>
<!-- Maximum screen brightness allowed by the power manager.
The user is forbidden from setting the brightness above this level. -->
<integer name="config_screenBrightnessSettingMaximum">255</integer>
<!-- XXXXX NOTE THE FOLLOWING RESOURCES USE THE WRONG NAMING CONVENTION. <!-- XXXXX NOTE THE FOLLOWING RESOURCES USE THE WRONG NAMING CONVENTION.
Please don't copy them, copy anything else. --> Please don't copy them, copy anything else. -->
@ -146,6 +175,9 @@
<!-- Boolean indicating whether the wifi chipset has background scan support --> <!-- Boolean indicating whether the wifi chipset has background scan support -->
<bool translatable="false" name="config_wifi_background_scan_support">false</bool> <bool translatable="false" name="config_wifi_background_scan_support">false</bool>
<!-- Enables or disables fading edges when marquee is enabled in TextView. -->
<bool name="config_ui_enableFadingMarquee">false</bool>
<!-- The VoiceMail default value is displayed to my own number if it is true --> <!-- The VoiceMail default value is displayed to my own number if it is true -->
<bool name="config_telephony_use_own_number_for_voicemail">true</bool> <bool name="config_telephony_use_own_number_for_voicemail">true</bool>
@ -153,6 +185,7 @@
<!-- The restoring is handled by modem if it is true--> <!-- The restoring is handled by modem if it is true-->
<bool name="skip_restoring_network_selection">true</bool> <bool name="skip_restoring_network_selection">true</bool>
<!-- Vibrator pattern for feedback about a long screen/key press --> <!-- Vibrator pattern for feedback about a long screen/key press -->
<integer-array name="config_longPressVibePattern"> <integer-array name="config_longPressVibePattern">
<item>0</item> <item>0</item>
@ -210,9 +243,6 @@
<!-- Indicate whether the SD card is accessible without removing the battery. --> <!-- Indicate whether the SD card is accessible without removing the battery. -->
<bool name="config_batterySdCardAccessibility">true</bool> <bool name="config_batterySdCardAccessibility">true</bool>
<!-- Disable the home key unlock setting -->
<!-- <bool name="config_disableHomeUnlockSetting">false</bool> -->
<!-- Hardware keys present on the device, stored as a bit field. <!-- Hardware keys present on the device, stored as a bit field.
This integer should equal the sum of the corresponding value for each This integer should equal the sum of the corresponding value for each
of the following keys present: of the following keys present:
@ -251,24 +281,55 @@
The default is false. --> The default is false. -->
<bool name="config_lidControlsSleep">true</bool> <bool name="config_lidControlsSleep">true</bool>
<!-- Configure wifi tcp buffersizes in the form: <!-- Configure wifi tcp buffersizes in the form:
rmem_min,rmem_def,rmem_max,wmem_min,wmem_def,wmem_max --> rmem_min,rmem_def,rmem_max,wmem_min,wmem_def,wmem_max -->
<string name="config_wifi_tcp_buffers" translatable="false">524288,2097152,4194304,262144,524288,1048576</string> <string name="config_wifi_tcp_buffers" translatable="false">524288,2097152,4194304,262144,524288,1048576</string>
<string-array name="config_mobile_tcp_buffers"> <string-array name="config_mobile_tcp_buffers">
<item>lte:2097152,4194304,8388608,262144,524288,1048576</item>
<item>lte_ca:2097152,4194304,8388608,262144,524288,1048576</item>
<item>umts:4094,87380,110208,4096,16384,110208</item> <item>umts:4094,87380,110208,4096,16384,110208</item>
<item>hspa:4094,87380,1220608,4096,16384,1220608</item> <item>hspa:4094,87380,1220608,4096,16384,1220608</item>
<item>hsupa:4094,87380,1220608,4096,16384,1220608</item> <item>hsupa:4094,87380,1220608,4096,16384,1220608</item>
<item>hsdpa:4094,87380,1220608,4096,16384,1220608</item> <item>hsdpa:4094,87380,2441216,4096,16384,2441216</item>
<item>hspap:4094,87380,1220608,4096,16384,1220608</item> <item>hspap:4094,87380,1220608,4096,16384,1220608</item>
<item>edge:4093,26280,35040,4096,16384,35040</item> <item>edge:4093,26280,35040,4096,16384,35040</item>
<item>gprs:4092,8760,11680,4096,8760,11680</item> <item>gprs:4092,8760,11680,4096,8760,11680</item>
<item>evdo:4094,87380,262144,4096,16384,262144</item> <item>evdo:4094,87380,1048576,4096,16384,262144</item>
<item>lte:524288,1048576,2097152,262144,524288,1048576</item> <item>ehrpd:4094,87380,1048576,4096,16384,262144</item>
</string-array> </string-array>
<!-- Boolean to enable stylus gestures --> <!-- Certain sensor firmwares break with having a batch
<!-- <bool name="config_stylusGestures">true</bool> --> size set. By setting this to false, devices can opt
out of setting a batch size, which fixes rotation. -->
<bool name="config_useDefaultBatchingForAccel">false</bool>
<!-- Override the default detection behavior for the framework method
android.view.ViewConfiguration#hasPermanentMenuKey().
Valid settings are:
0 - No change. Use the default autodetection behavior.
1 - The device DOES have a permanent menu key; ignore autodetection.
2 - The device DOES NOT have a permanent menu key; ignore autodetection. -->
<integer name="config_overrideHasPermanentMenuKey">2</integer>
<!-- Enable blur support -->
<bool name="config_uiBlurEnabled">true</bool>
<!-- Values for GPS configuration -->
<string-array translatable="false" name="config_gpsParameters">
<item>XTRA_SERVER_1=https://xtrapath1.izatcloud.net/xtra3grc.bin</item>
<item>XTRA_SERVER_2=https://xtrapath2.izatcloud.net/xtra3grc.bin</item>
<item>XTRA_SERVER_3=https://xtrapath3.izatcloud.net/xtra3grc.bin</item>
<item>NTP_SERVER=north-america.pool.ntp.org</item>
<item>SUPL_VER=0x20000</item>
<item>SUPL_ES=0</item>
<item>CAPABILITIES=0x31</item>
<item>SUPL_HOST=supl.google.com</item>
<item>SUPL_PORT=7275</item>
<item>SUPL_MODE=1</item>
<item>LPP_PROFILE=0</item>
<item>A_GLONASS_POS_PROTOCOL_SELECT=0</item>
</string-array>
<!-- The RadioAccessFamilies supported by the device. <!-- The RadioAccessFamilies supported by the device.
Empty is viewed as "all". Only used on devices which Empty is viewed as "all". Only used on devices which

View file

@ -1,42 +1,63 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<device name="Android"> <device name="Android">
<item name="none">0</item> <item name="none">0</item>
<item name="screen.on">58</item> <item name="screen.on">65</item>
<item name="bluetooth.active">98</item> <item name="screen.full">202</item>
<item name="bluetooth.on">0.4</item> <item name="bluetooth.active">87</item>
<item name="screen.full">228</item> <item name="bluetooth.on">1</item>
<item name="wifi.on">0.5</item> <item name="wifi.on">3</item>
<item name="wifi.active">187</item> <item name="wifi.active">240</item>
<item name="wifi.scan">114</item> <item name="wifi.scan">129</item>
<item name="dsp.audio">40</item> <item name="dsp.audio">29</item>
<item name="dsp.video">251</item> <item name="dsp.video">215</item>
<item name="radio.active">155</item> <item name="radio.active">125</item>
<item name="radio.scanning">25</item> <item name="radio.scanning">25</item>
<item name="gps.on">0.3</item> <item name="gps.on">1</item>
<array name="radio.on"> <array name="radio.on">
<value>5.4</value> <value>4.5</value>
<value>5.4</value> <value>4.5</value>
</array> </array>
<array name="cpu.speeds"> <array name="cpu.speeds">
<value>2457600</value>
<value>2265600</value> <value>2265600</value>
<value>1958400</value>
<value>1728000</value> <value>1728000</value>
<value>1574400</value>
<value>1497600</value> <value>1497600</value>
<value>1267200</value>
<value>1190400</value> <value>1190400</value>
<value>1036800</value>
<value>960000</value> <value>960000</value>
<value>883200</value>
<value>729600</value> <value>729600</value>
<value>652800</value>
<value>422400</value> <value>422400</value>
<value>300000</value> <value>300000</value>
</array> </array>
<item name="cpu.idle">4</item> <item name="cpu.idle">3.1</item>
<array name="cpu.active"> <array name="cpu.active">
<value>399</value> <value>348</value>
<value>308</value> <value>313</value>
<value>264</value> <value>265</value>
<value>190</value> <value>232</value>
<value>174</value> <value>213</value>
<value>102</value> <value>203</value>
<value>72</value> <value>176</value>
<value>46</value> <value>132</value>
<value>122</value>
<value>114</value>
<value>97</value>
<value>92</value>
<value>84</value>
<value>74</value>
<value>56</value>
</array> </array>
<item name="battery.capacity">9500</item> <item name="battery.capacity">9500</item>
<array name="wifi.batchedscan">
<value>.0002</value>
<value>.002</value>
<value>.02</value>
<value>.2</value>
<value>2</value>
</array>
</device> </device>

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- <!--
/** /**
* Copyright (c) 2017, The LineageOS * Copyright (c) 2014, The CyanogenMod Project
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.

View file

@ -1,34 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
** Copyright 2009, 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.
*/
-->
<!-- These resources are around just to allow their values to be customized
for different hardware and product builds. -->
<resources>
<!-- Whether we're using the tablet-optimized recents interface (we use this
value at runtime for some things) -->
<bool name="config_recents_interface_for_tablets">true</bool>
<!-- Whether rotation lock shows up in quick settings or not -->
<bool name="quick_settings_show_rotation_lock">true</bool>
<!-- Control whether status bar should distinguish HSPA data icon form
data icon on devices -->
<bool name="config_hspa_data_distinguishable">true</bool>
</resources>

View file

@ -0,0 +1,38 @@
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<!--
/*
** Copyright 2017, 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.
*/
-->
<carrier_config_list>
<carrier_config>
<boolean name="apn_expand_bool" value="true" />
<boolean name="world_phone_bool" value="true" />
<boolean name="allow_adding_apns_bool" value="true" />
<boolean name="show_cdma_choices_bool" value="true" />
<boolean name="show_apn_setting_cdma_bool" value="true" />
</carrier_config>
<carrier_config mcc="204" mnc="04" gid1="BAE0000000000000">
<boolean name="disable_cdma_activation_code_bool" value="true" />
</carrier_config>
<carrier_config mcc="310" mnc="004">
<boolean name="disable_cdma_activation_code_bool" value="true" />
</carrier_config>
<carrier_config mcc="310" mnc="480">
<boolean name="disable_cdma_activation_code_bool" value="true" />
</carrier_config>
</carrier_config_list>

View file

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (C) 2016 The CyanogenMod 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>
<bool name="call_recording_enabled">true</bool>
<integer name="call_recording_audio_source">4</integer>
</resources>

View file

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2017 The LineageOS Project
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Also add information on how to contact you by electronic and paper mail.
-->
<resources>
<!-- Define Device Lid Style
1 HTC Style Dotcase
2 Asus/LG Style Circle Window Cover
3 Rectangular window Cover
For example, a device with Asus Circle Cover would set 2 -->
<integer name="config_deviceCoverType">3</integer>
</resources>

View file

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2017 The LineageOS Project
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Also add information on how to contact you by electronic and paper mail.
-->
<resources>
<!-- Rectangular parameters (config_deviceCoverType == 3) -->
<dimen name="rectangular_window_top">0px</dimen>
<dimen name="rectangular_window_left">60px</dimen>
<dimen name="rectangular_window_width">960px</dimen>
<dimen name="rectangular_window_height">960px</dimen>
</resources>

View file

@ -1,49 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2009 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.
-->
<!-- Version History
version 1 - initial version.
version 2 - added recipientLimit.
version 3 - added min/max recycler values.
-->
<mms_config version="3">
<!-- Maximum message size in bytes for a MMS message -->
<int name="maxMessageSize">3145728</int>
<!-- Maximum height for an attached image -->
<int name="maxImageHeight">480</int>
<!-- Maximum width for an attached image -->
<int name="maxImageWidth">640</int>
<!-- If true, The text message over 160 characters will be sent in multi part.
If false, The text message over 160 characters will be sent
via multi media message. -->
<bool name="enableMultipartSMS">true</bool>
<!-- If true, the text message will be split every 160 characters.
If false, the text will never be split before being sent. -->
<bool name="enableSplitSMS">false</bool>
<!-- User-Agent parameter used in MMS http request -->
<string name="userAgent">SAMSUNG-SM-P905-Mms</string>
<!-- UAProf URL -->
<string name="uaProfUrl">http://wap.samsungmobile.com/uaprof/SM-905.xml</string>
</mms_config>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2009 The Android Open Source Project <!-- Copyright (C) 2014 The CyanogenMod Project
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@ -15,7 +15,6 @@
--> -->
<resources> <resources>
<!-- Whether or not the dock settings are to be displayed for this device when docked -->
<!-- make home button wake configurable in display settings --> <bool name="has_dock_settings">true</bool>
<bool name="config_show_homeWake">true</bool>
</resources> </resources>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2017 The LineageOS Project <!-- Copyright (C) 2016 The CyanogenMod Project
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@ -15,6 +15,10 @@
--> -->
<resources> <resources>
<!-- Home button Wake support. Some devices do not support this.
Setting to false will disable Home button Wake support -->
<bool name="config_show_homeWake">true</bool>
<!-- Volume Rocker Wake --> <!-- Volume Rocker Wake -->
<bool name="config_show_volumeRockerWake">true</bool> <bool name="config_show_volumeRockerWake">true</bool>
</resources> </resources>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2012 The Android Open Source Project
2015-2016 The CyanogenMod 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.
-->
<!-- Camera app resources that may need to be customized
for different hardware or product builds. -->
<resources>
<!-- Restart preview for back camera onPictureTaken -->
<bool name="back_camera_restart_preview_onPictureTaken">true</bool>
<!-- QC-denoise -->
<string name="pref_camera_denoise_default" translatable="false">denoise-on</string>
</resources>

View file

@ -17,18 +17,9 @@
<!-- Phone app resources that may need to be customized <!-- Phone app resources that may need to be customized
for different hardware or product builds. --> for different hardware or product builds. -->
<resources> <resources>
<!-- Determine whether calls to mute the microphone in PhoneUtils
are routed through the android.media.AudioManager class (true) or through
the com.android.internal.telephony.Phone interface (false). -->
<bool name="send_mic_mute_to_AudioManager">true</bool>
<!-- This device implements a noise suppression device for in call audio--> <!-- This device implements a noise suppression device for in call audio-->
<bool name="has_in_call_noise_suppression">true</bool> <bool name="has_in_call_noise_suppression">true</bool>
<!-- Flag indicating if the tty is enabled -->
<bool name="tty_enabled">true</bool>
<!-- Show enabled lte option for lte device --> <!-- Show enabled lte option for lte device -->
<bool name="config_enabled_lte" translatable="false">true</bool> <bool name="config_enabled_lte" translatable="false">true</bool>
</resources> </resources>

View file

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2017 The LineageOS Project * Copyright (c) 2014 The CyanogenMod Project
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -17,58 +17,22 @@
#include <errno.h> #include <errno.h>
#include <string.h> #include <string.h>
#include <fcntl.h> #include <fcntl.h>
#include <ctype.h>
#define LOG_TAG "PowerHAL_H_Ext" #define LOG_TAG "PowerHAL_H_Ext"
#include <utils/Log.h> #include <utils/Log.h>
#define MAX_INPUTS 20 /* touchkeys */
#define INPUT_PREFIX "/sys/class/input/input" #define TK_POWER "/sys/class/input/input1/enabled"
#define MAX_PATH_SIZE (strlen(INPUT_PREFIX) + 20)
static const char *names[] = { "sec_touchscreen", "gpio-keys" }; /* touchscreen */
#define N_NAMES (sizeof(names) / sizeof(names[0])) #define TS_POWER "/sys/class/input/input2/enabled"
static char *paths[N_NAMES];
static int have_found_paths;
static size_t sysfs_read(char *path, char *buffer, size_t n) static void sysfs_write(char *path, char *s) {
{
char buf[80];
int fd;
ssize_t len;
if ((fd = open(path, O_RDONLY)) < 0) {
if (errno != ENOENT) {
strerror_r(errno, buf, sizeof(buf));
ALOGE("Error opening %s: %s\n", path, buf);
}
return 0;
}
len = read(fd, buffer, n);
if (len < 0) {
strerror_r(errno, buf, sizeof(buf));
ALOGE("Error reading from %s: %s\n", path, buf);
return 0;
}
while (len > 0 && isspace(buffer[len-1])) len--;
if ((size_t) len < n) buffer[len] = '\0';
close(fd);
return len;
}
static void sysfs_write(char *path, char *s)
{
char buf[80]; char buf[80];
int len; int len;
int fd; int fd = open(path, O_WRONLY);
if (path == NULL) return; if (fd < 0) {
if ((fd = open(path, O_WRONLY)) < 0) {
strerror_r(errno, buf, sizeof(buf)); strerror_r(errno, buf, sizeof(buf));
ALOGE("Error opening %s: %s\n", path, buf); ALOGE("Error opening %s: %s\n", path, buf);
return; return;
@ -83,37 +47,8 @@ static void sysfs_write(char *path, char *s)
close(fd); close(fd);
} }
static void void cm_power_set_interactive_ext(int on) {
find_paths(void)
{
size_t i, j;
char path[MAX_PATH_SIZE];
char name[20];
for (i = 0; i < MAX_INPUTS; i++) {
sprintf(path, "%s%d/name", INPUT_PREFIX, i);
if (sysfs_read(path, name, sizeof(name)) > 0) {
for (j = 0; j < N_NAMES; j++) {
if (strcmp(name, names[j]) == 0) {
paths[j] = malloc(MAX_PATH_SIZE);
sprintf(paths[j], "%s%d/enabled", INPUT_PREFIX, i);
ALOGD("%s => %s\n", names[j], paths[j]);
}
}
}
}
}
void cm_power_set_interactive_ext(int on)
{
size_t i;
ALOGD("%s: %s input devices", __func__, on ? "enabling" : "disabling"); ALOGD("%s: %s input devices", __func__, on ? "enabling" : "disabling");
sysfs_write(TK_POWER, on ? "1" : "0");
if (! have_found_paths) { sysfs_write(TS_POWER, on ? "1" : "0");
find_paths();
have_found_paths = 1;
}
for (i = 0; i < N_NAMES; i++) sysfs_write(paths[i], on ? "1" : "0");
} }

39
recovery/recovery_keys.c Executable file
View file

@ -0,0 +1,39 @@
#include <linux/input.h>
#include "recovery_ui.h"
#include "common.h"
#include "extendedcommands.h"
int device_handle_key(int key_code, int visible) {
if (visible) {
switch (key_code) {
case KEY_CAPSLOCK:
case KEY_DOWN:
case KEY_VOLUMEDOWN:
return HIGHLIGHT_DOWN;
case KEY_MENU:
return NO_ACTION;
case KEY_LEFTSHIFT:
case KEY_UP:
case KEY_VOLUMEUP:
return HIGHLIGHT_UP;
case KEY_HOMEPAGE:
case KEY_POWER:
case KEY_LEFTBRACE:
case KEY_ENTER:
case BTN_MOUSE:
case KEY_CAMERA:
case KEY_F21:
case KEY_SEND:
return SELECT_ITEM;
case KEY_END:
case KEY_BACKSPACE:
case KEY_SEARCH:
case KEY_BACK:
return GO_BACK;
}
}
return NO_ACTION;
}

View file

@ -1,13 +1,9 @@
LOCAL_PATH := $(call my-dir) LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_SRC_FILES := ril_shim.c
LOCAL_SHARED_LIBRARIES := liblog libcutils libbinder libutils LOCAL_SHARED_LIBRARIES := liblog libcutils libbinder libutils
LOCAL_SRC_FILES := \
ril_shim.c
LOCAL_MODULE := libril_shim LOCAL_MODULE := libril_shim
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := SHARED_LIBRARIES LOCAL_MODULE_CLASS := SHARED_LIBRARIES
include $(BUILD_SHARED_LIBRARY) include $(BUILD_SHARED_LIBRARY)

View file

@ -36,7 +36,7 @@ import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
/** /**
* RIL customization for Galaxy S5 (GSM) LTE devices * RIL customization for Galaxy Note Pro 12.2 LTE devices
* *
* {@hide} * {@hide}
*/ */

View file

@ -2,18 +2,10 @@ LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS) include $(CLEAR_VARS)
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_MODULE := init.carrier.rc LOCAL_MODULE := fstab.qcom
LOCAL_MODULE_TAGS := optional eng LOCAL_MODULE_TAGS := optional eng
LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_CLASS := ETC
LOCAL_SRC_FILES := etc/init.carrier.rc LOCAL_SRC_FILES := etc/fstab.qcom
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := init.input.sh
LOCAL_MODULE_TAGS := optional eng
LOCAL_MODULE_CLASS := ETC
LOCAL_SRC_FILES := etc/init.input.sh
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT) LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT) include $(BUILD_PREBUILT)
@ -33,14 +25,6 @@ LOCAL_SRC_FILES := etc/init.qcom.usb.rc
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT) LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT) include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := init.target.rc
LOCAL_MODULE_TAGS := optional eng
LOCAL_MODULE_CLASS := ETC
LOCAL_SRC_FILES := etc/init.target.rc
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT)
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_MODULE := ueventd.qcom.rc LOCAL_MODULE := ueventd.qcom.rc
LOCAL_MODULE_TAGS := optional eng LOCAL_MODULE_TAGS := optional eng
@ -50,16 +34,8 @@ LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT) include $(BUILD_PREBUILT)
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_MODULE := init.crda.sh LOCAL_MODULE := init.sec.boot.sh
LOCAL_MODULE_TAGS := optional eng LOCAL_MODULE_TAGS := optional eng
LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_CLASS := ETC
LOCAL_SRC_FILES := etc/init.crda.sh LOCAL_SRC_FILES := etc/init.sec.boot.sh
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := fstab.qcom
LOCAL_MODULE_TAGS := optional eng
LOCAL_MODULE_CLASS := ETC
LOCAL_SRC_FILES := etc/fstab.qcom
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT) include $(BUILD_PREBUILT)

View file

@ -7,15 +7,20 @@
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags> #<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,errors=panic wait /dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,errors=panic wait
/dev/block/platform/msm_sdcc.1/by-name/userdata /data f2fs rw,nosuid,nodev,noatime,nodiratime,inline_data,inline_xattr wait,check,encryptable=footer,length=-16384 /dev/block/platform/msm_sdcc.1/by-name/userdata /data f2fs nosuid,nodev,noatime,rw,inline_xattr wait,check,formattable,encryptable=footer,length=-16384
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check,encryptable=footer,length=-16384 /dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 nosuid,nodev,noatime,noauto_da_alloc,errors=continue,commit=20 wait,check,formattable,encryptable=footer,length=-16384
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check /dev/block/platform/msm_sdcc.1/by-name/cache /cache f2fs nosuid,nodev,noatime,rw,inline_xattr wait,check,formattable
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 nosuid,nodev,noatime,noauto_da_alloc,errors=continue,commit=20 wait,check,formattable
/dev/block/platform/msm_sdcc.1/by-name/apnhlos /firmware vfat ro,shortname=lower,uid=1000,gid=1026,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait /dev/block/platform/msm_sdcc.1/by-name/apnhlos /firmware vfat ro,shortname=lower,uid=1000,gid=1026,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware-modem vfat ro,shortname=lower,uid=1000,gid=1026,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait /dev/block/platform/msm_sdcc.1/by-name/modem /firmware-modem vfat ro,shortname=lower,uid=1000,gid=1026,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait
/dev/block/platform/msm_sdcc.1/by-name/efs /efs ext4 nosuid,nodev,noatime,noauto_da_alloc,journal_async_commit,errors=panic wait,check
/dev/block/platform/msm_sdcc.1/by-name/fota /misc emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults recoveryonly /dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults recoveryonly
/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults recoveryonly /dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults recoveryonly
# VOLD /devices/msm_sdcc.3/mmc_host/mmc* auto auto defaults voldmanaged=sdcard1:auto,encryptable=userdata
/devices/msm_sdcc.3/mmc_host/mmc2* auto auto defaults voldmanaged=sdcard1:auto,encryptable=userdata
/devices/platform/xhci-hcd* auto auto defaults voldmanaged=usbdisk:auto /dev/block/zram0 none swap defaults zramsize=25%,zramstreams=4,swapprio=10,notrim
/devices/platform/xhci-hcd* auto auto defaults voldmanaged=usb:auto

View file

@ -1,94 +0,0 @@
# Copyright (C) 2012 The Android Open Source Project
#
# IMPORTANT: Do not create world writable files or directories.
# This is a common source of Android security bugs.
#
on boot
# permission for Input Device(Touchkey).
chmod 0660 /sys/class/input/input2/enabled
chown system system /sys/class/input/input2/enabled
chown radio system /sys/class/sec/sec_touchkey/touch_sensitivity
chown radio system /sys/class/sec/sec_touchkey/touchkey_firm_update
chown system radio /sys/class/sec/sec_touchkey/glove_mode
chown system radio /sys/class/sec/sec_touchkey/flip_mode
chown system radio /sys/class/sec/sec_touchkey/boost_level
# permission for Input Device(Wacom).
chmod 0660 /sys/class/input/input4/enabled
chown system system /sys/class/input/input4/enabled
# permissions for S-Pen
chmod 0660 /sys/class/input/input3/enabled
chown system system /sys/class/input/input3/enabled
chown system radio /sys/class/sec/sec_epen/epen_firm_update
chown system radio /sys/class/sec/sec_epen/epen_rotation
chown system radio /sys/class/sec/sec_epen/epen_hand
chown system radio /sys/class/sec/sec_epen/epen_reset
chown system radio /sys/class/sec/sec_epen/epen_reset_result
chown system radio /sys/class/sec/sec_epen/epen_checksum
chown system radio /sys/class/sec/sec_epen/epen_checksum_result
chown system radio /sys/class/sec/sec_epen/epen_saving_mode
chown system radio /sys/class/sec/sec_epen/boost_level
# permissions for gpio keys
chmod 0660 /sys/class/input/input5/enabled
chown system system /sys/class/input/input5/enabled
# permissions for bluetooth.
setprop ro.bt.bdaddr_path "/efs/bluetooth/bt_addr"
chown bluetooth net_bt_stack ro.bt.bdaddr_path
chown bluetooth net_bt_stack /dev/ttyHS0
chmod 0660 /dev/ttyHS0
chmod 0660 /sys/class/rfkill/rfkill0/state
chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/state
chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/type
# bluetooth LPM
chmod 0660 /proc/bluetooth/sleep/lpm
chmod 0220 /proc/bluetooth/sleep/btwrite
chown bluetooth net_bt_stack /proc/bluetooth/sleep/lpm
chown bluetooth net_bt_stack /proc/bluetooth/sleep/btwrite
chmod 0600 /dev/btlock
chown bluetooth bluetooth /dev/btlock
on fs
# Support Preload install apks
mkdir /preload 0771 system system
#For Absolute Persistence Partition
mkdir /persdata 0755 system system
mkdir /persdata/absolute 0750 system system
wait /dev/block/platform/msm_sdcc.1/by-name/persdata
check_fs /dev/block/platform/msm_sdcc.1/by-name/persdata ext4
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/persdata /persdata/absolute nosuid nodev barrier=1
chown system system /persdata
chmod 0755 /persdata
chown system system /persdata/absolute
chmod 0750 /persdata/absolute
# bluetooth dhcp config
service dhcpcd_bt-pan /system/bin/dhcpcd -ABKL
class main
disabled
oneshot
service iprenew_bt-pan /system/bin/dhcpcd -n
class late_start
disabled
oneshot
# service for TZPR provisioning version check app
service scranton_RD /system/bin/scranton_RD
class main
user root
disabled
oneshot
# start for TZPR provisioning version check app
on property:sys.qseecomd.enable=true
start scranton_RD

View file

@ -1,34 +0,0 @@
#!/system/bin/sh
# Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# * Neither the name of The Linux Foundation nor
# the names of its contributors may be used to endorse or promote
# products derived from this software without specific prior written
# permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
country=`getprop wlan.crda.country`
# crda takes input in COUNTRY environment variable
if [ $country != "" ]
then
COUNTRY="$country" /system/bin/crda
fi

View file

@ -1,12 +0,0 @@
#!/system/bin/sh
for i in /sys/class/input/input*
do
name=`cat $i/name`
if [ "$name" = gpio-keys -o "$name" = sec_touchscreen ]
then
echo "Found $name at $i"
chown system $i/enabled
chmod 644 $i/enabled
fi
done

File diff suppressed because it is too large Load diff

View file

@ -899,3 +899,8 @@ on property:sys.usb.config=charging
write /sys/class/android_usb/android0/functions acm write /sys/class/android_usb/android0/functions acm
write /sys/class/android_usb/android0/enable 1 write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config} setprop sys.usb.state ${sys.usb.config}
on property:service.adb.root=1
write /sys/class/android_usb/android0/enable 0
restart adbd
write /sys/class/android_usb/android0/enable 1

4
rootdir/etc/init.sec.boot.sh Executable file
View file

@ -0,0 +1,4 @@
#!/system/bin/sh
# start deferred initcalls
cat /proc/deferred_initcalls

View file

@ -1,539 +0,0 @@
# Copyright (c) 2011-2013, The Linux Foundation. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following
# disclaimer in the documentation and/or other materials provided
# with the distribution.
# * Neither the name of The Linux Foundation nor the names of its
# contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
#
on init
mkdir /efs 0771 system radio
on early-init
mkdir /firmware 0771 system system
mkdir /firmware-modem 0771 system system
symlink /data/tombstones /tombstones
on fs
write /sys/devices/msm_sdcc.1/mmc_host/mmc1/power/control on
write /sys/devices/msm_sdcc.3/mmc_host/mmc2/power/control on
mount_all fstab.qcom
setprop ro.crypto.fuse_sdcard true
# Keeping following partitions outside fstab file. As user may not have
# these partition flashed on the device. Failure to mount any partition in fstab file
# results in failure to launch late-start class.
# wait /dev/block/platform/msm_sdcc.1/by-name/cache
# check_fs /dev/block/platform/msm_sdcc.1/by-name/cache ext4
# mount ext4 /dev/block/platform/msm_sdcc.1/by-name/cache /cache nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit,errors=panic
wait /dev/block/platform/msm_sdcc.1/by-name/persist
check_fs /dev/block/platform/msm_sdcc.1/by-name/persist ext4
mount ext5 /dev/block/platform/msm_sdcc.1/by-name/persist /persist nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit,errors=panic,context=u:object_r:persist_file:s0
restorecon_recursive /persist
wait /dev/block/platform/msm_sdcc.1/by-name/efs
check_fs /dev/block/platform/msm_sdcc.1/by-name/efs ext4
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/efs /efs nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit,errors=panic
chown system radio /efs
chmod 0771 /efs
restorecon_recursive /efs
# wait /dev/block/platform/msm_sdcc.1/by-name/apnhlos
# mount vfat /dev/block/platform/msm_sdcc.1/by-name/apnhlos /firmware ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337
# wait /dev/block/platform/msm_sdcc.1/by-name/modem
# mount vfat /dev/block/platform/msm_sdcc.1/by-name/modem /firmware-modem ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337
write /sys/kernel/boot_adsp/boot 1
setprop qcom.audio.init complete
on post-fs-data
mkdir /data/tombstones 0771 system system
mkdir /tombstones/modem 0771 system system
mkdir /tombstones/lpass 0771 system system
mkdir /tombstones/wcnss 0771 system system
mkdir /tombstones/dsps 0771 system system
mkdir /tombstones/mdm 0771 system system
# create directory for ril data
mkdir /data/misc/radio 0775 radio radio
mkdir /data/misc/radio/hatp 0775 radio system
# drm and related files in EFS
mkdir /efs/drm 0774 drm system
mkdir /efs/drm/sdrm 0774 drm system
mkdir /efs/drm/sdrm/data_agent 0774 drm system
restorecon /efs/drm
restorecon /efs/drm/sdrm
restorecon /efs/drm/data_agent
# DivX DRM
mkdir /efs/.files 0775
mkdir /efs/.files/.dx1 0775
mkdir /efs/.files/.dm33 0775
mkdir /efs/.files/.mp301 0775
chown media system /efs/.files/.dx1
chown media system /efs/.files/.dm33
chown media system /efs/.files/.mp301
chmod 0775 /efs/.files/.dx1
chmod 0775 /efs/.files/.dm33
chmod 0775 /efs/.files/.mp301
# h2k permission
chmod 0644 /efs/redata.bin
chown radio radio /efs/h2k.dat
chmod 0644 /efs/h2k.dat
# DRK permission
mkdir /efs/prov 0770 radio system
chown radio system /efs/prov/libdevkm.lock
chmod 0660 /efs/prov/libd
#OTG Test
chown system radio /sys/class/host_notify/usb_otg/booster
chmod 0660 /sys/class/host_notify/usb_otg/booster
#Essential node for usbservice
mkdir /dev/bus/ 755 root root
mkdir /dev/bus/usb 755 root root
# wifi
mkdir /efs/wifi 0775 system system
# Permission for fast dormacy for RIL
chown system radio /sys/devices/virtual/sec/bamdmux/waketime
# for TRP/TIS
write /data/.psm.info 1
chown system root /data/.psm.info
chmod 0660 /data/.psm.info
# icd
exec icd_check
chown system system /dev/icd
chmod 0644 /dev/icd
write /dev/icdr 0
chown system system /dev/icdr
chmod 0644 /dev/icdr
chown system system /dev/tzic
# h2k permission
chmod 0644 /efs/redata.bin
chown system camera /sys/class/flash/flash/flash_power
chmod 660 /sys/class/flash/flash/flash_power
on boot
# MUIC
chown radio system /sys/class/sec/switch/usb_sel
chown radio system /sys/class/sec/switch/usb_state
chown radio system /sys/class/sec/switch/uart_sel
chown radio system /sys/class/sec/switch/chg_type
chown radio system /sys/class/sec/switch/apo_factory
chown system radio /sys/class/sec/switch/adc
chown system radio /sys/class/sec/switch/otg_test
# Fingerprint
mkdir /dev/validity 0775 system system
# SEC DVFS sysfs node
chown radio system /sys/power/cpufreq_max_limit
chown radio system /sys/power/cpufreq_min_limit
chown radio system /sys/power/cpufreq_table
chmod 664 /sys/power/cpufreq_max_limit
chmod 664 /sys/power/cpufreq_min_limit
chmod 664 /sys/power/cpufreq_table
chown radio system /sys/devices/system/cpu/kernel_max
chmod 664 /sys/devices/system/cpu/kernel_max
chown radio system /sys/class/kgsl/kgsl-3d0/max_pwrlevel
chmod 664 /sys/class/kgsl/kgsl-3d0/max_pwrlevel
chown radio system /sys/class/kgsl/kgsl-3d0/min_pwrlevel
chmod 664 /sys/class/kgsl/kgsl-3d0/min_pwrlevel
chown radio system /sys/class/kgsl/kgsl-3d0/gpu_available_frequencies
chmod 664 /sys/class/kgsl/kgsl-3d0/gpu_available_frequencies
# Auto Brightness
chown system system /sys/class/backlight/panel/auto_brightness
chmod 0660 /sys/class/backlight/panel/auto_brightness
# LCD mdnie and panel work
chown system system /sys/class/mdnie/mdnie/lcdtype
chown system system /sys/class/mdnie/mdnie/lcd_power
chown system media_rw /sys/class/mdnie/mdnie/scenario
chmod 0660 /sys/class/mdnie/mdnie/scenario
chown system system /sys/class/mdnie/mdnie/tuning
chown system media_rw /sys/class/mdnie/mdnie/outdoor
chown system system /sys/class/mdnie/mdnie/mdnie_temp
chown system system /sys/class/mdnie/mdnie/mode
chown system system /sys/class/mdnie/mdnie/negative
chown system media_rw /sys/class/mdnie/mdnie/playspeed
chown system media_rw /sys/class/mdnie/mdnie/accessibility
chown system system /sys/class/mdnie/mdnie/cabc
chown system system /sys/class/mdnie/mdnie/bypass
chown system system /sys/class/lcd/panel/window_type
chown radio system /sys/class/lcd/panel/power_reduce
chown radio system /sys/class/lcd/panel/siop_enable
chown radio system /sys/class/lcd/panel/temperature
chown radio system /sys/class/lcd/panel/tuning
chown radio system /sys/class/lcd/panel/partial_disp
chmod 0660 /sys/class/lcd/panel/partial_disp
# LCD HMT
chown radio system /sys/class/lcd/panel/hmt_on
chown radio system /sys/class/lcd/panel/hmt_bright
chown radio system /sys/class/lcd/panel/hmt_dual_scan
chown radio system /sys/class/lcd/panel/hmt_aid
chown radio system /sys/class/lcd/panel/hmt_change_fps
chown radio system /sys/class/lcd/panel/hmt_hbm
chown radio system /sys/class/lcd/panel/hmt
chown radio system /sys/class/lcd/panel/force_500cd
chmod 0660 /sys/class/lcd/panel/hmt_on
chmod 0660 /sys/class/lcd/panel/hmt_bright
chmod 0660 /sys/class/lcd/panel/hmt_dual_scan
chmod 0660 /sys/class/lcd/panel/hmt_aid
chmod 0660 /sys/class/lcd/panel/hmt_change_fps
chmod 0660 /sys/class/lcd/panel/hmt_hbm
chmod 0660 /sys/class/lcd/panel/hmt
# LCD ALPM Mode
chown system system /sys/class/lcd/panel/alpm
chmod 0660 /sys/class/lcd/panel/alpm
# Auto Brightness
chown system system /sys/class/backlight/panel/auto_brightness
chmod 0660 /sys/class/backlight/panel/auto_brightness
# Permissions for TCON
chown system system /sys/class/tcon/tcon/lux
chown system system /sys/class/tcon/tcon/auto_br
chown system media_rw /sys/class/tcon/tcon/mode
chown system radio /sys/class/tcon/tcon/black_test
chown system radio /sys/class/tcon/tcon/tcon_test
# Adjust YUV to RGB Conversion(CSC_Conversion)
chown system media_rw /sys/class/graphics/fb0/csc_cfg
chmod 0660 /sys/class/graphics/fb0/csc_cfg
#OTG Test
chown system radio /sys/class/host_notify/usb_otg/booster
chmod 0660 /sys/class/host_notify/usb_otg/booster
#Essential node for usbservice
mkdir /dev/bus/ 755 root root
mkdir /dev/bus/usb 755 root root
# Permissions for InputDevices.
chown system radio /sys/class/sec/tsp/cmd
chown system system /sys/class/sec/sec_touchkey/brightness
# Permissions for Camera
chown system radio /sys/class/camera/rear/rear_camfw
chown system radio /sys/class/camera/rear/rear_camfw_load
chown system radio /sys/class/camera/rear/rear_camfw_full
chown system radio /sys/class/camera/rear/rear_camtype
chown system radio /sys/class/camera/flash/rear_flash
chown system radio /sys/class/camera/front/front_camfw
chown system radio /sys/class/camera/front/front_camtype
#OTG Test
chown system radio /sys/class/host_notify/usb_otg/booster
chmod 0660 /sys/class/host_notify/usb_otg/booster
chown system system /sys/class/timed_output/vibrator/enable
chown system system /sys/class/leds/keyboard-backlight/brightness
chown system system /sys/class/leds/lcd-backlight/brightness
chown system system /sys/class/leds/button-backlight/brightness
chown system system /sys/class/leds/jogball-backlight/brightness
chown system system /sys/class/leds/red/brightness
chown system system /sys/class/leds/green/brightness
chown system system /sys/class/leds/blue/brightness
chown system system /sys/class/leds/red/device/grpfreq
chown system system /sys/class/leds/red/device/grppwm
chown system system /sys/class/leds/red/device/blink
chown system system /sys/class/sec/led/led_r
chown system system /sys/class/sec/led/led_g
chown system system /sys/class/sec/led/led_b
chown system system /sys/class/sec/led/led_pattern
chown system system /sys/class/sec/led/led_blink
chown system system /sys/class/sec/led/led_lowpower
chown system system /sys/class/timed_output/vibrator/enable
chown system system /sys/module/sco/parameters/disable_esco
chown system system /sys/kernel/ipv4/tcp_wmem_min
chown system system /sys/kernel/ipv4/tcp_wmem_def
chown system system /sys/kernel/ipv4/tcp_wmem_max
chown system system /sys/kernel/ipv4/tcp_rmem_min
chown system system /sys/kernel/ipv4/tcp_rmem_def
chown system system /sys/kernel/ipv4/tcp_rmem_max
chown root radio /proc/cmdline
# Permissions for Audio
chown system system /sys/devices/fe12f000.slim/es705-codec-gen0/keyword_grammar_path
chown system system /sys/devices/fe12f000.slim/es705-codec-gen0/keyword_net_path
# Accelerometer_sensor
chown system radio /sys/class/sensors/accelerometer_sensor/raw_data
chown system radio /sys/class/sensors/accelerometer_sensor/calibration
chown system radio /sys/class/sensors/accelerometer_sensor/reactive_alert
chown system radio /sys/class/sensors/accelerometer_sensor/vendor
chown system radio /sys/class/sensors/accelerometer_sensor/name
chown system radio /sys/class/sensors/accelerometer_sensor/selftest
# Proximity_sensor
chown system radio /sys/class/sensors/proximity_sensor/state
chown system radio /sys/class/sensors/proximity_sensor/raw_data
chown system radio /sys/class/sensors/proximity_sensor/prox_avg
chown system radio /sys/class/sensors/proximity_sensor/prox_cal
chown system radio /sys/class/sensors/proximity_sensor/prox_cal2
chown system radio /sys/class/sensors/proximity_sensor/prox_offset_pass
chown system radio /sys/class/sensors/proximity_sensor/prox_thresh
chown system radio /sys/class/sensors/proximity_sensor/vendor
chown system radio /sys/class/sensors/proximity_sensor/name
chown system radio /sys/class/sensors/proximity_sensor/thresh_high
chown system radio /sys/class/sensors/proximity_sensor/thresh_low
chown system radio /sys/class/sensors/proximity_sensor/barcode_emul_en
# Light_sensor
chown system radio /sys/class/sensors/light_sensor/lux
chown system radio /sys/class/sensors/light_sensor/raw_data
chown system radio /sys/class/sensors/light_sensor/vendor
chown system radio /sys/class/sensors/light_sensor/name
# Gyro_sensor
chown system radio /sys/class/sensors/gyro_sensor/power_on
chown system radio /sys/class/sensors/gyro_sensor/power_off
chown system radio /sys/class/sensors/gyro_sensor/temperature
chown system radio /sys/class/sensors/gyro_sensor/selftest
chown system radio /sys/class/sensors/gyro_sensor/selftest_dps
chown system radio /sys/class/sensors/gyro_sensor/vendor
chown system radio /sys/class/sensors/gyro_sensor/name
# Barometer_sensor
chown system radio /sys/class/sensors/barometer_sensor/sea_level_pressure
chown system radio /sys/class/sensors/barometer_sensor/vendor
chown system radio /sys/class/sensors/barometer_sensor/name
chown system radio /sys/class/sensors/barometer_sensor/calibration
# Magnetic_sensor
# chown system radio /dev/akm8963
chown system radio /sys/class/sensors/magnetic_sensor/raw_data
chown system radio /sys/class/sensors/magnetic_sensor/vendor
chown system radio /sys/class/sensors/magnetic_sensor/name
chown system radio /sys/class/sensors/magnetic_sensor/selftest
chown system radio /sys/class/sensors/magnetic_sensor/adc
chown system radio /sys/class/sensors/magnetic_sensor/dac
chown system radio /sys/class/sensors/magnetic_sensor/status
# Temphumidity_sensor
chown system radio /sys/class/sensors/temphumidity_sensor/vendor
chown system radio /sys/class/sensors/temphumidity_sensor/name
chown system radio /sys/class/sensors/temphumidity_sensor/engine_ver
chown system radio /sys/class/sensors/temphumidity_sensor/engine_ver2
chown system radio /sys/class/sensors/temphumidity_sensor/cp_thm
chown system radio /sys/class/sensors/temphumidity_sensor/send_accuracy
# Grip_sensor
chown system radio /sys/class/sensors/grip_sensor/reset
chown system radio /sys/class/sensors/grip_sensor/vendor
chown system radio /sys/class/sensors/grip_sensor/name
chown system radio /sys/class/sensors/grip_sensor/raw_data
chown system radio /sys/class/sensors/grip_sensor/calibration
chown system radio /sys/class/sensors/grip_sensor/threshold
chown system radio /sys/class/sensors/grip_sensor/thresh_touch_check
chown system radio /sys/class/sensors/grip_sensor/onoff
chown system radio /sys/class/sensors/grip_sensor/erase_cal
# SensorHub
chown system radio /sys/class/sensors/ssp_sensor/enable
chown system radio /sys/class/sensors/ssp_sensor/mcu_rev
chown system radio /sys/class/sensors/ssp_sensor/mcu_name
chown system radio /sys/class/sensors/ssp_sensor/mcu_test
chown system radio /sys/class/sensors/ssp_sensor/mcu_reset
chown system radio /sys/class/sensors/ssp_sensor/mcu_update
chown system radio /sys/class/sensors/ssp_sensor/mcu_sleep_test
chown system radio /sys/class/sensors/ssp_sensor/ori_poll_delay
chown system radio /sys/class/sensors/ssp_sensor/mag_poll_delay
chown system radio /sys/class/sensors/ssp_sensor/temp_humi_poll_delay
chown system radio /sys/class/sensors/ssp_sensor/accel_poll_delay
chown system radio /sys/class/sensors/ssp_sensor/rot_poll_delay
chown system radio /sys/class/sensors/ssp_sensor/game_rot_poll_delay
chown system radio /sys/class/sensors/ssp_sensor/step_det_poll_delay
chown system radio /sys/class/sensors/ssp_sensor/gyro_poll_delay
chown system radio /sys/class/sensors/ssp_sensor/ssp_flush
chmod 0600 /dev/batch_io
chown system system /dev/batch_io
# Gesture_sensor
chown system radio /sys/class/sensors/gesture_sensor/vendor
chown system radio /sys/class/sensors/gesture_sensor/name
chown system radio /sys/class/sensors/gesture_sensor/raw_data
chown system radio /sys/class/sensors/gesture_sensor/ir_current
chown system radio /sys/class/sensors/gesture_sensor/selftest
# SHTC1 BULK
chmod 0600 /dev/shtc1_sensor
chown system system /dev/shtc1_sensor
# Permissions for SSRM
chmod 0664 /sys/devices/platform/sec-thermistor/temperature
chmod 0664 /sys/class/power_supply/battery/siop_level
chmod 0664 /sys/class/power_supply/battery/test_charge_current
chown radio system /sys/devices/platform/sec-thermistor/temperature
chown radio system /sys/class/power_supply/battery/siop_level
chown radio system /sys/class/power_supply/battery/test_charge_current
# MOBEAM
chown system radio /sys/class/sec/sec_barcode_emul/vendor
chown system radio /sys/class/sec/sec_barcode_emul/name
chown system radio /sys/class/sec/sec_barcode_emul/barcode_send
chown system radio /sys/class/sec/sec_barcode_emul/barcode_led_status
chown system radio /sys/class/sec/sec_barcode_emul/barcode_ver_check
# IR_LED
chown system radio /sys/class/sec/sec_ir/ir_send
chown system radio /sys/class/sec/sec_ir/ir_send_result
# Permission for HALL IC
chown system radio /sys/class/sec/sec_key/hall_detect
# Define TCP buffer sizes for various networks
# ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax,
setprop net.tcp.buffersize.default 4096,87380,704512,4096,16384,110208
setprop net.tcp.buffersize.wifi 524288,1048576,2560000,524288,1048576,2560000
setprop net.tcp.buffersize.lte 524288,1048576,2560000,524288,1048576,2560000
setprop net.tcp.buffersize.umts 4094,87380,704512,4096,16384,110208
setprop net.tcp.buffersize.hspa 4092,87380,704512,4096,16384,262144
setprop net.tcp.buffersize.hsupa 4092,87380,704512,4096,16384,262144
setprop net.tcp.buffersize.hsdpa 4092,87380,704512,4096,16384,110208
setprop net.tcp.buffersize.hspap 4092,87380,704512,4096,16384,262144
setprop net.tcp.buffersize.edge 4093,26280,35040,4096,16384,35040
setprop net.tcp.buffersize.gprs 4096,30000,30000,4096,8760,11680
setprop net.tcp.buffersize.evdo 4094,87380,262144,4096,16384,262144
#wifi display
write /proc/sys/net/core/rmem_max 1048576
write /proc/sys/net/core/wmem_max 2097152
# HDCP 2.x
mkdir /data/system/hdcp2 0775 system system
# h2k permission
chown radio system /efs/redata.bin
chmod 0644 /efs/h2k.dat
mkdir /data/misc/radio/hatp 0775 radio system
# Permissions for Charging
chown system radio /sys/class/power_supply/battery/batt_reset_soc
chown system radio /sys/class/power_supply/battery/update
chown system radio /sys/class/power_supply/battery/factory_mode
chown system radio /sys/class/power_supply/battery/batt_slate_mode
chown sdcard_rw sdcard_rw /sys/class/power_supply/battery/call
chown sdcard_rw sdcard_rw /sys/class/power_supply/battery/video
chown sdcard_rw sdcard_rw /sys/class/power_supply/battery/music
chown sdcard_rw sdcard_rw /sys/class/power_supply/battery/browser
chown sdcard_rw sdcard_rw /sys/class/power_supply/battery/hotspot
chown sdcard_rw sdcard_rw /sys/class/power_supply/battery/camera
chown system radio /sys/class/power_supply/battery/talk_wcdma
chown system radio /sys/class/power_supply/battery/talk_gsm
chown system radio /sys/class/power_supply/battery/call
chown system radio /sys/class/power_supply/battery/data_call
chown system radio /sys/class/power_supply/battery/gps
chown system radio /sys/class/power_supply/battery/wifi
chown system radio /sys/class/power_supply/battery/lte
chown system radio /sys/class/power_supply/battery/wc_enable
chown system radio /sys/class/power_supply/battery/lcd
# Permission for fast dormancy for RIL
chown system radio /sys/devices/virtual/sec/bamdmux/waketime
# Permissions for gpio_keys
chown system radio /sys/class/sec/sec_key/wakeup_keys
write /sys/class/sec/sec_key/wakeup_keys 116,172
# Vibetonz
chmod 0660 /dev/tspdrv
chown root shell /dev/tspdrv
chown system system /sys/class/timed_output/vibrator/pwm_value
chmod 0660 /sys/class/timed_output/vibrator/pwm_value
chown system system /sys/class/timed_output/vibrator/pwm_max
chmod 0660 /sys/class/timed_output/vibrator/pwm_max
chown system system /sys/class/timed_output/vibrator/pwm_min
chmod 0660 /sys/class/timed_output/vibrator/pwm_min
chown system system /sys/class/timed_output/vibrator/pwm_default
chmod 0660 /sys/class/timed_output/vibrator/pwm_default
chown system system /sys/class/timed_output/vibrator/pwm_threshold
chmod 0660 /sys/class/timed_output/vibrator/pwm_threshold
# Panel color temperature
chmod 0660 /sys/class/lcd/panel/panel_colors
chown system system /sys/class/lcd/panel/panel_colors
# Allow usb charging to be disabled peristently
on property:persist.usb.chgdisabled=1
write /sys/class/power_supply/battery/charging_enabled 0
#start camera server as daemon
service qcamerasvr /system/bin/mm-qcamera-daemon
class main
user camera
group camera system inet input graphics radio sdcard_rw sdcard_r media_rw shell log
on property:sys.boot_completed=1
start qrngp
service qseecomd /system/bin/qseecomd
class late_start
user root
group system
service mpdecision /system/bin/mpdecision --avg_comp
user root
group system
disabled
service thermal-engine /system/bin/thermal-engine
class core
seclabel u:r:thermal-engine:s0
user root
group radio system
service time_daemon /system/bin/time_daemon
class late_start
user root
group root
service audiod /system/bin/audiod
class late_start
user system
group system
service ppd /system/bin/mm-pp-daemon
class late_start
user system
socket pps stream 0660 system system graphics
group system graphics
service init-input-sh /system/bin/sh /init.input.sh
class core
user root
group root
oneshot

View file

@ -44,8 +44,6 @@
#permissions for CSVT #permissions for CSVT
/dev/smd11 0660 radio radio /dev/smd11 0660 radio radio
/dev/radio0 0640 system system
/dev/rfcomm0 0660 bluetooth bluetooth /dev/rfcomm0 0660 bluetooth bluetooth
/dev/smdcntl0 0640 radio radio /dev/smdcntl0 0640 radio radio
/dev/smdcntl1 0640 radio radio /dev/smdcntl1 0640 radio radio
@ -105,11 +103,11 @@
/dev/gemini/ 0660 system camera /dev/gemini/ 0660 system camera
/dev/mercury0 0660 system camera /dev/mercury0 0660 system camera
/dev/msm_vidc_reg 0660 system audio /dev/msm_vidc_reg 0660 system audio
/dev/msm_vidc_dec 0660 system camera /dev/msm_vidc_dec 0660 system audio
/dev/msm_vidc_dec_sec 0660 system camera /dev/msm_vidc_dec_sec 0660 system audio
/dev/msm_vidc_enc 0660 system camera /dev/msm_vidc_enc 0660 system audio
/dev/msm_rotator 0660 system system /dev/msm_rotator 0660 system system
/dev/hw_random 0660 system system /dev/hw_random 0660 root root
/dev/adsprpc-smd 0664 system system /dev/adsprpc-smd 0664 system system
#permissions for audio #permissions for audio
@ -145,15 +143,40 @@
/dev/tty_sdio_00 0660 system system /dev/tty_sdio_00 0660 system system
/dev/ttyGS0 0660 system system /dev/ttyGS0 0660 system system
/dev/i2c-5 0660 media media /dev/i2c-5 0660 media media
/dev/voice_svc 0660 system audio
#Audience ES705 UART
/dev/ttyHS3 0660 media audio
# Bluetooth
/dev/ttyHS0 0660 bluetooth net_bt_stack
/dev/ttyHS2 0660 bluetooth bluetooth
# bluetooth LPM
/dev/btlock 0600 bluetooth bluetooth
# Broadcast devices
/dev/tsc_mux0 0660 media media
/dev/tsc_ci0 0660 media media
# DVB devices # DVB devices
/dev/dvb/adapter0/demux* 0440 media media /dev/dvb/adapter0/demux* 0440 media media
/dev/dvb/adapter0/dvr* 0660 media media /dev/dvb/adapter0/dvr* 0660 media media
/dev/dvb/adapter0/video* 0660 media media /dev/dvb/adapter0/video* 0660 media media
# Broadcast devices # IR_LED
/dev/tsc_mux0 0660 media media /dev/ice4_dev 0660 system system
/dev/tsc_ci0 0660 media media
# SHTC1 BULK
/dev/shtc1_sensor 0600 system system
# UIO devices
/dev/uio0 0660 system system
/dev/uio1 0660 system system
/dev/uio2 0660 system system
# wlan
/dev/rfkill 0600 wifi wifi
# sensors # sensors
/sys/devices/i2c-12/12-* pollrate_ms 0664 system system /sys/devices/i2c-12/12-* pollrate_ms 0664 system system
@ -166,39 +189,8 @@
/sys/devices/virtual/input/input* poll 0660 input system /sys/devices/virtual/input/input* poll 0660 input system
/sys/devices/virtual/input/input* pollrate_ms 0660 input system /sys/devices/virtual/input/input* pollrate_ms 0660 input system
# wlan
/dev/wcnss_wlan 0660 system system
/dev/wcnss_ctrl 0660 system system
# UIO devices
/dev/uio0 0660 system system
/dev/uio1 0660 system system
/dev/uio2 0660 system system
v/ppp 0660 radio vpn
# for usb printer
/dev/bus/usb/* 0660 system usb
/dev/usb/lp* 0660 system usb
#permission for dun
/dev/dun 0660 system system
# for PL2303 driver
/dev/ttyUSB* 0660 system usb
# EFS
/dev/block/mmcblk0p11 0660 system system
# sysfs properties
/sys/devices/virtual/input/input* enable 0660 root input
/sys/devices/virtual/input/input* delay 0660 root input
/sys/devices/virtual/input/input* poll_delay 0660 root input
/sys/devices/virtual/input/input* flush 0660 root input
/sys/devices/virtual/usb_composite/* enable 0664 root system
/sys/devices/f9924000.i2c/i2c-2/2-0020/input/input* enabled 0660 system system
# sensorhub # sensorhub
/dev/batch_io 0660 system system
/dev/ssp_sensorhub 0660 system system /dev/ssp_sensorhub 0660 system system
/dev/iio:device* 0660 system system /dev/iio:device* 0660 system system
/sys/devices/f9967000.spi/spi_master/spi32766/spi32766.0/iio:device* buffer/enable 0660 system system /sys/devices/f9967000.spi/spi_master/spi32766/spi32766.0/iio:device* buffer/enable 0660 system system
@ -207,8 +199,16 @@ v/ppp 0660 radio vpn
/sys/devices/f9967000.spi/spi_master/spi32765/spi32765.0/iio:device* buffer/length 0660 system system /sys/devices/f9967000.spi/spi_master/spi32765/spi32765.0/iio:device* buffer/length 0660 system system
/sys/devices/f9967000.spi/spi_master/spi11/spi11.0/iio:device* buffer/enable 0660 system system /sys/devices/f9967000.spi/spi_master/spi11/spi11.0/iio:device* buffer/enable 0660 system system
/sys/devices/f9967000.spi/spi_master/spi11/spi11.0/iio:device* buffer/length 0660 system system /sys/devices/f9967000.spi/spi_master/spi11/spi11.0/iio:device* buffer/length 0660 system system
/sys/devices/f9924000.i2c/i2c-2/2-0020/input/input* enabled 0660 system system /sys/devices/f9924000.spi/spi_master/spi32766/spi32766.0/iio:device* buffer/enable 0660 system radio
/sys/devices/f9924000.spi/spi_master/spi32766/spi32766.0/iio:device* buffer/length 0660 system radio
/sys/devices/f9924000.spi/spi_master/spi32765/spi32765.0/iio:device* buffer/enable 0660 system radio
/sys/devices/f9924000.spi/spi_master/spi32765/spi32765.0/iio:device* buffer/length 0660 system radio
#Accelerometer sensor
/sys/devices/f9925000.i2c/i2c-0/0-0018/input/input* enable 0664 system system
/sys/devices/f9925000.i2c/i2c-0/0-0018/input/input* delay 0664 system system
/sys/devices/i2c.73/i2c-16/16-0018/input/input* enable 0664 system system
/sys/devices/i2c.73/i2c-16/16-0018/input/input* delay 0664 system system
# sysfs iio event # sysfs iio event
/sys/devices/f9927000.i2c/i2c-5/5-0024/iio:device* 0664 system radio /sys/devices/f9927000.i2c/i2c-5/5-0024/iio:device* 0664 system radio
@ -224,11 +224,6 @@ v/ppp 0660 radio vpn
/sys/devices/f9927000.i2c/i2c-5/5-0039/iio:device* in_illuminance0_input 0660 system radio /sys/devices/f9927000.i2c/i2c-5/5-0039/iio:device* in_illuminance0_input 0660 system radio
/sys/devices/f9927000.i2c/i2c-5/5-0039/iio:device* in_proximity0_input 0660 system radio /sys/devices/f9927000.i2c/i2c-5/5-0039/iio:device* in_proximity0_input 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* buffer 0777 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* scan_elements 0777 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* trigger 0777 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* power 0777 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* uevent 0660 system radio /sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* uevent 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* dev 0660 system radio /sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* dev 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* buffer/length 0660 system radio /sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* buffer/length 0660 system radio
@ -341,4 +336,3 @@ v/ppp 0660 radio vpn
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* dmp_firmware 0660 system radio /sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* dmp_firmware 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* pedometer_int_thresh 0660 system radio /sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* pedometer_int_thresh 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* pedometer_step_thresh 0660 system radio /sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* pedometer_step_thresh 0660 system radio

View file

@ -19,18 +19,9 @@
# EFS # EFS
/dev/block/platform/msm_sdcc.1/by-name/efs u:object_r:modem_efs_partition_device:s0 /dev/block/platform/msm_sdcc.1/by-name/efs u:object_r:modem_efs_partition_device:s0
# Fingerprint
/data/validity(/.*)? u:object_r:vcs_data_file:s0
/dev/validity(/.*)? u:object_r:vcs_device:s0
/dev/vfsspi u:object_r:vcs_device:s0
# Macloader # Macloader
/system/bin/macloader u:object_r:macloader_exec:s0 /system/bin/macloader u:object_r:macloader_exec:s0
# NFC
/dev/bcm2079x u:object_r:nfc_device:s0
/dev/pn547 u:object_r:nfc_device:s0
# RIL # RIL
/data/data/com.android.providers.telephony/databases(/.*)? u:object_r:radio_data_file:s0 /data/data/com.android.providers.telephony/databases(/.*)? u:object_r:radio_data_file:s0
/data/data/com.android.providers.telephony/shared_prefs(/.*)? u:object_r:radio_data_file:s0 /data/data/com.android.providers.telephony/shared_prefs(/.*)? u:object_r:radio_data_file:s0

View file

@ -1,14 +0,0 @@
allow fingerprintd vcs_data_file:dir create_dir_perms;
allow fingerprintd vcs_data_file:file create_file_perms;
allow fingerprintd vcs_device:dir create_dir_perms;
allow fingerprintd vcs_device:file create_file_perms;
allow fingerprintd vcs_device:fifo_file create_file_perms;
allow fingerprintd vcs_device:chr_file create_file_perms;
allow fingerprintd tee_device:chr_file rw_file_perms;
allow fingerprintd firmware_file:dir r_dir_perms;
allow fingerprintd firmware_file:file r_file_perms;
allow fingerprintd vfat:file { getattr open read };

View file

@ -1,3 +1,4 @@
allow platform_app fuseblk:dir { open read remove_name search write }; allow platform_app exfat:dir create_dir_perms;
allow platform_app fuseblk:file { getattr unlink write }; allow platform_app exfat:file create_file_perms;
allow platform_app fuseblk:dir create_dir_perms;
allow platform_app fuseblk:file create_file_perms;

View file

@ -1,3 +1,5 @@
allow priv_app device:dir { open read }; allow priv_app device:dir { open read };
allow priv_app fuseblk:dir { add_name open read search read write }; allow priv_app exfat:dir create_dir_perms;
allow priv_app fuseblk:file { create getattr open read write }; allow priv_app exfat:file create_file_perms;
allow priv_app fuseblk:dir create_dir_perms;
allow priv_app fuseblk:file create_file_perms;

View file

@ -1,3 +1,5 @@
# These are safe for an untrusted_app -- they are the external SD card # These are safe for an untrusted_app -- they are the external SD card
allow untrusted_app fuseblk:dir search; allow untrusted_app exfat:dir create_dir_perms;
allow untrusted_app fuseblk:file { getattr read }; allow untrusted_app exfat:file create_file_perms;
allow untrusted_app fuseblk:dir create_dir_perms;
allow untrusted_app fuseblk:file create_file_perms;

View file

@ -1,18 +1,6 @@
#!/bin/bash #!/bin/bash
#
VENDOR=samsung # Copyright (C) 2016 The CyanogenMod Project
OUT_ROOT=$2
OUT_PROP=$3
DEVICE=$4
MAKEFILE=$OUT_ROOT/$DEVICE-vendor-blobs.mk
echo "Setup makefiles in $OUT_ROOT for $DEVICE"
echo "Proprietary files in $OUT_PROP"
(cat << EOF) > $MAKEFILE
# Copyright (C) 2017 The LineageOS Project # Copyright (C) 2017 The LineageOS Project
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
@ -26,105 +14,47 @@ echo "Proprietary files in $OUT_PROP"
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
#
# This file is generated by device/$VENDOR/$DEVICE/setup-makefiles.sh set -e
PRODUCT_COPY_FILES += \\ export DEVICE=viennalte
EOF export DEVICE_COMMON=viennalte
export VENDOR=samsung
LINEEND=" \\" export INITIAL_COPYRIGHT_YEAR=2014
COUNT=`wc -l $1 | awk {'print $1'}`
DISM=`egrep -c '(^#|^$)' $1` # Load extract_utils and do some sanity checks
COUNT=`expr $COUNT - $DISM` MY_DIR="${BASH_SOURCE%/*}"
for FILE in `egrep -v '(^#|^$)' $1`; do if [[ ! -d "$MY_DIR" ]]; then MY_DIR="$PWD"; fi
COUNT=`expr $COUNT - 1`
if [ $COUNT = "0" ]; then CM_ROOT="$MY_DIR"/../../..
LINEEND=""
fi HELPER="$CM_ROOT"/vendor/cm/build/tools/extract_utils.sh
# Split the file from the destination (format is "file[:destination]") if [ ! -f "$HELPER" ]; then
OLDIFS=$IFS IFS=":" PARSING_ARRAY=($FILE) IFS=$OLDIFS echo "Unable to find helper script at $HELPER"
if [[ ! "$FILE" =~ ^-.* ]]; then exit 1
FILE=`echo ${PARSING_ARRAY[0]} | sed -e "s/^-//g"` fi
DEST=${PARSING_ARRAY[1]} . "$HELPER"
if [ -n "$DEST" ]; then
FILE=$DEST # Initialize the helper for common device
fi setup_vendor "$DEVICE_COMMON" "$VENDOR" "$CM_ROOT" true
echo " $OUT_PROP/$FILE:system/$FILE$LINEEND" >> $MAKEFILE
fi # Copyright headers and common guards
write_headers "viennalte"
write_makefiles "$MY_DIR"/common-proprietary-files.txt
write_footers
# Reinitialize the helper for device
setup_vendor "$DEVICE" "$VENDOR" "$CM_ROOT"
# Copyright headers and guards
write_headers
for BLOB_LIST in "$MY_DIR"/../$DEVICE/device-proprietary-files*.txt; do
write_makefiles $BLOB_LIST
done done
(cat << EOF) > $OUT_ROOT/$DEVICE-vendor.mk write_footers
# Copyright (C) 2017 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.
# This file is generated by device/$VENDOR/$DEVICE/setup-makefiles.sh
# Pick up overlay for features that depend on non-open-source files
\$(call inherit-product, vendor/$VENDOR/$DEVICE/$DEVICE-vendor-blobs.mk)
EOF
if [ "$DEVICE" == tabpro-common ]; then
(cat << EOF) >> $OUT_ROOT/$DEVICE-vendor.mk
PRODUCT_PACKAGES += \\
libtime_genoff \\
com.qualcomm.location \\
libril
EOF
(cat << EOF) > $OUT_ROOT//Android.mk
# Copyright (C) 2017 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.
# This file is generated by device/$VENDOR/$DEVICE/setup-makefiles.sh
LOCAL_PATH := \$(call my-dir)
ifneq (\$(filter viennalte,\$(TARGET_DEVICE)),)
include \$(CLEAR_VARS)
LOCAL_MODULE := libtime_genoff
LOCAL_MODULE_OWNER := samsung
LOCAL_SRC_FILES := proprietary/vendor/lib/libtime_genoff.so
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_SUFFIX := .so
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
LOCAL_MODULE_PATH := \$(TARGET_OUT_VENDOR_SHARED_LIBRARIES)
include \$(BUILD_PREBUILT)
include \$(CLEAR_VARS)
LOCAL_MODULE := libril
LOCAL_MODULE_OWNER := samsung
LOCAL_SRC_FILES := proprietary/lib/libril.so
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_SUFFIX := .so
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
LOCAL_MODULE_PATH := \$(TARGET_OUT_SHARED_LIBRARIES)
LOCAL_OVERRIDES_PACKAGES := libril
include \$(BUILD_PREBUILT)
endif
EOF
fi

View file

@ -1,49 +1,72 @@
# # Art
# Samsung Galaxy Note Pro 12.2 dalvik.vm.dex2oat-swap=false
#
# display # Audio
lockscreen.rot_override=true af.fast_track_multiplier=1
audio_hal.period_size=192
audio.offload.video=true
persist.audio.fluence.speaker=true
persist.audio.fluence.voicecall=true
persist.audio.fluence.voicerec=false
ro.qc.sdk.audio.fluencetype=fluence
use.voice.path.for.pcm.voip=false
use.dedicated.device.for.voip=true
audio.deep_buffer.media=true
audio.offload.pcm.16bit.enable=true
audio.offload.pcm.24bit.enable=true
audio.offload.multiple.enabled=false
audio.offload.buffer.size.kb=32
# Camera
camera2.portability.force_api=1
# Display
ro.hdcp2.rx=tz ro.hdcp2.rx=tz
ro.qualcomm.cabl=1 ro.qualcomm.cabl=1
ro.secwvk=144 ro.secwvk=144
ro.sf.lcd_density=320 ro.sf.lcd_density=320
# gps # GPS
persist.gps.qc_nlp_in_use=0 persist.gps.qc_nlp_in_use=0
ro.gps.agps_provider=1 ro.gps.agps_provider=1
ro.qc.sdk.izat.premium_enabled=0 ro.qc.sdk.izat.premium_enabled=0
ro.qc.sdk.izat.service_mask=0x0 ro.qc.sdk.izat.service_mask=0x0
# Camera
camera2.portability.force_api=1
# Media # Media
av.streaming.offload.enable=true
audio.offload.gapless.enabled=true
audio.offload.pcm.16bit.enable=true
audio.offload.pcm.24bit.enable=true
media.stagefright.legacyencoder=true media.stagefright.legacyencoder=true
media.stagefright.less-secure=true media.stagefright.less-secure=true
# radio # Perf
persist.radio.add_power_save=1
persist.radio.lte_vrat_report=1
persist.radio.mode_pref_nv10=1
rild.libargs=-d /dev/smd0
rild.libpath=/system/lib/libsec-ril.so
#ro.telephony.default_network=10
ro.telephony.ril_class=NoteProRIL
# CWMR Options
ro.cwm.forbid_format=/boot,/firmware,/firmware-modem
ro.cwm.forbid_mount=/boot
# perf api
ro.vendor.extension_library=/vendor/lib/libqti-perfd-client.so ro.vendor.extension_library=/vendor/lib/libqti-perfd-client.so
# Bluetooth # Radio
qcom.bluetooth.soc=rome persist.data.netmgrd.qos.enable=true
persist.data.qmi.adb_logmask=0
persist.radio.add_power_save=1
persist.radio.lte_vrat_report=1
ro.telephony.mms_data_profile=5
ro.telephony.ril_class=NoteProRIL
rild.libargs=-d /dev/smd0
rild.libpath=/system/lib/libsec-ril.so
ro.ril.telephony.mqanelements=6
# Ril sends only one RIL_UNSOL_CALL_RING, so set call_ring.multiple to false
ro.telephony.call_ring.multiple=0
# Sensors
debug.sensors=1
# Storage
ro.sys.sdcardfs=true
# Tethering # Tethering
net.tethering.noprovisioning=true net.tethering.noprovisioning=true
# WiFi
wifi.interface=wlan0
# Enable adb
#persist.service.adb.enable=1
#persist.service.debuggable=1
#ro.adb.secure=0

30
twrp.mk Executable file
View file

@ -0,0 +1,30 @@
# Copyright (C) 2017 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.
TARGET_RECOVERY_DEVICE_DIRS += device/samsung/viennalte/twrp
RECOVERY_SDCARD_ON_DATA := true
TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888"
TARGET_RECOVERY_QCOM_RTC_FIX := true
TARGET_USE_CUSTOM_LUN_FILE_PATH := "/sys/devices/msm_dwc3/f9200000.dwc3/gadget/lun%d/file"
TW_BRIGHTNESS_PATH := "/sys/devices/mdp.0/qcom\x2cmdss_fb_primary.191/leds/lcd-backlight/brightness"
TW_DEFAULT_BRIGHTNESS := 162
TW_HAS_DOWNLOAD_MODE := true
TW_INCLUDE_CRYPTO := true
TW_MAX_BRIGHTNESS := 255
TW_MTP_DEVICE := "/dev/mtp_usb"
TW_NO_EXFAT_FUSE := true
TW_NO_LEGACY_PROPS := true
TW_NO_REBOOT_BOOTLOADER := true
TW_THEME := landscape_hdpi

View file

@ -0,0 +1,13 @@
/modem vfat /dev/block/platform/msm_sdcc.1/by-name/modem /dev/block/platform/msm_sdcc.1/by-name/mdm flags=backup=1;display="Modem";fsflags=ro,context=u:object_r:firmware_file:s0
/firmware vfat /dev/block/platform/msm_sdcc.1/by-name/apnhlos flags=backup=1;subpartitionof=/modem;mounttodecrypt;fsflags=ro,context=u:object_r:firmware_file:s0
/boot emmc /dev/block/platform/msm_sdcc.1/by-name/boot
/recovery emmc /dev/block/platform/msm_sdcc.1/by-name/recovery
/misc emmc /dev/block/platform/msm_sdcc.1/by-name/fota
/system ext4 /dev/block/platform/msm_sdcc.1/by-name/system
/data ext4 /dev/block/platform/msm_sdcc.1/by-name/userdata flags=encryptable=footer;length=-16384
/cache ext4 /dev/block/platform/msm_sdcc.1/by-name/cache
/efs ext4 /dev/block/platform/msm_sdcc.1/by-name/efs flags=backup=1;display="EFS"
/modemst1 emmc /dev/block/platform/msm_sdcc.1/by-name/modemst1 flags=backup=1;subpartitionof=/efs
/modemst2 emmc /dev/block/platform/msm_sdcc.1/by-name/modemst2 flags=backup=1;subpartitionof=/efs
/external_sd vfat /dev/block/mmcblk1p1 /dev/block/mmcblk1 flags=display="Micro SDcard";storage;wipeingui;removable
/usbstorage vfat /dev/block/sda1 /dev/block/sda flags=display="USB Storage";storage;wipeingui;removable