Bringup Fix 7

This commit is contained in:
Daniel Moran (garwynn) 2014-04-21 02:42:32 -05:00
parent ef4ab6ad6e
commit d00eb60bd9
12 changed files with 944 additions and 1794 deletions

View File

@ -31,7 +31,7 @@ TARGET_BOARD_PLATFORM_GPU := qcom-adreno330
TARGET_BOOTLOADER_BOARD_NAME := MSM8974
# Kernel Configs
TARGET_KERNEL_SOURCE := kernel/samsung/msm8974
TARGET_KERNEL_SOURCE := kernel/samsung/klte
TARGET_KERNEL_CONFIG := msm8974_sec_defconfig
TARGET_KERNEL_SELINUX_CONFIG := selinux_defconfig
TARGET_KERNEL_VARIANT_CONFIG := msm8974pro_sec_klte_spr_defconfig
@ -40,9 +40,9 @@ TARGET_KERNEL_VARIANT_CONFIG := msm8974pro_sec_klte_spr_defconfig
BOARD_KERNEL_CMDLINE := console=null androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x37 ehci-hcd.park=3
BOARD_KERNEL_BASE := 0x00000000
BOARD_KERNEL_PAGESIZE := 2048
BOARD_MKBOOTIMG_ARGS := --ramdisk_offset 0x02000000 --dt device/samsung/klte/dt.img --tags_offset 0x01e00000
#BOARD_KERNEL_SEPARATED_DT := true
#BOARD_CUSTOM_BOOTIMG_MK := device/samsung/klte/mkbootimg.mk
BOARD_MKBOOTIMG_ARGS := --ramdisk_offset 0x02000000 --tags_offset 0x01e00000
BOARD_KERNEL_SEPARATED_DT := true
BOARD_CUSTOM_BOOTIMG_MK := device/samsung/klte/mkbootimg.mk
# Graphics
BOARD_EGL_CFG := device/samsung/klte/egl.cfg

229
device.mk~ Normal file
View File

@ -0,0 +1,229 @@
#
# Copyright (C) 2011 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.
#
$(call inherit-product, $(SRC_TARGET_DIR)/product/languages_full.mk)
## Get non-open-source specific aspects
$(call inherit-product-if-exists, vendor/samsung/klte/klte-vendor.mk)
## overlays
DEVICE_PACKAGE_OVERLAYS += device/samsung/klte/overlay
# Device uses high-density artwork where available
PRODUCT_AAPT_CONFIG := normal hdpi xhdpi xxhdpi
PRODUCT_AAPT_PREF_CONFIG := xxhdpi
# Boot animation
TARGET_SCREEN_HEIGHT := 1920
TARGET_SCREEN_WIDTH := 1080
# Audio configuration
PRODUCT_COPY_FILES += \
device/samsung/klte/audio/audio_effects.conf:system/vendor/etc/audio_effects.conf \
device/samsung/klte/audio/mixer_paths.xml:system/etc/mixer_paths.xml \
device/samsung/klte/audio/audio_policy.conf:system/etc/audio_policy.conf \
frameworks/native/data/etc/android.hardware.audio.low_latency.xml:system/etc/permissions/android.hardware.audio.low_latency.xml
PRODUCT_PROPERTY_OVERRIDES += \
af.resampler.quality=4 \
audio.offload.buffer.size.kb=32 \
audio.offload.gapless.enabled=false \
av.offload.enable=true
# Thermal config
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/thermal-engine-8974.conf:system/etc/thermal-engine-8974.conf
# Media Profile
PRODUCT_COPY_FILES += \
device/samsung/klte/media/media_profiles.xml:system/etc/media_profiles.xml
# Extended media support
PRODUCT_PACKAGES += \
qcmediaplayer
PRODUCT_BOOT_JARS += qcmediaplayer
# GPS
PRODUCT_PACKAGES += \
gps.msm8974 \
libgps.utils \
libloc_core \
libloc_eng
GPS_CONF := device/samsung/klte/gps/etc/gps.conf
PRODUCT_COPY_FILES += \
$(GPS_CONF):/system/etc/gps.conf \
device/samsung/klte/gps/etc/sap.conf:/system/etc/sap.conf
# Keylayouts
PRODUCT_COPY_FILES += \
device/samsung/klte/keylayout/atmel_mxt_ts.kl:system/usr/keylayout/atmel_mxt_ts.kl \
device/samsung/klte/keylayout/Button_Jack.kl:system/usr/keylayout/Button_Jack.kl \
device/samsung/klte/keylayout/gpio-keys.kl:system/usr/keylayout/gpio-keys.kl \
device/samsung/klte/keylayout/philips_remote_ir.kl:system/usr/keylayout/philips_remote_ir.kl \
device/samsung/klte/keylayout/samsung_remote_ir.kl:system/usr/keylayout/samsung_remote_ir.kl \
device/samsung/klte/keylayout/sec_touchkey.kl:system/usr/keylayout/sec_touchkey.kl \
device/samsung/klte/keylayout/ue_rf4ce_remote.kl:system/usr/keylayout/ue_rf4ce_remote.kl
# Ramdisk
PRODUCT_PACKAGES += \
fstab.qcom \
initlogo.rle \
init.bt.rc \
init.carrier.rc \
init.crda.sh \
init.qcom.rc \
init.qcom.usb.rc \
init.ril.rc \
init.target.rc \
ueventd.qcom.rc
# HAL
PRODUCT_PACKAGES += \
copybit.msm8974 \
gralloc.msm8974 \
hwcomposer.msm8974 \
memtrack.msm8974 \
power.msm8974
# Audio
PRODUCT_PACKAGES += \
audiod \
audio.a2dp.default \
audio_policy.msm8974 \
audio.primary.msm8974 \
audio.r_submix.default \
audio.usb.default \
libaudio-resampler \
libqcomvisualizer \
libqcomvoiceprocessing \
tinymix
# Torch
PRODUCT_PACKAGES += Torch
# Wifi
PRODUCT_PACKAGES += \
libnetcmdiface \
macloader \
crda \
regulatory.bin \
linville.key.pub.pem
# libxml2 is needed for camera
PRODUCT_PACKAGES += libxml2
# IR packages
PRODUCT_PACKAGES += \
consumerir.msm8974
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.consumerir.xml:system/etc/permissions/android.hardware.consumerir.xml
# Nfc
NFCEE_ACCESS_PATH := device/samsung/klte/nfc/nfcee_access.xml
ifeq ($(TARGET_NFC_TECH), nxp)
PRODUCT_PACKAGES += \
libnfc \
libnfc_jni \
Nfc \
Tag \
com.android.nfc_extras
PRODUCT_COPY_FILES += \
$(NFCEE_ACCESS_PATH):system/etc/nfcee_access.xml
else
PRODUCT_PACKAGES += \
libnfc-nci \
libnfc_nci_jni \
nfc_nci.msm8974 \
NfcNci \
Tag \
com.android.nfc_extras
PRODUCT_COPY_FILES += \
$(NFCEE_ACCESS_PATH):system/etc/nfcee_access.xml \
device/samsung/klte/nfc/libnfc-brcm-20791b05.conf:system/etc/libnfc-brcm-20791b05.conf \
device/samsung/klte/nfc/libnfc-brcm-20791b04.conf:system/etc/libnfc-brcm-20791b04.conf \
device/samsung/klte/nfc/libnfc-brcm.conf:system/etc/libnfc-brcm.conf
endif
# Set default USB interface
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
persist.sys.usb.config=mtp,diag
# Lights
PRODUCT_PACKAGES += lights.MSM8974
# QC Perf
PRODUCT_PROPERTY_OVERRIDES += \
ro.vendor.extension_library=/vendor/lib/libqc-opt.so
#common build.props
PRODUCT_PROPERTY_OVERRIDES += \
ro.chipname=msm8974 \
ro.sf.lcd_density=480 \
ro.opengles.version=196608 \
persist.timed.enable=true \
keyguard.no_require_sim=true
# Radio properties
PRODUCT_PROPERTY_OVERRIDES += \
rild.libpath=/system/lib/libsec-ril.so \
ril.subscription.types=NV,RUIM \
ro.ril.hsxpa=1 \
ro.ril.gprsclass=10 \
ro.use_data_netmgrd=true \
persist.data.netmgrd.qos.enable=true \
persist.radio.add_power_save=1 \
persist.radio.apm_sim_not_pwdn=1 \
persist.radio.lte_vrat_report=1 \
persist.rild.nitz_plmn="" \
persist.rild.nitz_long_ons_0="" \
persist.rild.nitz_long_ons_1="" \
persist.rild.nitz_long_ons_2="" \
persist.rild.nitz_long_ons_3="" \
persist.rild.nitz_short_ons_0="" \
persist.rild.nitz_short_ons_1="" \
persist.rild.nitz_short_ons_2="" \
persist.rild.nitz_short_ons_3=""
# msm_rng entropy feeder
PRODUCT_PACKAGES += \
qrngd \
qrngp
# Wifi
PRODUCT_COPY_FILES += \
device/samsung/klte/wpa_supplicant_overlay.conf:system/etc/wifi/wpa_supplicant_overlay.conf \
device/samsung/klte/p2p_supplicant_overlay.conf:system/etc/wifi/p2p_supplicant_overlay.conf
# Keymaster
PRODUCT_PACKAGES += \
keystore.msm8974
# call common msm8960
$(call inherit-product, device/samsung/msm8960-common/msm8960.mk)
# call dalvik heap config
$(call inherit-product, frameworks/native/build/phone-xxhdpi-2048-dalvik-heap.mk)
# call hwui memory config
$(call inherit-product-if-exists, frameworks/native/build/phone-xxhdpi-2048-hwui-memory.mk)

View File

@ -33,14 +33,6 @@ LOCAL_SRC_FILES := etc/init.qcom.usb.rc
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := init.ril.rc
LOCAL_MODULE_TAGS := optional eng
LOCAL_MODULE_CLASS := ETC
LOCAL_SRC_FILES := etc/init.ril.rc
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := init.target.rc
LOCAL_MODULE_TAGS := optional eng
@ -57,13 +49,6 @@ LOCAL_SRC_FILES := etc/ueventd.qcom.rc
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := init.qcom.modem_links.sh
LOCAL_MODULE_TAGS := optional eng
LOCAL_MODULE_CLASS := ETC
LOCAL_SRC_FILES := etc/init.qcom.modem_links.sh
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := init.crda.sh
LOCAL_MODULE_TAGS := optional eng

View File

@ -2,18 +2,21 @@
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
#TODO: Add 'check' as fs_mgr_flags with data partition.
# Currently we dont have e2fsck compiled. So fs check would failed.
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults defaults
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults defaults
/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 ext4 nosuid,nodev,noatime,noauto_da_alloc,discard,journal_async_commit,errors=panic wait,check,encryptable=footer
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 nosuid,nodev,barrier=1 wait,check
/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/cache /cache ext4 nosuid,nodev,noatime,noauto_da_alloc,journal_async_commit,errors=panic wait,check
/dev/block/platform/msm_sdcc.1/by-name/apnhlos /firmware vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337 wait
/dev/block/platform/msm_sdcc.1/by-name/mdm /firmware-mdm vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337 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
# VOLD
/devices/msm_sdcc.3/mmc_host/mmc2 auto auto default voldmanaged=sdcard1:auto
/devices/platform/msm_hsusb_host/usb auto auto default voldmanaged=usbdisk:auto
/devices/msm_sdcc.3/mmc_host/mmc2,/devices/msm_sdcc.2/mmc_host/mmc1 auto vfat default voldmanaged=extSdCard:auto,noemulatedsd
/devices/platform/xhci-hcd/usb1*sda,/devices/platform/xhci-hcd/usb2*sda auto vfat default voldmanaged=UsbDriveA:auto
/devices/platform/xhci-hcd/usb1*sdb,/devices/platform/xhci-hcd/usb2*sdb auto vfat default voldmanaged=UsbDriveB:auto
/devices/platform/xhci-hcd/usb1*sdc,/devices/platform/xhci-hcd/usb2*sdc auto vfat default voldmanaged=UsbDriveC:auto
/devices/platform/xhci-hcd/usb1*sdd,/devices/platform/xhci-hcd/usb2*sdd auto vfat default voldmanaged=UsbDriveD:auto
/devices/platform/xhci-hcd/usb1*sde,/devices/platform/xhci-hcd/usb2*sde auto vfat default voldmanaged=UsbDriveE:auto
/devices/platform/xhci-hcd/usb1*sdf,/devices/platform/xhci-hcd/usb2*sdf auto vfat default voldmanaged=UsbDriveF:auto

22
rootdir/etc/fstab.qcom~ Normal file
View File

@ -0,0 +1,22 @@
# Android fstab file.
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,errors=panic wait
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 nosuid,nodev,noatime,noauto_da_alloc,journal_async_commit,errors=panic wait,check
/dev/block/platform/msm_sdcc.1/by-name/apnhlos /firmware vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337 wait
/dev/block/platform/msm_sdcc.1/by-name/mdm /firmware-mdm vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337 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/userdata /data ext4 nosuid,nodev,noatime,noauto_da_alloc,discard,journal_async_commit,errors=panic wait,check,encryptable=footer
# VOLD
/devices/msm_sdcc.3/mmc_host/mmc2,/devices/msm_sdcc.2/mmc_host/mmc1 auto vfat default voldmanaged=extSdCard:auto,noemulatedsd
/devices/platform/xhci-hcd/usb1*sda,/devices/platform/xhci-hcd/usb2*sda auto vfat default voldmanaged=UsbDriveA:auto
/devices/platform/xhci-hcd/usb1*sdb,/devices/platform/xhci-hcd/usb2*sdb auto vfat default voldmanaged=UsbDriveB:auto
/devices/platform/xhci-hcd/usb1*sdc,/devices/platform/xhci-hcd/usb2*sdc auto vfat default voldmanaged=UsbDriveC:auto
/devices/platform/xhci-hcd/usb1*sdd,/devices/platform/xhci-hcd/usb2*sdd auto vfat default voldmanaged=UsbDriveD:auto
/devices/platform/xhci-hcd/usb1*sde,/devices/platform/xhci-hcd/usb2*sde auto vfat default voldmanaged=UsbDriveE:auto
/devices/platform/xhci-hcd/usb1*sdf,/devices/platform/xhci-hcd/usb2*sdf auto vfat default voldmanaged=UsbDriveF:auto

152
rootdir/etc/init.carrier.rc Normal file → Executable file
View File

@ -4,38 +4,58 @@
# This is a common source of Android security bugs.
#
on early-boot
chown bluetooth net_bt_stack /dev/ttyHS0
chmod 0660 /dev/ttyHS0
# permissions for Multiverse
chown system system /sys/class/sec/Multiverse/Brane
chmod 0600 /sys/class/sec/Multiverse/Brane
# efs
chmod 0660 /dev/block/mmcblk0p12
chown system system /dev/block/mmcblk0p12
on init
#Private Mode
mkdir /mnt/shell/privatemode 0700 system system
mkdir /storage/Private 0000 system system
on post-fs-data
#Private Mode
mkdir /data/privatemode 0770 system system
chown system system /data/privatemode
restorecon /data/privatemode
# SSWAP
write /proc/sys/vm/swappiness 130
## mount carreir partition for SPR model ##
on init
mkdir /carrier 0771 system system
on fs
wait /dev/block/platform/msm_sdcc.1/by-name/carrier
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/carrier /carrier nosuid nodev barrier=1
chown system system /carrier
chmod 0771 /carrier
restorecon -R /carrier
on boot
# permission for Input Device(Touchkey).
chmod 0660 /sys/class/input/input2/enabled
chown system system /sys/class/input/input2/enabled
chmod 0660 /sys/class/input/input1/enabled
chown system system /sys/class/input/input1/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 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
chown radio net_bt_stack /efs/bluetooth/bt_addr
chmod 0640 /efs/bluetooth/bt_addr
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
@ -48,35 +68,48 @@ on boot
chmod 0600 /dev/btlock
chown bluetooth bluetooth /dev/btlock
on fs
# permission for Expander.
chown system system /sys/class/sec/expander/expgpio
# 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
# permission for mDNIe
chown system system /sys/class/mdnie/mdnie/sensorRGB
# bluetooth dhcp config
service dhcpcd_bt-pan /system/bin/dhcpcd -ABKL
class main
disabled
oneshot
service iprenew_bt-pan /system/bin/dhcpcd -n
# Fingerprint
mkdir /dev/validity 0770 system system
# SENSOR FRAMEWORK : starts fingerprintService
service vcsFPService /system/bin/vcsFPService
class late_start
disabled
oneshot
user system
group system
on fs
#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
# bootchecker
service bootchecker /system/bin/bootchecker
class late_start
user system
group system log
oneshot
# TODO: replace it with device's DEXPREOPT_BOOT_JARS
# service for TZPR provisioning version check app
service scranton_RD /system/bin/scranton_RD
@ -88,3 +121,32 @@ service scranton_RD /system/bin/scranton_RD
# start for TZPR provisioning version check app
on property:sys.qseecomd.enable=true
start scranton_RD
mkdir /efs/drm/playready 0775
chown drm system /efs/drm/playready
chmod 0775 /efs/drm/playready
#Private Mode
service privatemode /system/bin/sdcard /data/privatemode /mnt/shell/privatemode 1000 1000
class late_start
oneshot
#InsideSecure VPN Client
service vpnclientpm /system/bin/vpnclientpm -u 1000 -g 1000 \
-O /data/data/com.ipsec.service/vpnclientpm.txt \
-U rmnet,rmnet_usb,wlan,bt-pan,rndis,p2p,eth
socket vpnclientpm seqpacket 0600 system system
disabled
on property:service.vpnclientpm.enable=1
start vpnclientpm
on property:service.vpnclientpm.enable=0
stop vpnclientpm
# SSWAP
service swapon /sbin/sswap -s
class core
user root
group root
seclabel u:r:sswap:s0
oneshot

View File

@ -1,502 +0,0 @@
#!/system/bin/sh
# Copyright (c) 2012, 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.
#
#
# No path is set up at this point so we have to do it here.
PATH=/sbin:/system/sbin:/system/bin:/system/xbin
export PATH
# Check for images and set up symlinks
cd /firmware/image
# Get the list of files in /firmware/image
# for which sym links have to be created
fwfiles=`ls modem* adsp* wcnss* mba* tima_* venus* widevine* playread* dtcpip* securefp* skm* keymaste* sshdcpap* sec_stor* mc_v2* tzpr25*`
# Check if the links with similar names
# have been created in /system/etc/firmware
cd /system/etc/firmware
linksNeeded=0
# For everyfile in fwfiles check if
# the corresponding file exists
for fwfile in $fwfiles; do
# if (condition) does not seem to work
# with the android shell. Therefore
# make do with case statements instead.
# if a file named $fwfile is present
# no need to create links. If the file
# with the name $fwfile is not present
# need to create links.
case `ls $fwfile` in
$fwfile)
continue;;
*)
# file with $fwfile does not exist
# need to create links
linksNeeded=1
break;;
esac
done
case $linksNeeded in
1)
cd /firmware/image
case `ls modem.mdt 2>/dev/null` in
modem.mdt)
for imgfile in modem*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
# trying to log here but nothing will be logged since it is
# early in the boot process. Is there a way to log this message?
log -p w -t PIL no modem image found;;
esac
case `ls adsp.mdt 2>/dev/null` in
adsp.mdt)
for imgfile in adsp*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no adsp image found;;
esac
case `ls wcnss.mdt 2>/dev/null` in
wcnss.mdt)
for imgfile in wcnss*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no wcnss image found;;
esac
case `ls mba.mdt 2>/dev/null` in
mba.mdt)
for imgfile in mba*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no mba image found;;
esac
case `ls venus.mdt 2>/dev/null` in
venus.mdt)
for imgfile in venus*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no venus image found;;
esac
case `ls skm.mdt 2>/dev/null` in
skm.mdt)
for imgfile in skm*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no skm image found;;
esac
case `ls keymaste.mdt 2>/dev/null` in
keymaste.mdt)
rm /system/etc/firmware/keymaste.*
for imgfile in keymaste*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
rm /system/etc/firmware/keymaster.*
;;
*)
log -p w -t PIL no keymaste image found;;
esac
case `ls sec_stor.mdt 2>/dev/null` in
sec_stor.mdt)
for imgfile in sec_stor*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no sec_stor image found;;
esac
case `ls widevine.mdt 2>/dev/null` in
widevine.mdt)
for imgfile in widevine*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no widevine image found;;
esac
case `ls sshdcpap.mdt 2>/dev/null` in
sshdcpap.mdt)
for imgfile in sshdcpap*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no sshdcpap image found;;
esac
case `ls playread.mdt 2>/dev/null` in
playread.mdt)
for imgfile in playread*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no playread image found;;
esac
case `ls tima_pkm.mdt 2>/dev/null` in
tima_pkm.mdt)
for imgfile in tima_pkm*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no tima_pkm image found;;
esac
case `ls tima_lkm.mdt 2>/dev/null` in
tima_lkm.mdt)
for imgfile in tima_lkm*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no tima_lkm image found;;
esac
case `ls tima_atn.mdt 2>/dev/null` in
tima_atn.mdt)
for imgfile in tima_atn*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no tima_atn image found;;
esac
case `ls dtcpip.mdt 2>/dev/null` in
dtcpip.mdt)
for imgfile in dtcpip*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no dtcpip image found;;
esac
case `ls securefp.mdt 2>/dev/null` in
securefp.mdt)
for imgfile in securefp*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no securefp image found;;
esac
case `ls mc_v2.mdt 2>/dev/null` in
mc_v2.mdt)
for imgfile in mc_v2*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no mc_v2 image found;;
esac
case `ls tima_key.mdt 2>/dev/null` in
tima_key.mdt)
for imgfile in tima_key*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no tima_key image found;;
esac
case `ls tzpr25.mdt 2>/dev/null` in
tzpr25.mdt)
for imgfile in tzpr25*; do
ln -s /firmware/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no tzpr25 image found;;
esac
;;
*)
# Nothing to do. No links needed
;;
esac
# Check for images and set up symlinks
cd /firmware-modem/image
# Get the list of files in /firmware/image
# for which sym links have to be created
fwfiles=`ls modem* adsp* wcnss* mba* tima_* venus* widevine* playread* dtcpip* skm* keymaste* sshdcpap* sec_stor* mc_v2*`
# Check if the links with similar names
# have been created in /system/etc/firmware
cd /system/etc/firmware
linksNeeded=0
# For everyfile in fwfiles check if
# the corresponding file exists
for fwfile in $fwfiles; do
# if (condition) does not seem to work
# with the android shell. Therefore
# make do with case statements instead.
# if a file named $fwfile is present
# no need to create links. If the file
# with the name $fwfile is not present
# need to create links.
case `ls $fwfile` in
$fwfile)
continue;;
*)
# file with $fwfile does not exist
# need to create links
linksNeeded=1
break;;
esac
done
case $linksNeeded in
1)
cd /firmware-modem/image
case `ls modem.mdt` in
modem.mdt)
for imgfile in modem*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
# trying to log here but nothing will be logged since it is
# early in the boot process. Is there a way to log this message?
log -p w -t PIL no modem image found;;
esac
case `ls adsp.mdt 2>/dev/null` in
adsp.mdt)
for imgfile in adsp*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no adsp image found;;
esac
case `ls wcnss.mdt 2>/dev/null` in
wcnss.mdt)
for imgfile in wcnss*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no wcnss image found;;
esac
case `ls mba.mdt 2>/dev/null` in
mba.mdt)
for imgfile in mba*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no mba image found;;
esac
case `ls venus.mdt 2>/dev/null` in
venus.mdt)
for imgfile in venus*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no venus image found;;
esac
case `ls skm.mdt 2>/dev/null` in
skm.mdt)
for imgfile in skm*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no skm image found;;
esac
case `ls keymaste.mdt 2>/dev/null` in
keymaste.mdt)
rm /system/etc/firmware/keymaste.*
for imgfile in keymaste*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
rm /system/etc/firmware/keymaster.*
;;
*)
log -p w -t PIL no keymaste image found;;
esac
case `ls sec_stor.mdt 2>/dev/null` in
sec_stor.mdt)
for imgfile in sec_stor*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no sec_stor image found;;
esac
case `ls widevine.mdt 2>/dev/null` in
widevine.mdt)
for imgfile in widevine*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no widevine image found;;
esac
case `ls sshdcpap.mdt 2>/dev/null` in
sshdcpap.mdt)
for imgfile in sshdcpap*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no sshdcpap image found;;
esac
case `ls playread.mdt 2>/dev/null` in
playread.mdt)
for imgfile in playread*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL no playread image found;;
esac
case `ls tima_pkm.mdt 2>/dev/null` in
tima_pkm.mdt)
for imgfile in tima_pkm*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no tima_pkm image found;;
esac
case `ls tima_lkm.mdt 2>/dev/null` in
tima_lkm.mdt)
for imgfile in tima_lkm*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no tima_lkm image found;;
esac
case `ls tima_atn.mdt 2>/dev/null` in
tima_atn.mdt)
for imgfile in tima_atn*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no tima_atn image found;;
esac
case `ls dtcpip.mdt 2>/dev/null` in
dtcpip.mdt)
for imgfile in dtcpip*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no dtcpip image found;;
esac
case `ls mc_v2.mdt 2>/dev/null` in
mc_v2.mdt)
for imgfile in mc_v2*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
break;;
*)
log -p w -t PIL 8974 device but no mc_v2 image found;;
esac
case `ls tima_key.mdt 2>/dev/null` in
tima_key.mdt)
for imgfile in tima_key*; do
ln -s /firmware-modem/image/$imgfile /system/etc/firmware/$imgfile 2>/dev/null
done
;;
*)
log -p w -t PIL 8974 device but no tima_key image found;;
esac
;;
*)
# Nothing to do. No links needed
;;
esac
cd /

552
rootdir/etc/init.qcom.rc Normal file → Executable file
View File

@ -26,62 +26,69 @@
#
import init.qcom.usb.rc
import init.target.rc
import init.ril.rc
on early-init
mount debugfs debugfs /sys/kernel/debug
write /sys/block/mmcblk0/queue/scheduler noop
on init
# See storage config details at http://source.android.com/tech/storage/
mkdir /mnt/media_rw/extSdCard 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveA 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveB 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveC 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveD 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveE 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveF 0700 media_rw media_rw
# Set permissions for persist partition
mkdir /persist 0771 system system
# See storage config details at http://source.android.com/tech/storage/
mkdir /mnt/shell/emulated 0700 shell shell
mkdir /mnt/shell/container 0700 system system
mkdir /storage 0550 system sdcard_r
mkdir /storage/emulated 0555 root root
#External storage directories
mkdir /mnt/media_rw/sdcard1 0700 media_rw media_rw
mkdir /storage/usbdisk 0000 system system
mkdir /mnt/media_rw/usbdisk 0700 media_rw media_rw
mkdir /storage/sdcard1 0700 root root
mkdir /storage/usbdisk 0700 root root
mkdir /storage/emulated 0555 root root
export EXTERNAL_STORAGE /storage/emulated/legacy
export SECONDARY_STORAGE /storage/sdcard1:/storage/usbdisk
export EMULATED_STORAGE_SOURCE /mnt/shell/emulated
export EMULATED_STORAGE_TARGET /storage/emulated
# This is no longer supported from KK release.
#export BOOTCLASSPATH ${BOOTCLASSPATH}:/system/framework/qcom.fmradio.jar
export SECONDARY_STORAGE /storage/extSdCard
mkdir /storage/extSdCard 0555 root root
# Support legacy paths
symlink /storage/emulated/legacy /sdcard
symlink /storage/emulated/legacy /mnt/sdcard
symlink /storage/emulated/legacy /storage/sdcard0
symlink /mnt/shell/emulated/0 /storage/emulated/legacy
symlink /mnt/shell/container /storage/container
symlink /storage/sdcard1 /extSdCard
symlink /storage/sdcard1 /mnt/extSdCard
symlink /storage/sdcard1 /external_sd
symlink /storage/usbdisk /usbdisk
symlink /storage/usbdisk /mnt/usbdisk
# map "real" external storages paths also in same way. backwards compatibility.
symlink /storage/extSdCard /mnt/extSdCard
symlink /storage/UsbDriveA /mnt/UsbDriveA
symlink /storage/UsbDriveB /mnt/UsbDriveB
symlink /storage/UsbDriveC /mnt/UsbDriveC
symlink /storage/UsbDriveD /mnt/UsbDriveD
symlink /storage/UsbDriveE /mnt/UsbDriveE
symlink /storage/UsbDriveF /mnt/UsbDriveF
export SECONDARY_STORAGE /storage/extSdCard
mkdir /storage/extSdCard 0700 root root
mkdir /storage/UsbDriveA 0700 root root
mkdir /storage/UsbDriveB 0700 root root
mkdir /storage/UsbDriveC 0700 root root
mkdir /storage/UsbDriveD 0700 root root
mkdir /storage/UsbDriveE 0700 root root
mkdir /storage/UsbDriveF 0700 root root
on early-boot
# set RLIMIT_MEMLOCK to 64MB
setrlimit 8 67108864 67108864
## [START] system_sw.sa: comment out early_boot.sh and take necessary settings out
#exec /system/bin/sh /init.qcom.early_boot.sh ${ro.board.platform}
chown system graphics /sys/class/graphics/fb1/hpd
chown system graphics /sys/class/graphics/fb1/vendor_name
chown system graphics /sys/class/graphics/fb1/product_description
chmod 0664 /sys/class/graphics/fb1/hpd
chmod 0664 /sys/class/graphics/fb1/vendor_name
chmod 0664 /sys/class/graphics/fb1/product_description
chmod 0664 /sys/class/graphics/fb1/video_mode
chmod 0664 /sys/class/graphics/fb1/format_3d
symlink /dev/graphics/fb1 /dev/graphics/hdmi
chown system system /sys/class/graphics/fb1/format_3d
## [END] system_sw.sa
# Allow subsystem (modem etc) debugging
write /sys/module/subsystem_restart/parameters/enable_debug ${persist.sys.ssr.enable_debug}
write /sys/kernel/boot_adsp/boot 1
# exec /system/bin/sh /init.qcom.early_boot.sh ${ro.board.platform}
# exec /system/bin/sh /init.qcom.syspart_fixup.sh ${ro.board.platform} ${ro.serialno}
on boot
@ -109,6 +116,13 @@ on boot
chmod 0660 /dev/ttyHS2
chown bluetooth bluetooth /dev/ttyHS2
# for BT MAC address
mkdir /efs/bluetooth 0775 radio system
#Audience ES705 UART
chmod 0660 /dev/ttyHS3
chown system system /dev/ttyHS3
#Create QMUX deamon socket area
mkdir /dev/socket/qmux_radio 0770 radio radio
chmod 2770 /dev/socket/qmux_radio
@ -119,9 +133,6 @@ on boot
mkdir /dev/socket/qmux_gps 0770 gps gps
chmod 2770 /dev/socket/qmux_gps
# Allow QMUX daemon to assign port open wait time
chown radio radio /sys/devices/virtual/hsicctl/hsicctl0/modem_wait
setprop wifi.interface wlan0
setprop ro.telephony.call_ring.multiple false
@ -133,6 +144,7 @@ on boot
#Remove SUID bit for iproute2 ip tool
chmod 0755 /system/bin/ip
chmod 0444 /sys/devices/platform/msm_hsusb/gadget/usb_state
#For bridgemgr daemon to inform the USB driver of the correct transport
@ -168,26 +180,32 @@ on boot
# an ack packet comes out of order
write /proc/sys/net/netfilter/nf_conntrack_tcp_be_liberal 1
# NFC local data and nfcee xml storage
mkdir /data/nfc 0770 nfc nfc
mkdir /data/nfc/param 0770 nfc nfc
# Set the console loglevel to < KERN_INFO
# Set the default message loglevel to KERN_INFO
# modified by SEC, SEC use a loglevel path with another way.
# write /proc/sys/kernel/printk "6 6 1 7"
# msm specific files that need to be created on /data
on post-fs-data
# we will remap this as /mnt/sdcard with the sdcard fuse tool
mkdir /data/media 0770 media_rw media_rw
chown media_rw media_rw /data/media
# we will remap this as /storage/container with the sdcard fuse tool
mkdir /data/container 0770 system system
chown system system /data/container
mkdir /data/misc/bluetooth 0770 bluetooth bluetooth
# Create the directories used by the Wireless subsystem
mkdir /data/misc/wifi 0770 wifi wifi
mkdir /data/misc/wifi 0770 wifi system
mkdir /data/misc/wifi/sockets 0770 wifi wifi
mkdir /data/misc/wifi/wpa_supplicant 0770 wifi wifi
mkdir /data/misc/dhcp 0770 dhcp dhcp
mkdir /data/misc/dhcp 0775 dhcp dhcp
chown dhcp dhcp /data/misc/dhcp
# Create the directory used by CnE subsystem
# Create the directories used by CnE subsystem
mkdir /data/connectivity 0771 system system
chown system system /data/connectivity
@ -195,6 +213,15 @@ on post-fs-data
chown system root /data/.psm.info
chmod 0664 /data/.psm.info
# for WIFI Antena Selection
chown system root /data/.ant.info
chmod 0664 /data/.ant.info
# for WIFI Version
write /data/.wifiver.info 0
chown system root /data/.wifiver.info
chmod 0664 /data/.wifiver.info
# for WIFI Cert
chmod 0664 /data/.bustxglom.info
chmod 0664 /data/.roamoff.info
@ -203,12 +230,12 @@ on post-fs-data
# for WIFI MAC address
mkdir /efs/wifi 0775 radio system
chown system system /efs/wifi/.mac.info
chmod 0664 /efs/wifi/.mac.info
chown system wifi /efs/wifi/.mac.info
chmod 0660 /efs/wifi/.mac.info
chmod 0660 /efs/wifi/.mac.cob
# Create directory used by audio subsystem
mkdir /data/misc/audio 0770 audio audio
restorecon_recursive /data/misc/audio
# Mounting of persist is moved to 'on emmc-fs' and 'on fs' sections
# We chown/chmod /persist again so because mount is run as root + defaults
@ -224,29 +251,16 @@ on post-fs-data
chown system system /sys/devices/platform/msm_sdcc.2/polling
chown system system /sys/devices/platform/msm_sdcc.3/polling
chown system system /sys/devices/platform/msm_sdcc.4/polling
# For disabling softkeys *FIXME*
chown root system /sys/class/sec/sec_touchkey/brightness
chmod 0664 /sys/class/sec/sec_touchkey/brightness
chown root system /sys/class/sec/sec_touchkey/max_brightness
chmod 0664 /sys/class/sec/sec_touchkey/max_brightness
chmod 666 /sys/class/leds/torch-sec1/brightness
chown system camera /sys/class/leds/torch-sec1/brightness
#Create the symlink to qcn wpa_supplicant folder for ar6000 wpa_supplicant
mkdir /data/system 0775 system system
#symlink /data/misc/wifi/wpa_supplicant /data/system/wpa_supplicant
#Create directories for wiper services
mkdir /data/wpstiles/ 0755 shell
mkdir /data/wiper 0755 gps qcom_oncrpc
#Create directories for gpsone_daemon services
mkdir /data/misc/gpsone_d 0770 system gps
#Create directories for QuIPS
mkdir /data/misc/quipc 0770 system gps
mkdir /data/misc/quipc 0770 gps system
#Create directories for Location services
mkdir /data/misc/location 0770 gps gps
@ -268,31 +282,13 @@ on post-fs-data
mkdir /data/time/ 0700 system system
mkdir /data/audio/ 0770 media audio
# Enable the setgid bit on the directory
chmod 2770 /data/audio
chown system system /sys/devices/virtual/lcd/panel/panel/backlight
setprop vold.post_fs_data_done 1
# Broadcom NFC
chmod 0600 /dev/bcm2079x
chown nfc nfc /dev/bcm2079x
mkdir /data/bcmnfc
mkdir /data/bcmnfc/param
chmod 0700 /data/bcmnfc
chmod 0700 /data/bcmnfc/param
chown nfc nfc /data/bcmnfc
chown nfc nfc /data/bcmnfc/param
# NFC
setprop ro.nfc.port "I2C"
chmod 0600 /dev/pn547
chown nfc nfc /dev/pn547
#Create a folder for SRS to be able to create a usercfg file
mkdir /data/data/media 0770 media media
restorecon_recursive /data/media
# GPIO DVS
# Gpio DVS
chown radio system /sys/class/secgpio_check/secgpio_check_all/secgpio_ctrl
# Export GPIO56 for fusion targets to enable/disable hub
@ -302,9 +298,8 @@ service usbhub_init /system/bin/usbhub_init
disabled
oneshot
on property:init.svc.surfaceflinger=stopped
stop ppd
stop hdmid
on property:persist.radio.atfwd.start=false
stop atfwd
on property:ro.board.platform=msm7630_fusion
start usbhub_init
@ -312,10 +307,21 @@ on property:ro.board.platform=msm7630_fusion
on property:init.svc.wpa_supplicant=stopped
stop dhcpcd
# BRCM bt
# on property:bluetooth.isEnabled=true
# start btwlancoex
# write /sys/class/bluetooth/hci0/idle_timeout 7000
on property:bluetooth.isEnabled=true
start btwlancoex
write /sys/class/bluetooth/hci0/idle_timeout 7000
on property:bluetooth.sap.status=running
start bt-sap
on property:bluetooth.sap.status=stopped
stop bt-sap
on property:bluetooth.dun.status=running
start bt-dun
on property:bluetooth.dun.status=stopped
stop bt-dun
on property:ro.bluetooth.ftm_enabled=true
start ftmd
@ -325,9 +331,10 @@ service qcom-c_core-sh /system/bin/sh /init.qcom.class_core.sh
user root
oneshot
service qcom-c_main-sh /system/bin/sh /init.qcom.class_main.sh
service qcom-ril-sh /system/bin/sh /init.ril.sh
class main
user root
disabled
oneshot
service ril-qmi /system/bin/sh /init.qcom.ril.sh
@ -336,14 +343,11 @@ service ril-qmi /system/bin/sh /init.qcom.ril.sh
oneshot
on property:vold.decrypt=trigger_restart_framework
setprop ro.fuse_sdcard ${persist.fuse_sdcard}
start qcom-c_main-sh
# BRCM bt
# start config_bluetooth
start qcom-ril-sh
start config_bluetooth
#ALRAN : Run qmuxd, qmiproxy .. "disabled" type main service while encryption stage
on property:vold.decrypt=trigger_restart_min_framework
start qcom-c_main-sh
on property:persist.env.fastdorm.enabled=true
setprop persist.radio.data_no_toggle 1
service cnd /system/bin/cnd
class late_start
@ -357,7 +361,6 @@ service irsc_util /system/bin/logwrapper /system/bin/irsc_util "/etc/sec_config"
service rmt_storage /system/bin/rmt_storage
class core
user root
group system
disabled
on property:ro.boot.emmc=true
@ -371,68 +374,56 @@ service rfs_access /system/bin/rfs_access
on property:ro.boot.emmc=true
start rfs_access
on property:ro.debuggable=1
chmod 0666 /sys/class/mhl/swing
chmod 0666 /sys/class/mhl/timing
on property:bluetooth.start_hci=true
start start_hci_filter
# BRCM bt
# service config_bluetooth /system/bin/sh /system/etc/init.qcom.bt.sh "onboot"
# class core
# user root
# oneshot
on property:bluetooth.start_hci=false
stop start_hci_filter
# service dbus /system/bin/dbus-daemon --system --nofork
# class main
# socket dbus stream 660 bluetooth bluetooth
# user bluetooth
# group bluetooth net_bt_admin
# disabled
service start_hci_filter /system/bin/wcnss_filter
class late_start
user bluetooth
group bluetooth
disabled
# on property:ro.qc.bluetooth.stack=bluez
# start dbus
service config_bluetooth /system/bin/sh /system/etc/init.qcom.bt.sh "onboot"
class core
user root
oneshot
# service bluetoothd /system/bin/logwrapper /system/bin/bluetoothd -n
# class main
# socket bluetooth stream 660 bluetooth bluetooth
# socket dbus_bluetooth stream 660 bluetooth bluetooth
# # init.rc does not yet support applying capabilities, so run as root and
# # let bluetoothd drop uid to bluetooth with the right linux capabilities
# group bluetooth net_bt_admin misc net_bt_stack
# disabled
service hciattach /system/bin/sh /system/etc/init.qcom.bt.sh
class late_start
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
# service hciattach /system/bin/sh /system/etc/init.qcom.bt.sh
# class late_start
# user bluetooth
# group bluetooth net_bt_admin
# disabled
# oneshot
on property:bluetooth.hciattach=true
start hciattach
# on property:bluetooth.hciattach=true
# start hciattach
on property:bluetooth.hciattach=false
setprop bluetooth.status off
# on property:bluetooth.hciattach=false
# setprop bluetooth.status off
service hciattach_ath3k /system/bin/sh /system/etc/init.ath3k.bt.sh
class late_start
user bluetooth
group system bluetooth net_bt_admin misc
disabled
oneshot
# service hciattach_ath3k /system/bin/sh /system/etc/init.ath3k.bt.sh
# class late_start
# user bluetooth
# group system bluetooth net_bt_admin misc
# disabled
# oneshot
service bt-dun /system/bin/dun-server /dev/smd7 /dev/rfcomm0
class late_start
user bluetooth
group bluetooth net_bt_admin inet
disabled
oneshot
# service bt-dun /system/bin/dun-server /dev/smd7 /dev/rfcomm0
# class late_start
# user bluetooth
# group bluetooth net_bt_admin inet
# disabled
# oneshot
# service bt-sap /system/bin/sapd 15
# user bluetooth
# group bluetooth net_bt_admin
# class late_start
# disabled
# oneshot
service bt-sap /system/bin/sapd 15
user bluetooth
group bluetooth net_bt_admin
class late_start
disabled
oneshot
service ftmd /system/bin/logwrapper /system/bin/ftmdaemon
class late_start
@ -463,13 +454,11 @@ service qmiproxy /system/bin/qmiproxy
service qmuxd /system/bin/qmuxd
class main
user radio
group radio audio bluetooth gps qcom_diag log
group radio audio bluetooth gps qcom_diag
disabled
service netmgrd /system/bin/netmgrd
class main
user root
group radio
disabled
service sensors /system/bin/sensors.qcom
@ -487,13 +476,12 @@ on property:ro.use_data_netmgrd=false
on property:ro.data.large_tcp_window_size=true
write /proc/sys/net/ipv4/tcp_adv_win_scale 2
# BRCM bt
# service btwlancoex /system/bin/sh /system/etc/init.qcom.coex.sh
# class late_start
# user bluetooth
# group bluetooth net_bt_admin inet net_admin net_raw
# disabled
# oneshot
service btwlancoex /system/bin/sh /system/etc/init.qcom.coex.sh
class late_start
user bluetooth
group bluetooth net_bt_admin inet net_admin net_raw
disabled
oneshot
service amp_init /system/bin/amploader -i
class late_start
@ -512,11 +500,12 @@ service amp_unload /system/bin/amploader -u
user root
disabled
oneshot
service wpa_supplicant /system/bin/wpa_supplicant \
service p2p_supplicant /system/bin/wpa_supplicant \
-iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \
-I/system/etc/wifi/wpa_supplicant_overlay.conf \
-O/data/misc/wifi/sockets \
-I/system/etc/wifi/wpa_supplicant_overlay.conf -O/data/misc/wifi/sockets -N \
-ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \
-I/system/etc/wifi/p2p_supplicant_overlay.conf \
-puse_p2p_group_interface=1 -puse_multi_chan_concurrent=1 \
-e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0
# we will start as root and wpa_supplicant will switch to user wifi
# after setting up the capabilities required for WEXT
@ -527,23 +516,18 @@ service wpa_supplicant /system/bin/wpa_supplicant \
disabled
oneshot
service p2p_supplicant /system/bin/wpa_supplicant \
-iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \
-I/system/etc/wifi/wpa_supplicant_overlay.conf -N \
-ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \
-I/system/etc/wifi/p2p_supplicant_overlay.conf \
-O/data/misc/wifi/sockets -puse_p2p_group_interface=1 \
-e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0
# we will start as root and wpa_supplicant will switch to user wifi
# after setting up the capabilities required for WEXT
# user wifi
# group wifi inet keystore
service wpa_supplicant /system/bin/wpa_supplicant -g@android:wpa_wlan0 \
-iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -e/data/misc/wifi/entropy.bin
# we will start as root and wpa_supplicant will switch to user wifi
# after setting up the capabilities required for WEXT
# user wifi
# group wifi inet keystore
class main
socket wpa_wlan0 dgram 660 wifi wifi
disabled
oneshot
service dhcpcd_wlan0 /system/bin/dhcpcd -aABDKL
service dhcpcd_wlan0 /system/bin/dhcpcd -ABKL
class late_start
disabled
oneshot
@ -553,7 +537,7 @@ service dhcpcd_ibss /system/bin/dhcpcd -BKM
disabled
oneshot
service dhcpcd_p2p /system/bin/dhcpcd -aABKL
service dhcpcd_p2p /system/bin/dhcpcd -ABKLG
class late_start
disabled
oneshot
@ -568,6 +552,16 @@ service iprenew_p2p /system/bin/dhcpcd -n
disabled
oneshot
service dhcpcd_bt-pan /system/bin/dhcpcd -BKLG
class late_start
disabled
oneshot
service iprenew_bt-pan /system/bin/dhcpcd -n
class late_start
disabled
oneshot
service dhcpcd_bnep0 /system/bin/dhcpcd -BKLG
disabled
oneshot
@ -612,22 +606,29 @@ on property:init.svc.macloader=stopped
chmod 0664 /data/.rev
# end of wifi
service wiperiface /system/bin/wiperiface
class late_start
user gps
group gps qcom_oncrpc net_raw
service sec-sh /system/bin/sh /system/etc/init.sec.boot.sh
class main
user root
oneshot
service olsrd /system/bin/olsrd -f /etc/wifi/olsrd.conf
class main
disabled
oneshot
on property:init.svc.dhcpcd_ibss=running
start olsrd
service gpsone_daemon /system/bin/gpsone_daemon
class late_start
user gps
group gps qcom_oncrpc inet net_raw
group gps inet net_raw
disabled
service quipc_igsn /system/bin/quipc_igsn
class late_start
user gps
group inet gps
group inet gps qcom_diag
disabled
service quipc_main /system/bin/quipc_main
@ -667,6 +668,14 @@ service fm_dl /system/bin/sh /system/etc/init.qcom.fm.sh
disabled
oneshot
on property:crypto.driver.load=1
insmod /system/lib/modules/qce.ko
insmod /system/lib/modules/qcedev.ko
on property:crypto.driver.load=0
exec /system/bin/rmmod qcedev.ko
exec /system/bin/rmmod qce.ko
service drmdiag /system/bin/drmdiagapp
class late_start
user root
@ -702,33 +711,21 @@ service wifi-crda /system/bin/sh /system/etc/init.crda.sh
disabled
oneshot
on property:sys.boot_completed=1
start qcom-post-boot
write /sys/block/mmcblk0/queue/scheduler row
service atfwd /system/bin/ATFWD-daemon
class late_start
user system
group system radio
onrestart /system/bin/log -t RIL-ATFWD -p w "ATFWD daemon restarted"
service hdmid /system/bin/hdmid
class late_start
socket hdmid stream 0660 root system graphics
disabled
#service ppd /system/bin/mm-pp-daemon
# class late_start
# user system
# socket pps stream 0660 system system graphics
# group system graphics
service hostapd /system/bin/hostapd -dddd /data/hostapd/hostapd.conf
class late_start
user root
group root
oneshot
disabled
#service hostapd /system/bin/hostapd -dddd /data/hostapd/hostapd.conf
# class late_start
# user root
# group root
# oneshot
# disabled
service ds_fmc_appd /system/bin/ds_fmc_appd -p "rmnet0" -D
class late_start
@ -739,10 +736,10 @@ service ds_fmc_appd /system/bin/ds_fmc_appd -p "rmnet0" -D
on property:persist.data.ds_fmc_app.mode=1
start ds_fmc_appd
service ims_regmanager /system/bin/exe-ims-regmanagerprocessnative
class late_start
group qcom_oncrpc net_bt_admin inet radio wifi
disabled
#service ims_regmanager /system/bin/exe-ims-regmanagerprocessnative
# class late_start
# group net_bt_admin inet radio wifi
# disabled
on property:persist.ims.regmanager.mode=1
start ims_regmanager
@ -756,13 +753,21 @@ service battery_monitor /system/bin/battery_monitor
group system
disabled
service ril-daemon1 /system/bin/rild -c 1
class main
socket rild1 stream 660 root radio
socket rild-debug1 stream 660 radio system
user root
disabled
group radio cache inet misc audio sdcard_r sdcard_rw qcom_oncrpc diag qcom_diag log
#service ril-daemon1 /system/bin/rild -c 1
# class main
# socket rild1 stream 660 root radio
# socket rild-debug1 stream 660 radio system
# user root
# disabled
# group radio cache inet misc audio sdcard_r sdcard_rw diag qcom_diag log
#service ril-daemon2 /system/bin/rild -c 2
# class main
# socket rild2 stream 660 root radio
# socket rild-debug2 stream 660 radio system
# user root
# disabled
# group radio cache inet misc audio sdcard_r sdcard_rw diag qcom_diag log
service profiler_daemon /system/bin/profiler_daemon
class late_start
@ -770,32 +775,51 @@ service profiler_daemon /system/bin/profiler_daemon
group root
disabled
# virtual sdcard daemon running as system (1000)
service container /system/bin/sdcard /data/container /mnt/shell/container 1000 1000
class late_start
oneshot
start container
# virtual sdcard daemon running as media_rw (1023)
service sdcard /system/bin/sdcard -u 1023 -g 1023 -l /data/media /mnt/shell/emulated
service sdcard /system/bin/sdcard -u 1023 -g 1023 -l -r /data/media /mnt/shell/emulated
class late_start
oneshot
service fuse_sdcard1 /system/bin/sdcard -u 1023 -g 1023 -d /mnt/media_rw/sdcard1 /storage/sdcard1
service fuse_extSdCard /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d -f /mnt/media_rw/extSdCard /storage/extSdCard
class late_start
disabled
oneshot
service fuse_usbdisk /system/bin/sdcard -u 1023 -g 1023 /mnt/media_rw/usbdisk /storage/usbdisk
service fuse_UsbDriveA /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveA /storage/UsbDriveA
class late_start
disabled
oneshot
on property:ro.fuse_sdcard=true
start sdcard
service fuse_UsbDriveB /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveB /storage/UsbDriveB
class late_start
disabled
oneshot
# This will make sure that sdcard service starts as late_start.
on nonencrypted
setprop ro.fuse_sdcard ${persist.fuse_sdcard}
service fuse_UsbDriveC /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveC /storage/UsbDriveC
class late_start
disabled
oneshot
service fuse_UsbDriveD /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveD /storage/UsbDriveD
class late_start
disabled
oneshot
service fuse_UsbDriveE /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveE /storage/UsbDriveE
class late_start
disabled
oneshot
service fuse_UsbDriveF /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveF /storage/UsbDriveF
class late_start
disabled
oneshot
# Binding fuse mount point to /storage/emulated/legacy
#on property:init.svc.sdcard=running
# wait /mnt/shell/emulated/0
# mount none /mnt/shell/emulated/0 /storage/emulated/legacy bind
on property:vold.decrypt=trigger_restart_framework
setprop ro.fuse_sdcard ${persist.fuse_sdcard}
@ -809,6 +833,29 @@ service hcidump /system/bin/sh /system/etc/hcidump.sh
service charger /charger
class charger
service ssr_diag /system/bin/ssr_diag
class late_start
user system
group system
# SSR setting
on property:persist.sys.ssr.restart_level=*
exec /system/bin/sh /init.qcom.ssr.sh ${persist.sys.ssr.restart_level}
# Define fastmmi
service fastmmi /system/bin/mmi
user root
group root
disabled
service fastmmisrv /system/bin/sh /init.qcom.factory.sh
user root
disabled
oneshot
on ffbm
start fastmmisrv
service hvdcp /system/bin/hvdcp
class core
user root
@ -820,40 +867,37 @@ on property:persist.usb.hvdcp.detect=true
on property:persist.usb.hvdcp.detect=false
stop hvdcp
service ssr_diag /system/bin/ssr_diag
class late_start
service charger_monitor /system/bin/charger_monitor
user system
group system
disabled
# Disable SSR to SoC restart
on property:persist.sys.ssr.restart_level=1
write /sys/module/subsystem_restart/parameters/restart_level 1
# write /sys/module/wcnss_ssr_8960/parameters/enable_riva_ssr 0
write /sys/bus/msm_subsys/devices/subsys0/restart_level system
write /sys/bus/msm_subsys/devices/subsys1/restart_level system
write /sys/bus/msm_subsys/devices/subsys2/restart_level system
write /sys/bus/msm_subsys/devices/subsys3/restart_level system
# Enable SSR
on property:persist.sys.ssr.restart_level=3
write /sys/module/subsystem_restart/parameters/restart_level 3
# write /sys/module/wcnss_ssr_8960/parameters/enable_riva_ssr 1
write /sys/bus/msm_subsys/devices/subsys0/restart_level related
write /sys/bus/msm_subsys/devices/subsys1/restart_level related
write /sys/bus/msm_subsys/devices/subsys2/restart_level related
write /sys/bus/msm_subsys/devices/subsys3/restart_level related
# Define fastmmi
service fastmmi /system/bin/mmi
user root
group root
service diag_mdlog_start /system/bin/diag_mdlog
class late_start
user sdcard_rw
group system qcom_diag sdcard_rw sdcard_r media_rw
disabled
oneshot
service fastmmisrv /system/bin/sh /init.qcom.factory.sh
user root
service diag_mdlog_stop /system/bin/diag_mdlog -k
class late_start
user sdcard_rw
group system qcom_diag sdcard_rw sdcard_r media_rw
disabled
oneshot
on ffbm
start fastmmisrv
service qlogd /system/xbin/qlogd
class main
disabled
on property:persist.sys.qlogd=1
start qlogd
on property:persist.sys.qlogd=0
stop qlogd
service rootagent /system/bin/sh /system/etc/init.qcom.rootagent.sh
disabled
oneshot
on property:persist.sys.rootagent=1
start rootagent
on property:persist.sys.rootagent=0
stop rootagent

View File

@ -27,124 +27,45 @@
on init
write /sys/class/android_usb/android0/f_rndis/wceis 1
chown system system /sys/class/android_usb/android0/usb30en
chmod 0660 /sys/class/android_usb/android0/usb30en
chown system system /sys/class/android_usb/android0/terminal_version
chmod 0660 /sys/class/android_usb/android0/terminal_version
on charger
setprop sys.usb.config mass_storage
on fs
mkdir /dev/usb-ffs 0770 shell shell
mkdir /dev/usb-ffs/adb 0770 shell shell
mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000
write /sys/class/android_usb/android0/f_ffs/aliases adb
service qcom-usb-sh /system/bin/sh /init.qcom.usb.sh
class core
user root
oneshot
# Following are the parameters required for usb functionality. They provide configurable options like
# product_id/vendor id and allows specifying required functions:
#
# Required parameters:
#
# /sys/class/android_usb/android0/enable: Enables/disables usb composition
# Value: 0 (disable), 1 (enable)
#
# /sys/class/android_usb/android0/idVendor: Stores Vendor ID
# Value: 05c6 (Vendor id for Qualcomm Inc)
#
# /sys/class/android_usb/android0/idProduct: Stores Product id corresponding to usb composition
# Value: 0x9xxx for composite interface, 0xFxxx for single interface
#
# /sys/class/android_usb/android0/f_diag/clients: Stores name of clients representing a diag interface.
# Value: Passed one per interface. e.g. diag[,diag_mdm, diag_qsc, diag_mdm2]
#
# /sys/class/android_usb/android0/functions: Stores name of the function drivers used in usb composition.
# Value: Passed one per function driver. e.g. diag[,adb]
#
#Optional parameters:
#
# /sys/class/android_usb/android0/f_serial/transports: Stores type of underlying transports used to
# communicate to serial interface.
# Value: Passed one per interface. One value represents control and data transport together.
# e.g. smd[,sdio,tty,hsic]
# Only required if serial interface is present.
#
# /sys/class/android_usb/android0/f_serial/transport_names: Stores name of the underlying transports
# used to communicate to serial interface. This is used to distinguish between more than one interface
# using same transport type.
# Value: Passed one per interface. One value represents control and data transport together.
# e.g. serial_hsic[,serial_hsusb]
# Only required for transport type hsic, optional for other transport types.
#
# /sys/class/android_usb/android0/f_rmnet/transports: Stores type of underlying transports used to
# communicate to rmnet interface.
# Value: Passed two per interface as control, data transport type pair.
# e.g. smd,bam[,hsuart,hsuart]
# Only required if rmnet interface is present.
#
# /sys/class/android_usb/android0/f_rmnet/transport_names: Stores name of the underlying transports
# used to communicate to rmnet interface. This is used to distinguish between more than one interface
# using same transport type.
# Value: Passed one per interface. One value represents control and data transport together.
# e.g. rmnet_hsic[,rmnet_hsusb]
# Only required for transport type hsic, optional for other transport types.
# USB Composite for Samsung USB Driver
on property:sys.usb.config=mtp,conn_gadget
# This should only be used during device bringup
on property:sys.usb.config=mtp,diag,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions mtp,acm,conn_gadget
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mtp,conn_gadget,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions mtp,acm,conn_gadget,adb
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/functions mtp,diag,adb
write /sys/module/ci13xxx_msm/parameters/streaming 1
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# USB Composite for Samsung USB Driver
on property:sys.usb.config=mtp
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/f_acm/acm_transports tty
write /sys/class/android_usb/android0/functions mtp,acm
write /sys/module/ci13xxx_msm/parameters/streaming 1
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=mtp,adb
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 04E8
# write /sys/class/android_usb/android0/idProduct 6860
# write /sys/class/android_usb/android0/functions mtp,adb
# write /sys/class/android_usb/android0/enable 1
# start adbd
# setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mtp,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/f_acm/acm_transports tty
write /sys/class/android_usb/android0/functions mtp,acm,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=ptp
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
@ -184,8 +105,8 @@ on property:sys.usb.config=rndis,acm,diag
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6864
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_acm/acm_transports hsic
write /sys/class/android_usb/android0/functions rndis,acm,diag
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
@ -194,9 +115,9 @@ on property:sys.usb.config=rmnet,acm,diag
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685D
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_acm/acm_transports hsic
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
write /sys/class/android_usb/android0/functions diag,acm,rmnet
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
@ -205,8 +126,8 @@ on property:sys.usb.config=diag,acm,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685D
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_acm/acm_transports hsic
write /sys/class/android_usb/android0/functions diag,acm,adb
write /sys/class/android_usb/android0/enable 1
start adbd
@ -248,15 +169,42 @@ on property:sys.usb.config=mass_storage,mtp,adb
start adbd
setprop sys.usb.state ${sys.usb.config}
# As request from the CHINA GOVERNMENT SECURITY POLICY
on property:sys.usb.config=askon
on property:sys.usb.config=mass_storage,acm
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/functions ${sys.usb.config}
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685E
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions acm,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=askon,adb
on property:sys.usb.config=mass_storage,acm,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/functions ${sys.usb.config}
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685E
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions acm,mass_storage,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mass_storage,acm,mtp
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions mtp,acm,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mass_storage,acm,mtp,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions mtp,acm,mass_storage,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# USB compositions
@ -495,9 +443,7 @@ on property:sys.usb.config=diag,serial_hsic,serial_tty,rmnet_hsic,mass_storage,a
write /sys/class/android_usb/android0/idProduct 9025
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_serial/transports hsic,tty
write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
@ -510,9 +456,7 @@ on property:sys.usb.config=diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_
write /sys/class/android_usb/android0/idProduct 9031
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_serial/transports hsic,tty
write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
@ -525,9 +469,7 @@ on property:sys.usb.config=diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_
write /sys/class/android_usb/android0/idProduct 9032
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_serial/transports hsic,tty
write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic
write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
@ -539,53 +481,19 @@ on property:sys.usb.config=diag,diag_mdm,diag_qsc,serial_hsic,serial_hsuart,rmne
write /sys/class/android_usb/android0/idProduct 9065
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
write /sys/class/android_usb/android0/f_serial/transports hsic,hsuart
write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsuart
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsuart,hsuart
write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsuart
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# Fusion 3 DSDA composition without adb
# Fusion 3 composition without adb
on property:sys.usb.config=diag,diag_mdm,diag_qsc,serial_hsic,serial_hsuart,rmnet_hsic,rmnet_hsuart,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9066
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
write /sys/class/android_usb/android0/f_serial/transports hsic,hsuart
write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsuart
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsuart,hsuart
write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsuart
write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
# Fusion 3 DSDA2 composition with adb
on property:sys.usb.config=diag,diag_mdm,diag_mdm2,serial_hsic,serial_hsusb,rmnet_hsic,rmnet_hsusb,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9065
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_mdm2
write /sys/class/android_usb/android0/f_serial/transports hsic,hsic
write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsusb
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsic,hsic
write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsusb
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# Fusion 3 DSDA2 composition without adb
on property:sys.usb.config=diag,diag_mdm,diag_mdm2,serial_hsic,serial_hsusb,rmnet_hsic,rmnet_hsusb,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9066
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_mdm2
write /sys/class/android_usb/android0/f_serial/transports hsic,hsic
write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsusb
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsic,hsic
write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsusb
write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
@ -670,25 +578,6 @@ on property:sys.usb.config=rndis,diag,diag_mdm,adb
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=rndis,diag,diag_mdm,diag_qsc
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9086
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
write /sys/class/android_usb/android0/functions rndis,diag
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=rndis,diag,diag_mdm,diag_qsc,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9087
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
write /sys/class/android_usb/android0/functions rndis,diag,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=ptp
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
@ -761,25 +650,6 @@ on property:sys.usb.config=mtp,diag,diag_mdm,adb
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mtp,diag,diag_mdm,diag_qsc
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9088
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
write /sys/class/android_usb/android0/functions mtp,diag
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mtp,diag,diag_mdm,diag_qsc,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9089
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
write /sys/class/android_usb/android0/functions mtp,diag,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,diag_mdm,ccid
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
@ -821,7 +691,6 @@ on property:sys.usb.config=diag,qdss
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 904A
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/functions diag,qdss
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
@ -830,67 +699,7 @@ on property:sys.usb.config=diag,qdss,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9060
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/functions diag,qdss,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,qdss,rmnet_bam
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9083
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
write /sys/class/android_usb/android0/functions diag,qdss,rmnet
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,qdss,rmnet_bam,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9084
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet
write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=rndis,diag,qdss
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9081
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/functions rndis,diag,qdss
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=rndis,diag,qdss,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9082
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/functions rndis,diag,qdss,adb
write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=ncm
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 0525
write /sys/class/android_usb/android0/idProduct A4A1
write /sys/class/android_usb/android0/functions ncm
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=ncm,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 908C
write /sys/class/android_usb/android0/functions ncm,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}

View File

@ -1,94 +0,0 @@
# Copyright (c) 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 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.
#
#
# start ril-daemon only for targets on which radio is present
#
on property:ro.baseband=apq
setprop ro.radio.noril yes
stop ril-daemon
#
# start qmuxd and qmiproxy for appropriate targets
#
on property:ro.baseband=msm
start qmuxd
on property:ro.baseband=csfb
start qmuxd
start qmiproxy
on property:ro.baseband=svlte2a
start qmuxd
start qmiproxy
on property:ro.baseband=mdm
start qmuxd
on property:ro.baseband=sglte
start qmuxd
start qmiproxy
on property:ro.baseband=sglte2
start qmuxd
start qmiproxy
on property:ro.baseband=dsda2
start qmuxd
setprop persist.radio.multisim.config dsda
on property:ro.baseband=unknown
start qmuxd
on property:persist.radio.sglte_csfb=true
stop qmiproxy
setprop persist.radio.voice.modem.index 0
#
# start netmgrd
#
on property:ro.use_data_netmgrd=true
start netmgrd
#
# start multiple rilds based on multisim property
#
on property:persist.radio.multisim.config=dsds
stop ril-daemon
start ril-daemon
start ril-daemon1
on property:persist.radio.multisim.config=dsda
stop ril-daemon
start ril-daemon
start ril-daemon1
on property:persist.radio.multisim.config=tsts
stop ril-daemon
start ril-daemon
start ril-daemon1
start ril-daemon2

658
rootdir/etc/init.target.rc Normal file → Executable file
View File

@ -27,31 +27,33 @@
#
#
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 init
# export BOOTCLASSPATH ${BOOTCLASSPATH}:/system/framework/oem-services.jar:/system/framework/WfdCommon.jar:/system/framework/qcmediaplayer.jar
# export BOOTCLASSPATH ${BOOTCLASSPATH}:/system/framework/oem-services.jar:/system/framework/WfdCommon.jar:/system/framework/qcmediaplayer.jar:/system/framework/org.codeaurora.Performance.jar
# import cne init file
# on post-fs
# export LD_PRELOAD /vendor/lib/libNimsWrap.so
on fs
write /sys/devices/msm_sdcc.1/mmc_host/mmc0/power/control on
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
restorecon_recursive /persist
setprop ro.crypto.fuse_sdcard true
exec /system/bin/sh /init.qcom.syspart_fixup.sh ${ro.board.platform} ${ro.serialno}
# 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/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
@ -60,288 +62,44 @@ on fs
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
chown system radio /efs
chmod 0771 /efs
restorecon -R /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
on fs_selinux
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,context=u:object_r:firmware:s0
# 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
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,context=u:object_r:firmware:s0
on fs_selinux_disable
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
on post-fs-data
mkdir /data/tombstones 0771 system system
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_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
# sensors
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/gyro_sensor/selftest
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
@ -349,181 +107,77 @@ on boot
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/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/thresh_high
chown system radio /sys/class/sensors/proximity_sensor/thresh_low
chown system radio /sys/class/sensors/proximity_sensor/vendor
chown system radio /sys/class/sensors/proximity_sensor/name
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
chown system radio /sys/class/sensors/grip_sensor/reset
chown system radio /sys/class/sensors/grip_sensor/raw_data
chown system radio /sys/class/sensors/grip_sensor/threshold
chown system radio /sys/class/sensors/grip_sensor/calibration
chown system radio /sys/class/sensors/grip_sensor/onoff
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
on boot
start imsqmidaemon
insmod /system/lib/modules/adsprpc.ko
# 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
# NFC_NXP
setprop ro.nfc.port "I2C"
chmod 0600 /dev/pn547
chown nfc nfc /dev/pn547
# NFC_BROADCOM
chmod 0600 /dev/bcm2079x
chown nfc nfc /dev/bcm2079x
mkdir /data/nfc
mkdir /data/nfc/param
chmod 0700 /data/nfc
chmod 0700 /data/nfc/param
chown nfc nfc /data/nfc
chown nfc nfc /data/nfc/param
# 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
# Allow usb charging to be disabled persistently
on property:persist.usb.chgdisabled=1
write /sys/class/power_supply/battery/charging_enabled 0
on property:persist.usb.chgdisabled=0
write /sys/class/power_supply/battery/charging_enabled 1
# bt_hsic_control
service bt_hsic_control /system/bin/sh /system/etc/hsic.control.bt.sh
user root
disabled
on property:bluetooth.hsic_ctrl=load_wlan
start bt_hsic_control
on property:bluetooth.hsic_ctrl=unbind_hsic
start bt_hsic_control
#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
#start gesture server as daemon
service qgesturesvr /system/bin/mm-gesture-daemon
class late_start
user system
group system camera input graphics net_bt_stack
#start GNSS/Sensor interface daemon
service gsiff_daemon /system/bin/gsiff_daemon
class late_start
user system
group gps qcom_oncrpc net_raw
user gps
group gps net_raw misc
service qrngd /system/bin/qrngd -f
class main
user root
group root
class main
user root
group root
service qrngp /system/bin/qrngp
class main
@ -536,33 +190,163 @@ on property:sys.boot_completed=1
start qrngp
service qseecomd /system/bin/qseecomd
class late_start
class core
user root
group system
group root
service mpdecision /system/bin/mpdecision --avg_comp
user root
disabled
service qosmgrd /system/bin/qosmgr /system/etc/qosmgr_rules.xml
user system
group system
disabled
service thermal-engine /system/bin/thermal-engine
class core
class main
user root
group radio system
group root
service security-check1 /sbin/security_boot_check system
class core
oneshot
service security-check2 /sbin/security_boot_check recovery
class core
oneshot
service time_daemon /system/bin/time_daemon
class late_start
user root
group root
service adsprpcd /system/bin/adsprpcd
class main
user media
group media
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 usf_tester /system/bin/usf_tester
user system
group system inet
disabled
service usf_epos /system/bin/usf_epos
user system
group system inet
disabled
service usf_gesture /system/bin/usf_gesture
user system
group system inet
disabled
service usf_p2p /system/bin/usf_p2p
user system
group system inet
disabled
service usf_hovering /system/bin/usf_hovering
user system
group system inet
disabled
service usf_proximity /system/bin/usf_proximity
user system
group system inet
disabled
service usf-post-boot /system/bin/sh /system/etc/usf_post_boot.sh
class late_start
user root
disabled
oneshot
service prepare-mobicore /system/bin/sh /system/bin/mobicore-presetup.sh
class core
user root
group root
oneshot
service run-mobicore /system/bin/sh /system/bin/mobicore-startup.sh
class core
user system
group system
on property:init.svc.bootanim=stopped
start usf-post-boot
start run-mobicore
service imsqmidaemon /system/bin/imsqmidaemon
class main
user system
group radio net_raw log qcom_diag
disabled
# imsdatadaemon starts with root and UID will be downgraded to SYSTEM.
service imsdatadaemon /system/bin/imsdatadaemon
class main
user root
group system wifi radio net_raw log qcom_diag net_admin
disabled
service wcnss-service /system/bin/wcnss_service
class late_start
user system
group system wifi
oneshot
on property:sys.ims.QMI_DAEMON_STATUS=1
start imsdatadaemon
service ims_rtp_daemon /system/bin/ims_rtp_daemon
class main
user system
group radio net_raw diag qcom_diag log
disabled
on property:sys.ims.DATA_DAEMON_STATUS=1
start ims_rtp_daemon
# service ppd /system/bin/mm-pp-daemon
# class late_start
# user system
# socket pps stream 0660 system system
# group system graphics
#
# on property:init.svc.surfaceflinger=stopped
# stop ppd
# Secure Storage startup
service secure_storage /system/bin/secure_storage_daemon
class core
user system
group system
disabled
on property:ro.securestorage.support=true
mkdir /dev/.secure_storage
chmod 0711 /dev/.secure_storage
chown system system /dev/.secure_storage
restorecon -R /dev/.secure_storage
start secure_storage
on property:ro.securestorage.knox=true
mkdir /dev/.secure_storage
chmod 0711 /dev/.secure_storage
chown system system /dev/.secure_storage
restorecon -R /dev/.secure_storage
start secure_storage
# SecEDS
service TvoutService_C /system/bin/bintvoutservice
class main
user system
group graphics
on property:ro.SecEDS.enable=false
stop TvoutService_C

View File

@ -176,195 +176,3 @@
/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
/dev/ssp_sensorhub 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/length 0660 system system
/sys/devices/f9967000.spi/spi_master/spi32765/spi32765.0/iio:device* buffer/enable 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/length 0660 system system
/sys/devices/f9924000.i2c/i2c-2/2-0020/input/input* enabled 0660 system system
# Felica
/dev/felica 0660 mfc system
/dev/felica_pon 0660 mfc system
/dev/felica_cen 0660 mfc felicalock
/dev/felica_rfs 0440 mfc system
/dev/felica_rws 0660 mfc system
/dev/felica_ant 0660 mfc system
/dev/felica_int_poll 0400 mfc system
/dev/felica_uid 0220 mfc system
/dev/felica_uicc 0660 mfc system
# NFC
# JPN Felica Temporary Workaround
/dev/ttyHSL2 0660 nfc nfc
/dev/snfc_uart 0660 nfc nfc
/dev/snfc_pon 0220 nfc nfc
/dev/snfc_cen 0440 nfc system
/dev/snfc_hsel 0660 nfc nfc
/dev/snfc_intu_poll 0440 nfc nfc
/dev/snfc_available_poll 0440 nfc nfc
/dev/snfc_rfs 0440 nfc nfc
/dev/snfc_rfs_poll 0440 nfc nfc
/dev/uartcc 0660 nfc nfc
# 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* enable 0660 system radio
/sys/devices/f9927000.i2c/i2c-5/5-0024/iio:device* in_grip0_input 0660 system radio
/sys/devices/f9927000.i2c/i2c-5/5-0039/iio:device* 0664 system radio
/sys/devices/f9927000.i2c/i2c-5/5-0039/iio:device* enable 0660 system radio
/sys/devices/f9927000.i2c/i2c-5/5-0039/iio:device* prox_enable 0660 system radio
/sys/devices/f9927000.i2c/i2c-5/5-0039/iio:device* delay 0660 system radio
/sys/devices/f9927000.i2c/i2c-5/5-0039/iio:device* prox_delay 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/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* 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/enable 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* scan_elements/in_timestamp_en 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* scan_elements/in_timestamp_type 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* scan_elements/in_timestamp_index 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* sampling_frequency_available 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* reg_dump 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* temperature 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_anglvel_scale 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_anglvel_x_calibbias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_anglvel_y_calibbias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_anglvel_z_calibbias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_anglvel_x_offset 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_anglvel_y_offset 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_anglvel_z_offset 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_anglvel_self_test_scale 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* self_test_samples 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* self_test_threshold 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* gyro_enable 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* gyro_fifo_enable 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* gyro_rate 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* power_state 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* sampling_frequency 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* self_test 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* gyro_matrix 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* secondary_name 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* reg_write 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* debug_smd_enable_testp1 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* debug_smd_enable_testp2 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* debug_smd_exe_state 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* debug_smd_delay_cntr 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* test_suspend_resume 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* test_gyro_counter 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* test_accel_counter 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* test_compass_counter 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* test_pressure_counter 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* test_LPQ_counter 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* test_PEDQ_counter 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* test_SIXQ_counter 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* event_display_orientation 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* event_accel_motion 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* event_smd 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* event_pedometer 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_accel_scale 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_accel_x_calibbias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_accel_y_calibbias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_accel_z_calibbias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_accel_self_test_scale 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_accel_x_offset 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_accel_y_offset 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_accel_z_offset 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_accel_x_dmp_bias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_accel_y_dmp_bias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_accel_z_dmp_bias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_anglvel_x_dmp_bias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_anglvel_y_dmp_bias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_anglvel_z_dmp_bias 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* pedometer_int_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* pedometer_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* pedometer_steps 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* pedometer_time 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* smd_enable 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* smd_threshold 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* smd_delay_threshold 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* smd_delay_threshold2 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* display_orientation_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* dmp_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* dmp_int_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* dmp_event_int_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* step_indicator_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* batchmode_timeout 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* batchmode_wake_fifo_full_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* six_axes_q_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* six_axes_q_rate 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* three_axes_q_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* three_axes_q_rate 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* ped_q_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* ped_q_rate 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* step_detector_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* motion_lpa_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* motion_lpa_freq 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* motion_lpa_threshold 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* accel_enable 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* accel_fifo_enable 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* firmware_loaded 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* accel_matrix 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* accel_rate 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* in_magn_scale 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* compass_enable 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* compass_rate 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* compass_matrix 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* compass_sens 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* name 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* trigger/current_trigger 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* power/runtime_status 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* power/control 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* power/runtime_suspended_time 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* power/runtime_active_time 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* power/autosuspend_delay_ms 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* event_tap 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* flush_batch 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* master_enable 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* tap_min_count 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* tap_on 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* tap_threshold 0660 system radio
/sys/devices/f9968000.i2c/i2c-12/12-0068/iio:device* tap_time 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_step_thresh 0660 system radio