diff --git a/rootdir/bootimg.json b/rootdir/bootimg.json new file mode 100644 index 0000000..a6185f1 --- /dev/null +++ b/rootdir/bootimg.json @@ -0,0 +1,41 @@ +{ + "info" : { + "output" : "recovery.img", + "headerVersion" : 0, + "headerSize" : 0, + "loadBase" : "0x0", + "tagsOffset" : "0x80000100", + "board" : null, + "pageSize" : 2048, + "cmdline" : "console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=qcom msm_rtb.filter=0x237 ehci-hcd.park=3 androidboot.bootdevice=7824900.sdhci lpm_levels.sleep_disabled=1 earlyprintk androidboot.selinux=permissive", + "osVersion" : null, + "osPatchLevel" : null, + "hash" : "1200a57a6d283362161b2f4c19b4578f4fbfce4a000000000000000000000000", + "verify" : "VERIFY" + }, + "kernel" : { + "file" : "build/unzip_boot/kernel", + "position" : "0x800", + "size" : "0xd6f07a", + "loadOffset" : "0x80008000" + }, + "ramdisk" : { + "file" : "build/unzip_boot/ramdisk.img.gz", + "position" : "0xd70000", + "size" : "0x1c6c2c", + "loadOffset" : "0x81000000" + }, + "secondBootloader" : { + "file" : null, + "position" : "0xf37000", + "size" : "0x0", + "loadOffset" : "0x80f00000" + }, + "signature" : { + "type" : "dm-verity", + "path" : "/boot", + "verity_pk8" : "security/verity.pk8", + "verity_pem" : "security/verity.x509.pem", + "jarPath" : "boot_signer/build/libs/boot_signer.jar" + } +} \ No newline at end of file diff --git a/rootdir/default.prop b/rootdir/default.prop new file mode 100644 index 0000000..15e7e99 --- /dev/null +++ b/rootdir/default.prop @@ -0,0 +1,342 @@ +# +# ADDITIONAL_DEFAULT_PROPERTIES +# +ro.sw.release.date=18-10-26 +ro.build.version.fih=13.00.17.01 +ro.secure=0 +security.perf_harden=0 +ro.allow.mock.location=0 +ro.debuggable=1 +ro.adb.secure=0 +ro.zygote=zygote32 +dalvik.vm.image-dex2oat-Xms=64m +dalvik.vm.image-dex2oat-Xmx=64m +dalvik.vm.dex2oat-Xms=64m +dalvik.vm.dex2oat-Xmx=512m +ro.dalvik.vm.native.bridge=0 +debug.atrace.tags.enableflags=0 +# TVER +ro.tver.boot=B7N6R0R0TB00 +# +# BOOTIMAGE_BUILD_PROPERTIES +# +ro.bootimage.build.date=Fri Oct 26 15:37:44 CST 2018 +ro.bootimage.build.date.utc=1540539464 +ro.bootimage.build.fingerprint=Nokia/Nokia_8110_4G/Nokia_8110_4G:6.0.1/MMB29M/13.00.17.01:user/dev-keys +persist.sys.usb.config=adb + +# begin build properties +# autogenerated by buildinfo.sh +ro.build.id=MMB29M +ro.build.display.id=MMB29M dev-keys +ro.build.version.incremental=13.00.17.01 +ro.build.version.sdk=23 +ro.build.version.preview_sdk=0 +ro.build.version.codename=REL +ro.build.version.all_codenames=REL +ro.build.version.release=6.0.1 +ro.build.version.security_patch=xxxx-xx-xx +ro.build.version.base_os= +ro.build.date=Fri Oct 26 15:37:28 CST 2018 +ro.build.date.utc=1540539448 +ro.build.type=user +ro.build.user=heyongjun +ro.build.host=bjfih025 +ro.build.tags=dev-keys +ro.build.flavor=Nokia 8110 4G-user +ro.product.model=Nokia 8110 4G +ro.product.brand=Nokia +ro.product.name=Nokia 8110 4G +ro.product.device=Nokia 8110 4G +ro.product.board=msm8909 +# ro.product.cpu.abi and ro.product.cpu.abi2 are obsolete, +# use ro.product.cpu.abilist instead. +ro.product.cpu.abi=armeabi-v7a +ro.product.cpu.abi2=armeabi +ro.product.cpu.abilist=armeabi-v7a,armeabi +ro.product.cpu.abilist32=armeabi-v7a,armeabi +ro.product.cpu.abilist64= +ro.product.manufacturer=QUALCOMM +ro.product.locale=en-US +ro.wifi.channels= +ro.board.platform=msm8909 +#Set composition for USB +persist.sys.usb.config=diag,adb +#Set read only default composition for USB +ro.sys.usb.default.config=diag,adb +# ro.build.product is obsolete; use ro.product.device +ro.build.product=Nokia 8110 4G +# Do not try to parse description, fingerprint, or thumbprint +ro.build.description=Nokia 8110 4G-user 6.0.1 MMB29M 13.00.17.01 dev-keys +ro.build.fingerprint=Nokia/Nokia_8110_4G/Nokia_8110_4G:6.0.1/MMB29M/13.00.17.01:user/dev-keys +ro.build.characteristics=default +# end build properties +# TVER +ro.tver.sys=Y7N6R0R0TB00 +# +# from device/tct/argon/system.prop +# +# +# system.prop for msm8909_512 +# + +#rild.libpath=/system/lib/libreference-ril.so +rild.libpath=/system/vendor/lib/libril-qc-qmi-1.so +rild.libargs=-d /dev/smd0 +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= +ril.subscription.types=NV,RUIM +DEVICE_PROVISIONED=1 +# Start in cdma mode +ro.telephony.default_network=5 + +debug.sf.hw=1 +debug.egl.hw=1 +debug.composition.type=gpu +debug.hwc.dynThreshold=1 +debug.mdpcomp.logs=0 +dalvik.vm.heapsize=36m +dalvik.vm.zygotemaxfailedboots=5 +dev.pm.dyn_samplingrate=1 +persist.demo.hdmirotationlock=false + +#enable dirty rect +debug.sf.swaprect=1 +#enable app buffer composition +debug.sf.hwc.canUseABC=1 + +# system props for widevine +persist.gralloc.cp.level3=1 + +#ro.hdmi.enable=true +#tunnel.decode=true +#tunnel.audiovideo.decode=true +#lpa.decode=false +#lpa.use-stagefright=true +#persist.speaker.prot.enable=false + +# +# system props for the cne module +# +persist.cne.feature=4 + +# enable IMS by default +persist.ims.disabled=0 + +#system props for the MM modules +media.stagefright.enable-player=true +media.stagefright.enable-http=true +media.stagefright.enable-aac=true +media.stagefright.enable-qcp=true +media.stagefright.enable-fma2dp=true +media.stagefright.enable-scan=true +mmp.enable.3g2=true +media.aac_51_output_enabled=true +#codecs:(PARSER_)AAC AC3 AMR_NB AMR_WB ASF AVI DTS 3GP 3G2 MKV MP2PS MP2TS MP3 OGG QCP WAV FLAC +mm.enable.qcom_parser=262143 + +# +# system props for the data modules +# +ro.use_data_netmgrd=true +persist.data.netmgrd.qos.enable=true +persist.data.mode=concurrent + +#system props for time-services +persist.timed.enable=true + +# +# system prop for opengles version +# +# 196608 is decimal for 0x30000 to report version 3 +ro.opengles.version=196608 + +# System property for cabl +ro.qualcomm.cabl=2 + +# System property for QDCM +persist.tuning.qdcm=1 + +# System property for Screen Color +ro.qcom.screencolor=1 + +# +# System props for telephony +# System prop to turn on CdmaLTEPhone always +telephony.lteOnCdmaDevice=1 + +#Simulate sdcard on /data/media +# +persist.fuse_sdcard=true + +cameradaemon.SaveMemAtBoot=1 + +# System property for Camera +# System prop to allocate Reprocess buffer as "1" +# during Longshot usecase +persist.camera.longshot.stages=1 + +# +#snapdragon value add features +# +ro.qc.sdk.audio.ssr=false +##fluencetype can be "fluence" or "fluencepro" or "none" +ro.qc.sdk.audio.fluencetype=none +persist.audio.fluence.voicecall=true +persist.audio.fluence.voicerec=false +persist.audio.fluence.speaker=true +#Set for msm8909_512 +tunnel.audio.encode = false +ro.config.low_ram=true +#Buffer size in kbytes for compress offload playback +audio.offload.buffer.size.kb=64 +#Minimum duration for offload playback in secs +audio.offload.min.duration.secs=30 +#Enable offload audio video playback by default +av.offload.enable=true +#enable voice path for PCM VoIP by default +use.voice.path.for.pcm.voip=true +# +#System property for FM transmitter +# +ro.fm.transmitter=false +#enable dsp gapless mode by default +audio.offload.gapless.enabled=true + +#Audio voice concurrency related flags +voice.playback.conc.disabled=true +voice.record.conc.disabled=true +voice.voip.conc.disabled=true + +#Audio VoIP / playback record concurrency flags +rec.playback.conc.disabled=true + +#property to enable user to access Google WFD settings +persist.debug.wfd.enable=1 +#propery to enable VDS WFD solution +persist.hwc.enable_vds=1 + +#enable low_ram property on low-tier devices +ro.config.low_ram=true + +#disable atlas service on low-tier devices +config.disable_atlas=true + +#reduce background apps limit to 16 on low-tier devices +ro.sys.fw.bg_apps_limit=16 + +#property to configure value of tile size and maxtile for swe +swe.tile.width=128 +swe.tile.height=128 +swe.tile.maxtile=128 + +#property to enable image unload by audio HAL +sys.audio.init=false + +#HWUI properties +ro.hwui.text_large_cache_height=2048 + +#propery to change touch screen resolution +persist.sys.synaptics_dsx.qhd=false + +# enable sta proxy bydefault +persist.mm.sta.enable=1 +#Trim properties +ro.sys.fw.use_trim_settings=true +ro.sys.fw.empty_app_percent=50 +ro.sys.fw.trim_empty_percent=100 +ro.sys.fw.trim_cache_percent=100 +ro.sys.fw.trim_enable_memory=1073741824 + +# set cutoff voltage to 3200mV +ro.cutoff_voltage_mv=3200 + +#To check core ctl presence +ro.core_ctl_present=1 + +#Factory Reset Protection +ro.frp.pst=/dev/block/bootdevice/by-name/config + +#min/max cpu in core control +ro.core_ctl_min_cpu=2 +ro.core_ctl_max_cpu=4 + +# set max background services +ro.config.max_starting_bg=8 + +# property to enable Lean mode +ro.lean=true + +#Enable B service adj transition by default +ro.sys.fw.bservice_enable=true +ro.sys.fw.bservice_limit=5 +ro.sys.fw.bservice_age=5000 + +#save memory property for camera daemon +cameradaemon.SaveMemAtBoot=1 + + +#Added for Task5229893 20170921 lina.zhang@t2mobile.com - BEGIN +persist.two_digit_dial.enable=false +#Added for Task5229893 20170921 lina.zhang@t2mobile.com - END + +#Added for Bug 744 enabled b2g_telephony & qcril's log xiangyu.deng@t2mobile.com - BEGIN +persist.log.tag.ril=V +persist.radio.adb_log_on=1 +#Added for Bug 744 enabled b2g_telephony & qcril's log xiangyu.deng@t2mobile.com - END +#Modified start - wanfu.zhou@t2mobile.com- for bug487- 2017-12-28- use QTI's solution +persist.radio.snapshot_enable=1 +persist.radio.snapshot_timer=0 +#Modified start- wanfu.zhou@t2mobile.com- for bug487- 2017-12-28 + +# +# ADDITIONAL_BUILD_PROPERTIES +# +dalvik.vm.heapstartsize=5m +dalvik.vm.heapgrowthlimit=48m +dalvik.vm.heapsize=128m +dalvik.vm.heaptargetutilization=0.75 +dalvik.vm.heapminfree=512k +dalvik.vm.heapmaxfree=2m +ro.kaios.torch_node=/sys/class/leds/flashlight/brightness +ro.kaios.torch_enable_value=127 +persist.radio.multisim.config=dsds +ro.moz.ril.numclients=2 +def.t2m.audio.dump.enabled=0 +rw.t2m.ftm.audio=off +ro.moz.ril.0.network_types=gsm,wcdma,lte +ro.moz.ril.1.network_types=gsm +diag.reset_handler=true +keyguard.no_require_sim=true +ro.com.android.dataroaming=true +ro.config.ringtone=Ring_Synth_04.ogg +ro.config.notification_sound=pixiedust.ogg +ro.carrier=unknown +ro.config.alarm_alert=Alarm_Classic.ogg +ro.vendor.extension_library=libqti-perfd-client.so +persist.radio.apm_sim_not_pwdn=1 +persist.radio.sib16_support=1 +persist.radio.custom_ecc=1 +ro.frp.pst=/dev/block/bootdevice/by-name/config +ro.display.colorfill=1 +ro.moz.ril.emergency_by_default=true +ro.moz.fm.noAnalog=true +ro.moz.bluetooth.backend=bluetoothd +ro.moz.devinputjack=1 +persist.sys.dalvik.vm.lib.2=libart +dalvik.vm.isa.arm.variant=cortex-a7 +dalvik.vm.isa.arm.features=default +net.bt.name=Android +dalvik.vm.stack-trace-file=/data/anr/traces.txt +ro.assisted_gps_enabled=1 +persist.gps.qc_nlp_in_use=1 +persist.loc.nlp_name=com.qualcomm.location +ro.gps.agps_provider=1 +service.adb.root=1 diff --git a/rootdir/etc/recovery.fstab b/rootdir/etc/recovery.fstab new file mode 100644 index 0000000..b7388c4 --- /dev/null +++ b/rootdir/etc/recovery.fstab @@ -0,0 +1,43 @@ +# 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 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. + +#device mount point fstype [device2] [length=] + +/dev/block/bootdevice/by-name/system /system ext4 ro,barrier=1 wait +/dev/block/bootdevice/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered wait,check +/dev/block/bootdevice/by-name/persist /persist ext4 noatime,nosuid,nodev,barrier=1,data=ordered wait,check +/dev/block/bootdevice/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc wait,check,length=-16384 +/dev/block/mmcblk1p1 /sdcard vfat nosuid,nodev wait +/dev/block/bootdevice/by-name/boot /boot emmc defaults defaults +/dev/block/bootdevice/by-name/modemst1 /modemst1 emmc defaults defaults +/dev/block/bootdevice/by-name/modemst2 /modemst2 emmc defaults defaults +/dev/block/bootdevice/by-name/keystore /keystore emmc defaults defaults +/dev/block/bootdevice/by-name/devinfo /devinfo emmc defaults defaults +/dev/block/bootdevice/by-name/fsg /fsg emmc defaults defaults +/dev/block/bootdevice/by-name/recovery /recovery emmc defaults defaults +/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults +#/dev/block/bootdevice/by-name/custpack /custpack ext4 ro,barrier=1 wait diff --git a/rootdir/file_contexts b/rootdir/file_contexts new file mode 100644 index 0000000..75ea021 --- /dev/null +++ b/rootdir/file_contexts @@ -0,0 +1,817 @@ +#line 1 "external/sepolicy/file_contexts" +########################################### +# Root +/ u:object_r:rootfs:s0 + +# Data files +/adb_keys u:object_r:adb_keys_file:s0 +/default\.prop u:object_r:rootfs:s0 +/fstab\..* u:object_r:rootfs:s0 +/init\..* u:object_r:rootfs:s0 +/res(/.*)? u:object_r:rootfs:s0 +/ueventd\..* u:object_r:rootfs:s0 + +# Executables +/charger u:object_r:rootfs:s0 +/init u:object_r:init_exec:s0 +/sbin(/.*)? u:object_r:rootfs:s0 + +# Empty directories +/lost\+found u:object_r:rootfs:s0 +/proc u:object_r:rootfs:s0 + +# SELinux policy files +/file_contexts u:object_r:rootfs:s0 +/property_contexts u:object_r:rootfs:s0 +/seapp_contexts u:object_r:rootfs:s0 +/sepolicy u:object_r:rootfs:s0 + +########################## +# Devices +# +/dev(/.*)? u:object_r:device:s0 +/dev/akm8973.* u:object_r:sensors_device:s0 +/dev/accelerometer u:object_r:sensors_device:s0 +/dev/adf[0-9]* u:object_r:graphics_device:s0 +/dev/adf-interface[0-9]*\.[0-9]* u:object_r:graphics_device:s0 +/dev/adf-overlay-engine[0-9]*\.[0-9]* u:object_r:graphics_device:s0 +/dev/alarm u:object_r:alarm_device:s0 +/dev/android_adb.* u:object_r:adb_device:s0 +/dev/ashmem u:object_r:ashmem_device:s0 +/dev/audio.* u:object_r:audio_device:s0 +/dev/binder u:object_r:binder_device:s0 +/dev/block(/.*)? u:object_r:block_device:s0 +/dev/block/dm-[0-9]+ u:object_r:dm_device:s0 +/dev/block/loop[0-9]* u:object_r:loop_device:s0 +/dev/block/vold/.+ u:object_r:vold_device:s0 +/dev/block/ram[0-9]* u:object_r:ram_device:s0 +/dev/bus/usb(.*)? u:object_r:usb_device:s0 +/dev/cam u:object_r:camera_device:s0 +/dev/console u:object_r:console_device:s0 +/dev/cpuctl(/.*)? u:object_r:cpuctl_device:s0 +/dev/device-mapper u:object_r:dm_device:s0 +/dev/eac u:object_r:audio_device:s0 +/dev/fscklogs(/.*)? u:object_r:fscklogs:s0 +/dev/full u:object_r:full_device:s0 +/dev/fuse u:object_r:fuse_device:s0 +/dev/graphics(/.*)? u:object_r:graphics_device:s0 +/dev/hw_random u:object_r:hw_random_device:s0 +/dev/input(/.*) u:object_r:input_device:s0 +/dev/iio:device[0-9]+ u:object_r:iio_device:s0 +/dev/ion u:object_r:ion_device:s0 +/dev/kmem u:object_r:kmem_device:s0 +/dev/log(/.*)? u:object_r:log_device:s0 +/dev/mem u:object_r:kmem_device:s0 +/dev/modem.* u:object_r:radio_device:s0 +/dev/mpu u:object_r:gps_device:s0 +/dev/mpuirq u:object_r:gps_device:s0 +/dev/mtd(/.*)? u:object_r:mtd_device:s0 +/dev/mtp_usb u:object_r:mtp_device:s0 +/dev/pmsg0 u:object_r:pmsg_device:s0 +/dev/pn544 u:object_r:nfc_device:s0 +/dev/ppp u:object_r:ppp_device:s0 +/dev/ptmx u:object_r:ptmx_device:s0 +/dev/pvrsrvkm u:object_r:gpu_device:s0 +/dev/kmsg u:object_r:kmsg_device:s0 +/dev/null u:object_r:null_device:s0 +/dev/nvhdcp1 u:object_r:video_device:s0 +/dev/random u:object_r:random_device:s0 +/dev/rpmsg-omx[0-9] u:object_r:rpmsg_device:s0 +/dev/rproc_user u:object_r:rpmsg_device:s0 +/dev/rtc[0-9] u:object_r:rtc_device:s0 +/dev/snd(/.*)? u:object_r:audio_device:s0 +/dev/socket(/.*)? u:object_r:socket_device:s0 +/dev/socket/adbd u:object_r:adbd_socket:s0 +/dev/socket/sap_uim_socket[0-9] u:object_r:sap_uim_socket:s0 +/dev/socket/cryptd u:object_r:vold_socket:s0 +/dev/socket/dnsproxyd u:object_r:dnsproxyd_socket:s0 +/dev/socket/dumpstate u:object_r:dumpstate_socket:s0 +/dev/socket/fwmarkd u:object_r:fwmarkd_socket:s0 +/dev/socket/gps u:object_r:gps_socket:s0 +/dev/socket/installd u:object_r:installd_socket:s0 +/dev/socket/lmkd u:object_r:lmkd_socket:s0 +/dev/socket/logd u:object_r:logd_socket:s0 +/dev/socket/logdr u:object_r:logdr_socket:s0 +/dev/socket/logdw u:object_r:logdw_socket:s0 +/dev/socket/mdns u:object_r:mdns_socket:s0 +/dev/socket/mdnsd u:object_r:mdnsd_socket:s0 +/dev/socket/mtpd u:object_r:mtpd_socket:s0 +/dev/socket/netd u:object_r:netd_socket:s0 +/dev/socket/property_service u:object_r:property_socket:s0 +/dev/socket/racoon u:object_r:racoon_socket:s0 +/dev/socket/rild u:object_r:rild_socket:s0 +/dev/socket/rild-debug u:object_r:rild_debug_socket:s0 +/dev/socket/vold u:object_r:vold_socket:s0 +/dev/socket/wpa_eth[0-9] u:object_r:wpa_socket:s0 +/dev/socket/wpa_wlan[0-9] u:object_r:wpa_socket:s0 +/dev/socket/zygote u:object_r:zygote_socket:s0 +/dev/socket/zygote_secondary u:object_r:zygote_socket:s0 +/dev/spdif_out.* u:object_r:audio_device:s0 +/dev/tegra.* u:object_r:video_device:s0 +/dev/tf_driver u:object_r:tee_device:s0 +/dev/tty u:object_r:owntty_device:s0 +/dev/tty[0-9]* u:object_r:tty_device:s0 +/dev/ttyS[0-9]* u:object_r:serial_device:s0 +/dev/tun u:object_r:tun_device:s0 +/dev/uhid u:object_r:uhid_device:s0 +/dev/uinput u:object_r:uhid_device:s0 +/dev/uio[0-9]* u:object_r:uio_device:s0 +/dev/urandom u:object_r:urandom_device:s0 +/dev/usb_accessory u:object_r:usbaccessory_device:s0 +/dev/vcs[0-9a-z]* u:object_r:vcs_device:s0 +/dev/video[0-9]* u:object_r:video_device:s0 +/dev/watchdog u:object_r:watchdog_device:s0 +/dev/xt_qtaguid u:object_r:qtaguid_device:s0 +/dev/zero u:object_r:zero_device:s0 +/dev/__kmsg__ u:object_r:klog_device:s0 +/dev/__properties__ u:object_r:properties_device:s0 +############################# +# System files +# +/system(/.*)? u:object_r:system_file:s0 +/system/bin/e2fsck -- u:object_r:fsck_exec:s0 +/system/bin/fsck\.f2fs -- u:object_r:fsck_exec:s0 +/system/bin/fsck_msdos -- u:object_r:fsck_exec:s0 +/system/bin/toolbox -- u:object_r:toolbox_exec:s0 +/system/bin/toybox -- u:object_r:toolbox_exec:s0 +/system/bin/logcat -- u:object_r:logcat_exec:s0 +/system/bin/sh -- u:object_r:shell_exec:s0 +/system/bin/run-as -- u:object_r:runas_exec:s0 +/system/bin/bootanimation u:object_r:bootanim_exec:s0 +/system/bin/app_process32 u:object_r:zygote_exec:s0 +/system/bin/app_process64 u:object_r:zygote_exec:s0 +/system/bin/servicemanager u:object_r:servicemanager_exec:s0 +/system/bin/surfaceflinger u:object_r:surfaceflinger_exec:s0 +/system/bin/drmserver u:object_r:drmserver_exec:s0 +/system/bin/dumpstate u:object_r:dumpstate_exec:s0 +/system/bin/vold u:object_r:vold_exec:s0 +/system/bin/netd u:object_r:netd_exec:s0 +/system/bin/rild u:object_r:rild_exec:s0 +/system/bin/mediaserver u:object_r:mediaserver_exec:s0 +/system/bin/mdnsd u:object_r:mdnsd_exec:s0 +/system/bin/installd u:object_r:installd_exec:s0 +/system/bin/keystore u:object_r:keystore_exec:s0 +/system/bin/fingerprintd u:object_r:fingerprintd_exec:s0 +/system/bin/gatekeeperd u:object_r:gatekeeperd_exec:s0 +/system/bin/debuggerd u:object_r:debuggerd_exec:s0 +/system/bin/debuggerd64 u:object_r:debuggerd_exec:s0 +/system/bin/wpa_supplicant u:object_r:wpa_exec:s0 +/system/bin/sdcard u:object_r:sdcardd_exec:s0 +/system/bin/dhcpcd u:object_r:dhcp_exec:s0 +/system/bin/mtpd u:object_r:mtp_exec:s0 +/system/bin/pppd u:object_r:ppp_exec:s0 +/system/bin/tf_daemon u:object_r:tee_exec:s0 +/system/bin/racoon u:object_r:racoon_exec:s0 +/system/xbin/su u:object_r:su_exec:s0 +/system/xbin/procrank u:object_r:procrank_exec:s0 +/system/xbin/perfprofd u:object_r:perfprofd_exec:s0 +/system/xbin/simpleperf u:object_r:system_file:s0 +/system/vendor/bin/gpsd u:object_r:gpsd_exec:s0 +/system/bin/dnsmasq u:object_r:dnsmasq_exec:s0 +/system/bin/hostapd u:object_r:hostapd_exec:s0 +/system/bin/clatd u:object_r:clatd_exec:s0 +/system/bin/lmkd u:object_r:lmkd_exec:s0 +/system/bin/inputflinger u:object_r:inputflinger_exec:s0 +/system/bin/logd u:object_r:logd_exec:s0 +/system/bin/uncrypt u:object_r:uncrypt_exec:s0 +/system/bin/logwrapper u:object_r:system_file:s0 +/system/bin/vdc u:object_r:vdc_exec:s0 +/system/bin/install-recovery.sh u:object_r:install_recovery_exec:s0 +/system/bin/dex2oat u:object_r:dex2oat_exec:s0 +# patchoat executable has (essentially) the same requirements as dex2oat. +/system/bin/patchoat u:object_r:dex2oat_exec:s0 +/system/bin/sgdisk u:object_r:sgdisk_exec:s0 +/system/bin/blkid u:object_r:blkid_exec:s0 +/system/bin/tzdatacheck u:object_r:tzdatacheck_exec:s0 + +############################# +# Vendor files +# +/vendor(/.*)? u:object_r:system_file:s0 +/vendor/bin/gpsd u:object_r:gpsd_exec:s0 + +############################# +# OEM and ODM files +# +/odm(/.*)? u:object_r:system_file:s0 +/oem(/.*)? u:object_r:oemfs:s0 + + +############################# +# Data files +# +# NOTE: When modifying existing label rules, changes may also need to +# propagate to the "Expanded data files" section. +# +/data(/.*)? u:object_r:system_data_file:s0 +/data/.layout_version u:object_r:install_data_file:s0 +/data/unencrypted(/.*)? u:object_r:unencrypted_data_file:s0 +/data/backup(/.*)? u:object_r:backup_data_file:s0 +/data/secure/backup(/.*)? u:object_r:backup_data_file:s0 +/data/security(/.*)? u:object_r:security_file:s0 +/data/system/ndebugsocket u:object_r:system_ndebug_socket:s0 +/data/drm(/.*)? u:object_r:drm_data_file:s0 +/data/gps(/.*)? u:object_r:gps_data_file:s0 +/data/resource-cache(/.*)? u:object_r:resourcecache_data_file:s0 +/data/dalvik-cache(/.*)? u:object_r:dalvikcache_data_file:s0 +/data/dalvik-cache/profiles(/.*)? u:object_r:dalvikcache_profiles_data_file:s0 +/data/adb(/.*)? u:object_r:adb_data_file:s0 +/data/anr(/.*)? u:object_r:anr_data_file:s0 +/data/app(/.*)? u:object_r:apk_data_file:s0 +/data/app/[^/]+/oat(/.*)? u:object_r:dalvikcache_data_file:s0 +/data/app/vmdl[^/]+\.tmp(/.*)? u:object_r:apk_tmp_file:s0 +/data/app/vmdl[^/]+\.tmp/oat(/.*)? u:object_r:dalvikcache_data_file:s0 +/data/app-private(/.*)? u:object_r:apk_private_data_file:s0 +/data/app-private/vmdl.*\.tmp(/.*)? u:object_r:apk_private_tmp_file:s0 +/data/tombstones(/.*)? u:object_r:tombstone_data_file:s0 +/data/local/tmp(/.*)? u:object_r:shell_data_file:s0 +/data/media(/.*)? u:object_r:media_rw_data_file:s0 +/data/mediadrm(/.*)? u:object_r:media_data_file:s0 +/data/property(/.*)? u:object_r:property_data_file:s0 + +# Misc data +/data/misc/adb(/.*)? u:object_r:adb_keys_file:s0 +/data/misc/audio(/.*)? u:object_r:audio_data_file:s0 +/data/misc/bluetooth(/.*)? u:object_r:bluetooth_data_file:s0 +/data/misc/bluedroid(/.*)? u:object_r:bluetooth_data_file:s0 +/data/misc/bluedroid/\.a2dp_ctrl u:object_r:bluetooth_socket:s0 +/data/misc/bluedroid/\.a2dp_data u:object_r:bluetooth_socket:s0 +/data/misc/camera(/.*)? u:object_r:camera_data_file:s0 +/data/misc/dhcp(/.*)? u:object_r:dhcp_data_file:s0 +/data/misc/gatekeeper(/.*)? u:object_r:gatekeeper_data_file:s0 +/data/misc/keychain(/.*)? u:object_r:keychain_data_file:s0 +/data/misc/keystore(/.*)? u:object_r:keystore_data_file:s0 +/data/misc/logd(/.*)? u:object_r:misc_logd_file:s0 +/data/misc/media(/.*)? u:object_r:media_data_file:s0 +/data/misc/net(/.*)? u:object_r:net_data_file:s0 +/data/misc/shared_relro(/.*)? u:object_r:shared_relro_file:s0 +/data/misc/sms(/.*)? u:object_r:radio_data_file:s0 +/data/misc/systemkeys(/.*)? u:object_r:systemkeys_data_file:s0 +/data/misc/user(/.*)? u:object_r:misc_user_data_file:s0 +/data/misc/vpn(/.*)? u:object_r:vpn_data_file:s0 +/data/misc/wifi(/.*)? u:object_r:wifi_data_file:s0 +/data/misc/wifi/sockets(/.*)? u:object_r:wpa_socket:s0 +/data/misc/wifi/sockets/wpa_ctrl.* u:object_r:system_wpa_socket:s0 +/data/misc/wifi/hostapd(/.*)? u:object_r:wpa_socket:s0 +/data/misc/zoneinfo(/.*)? u:object_r:zoneinfo_data_file:s0 +/data/misc/vold(/.*)? u:object_r:vold_data_file:s0 +/data/misc/perfprofd(/.*)? u:object_r:perfprofd_data_file:s0 +/data/system/heapdump(/.*)? u:object_r:heapdump_data_file:s0 + +# Fingerprint data +/data/system/users/[0-9]+/fpdata(/.*)? u:object_r:fingerprintd_data_file:s0 + +# Bootchart data +/data/bootchart(/.*)? u:object_r:bootchart_data_file:s0 + +############################# +# Expanded data files +# +/mnt/expand(/.*)? u:object_r:mnt_expand_file:s0 +/mnt/expand/[^/]+(/.*)? u:object_r:system_data_file:s0 +/mnt/expand/[^/]+/app(/.*)? u:object_r:apk_data_file:s0 +/mnt/expand/[^/]+/app/[^/]+/oat(/.*)? u:object_r:dalvikcache_data_file:s0 +/mnt/expand/[^/]+/app/vmdl[^/]+\.tmp(/.*)? u:object_r:apk_tmp_file:s0 +/mnt/expand/[^/]+/app/vmdl[^/]+\.tmp/oat(/.*)? u:object_r:dalvikcache_data_file:s0 +/mnt/expand/[^/]+/local/tmp(/.*)? u:object_r:shell_data_file:s0 +/mnt/expand/[^/]+/media(/.*)? u:object_r:media_rw_data_file:s0 +/mnt/expand/[^/]+/misc/vold(/.*)? u:object_r:vold_data_file:s0 + +# coredump directory for userdebug/eng devices +/cores(/.*)? u:object_r:coredump_file:s0 + +# Wallpaper file for other users +/data/system/users/[0-9]+/wallpaper u:object_r:wallpaper_file:s0 +############################# +# efs files +# +/efs(/.*)? u:object_r:efs_file:s0 +############################# +# Cache files +# +/cache(/.*)? u:object_r:cache_file:s0 +/cache/.*\.data u:object_r:cache_backup_file:s0 +/cache/.*\.restore u:object_r:cache_backup_file:s0 +# LocalTransport (backup) uses this directory +/cache/backup(/.*)? u:object_r:cache_backup_file:s0 +############################# +# sysfs files +# +/sys/devices/platform/nfc-power/nfc_power -- u:object_r:sysfs_nfc_power_writable:s0 +/sys/devices/system/cpu(/.*)? u:object_r:sysfs_devices_system_cpu:s0 +/sys/power/wake_lock -- u:object_r:sysfs_wake_lock:s0 +/sys/power/wake_unlock -- u:object_r:sysfs_wake_lock:s0 +/sys/kernel/uevent_helper -- u:object_r:usermodehelper:s0 +/sys/module/lowmemorykiller(/.*)? -- u:object_r:sysfs_lowmemorykiller:s0 + +############################# +# asec containers +/mnt/asec(/.*)? u:object_r:asec_apk_file:s0 +/mnt/asec/[^/]+/[^/]+\.zip u:object_r:asec_public_file:s0 +/mnt/asec/[^/]+/lib(/.*)? u:object_r:asec_public_file:s0 +/data/app-asec(/.*)? u:object_r:asec_image_file:s0 + +############################# +# external storage +/mnt/media_rw(/.*)? u:object_r:mnt_media_rw_file:s0 +/mnt/user(/.*)? u:object_r:mnt_user_file:s0 +/mnt/runtime(/.*)? u:object_r:storage_file:s0 +/storage(/.*)? u:object_r:storage_file:s0 +#line 1 "device/qcom/sepolicy/common/file_contexts" +################################### +# Dev nodes +# +/dev/adsprpc-smd u:object_r:qdsp_device:s0 +/dev/cpu_dma_latency u:object_r:device_latency:s0 +/dev/diag u:object_r:diag_device:s0 +/dev/hsicctl.* u:object_r:hsic_device:s0 +/dev/kgsl-3d0 u:object_r:gpu_device:s0 +/dev/mhi_pipe_.* u:object_r:mhi_device:s0 +/dev/bhi u:object_r:bhi_device:s0 +/dev/msm_.* u:object_r:audio_device:s0 +/dev/usf1 u:object_r:usf_device:s0 +/dev/msm_dsps u:object_r:sensors_device:s0 +/dev/msm_thermal_query u:object_r:thermal_device:s0 +/dev/nfc-nci u:object_r:nfc_device:s0 +/dev/nq-nci u:object_r:nfc_device:s0 +/dev/qseecom u:object_r:tee_device:s0 +/dev/seemplog u:object_r:seemplog_device:s0 +/dev/radio0 u:object_r:fm_radio_device:s0 +/dev/rtc0 u:object_r:rtc_device:s0 +/dev/sensors u:object_r:sensors_device:s0 +/dev/smd.* u:object_r:smd_device:s0 +/dev/smem_log u:object_r:smem_log_device:s0 +/dev/ttyHSL0 u:object_r:console_device:s0 +/dev/ttyHS[0-9]* u:object_r:serial_device:s0 +/dev/ttyGS0 u:object_r:gadget_serial_device:s0 +/dev/usb_ext_chg u:object_r:hvdcp_device:s0 +/dev/media([0-9])+ u:object_r:camera_device:s0 +/dev/jpeg[0-9]* u:object_r:camera_device:s0 +/dev/v4l-subdev.* u:object_r:camera_device:s0 +/dev/vm_bms u:object_r:vm_bms_device:s0 +/dev/battery_data u:object_r:battery_data_device:s0 +/dev/block/mmcblk1 u:object_r:sd_device:s0 +/dev/block/mmcblk1p1 u:object_r:sd_device:s0 +/dev/ccid_bridge u:object_r:usb_uicc_device:s0 +/dev/subsys_.* u:object_r:ssr_device:s0 +/dev/ramdump_.* u:object_r:ramdump_device:s0 +/dev/esoc.* u:object_r:esoc_device:s0 +/dev/ks_hsic_bridge u:object_r:ksbridgehsic_device:s0 +/dev/efs_hsic_bridge u:object_r:efsbridgehsic_device:s0 +/dev/ipa u:object_r:ipa_dev:s0 +/dev/wwan_ioctl u:object_r:ipa_dev:s0 +/dev/ipaNatTable u:object_r:ipa_dev:s0 +/dev/rmnet_ctrl.* u:object_r:rmnet_device:s0 +/dev/dpl_ctrl u:object_r:rmnet_device:s0 +/dev/wcnss_ctrl u:object_r:wcnss_device:s0 +/dev/wcnss_wlan u:object_r:wcnss_device:s0 +/dev/pta u:object_r:pta_device:s0 +/dev/mdss_rotator u:object_r:graphics_device:s0 +/dev/hbtp_input u:object_r:hbtp_device:s0 +/dev/hbtp_vm u:object_r:hbtp_device:s0 +/dev/jdi-bu21150 u:object_r:bu21150_device:s0 +/dev/voice_svc u:object_r:voice_device:s0 +/dev/avtimer u:object_r:avtimer_device:s0 +/dev/coresight-stm u:object_r:qdss_device:s0 +/dev/coresight-tmc-etf u:object_r:qdss_device:s0 +/dev/coresight-tmc-etr u:object_r:qdss_device:s0 +/dev/coresight-tmc-etr-stream u:object_r:qdss_device:s0 +/dev/system_health_monitor u:object_r:system_health_monitor_device:s0 +/dev/qce u:object_r:qce_device:s0 +/dev/msm-rng u:object_r:rng_device:s0 +/dev/qbt1000 u:object_r:qbt1000_device:s0 +/dev/at_.* u:object_r:at_device:s0 +/dev/sg.* u:object_r:sg_device:s0 + +################################### +# Dev block nodes +# +/dev/block/bootdevice/by-name/modemst1 u:object_r:modem_efs_partition_device:s0 +/dev/block/bootdevice/by-name/modemst2 u:object_r:modem_efs_partition_device:s0 +/dev/block/bootdevice/by-name/fsg u:object_r:modem_efs_partition_device:s0 +/dev/block/bootdevice/by-name/fsc u:object_r:modem_efs_partition_device:s0 +/dev/block/bootdevice/by-name/ssd u:object_r:ssd_device:s0 +/dev/block/bootdevice/by-name/misc u:object_r:misc_partition:s0 +#/dev/block/mmcblk0p13 u:object_r:bootselect_device:s0 +/dev/block/zram0 u:object_r:swap_block_device:s0 +/dev/block/bootdevice/by-name/dip u:object_r:dip_device:s0 +/dev/block/bootdevice/by-name/mdtp u:object_r:mdtp_device:s0 + +#add begin by wang xiaoman for retrofit mechanism +/dev/block/bootdevice/by-name/tunning u:object_r:modem_efs_partition_device:s0 +#add end +################################### +# Dev socket nodes +# +/dev/socket/qmux_audio(/.*)? u:object_r:qmuxd_socket:s0 +/dev/socket/qmux_bluetooth(/.*)? u:object_r:qmuxd_socket:s0 +/dev/socket/qmux_gps(/.*)? u:object_r:qmuxd_socket:s0 +/dev/socket/qmux_radio(/.*)? u:object_r:qmuxd_socket:s0 +/dev/socket/qmux_nfc(/.*)? u:object_r:qmuxd_socket:s0 +/dev/socket/netmgr(/.*)? u:object_r:netmgrd_socket:s0 +/dev/socket/sensor_ctl_socket u:object_r:sensors_socket:s0 +/dev/socket/cnd u:object_r:cnd_socket:s0 +/dev/socket/nims u:object_r:cnd_socket:s0 +/dev/socket/thermal-send-client u:object_r:thermal_socket:s0 +/dev/socket/thermal-recv-client u:object_r:thermal_socket:s0 +/dev/socket/thermal-recv-passive-client u:object_r:thermal_socket:s0 +/dev/socket/ims_qmid u:object_r:ims_socket:s0 +/dev/socket/ims_datad u:object_r:ims_socket:s0 +/dev/socket/ims_rtpd u:object_r:ims_socket:s0 +/dev/socket/perfd(/.*)? u:object_r:mpctl_socket:s0 +/dev/socket/qlogd u:object_r:qlogd_socket:s0 +/dev/socket/ipacm_log_file u:object_r:ipacm_socket:s0 +/dev/socket/dpmd u:object_r:dpmd_socket:s0 +/dev/socket/dpmwrapper u:object_r:dpmwrapper_socket:s0 +/dev/socket/pps u:object_r:pps_socket:s0 +/dev/socket/rild2 u:object_r:rild_socket:s0 +/dev/socket/rild2-debug u:object_r:rild_debug_socket:s0 +/dev/socket/rild-debug2 u:object_r:rild_debug_socket:s0 +/dev/socket/rild3 u:object_r:rild_socket:s0 +/dev/socket/rild3-debug u:object_r:rild_debug_socket:s0 +/dev/socket/rild-debug3 u:object_r:rild_debug_socket:s0 +/dev/socket/msm_irqbalance u:object_r:msm_irqbalance_socket:s0 +/dev/socket/seempdw u:object_r:seempdw_socket:s0 + +################################### +# System files +# +/system/bin/ATFWD-daemon u:object_r:atfwd_exec:s0 +/system/bin/PktRspTest u:object_r:diag_exec:s0 +/system/bin/audiod u:object_r:audiod_exec:s0 +/system/bin/charger_monitor u:object_r:charger_monitor_exec:s0 +/system/bin/hvdcp_opti u:object_r:hvdcp_exec:s0 +/system/bin/cnd u:object_r:cnd_exec:s0 +/system/bin/diag_callback_client u:object_r:diag_exec:s0 +/system/bin/diag_dci_sample u:object_r:diag_exec:s0 +/system/bin/diag_klog u:object_r:diag_exec:s0 +/system/bin/diag_mdlog u:object_r:qlogd_exec:s0 +/system/bin/diag_qshrink4_daemon u:object_r:diag_exec:s0 +/system/bin/diag_socket_log u:object_r:diag_exec:s0 +/system/bin/diag_uart_log u:object_r:diag_exec:s0 +/system/bin/diag_buffering_test u:object_r:diag_exec:s0 +/system/bin/drmdiagapp u:object_r:diag_exec:s0 +/system/bin/irsc_util u:object_r:irsc_util_exec:s0 +/system/vendor/bin/mm-pp-daemon u:object_r:mm-pp-daemon_exec:s0 +/system/vendor/bin/mm-pp-dpps u:object_r:mm-pp-daemon_exec:s0 +/system/bin/mm-pp-daemon u:object_r:mm-pp-daemon_exec:s0 +/system/bin/mm-pp-dpps u:object_r:mm-pp-daemon_exec:s0 +/system/bin/mmi u:object_r:mmi_exec:s0 +/system/bin/mpdecision u:object_r:mpdecision_exec:s0 +/system/vendor/bin/perfd u:object_r:perfd_exec:s0 +/system/bin/iop u:object_r:dumpstate_exec:s0 +/system/bin/msm_irqbalance u:object_r:msm_irqbalanced_exec:s0 +/system/bin/imsdatadaemon u:object_r:ims_exec:s0 +/system/bin/imsqmidaemon u:object_r:ims_exec:s0 +/system/bin/ims_rtp_daemon u:object_r:ims_exec:s0 +/system/bin/imscmservice u:object_r:imscm_exec:s0 +/system/bin/netmgrd u:object_r:netmgrd_exec:s0 +/system/bin/qmuxd u:object_r:qmuxd_exec:s0 +/system/bin/port-bridge u:object_r:port-bridge_exec:s0 +/system/bin/sensors.qcom u:object_r:sensors_exec:s0 +/system/bin/sns.* u:object_r:sensors_test_exec:s0 +/system/bin/test_diag u:object_r:diag_exec:s0 +/system/vendor/bin/thermal-engine u:object_r:thermal-engine_exec:s0 +/system/bin/vm_bms u:object_r:vm_bms_exec:s0 +/system/bin/mm-qcamera-daemon u:object_r:mm-qcamerad_exec:s0 +/system/bin/qfp-daemon u:object_r:qfp-daemon_exec:s0 +/system/rfs.* u:object_r:rfs_system_file:s0 +/system/bin/time_daemon u:object_r:time_daemon_exec:s0 +/system/bin/rmt_storage u:object_r:rmt_storage_exec:s0 +/system/bin/rfs_access u:object_r:rfs_access_exec:s0 +/system/bin/tftp_server u:object_r:rfs_access_exec:s0 +/system/bin/hvdcp u:object_r:hvdcp_exec:s0 +/system/bin/qseecomd u:object_r:tee_exec:s0 +/system/bin/hostapd_cli u:object_r:hostapd_exec:s0 +/system/bin/adsprpcd u:object_r:adsprpcd_exec:s0 +/system/bin/wpa_cli u:object_r:wcnss_service_exec:s0 +/system/bin/cnss-daemon u:object_r:wcnss_service_exec:s0 +/system/bin/mdm_helper u:object_r:mdm_helper_exec:s0 +/system/bin/mdm_helper_proxy u:object_r:mdm_helper_exec:s0 +/system/bin/ks u:object_r:mdm_helper_exec:s0 +/system/bin/pm-service u:object_r:per_mgr_exec:s0 +/system/bin/pm-proxy u:object_r:per_mgr_exec:s0 +/system/vendor/bin/pd-mapper u:object_r:pd_mapper_exec:s0 +/system/vendor/bin/pd-api-test u:object_r:pd_mapper_exec:s0 +/system/bin/usb_uicc_client u:object_r:usb_uicc_daemon_exec:s0 +/system/bin/qcom-system-daemon u:object_r:qcomsysd_exec:s0 +/system/bin/poweroffhandler u:object_r:poweroffhandler_exec:s0 +/system/xbin/qlogd u:object_r:qlogd_exec:s0 +/system/bin/ipacm u:object_r:ipacm_exec:s0 +/system/bin/ipacm-diag u:object_r:ipacm-diag_exec:s0 +/system/bin/dpmd u:object_r:dpmd_exec:s0 +/system/bin/ssr_setup u:object_r:ssr_setup_exec:s0 +/system/bin/subsystem_ramdump u:object_r:subsystem_ramdump_exec:s0 +/system/bin/ssr_diag u:object_r:ssr_diag_exec:s0 +/system/bin/loc_launcher u:object_r:location_exec:s0 +/system/bin/quipc_main u:object_r:location_exec:s0 +/system/bin/ipepb u:object_r:location_exec:s0 +/system/bin/quipc_igsn u:object_r:location_exec:s0 +/system/bin/lowi-server u:object_r:location_exec:s0 +/system/bin/location-mq u:object_r:location_exec:s0 +/system/bin/xtwifi-inet-agent u:object_r:location_exec:s0 +/system/bin/xtwifi-client u:object_r:location_exec:s0 +/system/bin/garden_app u:object_r:location_exec:s0 +/system/bin/gpsone_daemon u:object_r:location_exec:s0 +/system/vendor/bin/slim_daemon u:object_r:location_exec:s0 +/system/bin/energy-awareness u:object_r:energyawareness_exec:s0 +/system/vendor/bin/fidodaemon u:object_r:fidodaemon_exec:s0 +/system/bin/secotad u:object_r:secotad_exec:s0 +/system/vendor/bin/qseeproxydaemon u:object_r:qseeproxy_exec:s0 +/system/bin/dts_configurator u:object_r:dtsconfigurator_exec:s0 +/system/bin/dts_eagle_service u:object_r:dtseagleservice_exec:s0 +/system/vendor/bin/qti u:object_r:qti_exec:s0 +/system/bin/wcnss_service u:object_r:wcnss_service_exec:s0 +/system/vendor/bin/hbtp_daemon u:object_r:hbtp_exec:s0 +/system/vendor/bin/touch_fusion u:object_r:touchfusion_exec:s0 +/system/vendor/bin/seemp_healthd u:object_r:seemp_health_daemon_exec:s0 +/system/bin/seempd u:object_r:seempd_exec:s0 +/system/bin/sapd u:object_r:sapd_exec:s0 +/system/bin/btnvtool u:object_r:btnvtool_exec:s0 +/system/bin/btsnoop u:object_r:btsnoop_exec:s0 +/system/bin/dun-server u:object_r:dun-server_exec:s0 +/system/bin/wfdservice u:object_r:wfdservice_exec:s0 +/system/bin/wcnss_filter u:object_r:wcnss_filter_exec:s0 +/system/bin/usf_epos u:object_r:usf_exec:s0 +/system/bin/usf_gesture u:object_r:usf_exec:s0 +/system/bin/usf_hovering u:object_r:usf_exec:s0 +/system/bin/usf_p2p u:object_r:usf_exec:s0 +/system/bin/usf_proximity u:object_r:usf_exec:s0 +/system/bin/usf_sync_gesture u:object_r:usf_exec:s0 +/system/bin/usf_sw_calib u:object_r:usf_exec:s0 +/system/bin/usf_pairing u:object_r:usf_exec:s0 +/system/bin/usf_tester u:object_r:usf_exec:s0 +/system/vendor/bin/RIDLClient.exe u:object_r:RIDL_exec:s0 +/system/bin/tbaseLoader u:object_r:tbaseLoader_exec:s0 +/system/bin/mcStarter u:object_r:mcStarter_exec:s0 +/system/bin/fstman u:object_r:fstman_exec:s0 +/system/vendor/bin/mdtpd u:object_r:mdtpdaemon_exec:s0 +######### Removing b2g,gonk&fakeapps as request by kai team moved to external/sepolicy ###### +#/system/bin/b2g.sh u:object_r:b2g_exec:s0 +#/system/b2g/b2g u:object_r:b2g_exec:s0 +/system/bin/busybox u:object_r:toolbox_exec:s0 +#/system/bin/gonksched u:object_r:gonksched_exec:s0 +#/system/bin/fakeappops u:object_r:fakeappops_exec:s0 + +################################### +# sysfs files +# +/sys/class/graphics/fb0/mdp/caps u:object_r:sysfs_graphics:s0 +/sys/class/thermal(/.*)? u:object_r:sysfs_thermal:s0 +/sys/devices/[^/]+bcl[^/]+(/.*)? u:object_r:sysfs_thermal:s0 +/sys/devices/f9200000.*/power_supply/usb(/.*)? u:object_r:sysfs_usb_supply:s0 +/sys/devices/msm_dwc3/power_supply/usb(/.*)? u:object_r:sysfs_usb_supply:s0 +/sys/devices/msm_otg/power_supply/usb(/.*)? u:object_r:sysfs_usb_supply:s0 +/sys/devices/platform/battery_current_limit u:object_r:sysfs_thermal:s0 +/sys/devices/qpnp-charger.*/power_supply/battery(/.*)? u:object_r:sysfs_battery_supply:s0 +/sys/devices/system/cpu/cpu0/rq-stats/* u:object_r:sysfs_rqstats:s0 +/sys/devices/virtual/graphics/fb([0-2])+/idle_time u:object_r:sysfs_graphics:s0 +/sys/devices/virtual/graphics/fb([0-2])+/dynamic_fps u:object_r:sysfs_graphics:s0 +/sys/devices/virtual/graphics/fb([0-2])+/product_description u:object_r:sysfs_graphics:s0 +/sys/devices/virtual/graphics/fb([0-2])+/vendor_name u:object_r:sysfs_graphics:s0 +/sys/devices/virtual/graphics/fb([0-2])+/hdcp/tp u:object_r:sysfs_graphics:s0 +/sys/devices/virtual/hsicctl/hsicctl1[0-9]/modem_wait u:object_r:sysfs_hsic_modem_wait:s0 +/sys/devices/virtual/hsicctl/hsicctl[0-9]/modem_wait u:object_r:sysfs_hsic_modem_wait:s0 +/sys/devices/virtual/smdpkt/smdcntl1[0-9]/open_timeout u:object_r:sysfs_smd_open_timeout:s0 +/sys/devices/virtual/smdpkt/smdcntl[0-9]/open_timeout u:object_r:sysfs_smd_open_timeout:s0 +/sys/devices/virtual/thermal(/.*)? u:object_r:sysfs_thermal:s0 +/sys/module/msm_serial_hs/parameters/debug_mask u:object_r:sysfs_msmuart_file:s0 +/sys/module/msm_thermal(/.*)? u:object_r:sysfs_thermal:s0 +/sys/module/msm_thermal/core_control/cpus_offlined u:object_r:sysfs_mpdecision:s0 +/sys/devices/f9a55000.*/power_supply/usb(/.*)? u:object_r:sysfs_usb_supply:s0 +/sys/devices/virtual/graphics/fb([0-2])+/hpd u:object_r:sysfs_graphics:s0 +/sys/devices/virtual/graphics/fb([0-2])+/res_info u:object_r:sysfs_graphics:s0 +/sys/devices/virtual/graphics/fb([0-2])+/s3d_mode u:object_r:sysfs_graphics:s0 +/sys/class/graphics/fb([0-2])+/mdp/caps u:object_r:sysfs_graphics:s0 +/sys/class/graphics/fb([0-2])+/ad u:object_r:sysfs_graphics:s0 +/sys/bus/platform/drivers/xhci_msm_hsic(/.*)? u:object_r:sysfs_hsic:s0 +/sys/devices/msm_hsic_host/host_ready u:object_r:sysfs_hsic_host_rdy:s0 +/sys/bus/esoc(/.*)? u:object_r:sysfs_esoc:s0 +/sys/bus/msm_subsys(/.*)? u:object_r:sysfs_ssr:s0 +/sys/module/ccid_bridge(/.*)? u:object_r:sysfs_usb_uicc:s0 +/sys/bus/msm_subsys/devices/subsys0/restart_level u:object_r:sysfs_ssr_toggle:s0 +/sys/bus/msm_subsys/devices/subsys1/restart_level u:object_r:sysfs_ssr_toggle:s0 +/sys/bus/msm_subsys/devices/subsys2/restart_level u:object_r:sysfs_ssr_toggle:s0 +/sys/bus/msm_subsys/devices/subsys3/restart_level u:object_r:sysfs_ssr_toggle:s0 +/sys/bus/msm_subsys/devices/subsys4/restart_level u:object_r:sysfs_ssr_toggle:s0 +/sys/devices/soc0/.* u:object_r:sysfs_socinfo:s0 + +################################### +# data files +# +/data/connectivity(/.*)? u:object_r:cnd_data_file:s0 +/data/data_test(/.*)? u:object_r:data_test_data_file:s0 +/data/diag_log(/.*)? u:object_r:diag_data_file:s0 +/data/misc/sensors(/.*)? u:object_r:sensors_data_file:s0 +/data/rfs.* u:object_r:rfs_file:s0 +/data/hlos_rfs(/.*)? u:object_r:rfs_shared_hlos_file:s0 +/data/camera(/.*)? u:object_r:camera_socket:s0 +/data/misc/stargate(/.*)? u:object_r:qfp-daemon_data_file:s0 +/data/system/sensors(/.*)? u:object_r:sensors_data_file:s0 +/data/time(/.*)? u:object_r:time_data_file:s0 +/data/nfc(/.*)? u:object_r:nfc_data_file:s0 +/data/system/perfd(/.*)? u:object_r:mpctl_data_file:s0 +/data/misc/perfd(/.*)? u:object_r:mpctl_socket:s0 +/data/misc/iop(/.*)? u:object_r:iop_data_file:s0 +/data/misc/iop/iop u:object_r:iop_socket:s0 +/data/misc/display(/.*)? u:object_r:display_misc_file:s0 +/data/misc/ipa(/.*)? u:object_r:ipacm_data_file:s0 +/data/dpm(/.*)? u:object_r:dpmd_data_file:s0 +/data/misc/qsee(/.*)? u:object_r:data_qsee_file:s0 +/data/misc/location(/.*)? u:object_r:location_data_file:s0 +/data/misc/location/mq/location-mq-s u:object_r:location_socket:s0 +/data/misc/location/mq/alarm_svc u:object_r:location_socket:s0 +/data/FTM_AP(/.*)? u:object_r:mmi_data_file:s0 +/data/misc/hbtp(/.*)? u:object_r:hbtp_log_file:s0 +/data/misc/qlogd(/.*)? u:object_r:qlogd_data_file:s0 +/data/usf(/.*)? u:object_r:usf_data_file:s0 +/data/misc/dts(/.*)? u:object_r:dts_data_file:s0 +/data/misc/seemp(/.*)? u:object_r:seemp_file:s0 +/data/misc/SelfHost(/.*)? u:object_r:RIDL_data_file:s0 +/data/misc/radio(/.*)? u:object_r:radio_data_file:s0 +/data/misc/port_bridge(/.*)? u:object_r:port_bridge_data_file:s0 +/data/misc/fm(/.*)? u:object_r:fm_data_file:s0 +/data/misc/audio_pp(/.*)? u:object_r:audio_pp_data_file:s0 +/data/ramdump(/.*)? u:object_r:ssr_ramdump_data_file:s0 +/data/misc/SelfHost/socket(/.*)? u:object_r:RIDL_socket:s0 + +################################### +# persist files +# +/persist(/.*)? u:object_r:persist_file:s0 +/persist/bluetooth(/.*)? u:object_r:persist_bluetooth_file:s0 +/persist/drm(/.*)? u:object_r:persist_drm_file:s0 +/persist/sensors(/.*)? u:object_r:sensors_persist_file:s0 +/persist/data(/.*)? u:object_r:persist_drm_file:s0 +/persist/data/tz(/.*)? u:object_r:persist_drm_file:s0 +/persist/data/sfs(/.*)? u:object_r:persist_drm_file:s0 +/persist/qc_senseid(/.*)? u:object_r:persist_qc_senseid_file:s0 +/persist/usf(/.*)? u:object_r:persist_usf_file:s0 +/persist/hlos_rfs(/.*)? u:object_r:rfs_shared_hlos_file:s0 +/persist/display(/.*)? u:object_r:persist_display_file:s0 +/persist/rfs.* u:object_r:rfs_file:s0 +/persist/misc(/.*)? u:object_r:persist_misc_file:s0 +/persist/speccfg(/.*)? u:object_r:regionalization_file:s0 + +################################### +# etc files +# +/etc/firmware/hbtp/* u:object_r:hbtp_cfg_file:s0 + +################################### +# adsp files +# +/dsp(/.*)? u:object_r:adsprpcd_file:s0 + +################################### +# cache files +# +/cache/FTM_AP(/.*)? u:object_r:mmi_data_file:s0 + +################################### +# usbmsc files +# +file_contexts:/data/usbmsc_mnt(/.*)? u:object_r:usbmsc_data_file:s0 +#line 1 "device/qcom/sepolicy/test/file_contexts" +/system/bin/kernel-tests/smd.* u:object_r:smd_test_exec:s0 +/system/bin/qmi-framework-tests/qmi_ping.* u:object_r:qmi_ping_exec:s0 +/system/bin/qmi-framework-tests/qmi_test.* u:object_r:qmi_test_service_exec:s0 + +/system/bin/diag_dci_client u:object_r:diagdciclient_exec:s0 + +/system/bin/ptt_socket_app u:object_r:wcnss_service_exec:s0 +/system/bin/athdiag u:object_r:wcnss_service_exec:s0 +/system/bin/cld-fwlog-netlink u:object_r:wcnss_service_exec:s0 +/system/bin/cld-fwlog-record u:object_r:wcnss_service_exec:s0 +/system/bin/cld-fwlog-parser u:object_r:wcnss_service_exec:s0 +/system/bin/cnss_diag u:object_r:wcnss_service_exec:s0 +/system/bin/iwpriv u:object_r:wcnss_service_exec:s0 +/system/bin/iwconfig u:object_r:wcnss_service_exec:s0 +/system/bin/iw u:object_r:wcnss_service_exec:s0 +/system/bin/iwlist u:object_r:wcnss_service_exec:s0 +/system/bin/iwss_test u:object_r:wcnss_service_exec:s0 +/system/bin/pktlogconf u:object_r:wcnss_service_exec:s0 +/system/bin/iperf u:object_r:wcnss_service_exec:s0 +/system/bin/mboxping u:object_r:wcnss_service_exec:s0 +/system/bin/sigma_dut u:object_r:wcnss_service_exec:s0 +/system/bin/pktlog u:object_r:wcnss_service_exec:s0 +/system/bin/hal_proxy_daemon u:object_r:wcnss_service_exec:s0 +/system/bin/Wifilogger_app u:object_r:wcnss_service_exec:s0 +/system/bin/hs20-osu-client u:object_r:wcnss_service_exec:s0 +/system/bin/ndc u:object_r:wcnss_service_exec:s0 +/system/bin/playreadygtest(.*) u:object_r:sectest_exec:s0 +/system/bin/oem(.*)test u:object_r:sectest_exec:s0 +/system/bin/widevine(.*) u:object_r:sectest_exec:s0 +/system/bin/qseecom_sample_client u:object_r:sectest_exec:s0 +/system/bin/isdbtmmtest u:object_r:sectest_exec:s0 +/system/bin/secure_ui_sample_client u:object_r:sectest_exec:s0 +/system/bin/qseecom_security_test u:object_r:sectest_exec:s0 +/system/bin/qfipsverify u:object_r:sectest_exec:s0 +/system/bin/qseecom_assurance_test u:object_r:sectest_exec:s0 +/system/bin/drm_generic_prov_test u:object_r:sectest_exec:s0 +/system/bin/ParserApp u:object_r:sectest_exec:s0 +/system/bin/StoreKeybox u:object_r:sectest_exec:s0 +/system/bin/InstallKeybox u:object_r:sectest_exec:s0 + +#Authentication and FIDO +/system/vendor/bin/sampleauthdaemon u:object_r:fidotest_exec:s0 +/system/vendor/bin/qseeproxysampledaemon u:object_r:qseeproxysample_exec:s0 + +#Context for location features +/system/bin/sdp_test u:object_r:location_exec:s0 +/system/bin/icm_test u:object_r:location_exec:s0 +/system/bin/pf_test_app u:object_r:location_exec:s0 +/system/bin/quipc_ipe_test u:object_r:location_exec:s0 +/system/bin/ipead_test u:object_r:location_exec:s0 +/system/bin/quipc_iwmm_test u:object_r:location_exec:s0 +/system/bin/slimcw_test u:object_r:location_exec:s0 +/system/bin/lowi_test u:object_r:location_exec:s0 +/system/bin/test-lowi-client u:object_r:location_exec:s0 +/system/bin/quipc_os_api_test_1 u:object_r:location_exec:s0 +/system/bin/quipc_os_api_test_2 u:object_r:location_exec:s0 +/system/bin/loc_api_v02_utt u:object_r:location_exec:s0 +/system/bin/test-version u:object_r:location_exec:s0 +/system/bin/test-pos-tx u:object_r:location_exec:s0 +/system/bin/xtwifi-upload-test u:object_r:location_exec:s0 +/system/bin/test-fake-ap u:object_r:location_exec:s0 +/system/bin/loc_api_app u:object_r:location_exec:s0 +/system/bin/test_loc_api_client u:object_r:location_exec:s0 + +#Context for mediaserver +/data/display-tests/media(/.*)? u:object_r:display_test_media_file:s0 +#line 1 "device/qcom/sepolicy/msm8909/file_contexts" +# Copyright (c) 2015, 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 + +################################### +# Primary storage device nodes +# +/dev/block/platform/soc.0/7824900.sdhci/by-name/fsg u:object_r:modem_efs_partition_device:s0 +/dev/block/platform/soc.0/7824900.sdhci/by-name/fsc u:object_r:modem_efs_partition_device:s0 +/dev/block/platform/soc.0/7824900.sdhci/by-name/modemst1 u:object_r:modem_efs_partition_device:s0 +/dev/block/platform/soc.0/7824900.sdhci/by-name/modemst2 u:object_r:modem_efs_partition_device:s0 +/dev/block/platform/soc.0/7824900.sdhci/by-name/ssd u:object_r:ssd_device:s0 +/dev/block/platform/soc.0/7824900.sdhci/by-name/misc u:object_r:misc_partition:s0 +/dev/block/platform/soc.0/7824900.sdhci/by-name/userdata u:object_r:userdata_block_device:s0 +/dev/block/mmcblk0 u:object_r:root_block_device:s0 +/dev/block/mmcblk0rpmb u:object_r:rpmb_device:s0 +/dev/block/platform/soc.0/7824900.sdhci/by-name/config u:object_r:frp_block_device:s0 +/dev/block/platform/soc.0/7824900.sdhci/by-name/persist u:object_r:persist_block_device:s0 +#line 1 "gonk-misc/sepolicy/common/file_contexts" +############################# +# B2G data files +# +/data/b2g(/.*)? u:object_r:b2g_data_file:s0 + +# Misc files +/data/local/permissions.sqlite u:object_r:b2g_data_file:s0 + +# Webapps +/data/local/webapps(/.*)? u:object_r:b2g_data_file:s0 + +# NFC +#/data/nfc(/.*)? u:object_r:nfc_data_file:s0 +#/dev/nq-nci u:object_r:nfc_device:s0 + +############################# +# B2G executables +# +/system/bin/b2g.sh u:object_r:b2g_exec:s0 +/system/b2g/b2g u:object_r:b2g_exec:s0 +/system/b2g/plugin-container u:object_r:plugin-container_exec:s0 +/system/bin/gonksched u:object_r:gonksched_exec:s0 +/system/bin/rilproxy u:object_r:rilproxy_exec:s0 +/system/bin/fakeappops u:object_r:fakeappops_exec:s0 +/system/bin/bluetoothd u:object_r:bluetoothd_exec:s0 +/system/bin/nfcd u:object_r:nfcd_exec:s0 +/system/bin/pnscr u:object_r:nfcd_exec:s0 +/system/bin/gps_test u:object_r:gpsd_exec:s0 +#/system/bin/sensorsd u:object_r:sensorsd_exec:s0 + +############################# +# KaiOS Daemon +# +/system/kaios/api-daemon u:object_r:api-daemon_exec:s0 diff --git a/rootdir/fstab.qcom b/rootdir/fstab.qcom new file mode 100644 index 0000000..f818296 --- /dev/null +++ b/rootdir/fstab.qcom @@ -0,0 +1,13 @@ +# 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 + +#TODO: Add 'check' as fs_mgr_flags with data partition. +# Currently we dont have e2fsck compiled. So fs check would failed. + +# +/dev/block/bootdevice/by-name/system /system ext4 ro,barrier=1,discard wait +/dev/block/bootdevice/by-name/userdata /data ext4 nosuid,nodev,noatime,barrier=1,noauto_da_alloc,discard wait,check,encryptable=footer +/dev/block/zram0 none swap defaults zramsize=268435456 +/devices/soc.0/7864900.sdhci/mmc_host* /storage/sdcard vfat nosuid,nodev wait,voldmanaged=sdcard:auto,encryptable=footer +/dev/block/bootdevice/by-name/config /frp emmc defaults defaults diff --git a/rootdir/init b/rootdir/init new file mode 100644 index 0000000..4c33dc5 Binary files /dev/null and b/rootdir/init differ diff --git a/rootdir/init.class_main.sh b/rootdir/init.class_main.sh new file mode 100644 index 0000000..ea4b5c2 --- /dev/null +++ b/rootdir/init.class_main.sh @@ -0,0 +1,101 @@ +#!/system/bin/sh +# Copyright (c) 2013-2014, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# +# start ril-daemon only for targets on which radio is present +# +baseband=`getprop ro.baseband` +sgltecsfb=`getprop persist.radio.sglte_csfb` +datamode=`getprop persist.data.mode` +netmgr=`getprop ro.use_data_netmgrd` + +case "$baseband" in + "apq") + setprop ro.radio.noril yes + stop ril-daemon +esac + +case "$baseband" in + "msm" | "csfb" | "svlte2a" | "mdm" | "mdm2" | "sglte" | "sglte2" | "dsda2" | "unknown" | "dsda3") + start qmuxd + start ipacm-diag + start ipacm + case "$baseband" in + "svlte2a" | "csfb") + start qmiproxy + ;; + "sglte" | "sglte2" ) + if [ "x$sgltecsfb" != "xtrue" ]; then + start qmiproxy + else + setprop persist.radio.voice.modem.index 0 + fi + ;; + "dsda2") + setprop persist.radio.multisim.config dsda + esac + + multisim=`getprop persist.radio.multisim.config` + + if [ "$multisim" = "dsds" ] || [ "$multisim" = "dsda" ]; then + start ril-daemon2 + elif [ "$multisim" = "tsts" ]; then + start ril-daemon2 + start ril-daemon3 + fi + + case "$datamode" in + "tethered") + start qti + start port-bridge + ;; + "concurrent") + start qti + if [ "$netmgr" = "true" ]; then + start netmgrd + fi + ;; + *) + if [ "$netmgr" = "true" ]; then + start netmgrd + fi + ;; + esac +esac + +# +# Allow persistent faking of bms +# User needs to set fake bms charge in persist.bms.fake_batt_capacity +# +fake_batt_capacity=`getprop persist.bms.fake_batt_capacity` +case "$fake_batt_capacity" in + "") ;; #Do nothing here + * ) + echo "$fake_batt_capacity" > /sys/class/power_supply/battery/capacity + ;; +esac diff --git a/rootdir/init.mdm.sh b/rootdir/init.mdm.sh new file mode 100644 index 0000000..67e4667 --- /dev/null +++ b/rootdir/init.mdm.sh @@ -0,0 +1,33 @@ +#!/system/bin/sh +# 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. +# + +baseband=`getprop ro.baseband` +if [ "$baseband" = "mdm" ] || [ "$baseband" = "mdm2" ]; then + start mdm_helper +fi + diff --git a/rootdir/init.qcom.bms.sh b/rootdir/init.qcom.bms.sh new file mode 100644 index 0000000..b849375 --- /dev/null +++ b/rootdir/init.qcom.bms.sh @@ -0,0 +1,49 @@ +#!/system/bin/sh +# Copyright (c) 2009-2015, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +target=`getprop ro.board.platform` + +start_vm_bms() +{ + if [ -e /dev/vm_bms ]; then + chown -h root.system /sys/class/power_supply/bms/current_now + chown -h root.system /sys/class/power_supply/bms/voltage_ocv + chmod 0664 /sys/class/power_supply/bms/current_now + chmod 0664 /sys/class/power_supply/bms/voltage_ocv + start vm_bms + fi +} + +case "$target" in + "msm8916") + start_vm_bms + ;; + "msm8909") + start_vm_bms + ;; +esac diff --git a/rootdir/init.qcom.class_core.sh b/rootdir/init.qcom.class_core.sh new file mode 100644 index 0000000..bc89e86 --- /dev/null +++ b/rootdir/init.qcom.class_core.sh @@ -0,0 +1,215 @@ +#!/system/bin/sh +# Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# Set platform variables +target=`getprop ro.board.platform` +if [ -f /sys/devices/soc0/hw_platform ]; then + soc_hwplatform=`cat /sys/devices/soc0/hw_platform` 2> /dev/null +else + soc_hwplatform=`cat /sys/devices/system/soc/soc0/hw_platform` 2> /dev/null +fi +if [ -f /sys/devices/soc0/soc_id ]; then + soc_hwid=`cat /sys/devices/soc0/soc_id` 2> /dev/null +else + soc_hwid=`cat /sys/devices/system/soc/soc0/id` 2> /dev/null +fi +if [ -f /sys/devices/soc0/platform_version ]; then + soc_hwver=`cat /sys/devices/soc0/platform_version` 2> /dev/null +else + soc_hwver=`cat /sys/devices/system/soc/soc0/platform_version` 2> /dev/null +fi + + +# Dynamic Memory Managment (DMM) provides a sys file system to the userspace +# that can be used to plug in/out memory that has been configured as unstable. +# This unstable memory can be in Active or In-Active State. +# Each of which the userspace can request by writing to a sys file. +# +# ro.dev.dmm = 1; Indicates that DMM is enabled in the Android User Space. This +# property is set in the Android system properties file. +# +# If ro.dev.dmm.dpd.start_address is set here then the target has a memory +# configuration that supports DynamicMemoryManagement. +init_DMM() +{ + block=-1 + + case "$target" in + "msm7630_surf" | "msm7630_1x" | "msm7630_fusion" | "msm8960") + ;; + *) + return + ;; + esac + + mem="/sys/devices/system/memory" + op=`cat $mem/movable_start_bytes` + case "$op" in + "0") + log -p i -t DMM DMM Disabled. movable_start_bytes not set: $op + ;; + + "$mem/movable_start_bytes: No such file or directory ") + log -p i -t DMM DMM Disabled. movable_start_bytes does not exist: $op + ;; + + *) + log -p i -t DMM DMM available. movable_start_bytes at $op + movable_start_bytes=0x`cat $mem/movable_start_bytes` + block_size_bytes=0x`cat $mem/block_size_bytes` + block=$((#${movable_start_bytes}/${block_size_bytes})) + + chown -h system.system $mem/memory$block/state + chown -h system.system $mem/probe + chown -h system.system $mem/active + chown -h system.system $mem/remove + + case "$target" in + "msm7630_surf" | "msm7630_1x" | "msm7630_fusion") + echo $movable_start_bytes > $mem/probe + case "$?" in + "0") + log -p i -t DMM $movable_start_bytes to physical hotplug succeeded. + ;; + *) + log -p e -t DMM $movable_start_bytes to physical hotplug failed. + return + ;; + esac + + echo online > $mem/memory$block/state + case "$?" in + "0") + log -p i -t DMM \'echo online\' to logical hotplug succeeded. + ;; + *) + log -p e -t DMM \'echo online\' to logical hotplug failed. + return + ;; + esac + ;; + esac + + setprop ro.dev.dmm.dpd.start_address $movable_start_bytes + setprop ro.dev.dmm.dpd.block $block + ;; + esac + + case "$target" in + "msm8960") + return + ;; + esac + + # For 7X30 targets: + # ro.dev.dmm.dpd.start_address is set when the target has a 2x256Mb memory + # configuration. This is also used to indicate that the target is capable of + # setting EBI-1 to Deep Power Down or Self Refresh. + op=`cat $mem/low_power_memory_start_bytes` + case "$op" in + "0") + log -p i -t DMM Self-Refresh-Only Disabled. low_power_memory_start_bytes not set:$op + ;; + "$mem/low_power_memory_start_bytes No such file or directory ") + log -p i -t DMM Self-Refresh-Only Disabled. low_power_memory_start_bytes does not exist:$op + ;; + *) + log -p i -t DMM Self-Refresh-Only available. low_power_memory_start_bytes at $op + ;; + esac +} + +# +# For controlling console and shell on console on 8960 - perist.serial.enable 8960 +# On other target use default ro.debuggable property. +# +serial=`getprop persist.serial.enable` +dserial=`getprop ro.debuggable` +case "$target" in + "msm8960") + case "$serial" in + "0") + echo 0 > /sys/devices/platform/msm_serial_hsl.0/console + ;; + "1") + echo 1 > /sys/devices/platform/msm_serial_hsl.0/console + start console + ;; + *) + case "$dserial" in + "1") + start console + ;; + esac + ;; + esac + ;; + + "msm8610" | "msm8974" | "msm8226") + case "$serial" in + "0") + echo 0 > /sys/devices/f991f000.serial/console + ;; + "1") + echo 1 > /sys/devices/f991f000.serial/console + start console + ;; + *) + case "$dserial" in + "1") + start console + ;; + esac + ;; + esac + ;; + *) + case "$dserial" in + "1") + start console + ;; + esac + ;; +esac + +case "$target" in + "msm7630_surf" | "msm7630_1x" | "msm7630_fusion") + insmod /system/lib/modules/ss_mfcinit.ko + insmod /system/lib/modules/ss_vencoder.ko + insmod /system/lib/modules/ss_vdecoder.ko + chmod -h 0666 /dev/ss_mfc_reg + chmod -h 0666 /dev/ss_vdec + chmod -h 0666 /dev/ss_venc + + init_DMM + ;; + + "msm8960") + init_DMM + ;; +esac diff --git a/rootdir/init.qcom.early_boot.sh b/rootdir/init.qcom.early_boot.sh new file mode 100644 index 0000000..3df4656 --- /dev/null +++ b/rootdir/init.qcom.early_boot.sh @@ -0,0 +1,323 @@ +#!/system/bin/sh +# Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +export PATH=/system/bin + +# Set platform variables +if [ -f /sys/devices/soc0/hw_platform ]; then + soc_hwplatform=`cat /sys/devices/soc0/hw_platform` 2> /dev/null +else + soc_hwplatform=`cat /sys/devices/system/soc/soc0/hw_platform` 2> /dev/null +fi +if [ -f /sys/devices/soc0/soc_id ]; then + soc_hwid=`cat /sys/devices/soc0/soc_id` 2> /dev/null +else + soc_hwid=`cat /sys/devices/system/soc/soc0/id` 2> /dev/null +fi +if [ -f /sys/devices/soc0/platform_version ]; then + soc_hwver=`cat /sys/devices/soc0/platform_version` 2> /dev/null +else + soc_hwver=`cat /sys/devices/system/soc/soc0/platform_version` 2> /dev/null +fi +if [ -f /sys/class/graphics/fb0/virtual_size ]; then + virtual_size=$(echo `cat /sys/class/graphics/fb0/virtual_size` | cut -d',' -f1) 2>/dev/null +fi + +platform=`getprop ro.board.platform` +log -t BOOT -p i "MSM target '$platform', SoC '$soc_hwplatform', HwID '$soc_hwid', SoC ver '$soc_hwver', virtual size '$virtual_size'" + +case "$platform" in + "msm7630_surf" | "msm7630_1x" | "msm7630_fusion") + case "$soc_hwplatform" in + "FFA" | "SVLTE_FFA") + # linking to surf_keypad_qwerty.kcm.bin instead of surf_keypad_numeric.kcm.bin so that + # the UI keyboard works fine. + ln -s /system/usr/keychars/surf_keypad_qwerty.kcm.bin /system/usr/keychars/surf_keypad.kcm.bin + ;; + "Fluid") + setprop ro.sf.lcd_density 240 + setprop qcom.bt.dev_power_class 2 + ;; + *) + ln -s /system/usr/keychars/surf_keypad_qwerty.kcm.bin /system/usr/keychars/surf_keypad.kcm.bin + ;; + esac + ;; + + "msm8660") + case "$soc_hwplatform" in + "Fluid") + setprop ro.sf.lcd_density 240 + ;; + "Dragon") + setprop ro.sound.alsa "WM8903" + ;; + esac + ;; + + "msm8960") + # lcd density is write-once. Hence the separate switch case + case "$soc_hwplatform" in + "Liquid") + if [ "$soc_hwver" == "196608" ]; then # version 0x30000 is 3D sku + setprop ro.sf.hwrotation 90 + fi + + setprop ro.sf.lcd_density 160 + ;; + "MTP") + setprop ro.sf.lcd_density 240 + ;; + *) + case "$soc_hwid" in + "109") + setprop ro.sf.lcd_density 160 + ;; + *) + setprop ro.sf.lcd_density 240 + ;; + esac + ;; + esac + + #Set up composition type based on the target + case "$soc_hwid" in + 87) + #8960 + setprop debug.composition.type dyn + ;; + 153|154|155|156|157|138) + #8064 V2 PRIME | 8930AB | 8630AB | 8230AB | 8030AB | 8960AB + setprop debug.composition.type c2d + ;; + *) + esac + ;; + + "msm8974") + case "$soc_hwplatform" in + "Liquid") + setprop ro.sf.lcd_density 160 + # Liquid do not have hardware navigation keys, so enable + # Android sw navigation bar + setprop ro.hw.nav_keys 0 + ;; + "Dragon") + setprop ro.sf.lcd_density 240 + ;; + *) + setprop ro.sf.lcd_density 320 + ;; + esac + ;; + + "msm8226") + case "$soc_hwplatform" in + *) + setprop ro.sf.lcd_density 320 + ;; + esac + ;; + + "msm8610" | "apq8084" | "mpq8092") + case "$soc_hwplatform" in + *) + setprop ro.sf.lcd_density 240 + ;; + esac + ;; + "apq8084") + case "$soc_hwplatform" in + "Liquid") + setprop ro.sf.lcd_density 320 + # Liquid do not have hardware navigation keys, so enable + # Android sw navigation bar + setprop ro.hw.nav_keys 0 + ;; + "SBC") + setprop ro.sf.lcd_density 200 + # SBC do not have hardware navigation keys, so enable + # Android sw navigation bar + setprop qemu.hw.mainkeys 0 + ;; + *) + setprop ro.sf.lcd_density 480 + ;; + esac + ;; + "msm8916" | "msm8909") + if test -n "$virtual_size" + then + if [ $virtual_size -ge "1080" ] + then + if [ $soc_hwplatform == "SBC" ] + then + setprop ro.sf.lcd_density 240 + setprop qemu.hw.mainkeys 0 + else + setprop ro.sf.lcd_density 480 + fi + elif [ $virtual_size -ge "720" ] + then + setprop ro.sf.lcd_density 320 + elif [ $virtual_size -ge "480" ] + then + setprop ro.sf.lcd_density 240 + else + setprop ro.sf.lcd_density 320 + fi + fi + + # Set ro.opengles.version based on chip id. + # MSM8939 variants supports OpenGLES 3.1 + # 196608 is decimal for 0x30000 to report version 3.0 + # 196609 is decimal for 0x30001 to report version 3.1 + case "$soc_hwid" in + 233|239|240|241|242|243|263|268|269|270|271) + setprop ro.opengles.version 196609 + if [ $soc_hwid -ge "239" ] && [ $soc_hwid -le "243" ] + then + setprop media.msm8939hw 1 + fi + if [ $soc_hwid -ge "268" ] && [ $soc_hwid -le "271" ] + then + setprop media.msm8929hw 1 + fi + ;; + *) + setprop ro.opengles.version 196608 + ;; + esac + + # auto firmware upgrade for ITE tecg touch screen + case $platform in + "msm8909" | "msm8909w") + case $soc_hwplatform in + "MTP") + echo 1 > /sys/bus/i2c/devices/5-0046/cfg_update + echo 1 > /sys/bus/i2c/devices/5-0046/fw_update + ;; + esac + ;; + esac + case $platform in + "msm8909") + cap_ver=`cat /sys/devices/soc.0/1d00000.qcom,vidc/capability_version` 2> /dev/null + if [ $cap_ver -eq 1 ]; then + setprop media.msm8905.version 1 + setprop media.settings.xml /etc/media_profiles_8905.xml + fi + esac + ;; +esac + +# Setup display nodes & permissions +# HDMI can be fb1 or fb2 +# Loop through the sysfs nodes and determine +# the HDMI(dtv panel) + +function set_perms() { + #Usage set_perms + chown -h $2 $1 + chmod $3 $1 +} + +for fb_cnt in 0 1 2 +do +file=/sys/class/graphics/fb$fb_cnt +dev_file=/dev/graphics/fb$fb_cnt + if [ -d "$file" ] + then + value=`cat $file/msm_fb_type` + case "$value" in + "dtv panel") + set_perms $file/hpd system.graphics 0664 + set_perms $file/res_info system.graphics 0664 + set_perms $file/vendor_name system.graphics 0664 + set_perms $file/product_description system.graphics 0664 + set_perms $file/video_mode system.graphics 0664 + set_perms $file/format_3d system.graphics 0664 + set_perms $file/s3d_mode system.graphics 0664 + set_perms $file/cec/enable system.graphics 0664 + set_perms $file/cec/logical_addr system.graphics 0664 + set_perms $file/cec/rd_msg system.graphics 0664 + set_perms $file/pa system.graphics 0664 + set_perms $file/cec/wr_msg system.graphics 0600 + set_perms $file/hdcp/tp system.graphics 0664 + ln -s $dev_file /dev/graphics/hdmi + esac + if [ $fb_cnt -eq 0 ] + then + set_perms $file/idle_time system.graphics 0664 + set_perms $file/dynamic_fps system.graphics 0664 + set_perms $file/dyn_pu system.graphics 0664 + set_perms $file/modes system.graphics 0664 + set_perms $file/mode system.graphics 0664 + set_perms $file/mdp/bw_mode_bitmap system.graphics 0664 + fi + fi +done + +boot_reason=`cat /proc/sys/kernel/boot_reason` +reboot_reason=`getprop ro.boot.alarmboot` +if [ "$boot_reason" = "3" ] || [ "$reboot_reason" = "true" ]; then + setprop ro.alarm_boot true + setprop debug.sf.nobootanimation 1 +else + setprop ro.alarm_boot false +fi + +# Set property to enable/disable GPS based on +# whether "gpsconfig" partition is present or not +emmc_dir=/dev/block/bootdevice/by-name +nand_file=/proc/mtd +partition_name=gpsconfig + +# set gps to enabled state by default +gps_enabled=true + +if [ -d $emmc_dir ] +then + # emmc/ufs configuration + emmc_partition="${emmc_dir}/${partition_name}" + if [ -e $emmc_partition ] + then + gps_enabled=false + fi +else + # nand configuration + if [ -e $nand_file ] + then + if grep ${partition_name} $nand_file + then + gps_enabled=false + fi + fi +fi + +setprop ro.gps.enabled $gps_enabled diff --git a/rootdir/init.qcom.sh b/rootdir/init.qcom.sh new file mode 100644 index 0000000..ddfe76e --- /dev/null +++ b/rootdir/init.qcom.sh @@ -0,0 +1,283 @@ +#!/system/bin/sh +# Copyright (c) 2009-2016, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +target=`getprop ro.board.platform` +if [ -f /sys/devices/soc0/soc_id ]; then + platformid=`cat /sys/devices/soc0/soc_id` +else + platformid=`cat /sys/devices/system/soc/soc0/id` +fi +# +# Function to start sensors for DSPS enabled platforms +# +start_sensors() +{ + if [ -c /dev/msm_dsps -o -c /dev/sensors ]; then + chmod -h 775 /persist/sensors + chmod -h 664 /persist/sensors/sensors_settings + chown -h system.root /persist/sensors/sensors_settings + + mkdir -p /data/misc/sensors + chmod -h 775 /data/misc/sensors + + start sensors + fi +} + +start_battery_monitor() +{ + if ls /sys/bus/spmi/devices/qpnp-bms-*/fcc_data ; then + chown -h root.system /sys/module/pm8921_bms/parameters/* + chown -h root.system /sys/module/qpnp_bms/parameters/* + chown -h root.system /sys/bus/spmi/devices/qpnp-bms-*/fcc_data + chown -h root.system /sys/bus/spmi/devices/qpnp-bms-*/fcc_temp + chown -h root.system /sys/bus/spmi/devices/qpnp-bms-*/fcc_chgcyl + chmod 0660 /sys/module/qpnp_bms/parameters/* + chmod 0660 /sys/module/pm8921_bms/parameters/* + mkdir -p /data/bms + chown -h root.system /data/bms + chmod 0770 /data/bms + start battery_monitor + fi +} + +start_charger_monitor() +{ + if ls /sys/module/qpnp_charger/parameters/charger_monitor; then + chown -h root.system /sys/module/qpnp_charger/parameters/* + chown -h root.system /sys/class/power_supply/battery/input_current_max + chown -h root.system /sys/class/power_supply/battery/input_current_trim + chown -h root.system /sys/class/power_supply/battery/input_current_settled + chown -h root.system /sys/class/power_supply/battery/voltage_min + chmod 0664 /sys/class/power_supply/battery/input_current_max + chmod 0664 /sys/class/power_supply/battery/input_current_trim + chmod 0664 /sys/class/power_supply/battery/input_current_settled + chmod 0664 /sys/class/power_supply/battery/voltage_min + chmod 0664 /sys/module/qpnp_charger/parameters/charger_monitor + start charger_monitor + fi +} + +start_msm_irqbalance_8939() +{ + if [ -f /system/bin/msm_irqbalance ]; then + case "$platformid" in + "239" | "241" | "263" | "268" | "269" | "270" | "271") + start msm_irqbalance;; + esac + fi +} + +start_msm_irqbalance() +{ + if [ -f /system/bin/msm_irqbalance ]; then + start msm_irqbalance + fi +} + +start_copying_prebuilt_qcril_db() +{ + if [ -f /system/vendor/qcril.db -a ! -f /data/misc/radio/qcril.db ]; then + cp /system/vendor/qcril.db /data/misc/radio/qcril.db + chown -h radio.radio /data/misc/radio/qcril.db + fi +} + +baseband=`getprop ro.baseband` +echo 1 > /proc/sys/net/ipv6/conf/default/accept_ra_defrtr + +case "$baseband" in + "svlte2a") + start bridgemgrd + ;; +esac + +start_sensors + +case "$target" in + "msm7630_surf" | "msm7630_1x" | "msm7630_fusion") + if [ -f /sys/devices/soc0/hw_platform ]; then + value=`cat /sys/devices/soc0/hw_platform` + else + value=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + case "$value" in + "Fluid") + start profiler_daemon;; + esac + ;; + "msm8660" ) + if [ -f /sys/devices/soc0/hw_platform ]; then + platformvalue=`cat /sys/devices/soc0/hw_platform` + else + platformvalue=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + case "$platformvalue" in + "Fluid") + start profiler_daemon;; + esac + ;; + "msm8960") + case "$baseband" in + "msm") + start_battery_monitor;; + esac + + if [ -f /sys/devices/soc0/hw_platform ]; then + platformvalue=`cat /sys/devices/soc0/hw_platform` + else + platformvalue=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + case "$platformvalue" in + "Fluid") + start profiler_daemon;; + "Liquid") + start profiler_daemon;; + esac + ;; + "msm8974") + platformvalue=`cat /sys/devices/soc0/hw_platform` + case "$platformvalue" in + "Fluid") + start profiler_daemon;; + "Liquid") + start profiler_daemon;; + esac + case "$baseband" in + "msm") + start_battery_monitor + ;; + esac + start_charger_monitor + ;; + "apq8084") + platformvalue=`cat /sys/devices/soc0/hw_platform` + case "$platformvalue" in + "Fluid") + start profiler_daemon;; + "Liquid") + start profiler_daemon;; + esac + ;; + "msm8226") + start_charger_monitor + ;; + "msm8610") + start_charger_monitor + ;; + "msm8916") + start_msm_irqbalance_8939 + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + fi + case "$soc_id" in + "239") + case "$hw_platform" in + "Surf") + case "$platform_subtype_id" in + "1" | "2") + setprop qemu.hw.mainkeys 0 + ;; + esac + ;; + "MTP") + case "$platform_subtype_id" in + "3") + setprop qemu.hw.mainkeys 0 + ;; + esac + ;; + esac + ;; + esac + ;; + "msm8994") + start_msm_irqbalance + ;; + "msm8909") + if [ -f /sys/devices/soc0/platform_version ]; then + platform_version=`cat /sys/devices/soc0/platform_version` + major_hw_version=$(($platform_version >> 16)) + fi + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + fi + case "$hw_platform" in + "QRD") + case "$platform_subtype_id" in + "0") + case "$major_hw_version" in + "6") + setprop qemu.hw.mainkeys 0 + ;; + esac + ;; + esac + ;; + esac + ;; +esac + +bootmode=`getprop ro.bootmode` +emmc_boot=`getprop ro.boot.emmc` +case "$emmc_boot" + in "true") + if [ "$bootmode" != "charger" ]; then # start rmt_storage and rfs_access + start rmt_storage + start rfs_access + fi + ;; +esac + +# +# Copy qcril.db if needed for RIL +# +start_copying_prebuilt_qcril_db +echo 1 > /data/misc/radio/db_check_done + +# +# Make modem config folder and copy firmware config to that folder +# +rm -rf /data/misc/radio/modem_config +mkdir /data/misc/radio/modem_config +chmod 770 /data/misc/radio/modem_config +cp -r /firmware/image/modem_pr/mbn_ota/* /data/misc/radio/modem_config +chown -hR radio.radio /data/misc/radio/modem_config +echo 1 > /data/misc/radio/copy_complete diff --git a/rootdir/init.qcom.syspart_fixup.sh b/rootdir/init.qcom.syspart_fixup.sh new file mode 100644 index 0000000..661b635 --- /dev/null +++ b/rootdir/init.qcom.syspart_fixup.sh @@ -0,0 +1,79 @@ +#!/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 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. +# + +target="$1" +serial="$2" + +# 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 + +mount_needed=false; + +if [ ! -f /system/etc/boot_fixup ];then +# This should be the first command +# remount system as read-write. + mount -o rw,remount,barrier=1 /system + mount_needed=true; +fi + +# **** WARNING ***** +# This runs in a single-threaded, critical path portion +# of the Android bootup sequence. This is to guarantee +# all necessary system partition fixups are done before +# the rest of the system starts up. Run any non- +# timing critical tasks in a separate process to +# prevent slowdown at boot. + +# Run modem link script +if [ -f /system/etc/init.qcom.modem_links.sh ]; then + /system/bin/sh /system/etc/init.qcom.modem_links.sh +fi + +# Run mdm link script +if [ -f /system/etc/init.qcom.mdm_links.sh ]; then + /system/bin/sh /system/etc/init.qcom.mdm_links.sh +fi + +# Run wifi script +if [ -f /system/etc/init.qcom.wifi.sh ]; then + /system/bin/sh /system/etc/init.qcom.wifi.sh "$target" "$serial" +fi + +# Run the sensor script +if [ -f /system/etc/init.qcom.sensor.sh ]; then + /system/bin/sh /system/etc/init.qcom.sensor.sh +fi + +touch /system/etc/boot_fixup + +if $mount_needed ;then +# This should be the last command +# remount system as read-only. + mount -o ro,remount,barrier=1 /system +fi diff --git a/rootdir/init.qcom.ubi_mount_helper.sh b/rootdir/init.qcom.ubi_mount_helper.sh new file mode 100644 index 0000000..a93e14f --- /dev/null +++ b/rootdir/init.qcom.ubi_mount_helper.sh @@ -0,0 +1,78 @@ +#!/system/bin/sh +# Copyright (c) 2017, 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. + +mtd_file="/proc/mtd" + +# mount underlying ubi device onto mount-points +Mount () { + partition=$1 + device_num=$2 + volume_num=$3 + dir=$4 + options=$5 + should_attach=$6 + + device="/dev/ubi${device_num}_${volume_num}" + + mtd_block_number=`cat /proc/mtd | grep -i $partition | awk -F ':' '{print $1}' | cut -c4-` + + # Check whether an explicit ubiattach needs to be done or not + if [ "$should_attach" == "attach" ]; then + echo "Attaching ubi device" $device_num "to mtd device" $mtd_block_number > /dev/kmsg + ubiattach -m $mtd_block_number -d $device_num /dev/ubi_ctrl + fi + + while [ 1 ] + do + if [ -c $device ] + then + mount -t ubifs -o $options $device $dir + break + else + echo $device not yet detected > /dev/kmsg + sleep 0.010 + fi + done +} + +# Mount userdata/cache and persist volumes +# onto the same ubi device +# Format: +# eval Mount + +# For a given mtd-to-ubi_device mapping, ubiattach needs to called only once. +# If there are multiple volumes mapped to the same ubi_device, +# pass "attach" only for the first volume being mapped +# and "noattach" for the other volumes on that ubi_device + +eval Mount userdata 1 0 /data "nosuid,nodev,bulk_read" "attach" +eval Mount userdata 1 1 /cache "nosuid,nodev" "noattach" +eval Mount userdata 1 2 /persist "nosuid,nodev" "noattach" + +#Mount modem onto /firmware +eval Mount modem 2 0 /firmware "nosuid,nodev" "attach" diff --git a/rootdir/init.qcom.usb.sh b/rootdir/init.qcom.usb.sh new file mode 100644 index 0000000..9a5c8a1 --- /dev/null +++ b/rootdir/init.qcom.usb.sh @@ -0,0 +1,256 @@ +#!/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. +# +# +vbus_draw=`getprop persist.sys.usb.vbus.draw` +if [ "$vbus_draw" != "" ]; then + echo "${vbus_draw}" > /sys/module/ci13xxx_msm/parameters/vbus_draw_mA +fi +chown -h root.system /sys/devices/platform/msm_hsusb/gadget/wakeup +chmod -h 220 /sys/devices/platform/msm_hsusb/gadget/wakeup + +# +# Allow persistent usb charging disabling +# User needs to set usb charging disabled in persist.usb.chgdisabled +# +target=`getprop ro.board.platform` +usbchgdisabled=`getprop persist.usb.chgdisabled` +case "$usbchgdisabled" in + "") ;; #Do nothing here + * ) + case $target in + "msm8660") + echo "$usbchgdisabled" > /sys/module/pmic8058_charger/parameters/disabled + echo "$usbchgdisabled" > /sys/module/smb137b/parameters/disabled + ;; + "msm8960") + echo "$usbchgdisabled" > /sys/module/pm8921_charger/parameters/disabled + ;; + esac +esac + +usbcurrentlimit=`getprop persist.usb.currentlimit` +case "$usbcurrentlimit" in + "") ;; #Do nothing here + * ) + case $target in + "msm8960") + echo "$usbcurrentlimit" > /sys/module/pm8921_charger/parameters/usb_max_current + ;; + esac +esac + +# +# Check ESOC for external MDM +# +# Note: currently only a single MDM is supported +# +if [ -d /sys/bus/esoc/devices ]; then +for f in /sys/bus/esoc/devices/*; do + if [ -d $f ]; then + esoc_name=`cat $f/esoc_name` + if [ "$esoc_name" = "MDM9x25" -o "$esoc_name" = "MDM9x35" ]; then + esoc_link=`cat $f/esoc_link` + break + fi + fi +done +fi + +target=`getprop ro.board.platform` + +# +# Allow USB enumeration with default PID/VID +# +baseband=`getprop ro.baseband` +echo 1 > /sys/class/android_usb/f_mass_storage/lun/nofua +usb_config=`getprop persist.sys.usb.config` +case "$usb_config" in + "" | "none" | "adb") #USB persist config not set, select default configuration + case "$esoc_link" in + "HSIC") + setprop persist.sys.usb.config diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb + setprop persist.rmnet.mux enabled + ;; + "HSIC+PCIe") + setprop persist.sys.usb.config diag,diag_mdm,serial_hsic,rmnet_qti_ether,mass_storage,adb + ;; + "PCIe") + setprop persist.sys.usb.config diag,diag_mdm,serial_tty,rmnet_qti_ether,mass_storage,adb + ;; + *) + case "$baseband" in + "mdm") + setprop persist.sys.usb.config diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb + ;; + "mdm2") + setprop persist.sys.usb.config diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb + ;; + "sglte") + setprop persist.sys.usb.config diag,diag_qsc,serial_smd,serial_tty,serial_hsuart,rmnet_hsuart,mass_storage,adb + ;; + "dsda" | "sglte2") + setprop persist.sys.usb.config diag,diag_mdm,diag_qsc,serial_hsic,serial_hsuart,rmnet_hsic,rmnet_hsuart,mass_storage,adb + ;; + "dsda2") + setprop persist.sys.usb.config diag,diag_mdm,diag_mdm2,serial_hsic,serial_hsusb,rmnet_hsic,rmnet_hsusb,mass_storage,adb + ;; + *) + case "$target" in + "msm8916") + setprop persist.sys.usb.config diag,serial_smd,rmnet_bam,adb + ;; + "msm8994") + setprop persist.sys.usb.config diag,serial_smd,serial_tty,rmnet_ipa,mass_storage,adb + ;; + "msm8909") + setprop persist.sys.usb.config diag,serial_smd,rmnet_qti_bam,adb + ;; + *) + setprop persist.sys.usb.config diag,serial_smd,serial_tty,rmnet_bam,mass_storage,adb + ;; + esac + ;; + esac + ;; + esac + ;; + * ) ;; #USB persist config exists, do nothing +esac + +# +# Do target specific things +# +case "$target" in + "msm8974") +# Select USB BAM - 2.0 or 3.0 + echo ssusb > /sys/bus/platform/devices/usb_bam/enable + ;; + "apq8084") + if [ "$baseband" == "apq" ]; then + echo "msm_hsic_host" > /sys/bus/platform/drivers/xhci_msm_hsic/unbind + fi + ;; + "msm8226") + if [ -e /sys/bus/platform/drivers/msm_hsic_host ]; then + if [ ! -L /sys/bus/usb/devices/1-1 ]; then + echo msm_hsic_host > /sys/bus/platform/drivers/msm_hsic_host/unbind + fi + fi + ;; + "msm8994") + echo BAM2BAM_IPA > /sys/class/android_usb/android0/f_rndis_qc/rndis_transports + echo 1 > /sys/class/android_usb/android0/f_rndis_qc/max_pkt_per_xfer # Disable RNDIS UL aggregation + ;; +esac + +# +# set module params for embedded rmnet devices +# +rmnetmux=`getprop persist.rmnet.mux` +case "$baseband" in + "mdm" | "dsda" | "sglte2") + case "$rmnetmux" in + "enabled") + echo 1 > /sys/module/rmnet_usb/parameters/mux_enabled + echo 8 > /sys/module/rmnet_usb/parameters/no_fwd_rmnet_links + echo 17 > /sys/module/rmnet_usb/parameters/no_rmnet_insts_per_dev + ;; + esac + echo 1 > /sys/module/rmnet_usb/parameters/rmnet_data_init + # Allow QMUX daemon to assign port open wait time + chown -h radio.radio /sys/devices/virtual/hsicctl/hsicctl0/modem_wait + ;; + "dsda2") + echo 2 > /sys/module/rmnet_usb/parameters/no_rmnet_devs + echo hsicctl,hsusbctl > /sys/module/rmnet_usb/parameters/rmnet_dev_names + case "$rmnetmux" in + "enabled") #mux is neabled on both mdms + echo 3 > /sys/module/rmnet_usb/parameters/mux_enabled + echo 8 > /sys/module/rmnet_usb/parameters/no_fwd_rmnet_links + echo 17 > write /sys/module/rmnet_usb/parameters/no_rmnet_insts_per_dev + ;; + "enabled_hsic") #mux is enabled on hsic mdm + echo 1 > /sys/module/rmnet_usb/parameters/mux_enabled + echo 8 > /sys/module/rmnet_usb/parameters/no_fwd_rmnet_links + echo 17 > /sys/module/rmnet_usb/parameters/no_rmnet_insts_per_dev + ;; + "enabled_hsusb") #mux is enabled on hsusb mdm + echo 2 > /sys/module/rmnet_usb/parameters/mux_enabled + echo 8 > /sys/module/rmnet_usb/parameters/no_fwd_rmnet_links + echo 17 > /sys/module/rmnet_usb/parameters/no_rmnet_insts_per_dev + ;; + esac + echo 1 > /sys/module/rmnet_usb/parameters/rmnet_data_init + # Allow QMUX daemon to assign port open wait time + chown -h radio.radio /sys/devices/virtual/hsicctl/hsicctl0/modem_wait + ;; +esac + +# +# Add support for exposing lun0 as cdrom in mass-storage +# +cdromname="/system/etc/cdrom_install.iso" +platformver=`cat /sys/devices/soc0/hw_platform` +case "$target" in + "msm8226" | "msm8610" | "msm8916" | "msm8909") + case $platformver in + "QRD") + echo "mounting usbcdrom lun" + echo $cdromname > /sys/class/android_usb/android0/f_mass_storage/rom/file + chmod 0444 /sys/class/android_usb/android0/f_mass_storage/rom/file + ;; + esac + ;; +esac + +# +# Initialize RNDIS Diag option. If unset, set it to 'none'. +# +diag_extra=`getprop persist.sys.usb.config.extra` +if [ "$diag_extra" == "" ]; then + setprop persist.sys.usb.config.extra none +fi + +# soc_ids for 8916/8939 differentiation +if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` +else + soc_id=`cat /sys/devices/system/soc/soc0/id` +fi + +# enable rps cpus on msm8939/msm8909/msm8929 target +setprop sys.usb.rps_mask 0 +case "$soc_id" in + "239" | "241" | "263" | "268" | "269" | "270") + setprop sys.usb.rps_mask 10 + ;; + "245" | "258" | "259" | "265" | "275") + setprop sys.usb.rps_mask 4 + ;; +esac diff --git a/rootdir/init.rc b/rootdir/init.rc new file mode 100644 index 0000000..f34368d --- /dev/null +++ b/rootdir/init.rc @@ -0,0 +1,109 @@ +import /init.recovery.${ro.hardware}.rc + +on early-init + start ueventd + start healthd + +on init + export PATH /sbin:/system/bin + export ANDROID_ROOT /system + export ANDROID_DATA /data + export EXTERNAL_STORAGE /sdcard + + symlink /system/etc /etc + + mkdir /sdcard + mkdir /system + mkdir /system/bin + + symlink /sbin/busybox /system/bin/sh + + mkdir /data + mkdir /cache + mkdir /sideload + mkdir /firmware + mount tmpfs tmpfs /tmp + + chown root shell /tmp + chown root shell /system/bin/sh + chmod 0777 /system/bin/sh + chmod 0775 /tmp + + write /proc/sys/kernel/panic_on_oops 1 + write /proc/sys/vm/max_map_count 1000000 + +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/enable 0 + write /sys/class/android_usb/android0/idVendor 18D1 + write /sys/class/android_usb/android0/idProduct D001 + write /sys/class/android_usb/android0/f_ffs/aliases adb + write /sys/class/android_usb/android0/functions adb + write /sys/class/android_usb/android0/iManufacturer ${ro.product.manufacturer} + write /sys/class/android_usb/android0/iProduct ${ro.product.model} + write /sys/class/android_usb/android0/iSerial ${ro.serialno} + +on boot + ifup lo + hostname localhost + domainname localdomain + + class_start default + +# Load properties from /system/ + /factory after fs mount. +on load_system_props_action + load_system_props + +on firmware_mounts_complete + rm /dev/.booting + +# Mount filesystems and start core system services. +on late-init + trigger early-fs + trigger fs + trigger post-fs + trigger post-fs-data + + # Load properties from /system/ + /factory after fs mount. Place + # this in another action so that the load will be scheduled after the prior + # issued fs triggers have completed. + trigger load_system_props_action + + # Remove a file to wake up anything waiting for firmware + trigger firmware_mounts_complete + + trigger early-boot + trigger boot + +on property:sys.powerctl=* + powerctl ${sys.powerctl} + +service ueventd /sbin/ueventd + critical + seclabel u:r:ueventd:s0 + +service healthd /sbin/healthd -r + critical + seclabel u:r:healthd:s0 + +service recovery /sbin/recovery + seclabel u:r:recovery:s0 + +service adbd /sbin/adbd --root_seclabel=u:r:su:s0 --device_banner=recovery + disabled + socket adbd stream 660 system system + seclabel u:r:adbd:s0 + +# Always start adbd on userdebug and eng builds +on property:ro.debuggable=1 + write /sys/class/android_usb/android0/enable 1 + start adbd + +# Restart adbd so it can run as root +on property:service.adb.root=1 + write /sys/class/android_usb/android0/enable 0 + restart adbd + write /sys/class/android_usb/android0/enable 1 diff --git a/rootdir/property_contexts b/rootdir/property_contexts new file mode 100644 index 0000000..19a8fdf --- /dev/null +++ b/rootdir/property_contexts @@ -0,0 +1,160 @@ +#line 1 "external/sepolicy/property_contexts" +########################## +# property service keys +# +# +net.rmnet u:object_r:net_radio_prop:s0 +net.gprs u:object_r:net_radio_prop:s0 +net.ppp u:object_r:net_radio_prop:s0 +net.qmi u:object_r:net_radio_prop:s0 +net.lte u:object_r:net_radio_prop:s0 +net.cdma u:object_r:net_radio_prop:s0 +net.dns u:object_r:net_radio_prop:s0 +sys.usb.config u:object_r:system_radio_prop:s0 +ril. u:object_r:radio_prop:s0 +gsm. u:object_r:radio_prop:s0 +persist.radio u:object_r:radio_prop:s0 + +net. u:object_r:system_prop:s0 +dev. u:object_r:system_prop:s0 +runtime. u:object_r:system_prop:s0 +hw. u:object_r:system_prop:s0 +sys. u:object_r:system_prop:s0 +sys.powerctl u:object_r:powerctl_prop:s0 +sys.usb.ffs. u:object_r:ffs_prop:s0 +service. u:object_r:system_prop:s0 +wlan. u:object_r:system_prop:s0 +dhcp. u:object_r:dhcp_prop:s0 +dhcp.bt-pan.result u:object_r:pan_result_prop:s0 +bluetooth. u:object_r:bluetooth_prop:s0 + +debug. u:object_r:debug_prop:s0 +debug.db. u:object_r:debuggerd_prop:s0 +log. u:object_r:shell_prop:s0 +security.perf_harden u:object_r:shell_prop:s0 +service.adb.root u:object_r:shell_prop:s0 +service.adb.tcp.port u:object_r:shell_prop:s0 + +persist.audio. u:object_r:audio_prop:s0 +persist.logd. u:object_r:logd_prop:s0 +persist.sys. u:object_r:system_prop:s0 +persist.service. u:object_r:system_prop:s0 +persist.service.bdroid. u:object_r:bluetooth_prop:s0 +persist.security. u:object_r:system_prop:s0 + +# selinux non-persistent properties +selinux.restorecon_recursive u:object_r:restorecon_prop:s0 +selinux. u:object_r:security_prop:s0 + +# default property context +* u:object_r:default_prop:s0 + +# data partition encryption properties +vold. u:object_r:vold_prop:s0 +crypto. u:object_r:vold_prop:s0 + +# ro.build.fingerprint is either set in /system/build.prop, or is +# set at runtime by system_server. +build.fingerprint u:object_r:fingerprint_prop:s0 + +# ctl properties +ctl.bootanim u:object_r:ctl_bootanim_prop:s0 +ctl.dumpstate u:object_r:ctl_dumpstate_prop:s0 +ctl.fuse_ u:object_r:ctl_fuse_prop:s0 +ctl.mdnsd u:object_r:ctl_mdnsd_prop:s0 +ctl.ril-daemon u:object_r:ctl_rildaemon_prop:s0 +ctl.bugreport u:object_r:ctl_bugreport_prop:s0 +ctl.dhcpcd_bt-pan u:object_r:ctl_dhcp_pan_prop:s0 +ctl.console u:object_r:ctl_console_prop:s0 +ctl. u:object_r:ctl_default_prop:s0 + +# NFC properties +nfc. u:object_r:nfc_prop:s0 + +# These properties are not normally set by processes other than init. +# They are only distinguished here for setting by qemu-props on the +# emulator/goldfish. +config. u:object_r:config_prop:s0 +dalvik. u:object_r:dalvik_prop:s0 +#line 1 "device/qcom/sepolicy/common/property_contexts" +##argon +rw.tct.ftm.audio u:object_r:audio_ftm_prop:s0 +ftm.dut.instance u:object_r:audio_ftm_prop:s0 +rw.t2m.ftm.audio u:object_r:audio_ftm_prop:s0 +## + +wc_transport. u:object_r:bluetooth_prop:s0 +sys.usb_uicc. u:object_r:uicc_prop:s0 +dolby.audio. u:object_r:audio_prop:s0 +persist.bluetooth. u:object_r:bluetooth_prop:s0 +sys.ims. u:object_r:qcom_ims_prop:s0 +hw.fm. u:object_r:fm_prop:s0 +sys.usf. u:object_r:usf_prop:s0 +qc.sdk.us. u:object_r:usf_prop:s0 +radio.atfwd. u:object_r:radio_prop:s0 +ctl.qmuxd u:object_r:ctl_qmuxd_prop:s0 +ctl.netmgrd u:object_r:ctl_netmgrd_prop:s0 +ctl.port-bridge u:object_r:ctl_port-bridge_prop:s0 +min_freq_0 u:object_r:freq_prop:s0 +min_freq_4 u:object_r:freq_prop:s0 +ctl.perfd u:object_r:perfd_prop:s0 +ctl.iop u:object_r:perfd_prop:s0 +ctl.vm_bms u:object_r:vm_bms_prop:s0 +qualcomm.bluetooth. u:object_r:bluetooth_prop:s0 +ctl.ipacm u:object_r:ipacm_prop:s0 +ctl.ipacm-diag u:object_r:ipacm-diag_prop:s0 +ctl.qti u:object_r:qti_prop:s0 +ctl.sensors u:object_r:sensors_prop:s0 +ctl.msm_irqbalance u:object_r:msm_irqbalance_prop:s0 +camera. u:object_r:camera_prop:s0 +persist.camera. u:object_r:camera_prop:s0 +sf.lcd_density u:object_r:sf_lcd_density_prop:s0 +opengles.version u:object_r:opengles_prop:s0 +qualcomm.bt.hci_transport u:object_r:bluetooth_prop:s0 +ctl.mdm_helper u:object_r:mdm_helper_prop:s0 +ctl.mpdecision u:object_r:mpdecision_prop:s0 +qualcomm.perf.cores_online u:object_r:mpdecision_prop:s0 +netd.fstman. u:object_r:netd_prop:s0 +location. u:object_r:location_prop:s0 +qc.izat. u:object_r:location_prop:s0 +gps. u:object_r:location_prop:s0 +persist.rmnet.mux u:object_r:rmnet_mux_prop:s0 +qemu.hw.mainkeys u:object_r:qemu_hw_mainkeys_prop:s0 +dbg.coresight.cfg_file u:object_r:coresight_prop:s0 +ctl.hbtp u:object_r:ctl_hbtp_prop:s0 +sys.audio.init u:object_r:audio_prop:s0 +alarm_boot u:object_r:alarm_boot_prop:s0 +debug.sf.nobootanimation u:object_r:boot_animation_prop:s0 +# DOLBY_START +dolby. u:object_r:dolby_prop:s0 +# DOLBY_END +#line 1 "device/qcom/sepolicy/msm8909/property_contexts" +#Copyright (c) 2017, 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. + +media.settings.xml u:object_r:media_settings_xml_prop:s0 +media.msm8905.version u:object_r:media_msm8905_version_prop:s0 diff --git a/rootdir/recovery.fstab b/rootdir/recovery.fstab new file mode 100644 index 0000000..b7388c4 --- /dev/null +++ b/rootdir/recovery.fstab @@ -0,0 +1,43 @@ +# 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 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. + +#device mount point fstype [device2] [length=] + +/dev/block/bootdevice/by-name/system /system ext4 ro,barrier=1 wait +/dev/block/bootdevice/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered wait,check +/dev/block/bootdevice/by-name/persist /persist ext4 noatime,nosuid,nodev,barrier=1,data=ordered wait,check +/dev/block/bootdevice/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc wait,check,length=-16384 +/dev/block/mmcblk1p1 /sdcard vfat nosuid,nodev wait +/dev/block/bootdevice/by-name/boot /boot emmc defaults defaults +/dev/block/bootdevice/by-name/modemst1 /modemst1 emmc defaults defaults +/dev/block/bootdevice/by-name/modemst2 /modemst2 emmc defaults defaults +/dev/block/bootdevice/by-name/keystore /keystore emmc defaults defaults +/dev/block/bootdevice/by-name/devinfo /devinfo emmc defaults defaults +/dev/block/bootdevice/by-name/fsg /fsg emmc defaults defaults +/dev/block/bootdevice/by-name/recovery /recovery emmc defaults defaults +/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults +#/dev/block/bootdevice/by-name/custpack /custpack ext4 ro,barrier=1 wait diff --git a/rootdir/res/images/erasing_text.png b/rootdir/res/images/erasing_text.png new file mode 100644 index 0000000..f88e0e6 Binary files /dev/null and b/rootdir/res/images/erasing_text.png differ diff --git a/rootdir/res/images/error_text.png b/rootdir/res/images/error_text.png new file mode 100644 index 0000000..c3a4cc6 Binary files /dev/null and b/rootdir/res/images/error_text.png differ diff --git a/rootdir/res/images/font.png b/rootdir/res/images/font.png new file mode 100644 index 0000000..f7d85c6 Binary files /dev/null and b/rootdir/res/images/font.png differ diff --git a/rootdir/res/images/icon_error.png b/rootdir/res/images/icon_error.png new file mode 100644 index 0000000..f517e92 Binary files /dev/null and b/rootdir/res/images/icon_error.png differ diff --git a/rootdir/res/images/icon_installing.png b/rootdir/res/images/icon_installing.png new file mode 100644 index 0000000..0b64224 Binary files /dev/null and b/rootdir/res/images/icon_installing.png differ diff --git a/rootdir/res/images/icon_installing_1.png b/rootdir/res/images/icon_installing_1.png new file mode 100644 index 0000000..8512627 Binary files /dev/null and b/rootdir/res/images/icon_installing_1.png differ diff --git a/rootdir/res/images/icon_installing_10.png b/rootdir/res/images/icon_installing_10.png new file mode 100644 index 0000000..5908c0e Binary files /dev/null and b/rootdir/res/images/icon_installing_10.png differ diff --git a/rootdir/res/images/icon_installing_11.png b/rootdir/res/images/icon_installing_11.png new file mode 100644 index 0000000..3dd97e2 Binary files /dev/null and b/rootdir/res/images/icon_installing_11.png differ diff --git a/rootdir/res/images/icon_installing_12.png b/rootdir/res/images/icon_installing_12.png new file mode 100644 index 0000000..3db5e89 Binary files /dev/null and b/rootdir/res/images/icon_installing_12.png differ diff --git a/rootdir/res/images/icon_installing_2.png b/rootdir/res/images/icon_installing_2.png new file mode 100644 index 0000000..283d354 Binary files /dev/null and b/rootdir/res/images/icon_installing_2.png differ diff --git a/rootdir/res/images/icon_installing_3.png b/rootdir/res/images/icon_installing_3.png new file mode 100644 index 0000000..97fee2b Binary files /dev/null and b/rootdir/res/images/icon_installing_3.png differ diff --git a/rootdir/res/images/icon_installing_4.png b/rootdir/res/images/icon_installing_4.png new file mode 100644 index 0000000..146aaf4 Binary files /dev/null and b/rootdir/res/images/icon_installing_4.png differ diff --git a/rootdir/res/images/icon_installing_5.png b/rootdir/res/images/icon_installing_5.png new file mode 100644 index 0000000..3591870 Binary files /dev/null and b/rootdir/res/images/icon_installing_5.png differ diff --git a/rootdir/res/images/icon_installing_6.png b/rootdir/res/images/icon_installing_6.png new file mode 100644 index 0000000..d596b2f Binary files /dev/null and b/rootdir/res/images/icon_installing_6.png differ diff --git a/rootdir/res/images/icon_installing_7.png b/rootdir/res/images/icon_installing_7.png new file mode 100644 index 0000000..9154cf8 Binary files /dev/null and b/rootdir/res/images/icon_installing_7.png differ diff --git a/rootdir/res/images/icon_installing_8.png b/rootdir/res/images/icon_installing_8.png new file mode 100644 index 0000000..c92d44d Binary files /dev/null and b/rootdir/res/images/icon_installing_8.png differ diff --git a/rootdir/res/images/icon_installing_9.png b/rootdir/res/images/icon_installing_9.png new file mode 100644 index 0000000..c200ce4 Binary files /dev/null and b/rootdir/res/images/icon_installing_9.png differ diff --git a/rootdir/res/images/installing_text.png b/rootdir/res/images/installing_text.png new file mode 100644 index 0000000..a4dacd0 Binary files /dev/null and b/rootdir/res/images/installing_text.png differ diff --git a/rootdir/res/images/no_command_text.png b/rootdir/res/images/no_command_text.png new file mode 100644 index 0000000..eb34e94 Binary files /dev/null and b/rootdir/res/images/no_command_text.png differ diff --git a/rootdir/res/images/progress_empty.png b/rootdir/res/images/progress_empty.png new file mode 100644 index 0000000..7258183 Binary files /dev/null and b/rootdir/res/images/progress_empty.png differ diff --git a/rootdir/res/images/progress_fill.png b/rootdir/res/images/progress_fill.png new file mode 100644 index 0000000..becf87b Binary files /dev/null and b/rootdir/res/images/progress_fill.png differ diff --git a/rootdir/res/images/stage_empty.png b/rootdir/res/images/stage_empty.png new file mode 100644 index 0000000..251ec19 Binary files /dev/null and b/rootdir/res/images/stage_empty.png differ diff --git a/rootdir/res/images/stage_fill.png b/rootdir/res/images/stage_fill.png new file mode 100644 index 0000000..1ab79e8 Binary files /dev/null and b/rootdir/res/images/stage_fill.png differ diff --git a/rootdir/res/keys b/rootdir/res/keys new file mode 100644 index 0000000..53f5297 --- /dev/null +++ b/rootdir/res/keys @@ -0,0 +1 @@ +{64,0xc926ad21,{1795090719,2141396315,950055447,2581568430,4268923165,1920809988,546586521,3498997798,1776797858,3740060814,1805317999,1429410244,129622599,1422441418,1783893377,1222374759,2563319927,323993566,28517732,609753416,1826472888,215237850,4261642700,4049082591,3228462402,774857746,154822455,2497198897,2758199418,3019015328,2794777644,87251430,2534927978,120774784,571297800,3695899472,2479925187,3811625450,3401832990,2394869647,3267246207,950095497,555058928,414729973,1136544882,3044590084,465547824,4058146728,2731796054,1689838846,3890756939,1048029507,895090649,247140249,178744550,3547885223,3165179243,109881576,3944604415,1044303212,3772373029,2985150306,3737520932,3599964420},{3437017481,3784475129,2800224972,3086222688,251333580,2131931323,512774938,325948880,2657486437,2102694287,3820568226,792812816,1026422502,2053275343,2800889200,3113586810,165549746,4273519969,4065247892,1902789247,772932719,3941848426,3652744109,216871947,3164400649,1942378755,3996765851,1055777370,964047799,629391717,2232744317,3910558992,191868569,2758883837,3682816752,2997714732,2702529250,3570700455,3776873832,3924067546,3555689545,2758825434,1323144535,61311905,1997411085,376844204,213777604,4077323584,9135381,1625809335,2804742137,2952293945,1117190829,4237312782,1825108855,3013147971,1111251351,2568837572,1684324211,2520978805,367251975,810756730,2353784344,1175080310}} diff --git a/rootdir/sbin/adbd b/rootdir/sbin/adbd new file mode 100644 index 0000000..71e5163 Binary files /dev/null and b/rootdir/sbin/adbd differ diff --git a/rootdir/sbin/busybox b/rootdir/sbin/busybox new file mode 100644 index 0000000..d290c5b Binary files /dev/null and b/rootdir/sbin/busybox differ diff --git a/rootdir/sbin/healthd b/rootdir/sbin/healthd new file mode 100644 index 0000000..f271152 Binary files /dev/null and b/rootdir/sbin/healthd differ diff --git a/rootdir/sbin/mkfs.f2fs b/rootdir/sbin/mkfs.f2fs new file mode 100644 index 0000000..db357a4 Binary files /dev/null and b/rootdir/sbin/mkfs.f2fs differ diff --git a/rootdir/sbin/recovery b/rootdir/sbin/recovery new file mode 100644 index 0000000..af77433 Binary files /dev/null and b/rootdir/sbin/recovery differ diff --git a/rootdir/sbin/ubinfo b/rootdir/sbin/ubinfo new file mode 100644 index 0000000..a24721e Binary files /dev/null and b/rootdir/sbin/ubinfo differ diff --git a/rootdir/sbin/ubiupdatevol b/rootdir/sbin/ubiupdatevol new file mode 100644 index 0000000..1d7d2a6 Binary files /dev/null and b/rootdir/sbin/ubiupdatevol differ diff --git a/rootdir/seapp_contexts b/rootdir/seapp_contexts new file mode 100644 index 0000000..f8ddaae --- /dev/null +++ b/rootdir/seapp_contexts @@ -0,0 +1,23 @@ +isSystemServer=true domain=system_server +user=system seinfo=platform domain=system_app type=system_app_data_file +user=bluetooth seinfo=platform domain=bluetooth type=bluetooth_data_file +user=nfc seinfo=platform domain=nfc type=nfc_data_file +user=radio seinfo=platform domain=radio type=radio_data_file +user=shared_relro domain=shared_relro +user=shell seinfo=platform domain=shell type=shell_data_file +user=_isolated domain=isolated_app levelFrom=user +user=_app seinfo=platform domain=platform_app type=app_data_file levelFrom=user +user=_app domain=untrusted_app type=app_data_file levelFrom=user +user=gps domain=location_app type=location_app_data_file +user=system seinfo=platform name=com.qualcomm.services.location domain=location_app type=location_app_data_file +user=system seinfo=platform name=com.qualcomm.location.XT domain=location_app type=location_app_data_file +user=system seinfo=platform name=com.qti.dpmserviceapp domain=dpmservice_app type=dpmd_app_data_file +user=system seinfo=platform name=com.qualcomm.qti.auth.fidocryptoservice domain=qsee_svc_app type=qsee_svc_app_data_file +user=system seinfo=platform name=com.qualcomm.qti.auth.fidosuiservice domain=qsee_svc_app type=qsee_svc_app_data_file +user=system seinfo=platform name=org.simalliance.openmobileapi.service.SmartcardService domain=qsee_svc_app type=qsee_svc_app_data_file +user=system seinfo=platform name=com.qualcomm.qti.securemsm.mdtp.MdtpService domain=mdtpservice_app type=mdtp_svc_app_data_file +user=system seinfo=platform name=com.qualcomm.qti.tetherservice domain=qtitetherservice_app type=qtitetherservice_app_data_file +user=_app seinfo=platform name=com.qualcomm.location.qvtester domain=location_app type=location_app_data_file +user=_app seinfo=platform name=com.qualcomm.qct.dlt domain=location_app type=location_app_data_file +user=system seinfo=platform name=com.qualcomm.qti.auth.securesampleauthservice domain=qsee_svc_app type=qsee_svc_app_data_file +user=system seinfo=platform name=com.qualcomm.qti.auth.secureextauthservice domain=qsee_svc_app type=qsee_svc_app_data_file diff --git a/rootdir/selinux_version b/rootdir/selinux_version new file mode 100644 index 0000000..f88922c --- /dev/null +++ b/rootdir/selinux_version @@ -0,0 +1 @@ +Nokia/Nokia_8110_4G/Nokia_8110_4G:6.0.1/MMB29M/13.00.17.01:user/dev-keys \ No newline at end of file diff --git a/rootdir/sepolicy b/rootdir/sepolicy new file mode 100644 index 0000000..6d009fc Binary files /dev/null and b/rootdir/sepolicy differ diff --git a/rootdir/service_contexts b/rootdir/service_contexts new file mode 100644 index 0000000..7822c4c --- /dev/null +++ b/rootdir/service_contexts @@ -0,0 +1,222 @@ +#line 1 "external/sepolicy/service_contexts" +accessibility u:object_r:accessibility_service:s0 +account u:object_r:account_service:s0 +activity u:object_r:activity_service:s0 +alarm u:object_r:alarm_service:s0 +android.security.keystore u:object_r:keystore_service:s0 +android.service.gatekeeper.IGateKeeperService u:object_r:gatekeeper_service:s0 +appops u:object_r:appops_service:s0 +appwidget u:object_r:appwidget_service:s0 +assetatlas u:object_r:assetatlas_service:s0 +audio u:object_r:audio_service:s0 +backup u:object_r:backup_service:s0 +batteryproperties u:object_r:healthd_service:s0 +batterypropreg u:object_r:healthd_service:s0 +batterystats u:object_r:batterystats_service:s0 +battery u:object_r:battery_service:s0 +bluetooth_manager u:object_r:bluetooth_manager_service:s0 +bluetooth u:object_r:bluetooth_service:s0 +carrier_config u:object_r:radio_service:s0 +clipboard u:object_r:clipboard_service:s0 +com.android.net.IProxyService u:object_r:IProxyService_service:s0 +commontime_management u:object_r:commontime_management_service:s0 +common_time.clock u:object_r:mediaserver_service:s0 +common_time.config u:object_r:mediaserver_service:s0 +connectivity u:object_r:connectivity_service:s0 +consumer_ir u:object_r:consumer_ir_service:s0 +content u:object_r:content_service:s0 +country_detector u:object_r:country_detector_service:s0 +cpuinfo u:object_r:cpuinfo_service:s0 +dbinfo u:object_r:dbinfo_service:s0 +device_policy u:object_r:device_policy_service:s0 +deviceidle u:object_r:deviceidle_service:s0 +devicestoragemonitor u:object_r:devicestoragemonitor_service:s0 +diskstats u:object_r:diskstats_service:s0 +display.qservice u:object_r:surfaceflinger_service:s0 +display u:object_r:display_service:s0 +DockObserver u:object_r:DockObserver_service:s0 +dreams u:object_r:dreams_service:s0 +drm.drmManager u:object_r:drmserver_service:s0 +dropbox u:object_r:dropbox_service:s0 +ethernet u:object_r:ethernet_service:s0 +fingerprint u:object_r:fingerprint_service:s0 +android.hardware.fingerprint.IFingerprintDaemon u:object_r:fingerprintd_service:s0 +gfxinfo u:object_r:gfxinfo_service:s0 +graphicsstats u:object_r:graphicsstats_service:s0 +hardware u:object_r:hardware_service:s0 +hdmi_control u:object_r:hdmi_control_service:s0 +inputflinger u:object_r:inputflinger_service:s0 +input_method u:object_r:input_method_service:s0 +input u:object_r:input_service:s0 +iphonesubinfo_msim u:object_r:radio_service:s0 +iphonesubinfo2 u:object_r:radio_service:s0 +iphonesubinfo u:object_r:radio_service:s0 +ims u:object_r:radio_service:s0 +imms u:object_r:imms_service:s0 +isms_msim u:object_r:radio_service:s0 +isms2 u:object_r:radio_service:s0 +isms u:object_r:radio_service:s0 +isub u:object_r:radio_service:s0 +jobscheduler u:object_r:jobscheduler_service:s0 +launcherapps u:object_r:launcherapps_service:s0 +location u:object_r:location_service:s0 +lock_settings u:object_r:lock_settings_service:s0 +media.audio_flinger u:object_r:mediaserver_service:s0 +media.audio_policy u:object_r:mediaserver_service:s0 +media.camera u:object_r:mediaserver_service:s0 +media.camera.proxy u:object_r:cameraproxy_service:s0 +media.log u:object_r:mediaserver_service:s0 +media.player u:object_r:mediaserver_service:s0 +media.resource_manager u:object_r:mediaserver_service:s0 +media.radio u:object_r:mediaserver_service:s0 +media.sound_trigger_hw u:object_r:mediaserver_service:s0 +media_projection u:object_r:media_projection_service:s0 +media_router u:object_r:media_router_service:s0 +media_session u:object_r:media_session_service:s0 +meminfo u:object_r:meminfo_service:s0 +midi u:object_r:midi_service:s0 +mount u:object_r:mount_service:s0 +netpolicy u:object_r:netpolicy_service:s0 +netstats u:object_r:netstats_service:s0 +network_management u:object_r:network_management_service:s0 +network_score u:object_r:network_score_service:s0 +nfc u:object_r:nfc_service:s0 +notification u:object_r:notification_service:s0 +package u:object_r:package_service:s0 +permission u:object_r:permission_service:s0 +persistent_data_block u:object_r:persistent_data_block_service:s0 +phone_msim u:object_r:radio_service:s0 +phone1 u:object_r:radio_service:s0 +phone2 u:object_r:radio_service:s0 +phone u:object_r:radio_service:s0 +power u:object_r:power_service:s0 +print u:object_r:print_service:s0 +processinfo u:object_r:processinfo_service:s0 +procstats u:object_r:procstats_service:s0 +radio.phonesubinfo u:object_r:radio_service:s0 +radio.phone u:object_r:radio_service:s0 +radio.sms u:object_r:radio_service:s0 +restrictions u:object_r:restrictions_service:s0 +rttmanager u:object_r:rttmanager_service:s0 +samplingprofiler u:object_r:samplingprofiler_service:s0 +scheduling_policy u:object_r:scheduling_policy_service:s0 +search u:object_r:search_service:s0 +sensorservice u:object_r:sensorservice_service:s0 +serial u:object_r:serial_service:s0 +servicediscovery u:object_r:servicediscovery_service:s0 +simphonebook_msim u:object_r:radio_service:s0 +simphonebook2 u:object_r:radio_service:s0 +simphonebook u:object_r:radio_service:s0 +sip u:object_r:radio_service:s0 +statusbar u:object_r:statusbar_service:s0 +SurfaceFlinger u:object_r:surfaceflinger_service:s0 +task u:object_r:task_service:s0 +telecom u:object_r:telecom_service:s0 +telephony.registry u:object_r:registry_service:s0 +textservices u:object_r:textservices_service:s0 +trust u:object_r:trust_service:s0 +tv_input u:object_r:tv_input_service:s0 +uimode u:object_r:uimode_service:s0 +updatelock u:object_r:updatelock_service:s0 +usagestats u:object_r:usagestats_service:s0 +usb u:object_r:usb_service:s0 +user u:object_r:user_service:s0 +vibrator u:object_r:vibrator_service:s0 +voiceinteraction u:object_r:voiceinteraction_service:s0 +wallpaper u:object_r:wallpaper_service:s0 +webviewupdate u:object_r:webviewupdate_service:s0 +wifip2p u:object_r:wifip2p_service:s0 +wifiscanner u:object_r:wifiscanner_service:s0 +wifi u:object_r:wifi_service:s0 +window u:object_r:window_service:s0 +* u:object_r:default_android_service:s0 +#line 1 "device/qcom/sepolicy/common/service_contexts" +android.apps.IQfpService u:object_r:iqfp_service:s0 +AtCmdFwd u:object_r:atfwd_service:s0 +dpmservice u:object_r:dpmservice:s0 +listen.service u:object_r:mediaserver_service:s0 +cneservice u:object_r:cne_service:s0 +gbahttpauth u:object_r:gba_auth_service:s0 +vendor.qcom.PeripheralManager u:object_r:per_mgr_service:s0 +com.qualcomm.qti.auth.fidocryptodaemon u:object_r:fidodaemon_service:s0 +com.qualcomm.qti.qseeproxy u:object_r:qseeproxy_service:s0 +wbc_service u:object_r:wbc_service:s0 +STAProxyService u:object_r:STAProxyService:s0 +dun u:object_r:dun_service:s0 +qti.ims.connectionmanagerservice u:object_r:imscm_service:s0 +com.qti.snapdragon.sdk.display.IColorService u:object_r:color_service:s0 +improveTouch.TouchService u:object_r:improve_touch_service:s0 +improveTouch.TouchManagerService u:object_r:improve_touch_service:s0 +wfdservice u:object_r:wfdservice_service:s0 +DigitalPen u:object_r:usf_service:s0 +dts_eagle_service u:object_r:dtseagleservice_service:s0 +wfd.native.mm.service u:object_r:wfdservice_service:s0 +extphone u:object_r:radio_service:s0 +com.qualcomm.location.izat.IzatService u:object_r:izat_service:s0 +com.qualcomm.qti.secota.service.SecotaNService u:object_r:secotad_service:s0 +qti.security.seemp u:object_r:seemp_service:s0 +seempservice u:object_r:seemp_service:s0 +mdtp u:object_r:mdtpdaemon_service:s0 +qtitetherservice u:object_r:qtitetherservices_service:s0 +com.qualcomm.qti.seemp.health u:object_r:seemp_health_daemon_service:s0 +#line 1 "device/qcom/sepolicy/test/service_contexts" +# Copyright (c) 2015, 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. + +com.qualcomm.qti.auth.securesampleauthdaemon u:object_r:fidotest_service:s0 +com.qualcomm.qti.qseeproxysample u:object_r:qseeproxysample_service:s0 + +#line 1 "device/qcom/sepolicy/msm8909/service_contexts" +# Copyright (c) 2016, 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. + +# Regionalization service +regionalization u:object_r:regionalization_service:s0 diff --git a/rootdir/ueventd.qcom.rc b/rootdir/ueventd.qcom.rc new file mode 100644 index 0000000..a092571 --- /dev/null +++ b/rootdir/ueventd.qcom.rc @@ -0,0 +1,240 @@ +# Copyright (c) 2012-2014, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# the DIAG device node is not world writable/readable. +/dev/diag 0660 system qcom_diag + +/dev/genlock 0666 system system +/dev/kgsl 0666 system system +/dev/kgsl-3d0 0666 system system +/dev/kgsl-2d0 0666 root root +/dev/kgsl-2d1 0666 root root +/dev/ion 0664 system system +/dev/rtc0 0660 system system +/dev/smd0 0660 system system +/dev/smd4 0660 system system +/dev/smd_cxm_qmi 0640 radio radio +/dev/smd5 0660 system system +/dev/smd6 0660 system system +/dev/smd7 0660 bluetooth bluetooth +/dev/ccid_bridge 0660 system system +/dev/ipa 0660 net_admin net_admin +/dev/wwan_ioctl 0660 net_admin net_admin +/dev/ipaNatTable 0660 net_admin net_admin +/dev/rmnet_ctrl 0660 usb usb +/dev/dpl_ctrl 0660 usb usb + +#permissions for CSVT +/dev/smd11 0660 radio radio + +/dev/radio0 0640 system system +/dev/rfcomm0 0660 bluetooth bluetooth +/dev/ttyUSB0 0660 bluetooth bluetooth +/dev/smdcntl0 0640 radio radio +/dev/smdcntl1 0640 radio radio +/dev/smdcntl2 0640 radio radio +/dev/smdcntl3 0640 radio radio +/dev/smdcntl4 0640 radio radio +/dev/smdcntl5 0640 radio radio +/dev/smdcntl6 0640 radio radio +/dev/smdcntl7 0640 radio radio +/dev/smdcntl8 0640 radio radio +/dev/smdcnt_rev0 0640 radio radio +/dev/smdcnt_rev1 0640 radio radio +/dev/smdcnt_rev2 0640 radio radio +/dev/smdcnt_rev3 0640 radio radio +/dev/smdcnt_rev4 0640 radio radio +/dev/smdcnt_rev5 0640 radio radio +/dev/smdcnt_rev6 0640 radio radio +/dev/smdcnt_rev7 0640 radio radio +/dev/smdcnt_rev8 0640 radio radio +/dev/smuxctl32 0640 radio radio +/dev/sdioctl0 0640 radio radio +/dev/sdioctl1 0640 radio radio +/dev/sdioctl2 0640 radio radio +/dev/sdioctl3 0640 radio radio +/dev/sdioctl4 0640 radio radio +/dev/sdioctl5 0640 radio radio +/dev/sdioctl6 0640 radio radio +/dev/sdioctl7 0640 radio radio +/dev/sdioctl8 0640 radio radio +/dev/rmnet_mux_ctrl 0640 radio radio +/dev/hsicctl0 0640 radio radio +/dev/hsicctl1 0640 radio radio +/dev/hsicctl2 0640 radio radio +/dev/hsicctl3 0640 radio radio +/dev/hsicctl4 0640 radio radio +/dev/hsicctl5 0640 radio radio +/dev/hsicctl6 0640 radio radio +/dev/hsicctl7 0640 radio radio +/dev/hsicctl8 0640 radio radio +/dev/hsicctl9 0640 radio radio +/dev/hsicctl10 0640 radio radio +/dev/hsicctl11 0640 radio radio +/dev/hsicctl12 0640 radio radio +/dev/hsicctl13 0640 radio radio +/dev/hsicctl14 0640 radio radio +/dev/hsicctl15 0640 radio radio +/dev/hsicctl16 0640 radio radio +/dev/mhi_pipe_14 0640 radio radio +/dev/mhi_pipe_16 0640 radio radio +/dev/mhi_pipe_32 0640 radio radio +/dev/video* 0660 system camera +/dev/media* 0660 system camera +/dev/v4l-subdev* 0660 system camera +/dev/qseecom 0660 system drmrpc +/dev/pft 0660 system drmrpc +/dev/gemini0 0660 system camera +/dev/jpeg0 0660 system camera +/dev/jpeg1 0660 system camera +/dev/jpeg2 0660 system camera +/dev/jpeg3 0660 system camera +/dev/adsprpc-smd 0664 system system +/dev/msm_camera/* 0660 system camera +/dev/gemini/ 0660 system camera +/dev/mercury0 0660 system camera +/dev/msm_vidc_reg 0660 system audio +/dev/msm_vidc_dec 0660 system audio +/dev/msm_vidc_dec_sec 0660 system audio +/dev/msm_vidc_enc 0660 system audio +/dev/msm_rotator 0660 system system +/dev/hw_random 0600 root root +/dev/adsprpc-smd 0664 system system + +#permissions for audio +/dev/audio_slimslave 0660 system audio +/dev/msm_qcelp 0660 system audio +/dev/msm_evrc 0660 system audio +/dev/msm_wma 0660 system audio +/dev/msm_wmapro 0660 system audio +/dev/msm_amrnb 0660 system audio +/dev/msm_amrwb 0660 system audio +/dev/msm_amrwbplus 0660 system audio +/dev/msm_aac 0660 system audio +/dev/msm_multi_aac 0660 system audio +/dev/msm_aac_in 0660 system audio +/dev/msm_qcelp_in 0660 system audio +/dev/msm_evrc_in 0660 system audio +/dev/msm_amrnb_in 0640 system audio +/dev/msm_a2dp_in 0660 system audio +/dev/msm_ac3 0660 system audio +/dev/msm_audio_cal 0660 system audio +/dev/msm_cad 0660 system audio +/dev/msm_fm 0660 system audio +/dev/msm_mvs 0660 system audio +/dev/msm_pcm_lp_dec 0660 system audio +/dev/msm_preproc_ctl 0660 system audio +/dev/msm_rtac 0660 system audio +/dev/msm_voicememo 0660 system audio +/dev/smd3 0660 bluetooth net_bt_stack +/dev/smd2 0660 bluetooth net_bt_stack +/dev/ttyHSL1 0660 system system +/dev/ttyHS1 0660 system system +/dev/mdm 0660 system radio +/sys/devices/virtual/smdpkt/smdcntl* open_timeout 0664 radio radio +/dev/sdio_tty_ciq_00 0660 system system +/dev/tty_sdio_00 0660 system system +/dev/ttyGS0 0660 system system +/dev/i2c-5 0660 media media +/dev/voice_svc 0660 system audio +/dev/avtimer 0660 system audio + +# DVB devices +/dev/dvb/adapter0/demux* 0440 media media +/dev/dvb/adapter0/dvr* 0660 media media +/dev/dvb/adapter0/video* 0660 media media + +# Broadcast devices +/dev/tsc_mux0 0660 media media +/dev/tsc_ci0 0660 media media + +# sensors +/sys/devices/i2c-12/12-* pollrate_ms 0664 system system +/sys/devices/f9925000.i2c/i2c-0/0-* enable 0660 input system +/sys/devices/f9925000.i2c/i2c-0/0-* poll_delay 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* enable 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* poll_delay 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* enable_wakeup 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* max_latency 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* flush 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* calibrate 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* enable 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* poll_delay 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* enable_wakeup 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* max_latency 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* flush 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* calibrate 0660 input system +/sys/devices/virtual/optical_sensors/proximity ps_adc 0660 input system +/sys/devices/virtual/optical_sensors/proximity ps_poll_delay 0660 input system +/sys/devices/virtual/optical_sensors/lightsensor ls_auto 0660 input system +/sys/devices/virtual/optical_sensors/lightsensor ls_poll_delay 0660 input system +/sys/devices/virtual/input/input* poll 0660 input system +/sys/devices/virtual/input/input* pollrate_ms 0660 input system + +# ctp +/sys/devices/soc.0/78b9000.i2c/i2c-5/5-0038/sensors/ft5x06-proximity enable 0660 input system +/sys/devices/virtual/gesture/gesture* enable 0660 input system +/sys/devices/virtual/gesture/gesture* pocket 0660 input system + +# led +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-0045/leds/red blink 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-0045/leds/green blink 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-0045/leds/blue blink 0660 input system + +# vm_bms +/dev/vm_bms 0660 system system +/dev/battery_data 0660 system system + +# wlan +/dev/wcnss_wlan 0660 system system +/dev/wcnss_ctrl 0660 system system +#nfc permissions +/dev/nfc-nci 0660 nfc nfc +/dev/nq-nci 0660 nfc nfc +/dev/assd 0660 nfc nfc + +# UIO devices +/dev/uio0 0660 system system +/dev/uio1 0660 system system +/dev/uio2 0660 system system + +# SSR devices +/dev/subsys_* 0640 system system + +# Ultrasound device +/dev/usf1 0660 system system + +# Ramdump devices +/dev/ramdump* 0640 system system + +#Improve Touch +/dev/hbtp_input 0660 system system +/dev/hbtp_vm 0660 system system +/dev/jdi-bu21150 0660 system system + +# Add device block for FRP +/dev/block/platform/soc.0/7824900.sdhci/by-name/config 0660 system system diff --git a/rootdir/ueventd.rc b/rootdir/ueventd.rc new file mode 100644 index 0000000..9fd9979 --- /dev/null +++ b/rootdir/ueventd.rc @@ -0,0 +1,100 @@ +subsystem adf + devname uevent_devname + +/dev/null 0666 root root +/dev/zero 0666 root root +/dev/full 0666 root root +/dev/ptmx 0666 root root +/dev/tty 0666 root root +/dev/random 0666 root root +/dev/urandom 0666 root root +# Make HW RNG readable by group system to let EntropyMixer read it. +/dev/hw_random 0440 root system +/dev/ashmem 0666 root root +/dev/binder 0666 root root + +# Anyone can read the logs, but if they're not in the "logs" +# group, then they'll only see log entries for their UID. +/dev/log/* 0666 root log +/dev/pmsg0 0222 root log + +# the msm hw3d client device node is world writable/readable. +/dev/msm_hw3dc 0666 root root + +# gpu driver for adreno200 is globally accessible +/dev/kgsl 0666 root root + +# kms driver for drm based gpu +/dev/dri/* 0666 root graphics + +# these should not be world writable +/dev/diag 0660 system qcom_diag +/dev/diag_arm9 0660 radio radio +/dev/android_adb 0660 adb adb +/dev/android_adb_enable 0660 adb adb +/dev/ttyMSM0 0600 bluetooth bluetooth +/dev/uhid 0660 system net_bt_stack +/dev/uinput 0660 system bluetooth +/dev/alarm 0664 system radio +/dev/rtc0 0640 system system +/dev/tty0 0660 root system +/dev/graphics/* 0660 system graphics +/dev/msm_hw3dm 0660 system graphics +/dev/input/* 0660 root input +/dev/eac 0660 root audio +/dev/cam 0660 root camera +/dev/pmem 0660 system graphics +/dev/pmem_adsp* 0660 system audio +/dev/pmem_camera* 0660 system camera +/dev/oncrpc/* 0660 root system +/dev/adsp/* 0660 system audio +/dev/snd/* 0660 system audio +/dev/mt9t013 0660 system system +/dev/msm_camera/* 0660 system system +/dev/akm8976_daemon 0640 compass system +/dev/akm8976_aot 0640 compass system +/dev/akm8973_daemon 0640 compass system +/dev/akm8973_aot 0640 compass system +/dev/bma150 0640 compass system +/dev/cm3602 0640 compass system +/dev/akm8976_pffd 0640 compass system +/dev/lightsensor 0640 system system +/dev/msm_pcm_out* 0660 system audio +/dev/msm_pcm_in* 0660 system audio +/dev/msm_pcm_ctl* 0660 system audio +/dev/msm_snd* 0660 system audio +/dev/msm_mp3* 0660 system audio +/dev/audience_a1026* 0660 system audio +/dev/tpa2018d1* 0660 system audio +/dev/msm_audpre 0660 system audio +/dev/msm_audio_ctl 0660 system audio +/dev/htc-acoustic 0660 system audio +/dev/vdec 0660 system audio +/dev/q6venc 0660 system audio +/dev/snd/dsp 0660 system audio +/dev/snd/dsp1 0660 system audio +/dev/snd/mixer 0660 system audio +/dev/smd0 0640 radio radio +/dev/qmi 0640 radio radio +/dev/qmi0 0640 radio radio +/dev/qmi1 0640 radio radio +/dev/qmi2 0640 radio radio +/dev/bus/usb/* 0660 root usb +/dev/mtp_usb 0660 root mtp +/dev/usb_accessory 0660 root usb +/dev/tun 0660 system vpn + +# CDMA radio interface MUX +/dev/ts0710mux* 0640 radio radio +/dev/ppp 0660 radio vpn + +# sysfs properties +/sys/devices/platform/trusty.* trusty_version 0440 root log +/sys/devices/virtual/input/input* enable 0660 root input +/sys/devices/virtual/input/input* poll_delay 0660 root input +/sys/devices/virtual/usb_composite/* enable 0664 root system +/sys/devices/system/cpu/cpu* cpufreq/scaling_max_freq 0664 system system +/sys/devices/system/cpu/cpu* cpufreq/scaling_min_freq 0664 system system + +# DVB API device nodes +/dev/dvb* 0660 root system diff --git a/rootdir/verity_key b/rootdir/verity_key new file mode 100644 index 0000000..31982d9 Binary files /dev/null and b/rootdir/verity_key differ