First Batch

This commit is contained in:
Aeris 2018-11-28 06:07:20 +01:00
commit 78bae1c62d
42 changed files with 5713 additions and 0 deletions

Binary file not shown.

BIN
QPST_2.7.460.zip Normal file

Binary file not shown.

BIN
QPST_2.7.474.zip Normal file

Binary file not shown.

BIN
QpstUserGuide.pdf Normal file

Binary file not shown.

Binary file not shown.

6
README.md Normal file
View file

@ -0,0 +1,6 @@
# Steps to unpack kernel image
1. Download Image
2. Unpack zip
3. Unpack tar.md5 (rename to tar)
4. binwalk -e on boot.img

Binary file not shown.

View file

@ -0,0 +1,9 @@
#
# ADDITIONAL_DEFAULT_PROPERTIES
#
persist.security.ams.enforcing=1
ro.secure=1
ro.allow.mock.location=0
ro.debuggable=0
ro.adb.secure=1
persist.sys.usb.config=mtp

583
kernel_image/file_contexts Normal file
View file

@ -0,0 +1,583 @@
#line 1 "vendor/samsung/common/sepolicy/nsa/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:rootfs: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/accelerometer u:object_r:sensors_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/loop[0-9]* u:object_r:loop_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/pn544 u:object_r:nfc_device:s0
/dev/ppp u:object_r:ppp_device:s0
/dev/ptmx u:object_r:ptmx_device:s0
/dev/qemu_.* u:object_r:qemu_device:s0
/dev/kmsg u:object_r:kmsg_device:s0
/dev/null u:object_r:null_device:s0
/dev/nvmap u:object_r:nv_device:s0
/dev/nvhost-.* u:object_r:nv_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/snd(/.*)? u:object_r:audio_device:s0
/dev/snd/pcmC[0-9]*D[0-9]*c u:object_r:audio_capture_device:s0
/dev/socket(/.*)? u:object_r:socket_device:s0
/dev/socket/adbd u:object_r:adbd_socket:s0
/dev/socket/bluetooth u:object_r:bluetooth_socket:s0
/dev/socket/dnsproxyd u:object_r:dnsproxyd_socket:s0
/dev/socket/gps u:object_r:gps_socket:s0
/dev/socket/installd u:object_r:installd_socket:s0
/dev/socket/keystore u:object_r:keystore_socket:s0
/dev/socket/mdns u:object_r:mdns_socket:s0
/dev/socket/netd u:object_r:netd_socket:s0
/dev/socket/property_service u:object_r:property_socket:s0
/dev/socket/qemud u:object_r:qemud_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/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/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/video4[0-9] u:object_r:camera_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/auditd u:object_r:auditd_exec:s0
/system/bin/mksh u:object_r:shell_exec:s0
/system/bin/sh -- u:object_r:shell_exec:s0
/system/bin/run-as -- u:object_r:runas_exec:s0
/system/bin/app_process 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/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/installd u:object_r:installd_exec:s0
/system/bin/keystore u:object_r:keystore_exec:s0
/system/bin/debuggerd u:object_r:debuggerd_exec:s0
/system/bin/wpa_supplicant u:object_r:wpa_exec:s0
/system/bin/qemud u:object_r:qemud_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/etc/ppp(/.*)? u:object_r:ppp_system_file:s0
/system/etc/dhcpcd(/.*)? u:object_r:dhcp_system_file:s0
/system/xbin/su u:object_r:su_exec:s0
/system/vendor/bin/gpsd u:object_r:gpsd_exec:s0
/system/bin/ping u:object_r:ping_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
#############################
# Vendor files
#
/vendor(/.*)? u:object_r:system_file:s0
/vendor/bin/gpsd u:object_r:gpsd_exec:s0
#############################
# Data files
#
/data(/.*)? u:object_r:system_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/drm(/.*)? u:object_r:drm_data_file:s0
/data/gps(/.*)? u:object_r:gps_data_file:s0
/data/dalvik-cache(/.*)? u:object_r:dalvikcache_data_file:s0
/data/anr(/.*)? u:object_r:anr_data_file:s0
/data/app(/.*)? u:object_r:apk_data_file:s0
/data/app/vmdl.*\.tmp u:object_r:apk_tmp_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
# Misc data
/data/misc/audio(/.*)? u:object_r:audio_data_file:s0
/data/misc/audit(/.*)? u:object_r:audit_log:s0
/data/misc/bluetooth(/.*)? u:object_r:bluetooth_data_file:s0
/data/misc/bluedroid(/.*)? u:object_r:bluetooth_data_file:s0
/data/misc/keystore(/.*)? u:object_r:keystore_data_file:s0
/data/misc/media(/.*)? u:object_r:media_data_file:s0
/data/misc/vpn(/.*)? u:object_r:vpn_data_file:s0
/data/misc/systemkeys(/.*)? u:object_r:systemkeys_data_file:s0
/data/misc/wifi(/.*)? u:object_r:wifi_data_file:s0
/data/misc/camera(/.*)? u:object_r:camera_data_file:s0
/data/misc/dhcp(/.*)? u:object_r:dhcp_data_file:s0
/data/misc/adb(/.*)? u:object_r:adb_keys_file:s0
# App sandboxes
/data/data/.* u:object_r:app_data_file:s0
# Wallpaper file.
/data/data/com.android.settings/files/wallpaper u:object_r:wallpaper_file:s0
# Wallpaper file for other users
/data/system/users/[0-9]+/wallpaper u:object_r:wallpaper_file:s0
# Downloaded files
/data/data/com.android.providers.downloads/cache u:object_r:download_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/qemu_trace(/.*)? -- u:object_r:sysfs_writable:s0
/sys/devices/platform/nfc-power/nfc_power -- u:object_r:sysfs_nfc_power_writable:s0
/sys/class/rfkill/rfkill[0-9]*/state -- u:object_r:sysfs_bluetooth_writable:s0
/sys/class/rfkill/rfkill[0-9]*/type -- u:object_r:sysfs_bluetooth_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
#############################
# asec containers
/mnt/asec(/.*)? u:object_r:asec_apk_file:s0
/data/app-asec(/.*)? u:object_r:asec_image_file:s0
#line 1 "vendor/samsung/common/sepolicy/file_contexts"
#############################
# Carrier file
# carrier folder for Sprint(Qualcomm and SLSI)
/carrier(/.*)? u:object_r:carrier_file:s0
#############################
# Device node
#
/dev/android_ssusbcon(/.*)? u:object_r:usb_device:s0
/dev/.secure_storage(/.*)? u:object_r:secure_storage_device:s0
/dev/__kmsg u:object_r:klog_device:s0
#remove it because of conflict with NSA
#/dev/__properties__ u:object_r:prop_device:s0
/dev/batch_io u:object_r:io_device:s0
/dev/bcm2079x u:object_r:nfc_device:s0
/dev/block/platform/dw_mmc.* u:object_r:dw_mmc_device:s0
/dev/block/platform/msm_sdcc.1/by-name/param u:object_r:emmcblk_device:s0
/dev/block/vnswap0 u:object_r:swap_device:s0
/dev/bus/usb(/.*)? u:object_r:usb_bus:s0
/dev/diag u:object_r:diag_device:s0
/dev/dumpstate u:object_r:dumpstate_device:s0
/dev/i2c.* u:object_r:i2c_device:s0
## Knox Sensitive data protection, DEK engine driver access
/dev/dek_evt u:object_r:knox_dar_device:s0
/dev/dek_kek u:object_r:knox_dar_device:s0
/dev/dek_log u:object_r:knox_dar_device:s0
/dev/dek_req u:object_r:knox_dar_device:s0
/dev/sdp_mm u:object_r:knox_dar_device:s0
/dev/media[0-3]* u:object_r:camera_device:s0
/dev/mobicore u:object_r:mobicore_device:s0
/dev/mobicore-user u:object_r:mobicore-user_device:s0
/dev/pipes(/.*)? u:object_r:system_fifo:s0
/dev/pn547 u:object_r:nfc_device:s0
#fix build error - duplicate definition
#/dev/pn544 u:object_r:nfc_device:s0
/dev/pvrsrvkm u:object_r:powervr_device:s0
/dev/sec-nfc u:object_r:nfc_device:s0
/dev/shtc1_sensor u:object_r:sensor_device:s0
/dev/socket/charon u:object_r:charon_socket:s0
/dev/socket/dumpstate u:object_r:dumpstate_socket:s0
/dev/socket/cs_socket u:object_r:cs_socket:s0
/dev/socket/msockets(/.*)? u:object_r:msockets_socket:s0
/dev/socket/mtpd u:object_r:mtpd_socket:s0
/dev/socket/dir_enc_report u:object_r:vold_socket:s0
/dev/socket/drsd u:object_r:drsd_socket:s0
/dev/socket/epm u:object_r:epm_socket:s0
/dev/socket/ppm u:object_r:epm_socket:s0
/dev/socket/rild[0-9]* u:object_r:rild_socket:s0
/dev/socket/rild-debug[0-9]* u:object_r:rild_debug_socket:s0
/dev/ssp_sensorhub u:object_r:input_device:s0
/dev/timerirq u:object_r:timerirq_device:s0
/dev/ttyGS[0-9]* u:object_r:usb_serial_device:s0
/dev/ttyUSB[0-9]* u:object_r:usb_device:s0
/dev/tzic u:object_r:tzic_device:s0
/dev/usb(/.*)? u:object_r:usb_device:s0
/dev/usb.* u:object_r:usb_device:s0
/dev/usb/tty.* u:object_r:usb_device:s0
/dev/usb_mtp_gadget.* u:object_r:mtp_device:s0
/dev/validity(/.*)? u:object_r:validity_device:s0
/dev/vfsspi u:object_r:vfsspi_device:s0
/dev/block/mmcblk0p[0-9]* u:object_r:emmcblk_device:s0
/dev/block/mmcblk[0-9]* u:object_r:emmcblk_device:s0
/dev/block/mmcblk1p.* u:object_r:emmcblk_device:s0
/dev/block/mmcblk1p1 u:object_r:emmcblk_device:s0
####################################
# sysfs files
#
/sys(/.*)? u:object_r:sysfs:s0
/sys/class/power_supply/battery/music -- u:object_r:sysfs_music_power_writable:s0
/sys/class/devfreq/exynos5-busfreq-mif(/.*)? -- u:object_r:sysfs_exynos_writable:s0
/sys/class/lcd(/.*)? -- u:object_r:sysfs_lcd_writable:s0
#############################
# System files
#
/system/bin/actlmand u:object_r:actlmand_exec:s0
/system/bin/androidshmservice u:object_r:androidshmservice_exec:s0
/system/bin/apaservice u:object_r:apaservice_exec:s0
/system/bin/at_distributor u:object_r:at_distributor_exec:s0
/system/bin/bintvoutservice u:object_r:bintvoutservice_exec:s0
/system/bin/bootanimation u:object_r:bootanimation_exec:s0
/system/bin/bootchecker u:object_r:bootchecker_exec:s0
/system/bin/bugreport u:object_r:bugreport_exec:s0
/system/bin/cellgeofenced u:object_r:cellgeofenced_exec:s0
/system/bin/charon u:object_r:charon_exec:s0
/system/bin/connfwexe u:object_r:connfwexe_exec:s0
/system/bin/createsystemfile u:object_r:createsystemfile_exec:s0
/system/bin/cs u:object_r:cs_exec:s0
/system/bin/ddexe u:object_r:ddexe_exec:s0
/system/bin/diag_uart_log u:object_r:diag_uart_log_exec:s0
/system/bin/drsd u:object_r:drsd_exec:s0
/system/bin/dttexe u:object_r:dttexe_exec:s0
/system/bin/dumpstate u:object_r:dumpstate_exec:s0
/system/bin/dumpsys u:object_r:dumpsys_exec:s0
/system/bin/edmaudit u:object_r:edmaudit_exec:s0
/system/bin/epmd u:object_r:epmd_exec:s0
/system/bin/gpu_snapshotd u:object_r:gpu_snapshotd_exec:s0
/system/bin/gsiff_daemon u:object_r:gsiff_daemon_exec:s0
/system/bin/icd u:object_r:icd_exec:s0
/system/bin/immvibed u:object_r:immvibed_exec:s0
/system/bin/imsqmidaemon u:object_r:imsqmidaemon_exec:s0
/system/bin/insthk u:object_r:insthk_exec:s0
/system/bin/ipruleset u:object_r:ipruleset_exec:s0
/system/bin/IPSecService u:object_r:IPSecService_exec:s0
/system/bin/jackservice u:object_r:jackservice_exec:s0
/system/bin/kiesexe u:object_r:kiesexe_exec:s0
/system/bin/logwrapper u:object_r:logwrapper_exec:s0
/system/bin/mdnsd u:object_r:mdnsd_exec:s0
/system/bin/mdm_helper u:object_r:mdm_helper_exec:s0
/system/bin/mdm_helper_proxy u:object_r:mdm_helper_proxy_exec:s0
/system/bin/netmgrd u:object_r:netmgrd_exec:s0
/system/bin/npsmobex u:object_r:mobexdaemon_exec:s0
/system/bin/nqs u:object_r:nqs_exec:s0
/system/bin/p2p_supplicant u:object_r:p2p_supplicant_exec:s0
/system/bin/ptt_socket_app u:object_r:ptt_socket_app_exec:s0
/system/bin/prepare_param.sh u:object_r:prepare_param_sh_file:s0
/system/bin/rfs_access u:object_r:rfs_access_exec:s0
/system/bin/samsungpowersoundplay u:object_r:samsungpowersoundplay_exec:s0
/system/bin/sec-ril u:object_r:sec-ril_exec:s0
/system/bin/secure_storage_daemon u:object_r:secure_storage_exec:s0
/system/bin/sensorhubservice u:object_r:sensorhubservice_exec:s0
/system/bin/selinux-network.sh u:object_r:selinux_net_exec:s0
/system/bin/ss_conn_daemon u:object_r:ss_conn_daemon_exec:s0
/system/bin/sshd u:object_r:sshd_exec:s0
/system/bin/sysmon u:object_r:sysmon_exec:s0
/system/bin/tima_dump_log u:object_r:tima_dump_exec:s0
/system/bin/vcsFPService u:object_r:vcsFPService_exec:s0
/system/bin/vfmService u:object_r:vcsFPService_exec:s0
/system/bin/wcnss_service u:object_r:wcnss_service_exec:s0
/system/bin/wpa_supplicant_real u:object_r:wpa_exec:s0
/system/bin/sysprof u:object_r:sysprof_exec:s0
/system/etc/install-recovery.sh u:object_r:flash_recovery_sh_file:s0
/system/lib(/.*)? u:object_r:system_library_file:s0
/system/etc/event-log-tags u:object_r:event_log_tags_file:s0
#############################
# EFS file
#
/efs/bluetooth(/.*)? u:object_r:bluetooth_efs_file:s0
/efs/imei(/.*)? u:object_r:imei_efs_file:s0
/efs/FactoryApp(/.*)? u:object_r:app_efs_file:s0
/efs/wifi(/.*)? u:object_r:wifi_efs_file:s0
#############################
# DATA file
#
/data/data/.drm(/.*)? u:object_r:drm_data_file:s0
/data/data/imsqmisocket u:object_r:system_data_file:s0
/data/app-lib(/.*)? u:object_r:app_library_file:s0
/data/bcmnfc(/.*)? u:object_r:nfc_data_file:s0
/data/log(/.*)? u:object_r:dumplog_data_file:s0
/data/media(/.*)? u:object_r:media_data_file:s0
/data/media.tmp(/.*)? u:object_r:media_data_file:s0
/data/media/obb(/.*)? u:object_r:obb_apk_file:s0
#fix build error - duplicate definition
#/data/misc/audio(/.*)? u:object_r:audio_data_file:s0
/data/misc/radio(/.*)? u:object_r:radio_data_file:s0
/data/system/users(/.*)/wallpaper u:object_r:wallpaper_file:s0
/data/.container_[1-9](/.*)? u:object_r:container_app_data_backend:s0
/data/container(/.*)? u:object_r:container_app_data_backend:s0
/data/clipboard/knox(/.*)? u:object_r:knox_clipboard_file:s0
/data/clipboard1[0-9][0-9](/.*)? u:object_r:knox_clipboard_file:s0
/data/knox(/.*)? u:object_r:container_app_data_backend:s0
/data/system/container(/.*)? u:object_r:security_file:s0
/data/sc(/.*)? u:object_r:smartcard_data_file:s0
# personalpage path is not used by (hyojin45.son)
# /data/personalpage(/.*)? u:object_r:personal_page_file:s0
# new path for personalpage is privatemode.K is first model for personalpage.
/data/privatemode(/.*)? u:object_r:personal_page_file:s0
/data/KEqvTaYEYkuJr1Mn+t-SwFvbgYo_(/.*)? u:object_r:tima_keystore_file:s0
/data/misc/tima(/.*)? u:object_r:tima_log:s0
/data/data/com.android.shell(/.*)? u:object_r:shell_data_file:s0
#############################
# MISC partition file
#
/hidden(/.*)? u:object_r:hidden_file:s0
/persdata(/.*)? u:object_r:persdata_data_file:s0
/persist(/.*)? u:object_r:persist_data_file:s0
/preload(/.*)? u:object_r:hidden_file:s0
/tombstone(/.*)? u:object_r:tombstone_data_file:s0
/tombstones(/.*)? u:object_r:tombstones_data_file:s0
#############################
# MNT
#
/mnt/obb(/.*)? u:object_r:obb_apk_file:s0
/mnt/secure/asec(/.*)? u:object_r:asec_apk_file:s0
/mnt/secure/staging(/.*)? u:object_r:asec_image_file:s0
#line 1 "vendor/samsung/common/sepolicy/qcom_common/file_contexts"
#############################
# Device node
#
/dev/adsprpc-smd u:object_r:adsprpc_device:s0
/dev/android_mbim u:object_r:android_mbim:s0
/dev/android_rndis_qc u:object_r:radio_device:s0
/dev/audience_a2220 u:object_r:audio_device:s0
/dev/block/mmcblk0rpmb u:object_r:mmcblk0rpmb_device:s0
/dev/block/platform/msm_sdcc.1/by-name/fsg u:object_r:fsg_device:s0
/dev/block/platform/msm_sdcc.1/by-name/m9kefs[0-3]* u:object_r:emmcblk_device:s0
/dev/block/platform/msm_sdcc.1/by-name/modem u:object_r:modem_device:s0
/dev/block/platform/msm_sdcc.1/by-name/modemst[1-2]* u:object_r:emmcblk_device:s0
/dev/block/platform/msm_sdcc.1/by-name/ssd u:object_r:emmcblk_device:s0
/dev/btlock u:object_r:hci_attach_dev:s0
#ciq_bridge PLM
/dev/ciq_bridge u:object_r:ciqbridge_device:s0
/dev/cpu_dma_latency u:object_r:cpu_dma_latency_device:s0
/dev/dun u:object_r:dun_device:s0
/dev/efs_bridge u:object_r:radio_device:s0
/dev/efs_hsic_bridge u:object_r:radio_device:s0
/dev/gemini0 u:object_r:camera_device:s0
/dev/genlock u:object_r:genlock:s0
/dev/gsm_ipc0 u:object_r:radio_device:s0
/dev/gsm_boot0 u:object_r:radio_device:s0
/dev/gsm_multi_pdp u:object_r:radio_device:s0
/dev/gsm_rfs0 u:object_r:radio_device:s0
/dev/hsicctl[0-3]* u:object_r:qmuxd_device:s0
#fix build error - duplicate definition
#/dev/hw_random u:object_r:hw_random_device:s0
/dev/kgsl-[0-9a-z]* u:object_r:kgsl_device:s0
/dev/ks_bridge u:object_r:radio_device:s0
/dev/ks_hsic_bridge u:object_r:radio_device:s0
/dev/mdm u:object_r:radio_device:s0
/dev/mhl_dev u:object_r:mhl_device:s0
/dev/msm_aac u:object_r:audio_device:s0
/dev/msm_aac_in u:object_r:audio_device:s0
/dev/msm_acdb u:object_r:audio_device:s0
/dev/msm_amrnb u:object_r:audio_device:s0
/dev/msm_amrnb_in u:object_r:audio_device:s0
/dev/msm_amrwb u:object_r:audio_device:s0
/dev/msm_amrwb_in u:object_r:audio_device:s0
/dev/msm_amrwbplus u:object_r:audio_device:s0
/dev/msm_camera(/.*)? u:object_r:camera_device:s0
/dev/msm_dsps u:object_r:input_device:s0
/dev/msm_evrc u:object_r:audio_device:s0
/dev/msm_evrc_in u:object_r:audio_device:s0
/dev/msm_mp3 u:object_r:audio_device:s0
/dev/msm_multi_aac u:object_r:audio_device:s0
/dev/msm_qcelp u:object_r:audio_device:s0
/dev/msm_qcelp_in u:object_r:audio_device:s0
/dev/msm_rotator u:object_r:graphics_device:s0
/dev/msm_rtac u:object_r:audio_device:s0
/dev/msm_sps u:object_r:input_device:s0
/dev/msm_vidc_.* u:object_r:audio_device:s0
/dev/msm_wma u:object_r:audio_device:s0
/dev/msm_wmapro u:object_r:audio_device:s0
/dev/msm_wma_pro u:object_r:audio_device:s0
/dev/network_latency u:object_r:radio_device:s0
/dev/network_throughput u:object_r:radio_device:s0
/dev/nmea u:object_r:radio_device:s0
/dev/pmem_audio u:object_r:audio_device:s0
/dev/qmi[0-9]* u:object_r:radio_device:s0
/dev/qseecom u:object_r:qseecom_device:s0
/dev/ramdump_dsps u:object_r:ramdump_device:s0
/dev/ramdump_riva u:object_r:ramdump_device:s0
/dev/ramdump_smem-dsps u:object_r:ramdump_device:s0
/dev/rfkill u:object_r:rfkill_device:s0
/dev/rmnet_mux_ctrl u:object_r:radio_device:s0
/dev/rtc[0-9]* u:object_r:clock_device:s0
/dev/smd[0-9]* u:object_r:smd_device:s0
/dev/smd_cxm_qmi u:object_r:smd_cxm_qmi:s0
/dev/smd_pkt_loopback u:object_r:smd_pkt_loopback:s0
/dev/smd_sns_adsp u:object_r:smd_sns_adsp:s0
/dev/smd_sns_dsps u:object_r:smd_sns_dsps:s0
/dev/smdcntl[0-9]* u:object_r:smd_cntl:s0
/dev/smem_log u:object_r:log_device:s0
/dev/socket/audio u:object_r:audio_socket:s0
/dev/socket/hdmid u:object_r:hdmi_socket:s0
#remove it because already defined in new version of NSA release
#/dev/socket/mdns u:object_r:mdns_socket:s0
/dev/socket/mpctl u:object_r:mpctl_socket:s0
/dev/socket/mpdecision(/.*)? u:object_r:mpdecision_socket:s0
/dev/socket/pps u:object_r:pps_socket:s0
/dev/socket/qmux_audio u:object_r:qmux_audio_socket:s0
/dev/socket/qmux_bluetooth(/.*)? u:object_r:qmux_bluetooth_socket:s0
/dev/socket/qmux_gps u:object_r:qmux_gps_socket:s0
/dev/socket/qmux_radio u:object_r:qmux_radio_socket:s0
/dev/socket/radio u:object_r:radio_socket:s0
/dev/tspdrv u:object_r:tspdrv_device:s0
/dev/ttyHS[0-9]* u:object_r:bluetooth_serial_device:s0
/dev/ttyHSL[0-9]* u:object_r:radio_device:s0
/dev/usf1 u:object_r:usf_device:s0
/dev/umts_ipc0 u:object_r:radio_device:s0
/dev/v4l-subdev[0-9]* u:object_r:camera_device:s0
/dev/wcnss_wlan u:object_r:wifi_device:s0
/dev/jpeg[0-2]* u:object_r:camera_device:s0
/dev/radio0 u:object_r:fm_radio_device:s0
#############################
# DATA file
#
/data/misc/gpsone_d(/.*)? u:object_r:gps_data_file:s0
/data/misc/location(/.*)? u:object_r:gps_data_file:s0
/data/time(/.*)? u:object_r:time_data_file:s0
#############################
# EFS file
#
/efs/drm(/.*)? u:object_r:drm_efs_file:s0
#############################
# System files
#
/system/bin/ATFWD-daemon u:object_r:ATFWD-daemon_exec:s0
/system/bin/adsprpcd u:object_r:adsprpcd_exec:s0
/system/bin/audiod u:object_r:audiod_exec:s0
/system/bin/charger_monitor u:object_r:charger_monitor_exec:s0
/system/bin/cnd u:object_r:cnd_exec:s0
/system/bin/efsks u:object_r:efsks_exec:s0
/system/bin/geomagneticd u:object_r:geomagneticd_exec:s0
/system/bin/gpsone_daemon u:object_r:gpsone_daemon_exec:s0
/system/bin/ks u:object_r:ks_exec:s0
/system/bin/location-mq u:object_r:location-mq_exec:s0
/system/bin/lowi-server u:object_r:lowi-server_exec:s0
/system/bin/mcDriverDaemon u:object_r:mobicoredaemon_exec:s0
/system/bin/mcDriverDaemonQC u:object_r:mobicoredaemon_exec:s0
/system/bin/mm-pp-daemon u:object_r:mm-pp-daemon_exec:s0
/system/bin/mm-qcamera-daemon u:object_r:mm-qcamera-daemon_exec:s0
/system/bin/mpdecision u:object_r:mpdecision_exec:s0
/system/bin/qcks u:object_r:qcks_exec:s0
/system/bin/qcom-system-daemon u:object_r:qcom-system-daemon_exec:s0
/system/bin/qmuxd u:object_r:qmuxd_exec:s0
/system/bin/qosmgr u:object_r:qosmgr_exec:s0
/system/bin/qrngd u:object_r:qrngd_exec:s0
/system/bin/qseecomd u:object_r:qseecomd_exec:s0
/system/bin/quipc_igsn u:object_r:quipc_igsn_exec:s0
/system/bin/quipc_main u:object_r:quipc_main_exec:s0
/system/bin/rmt_storage u:object_r:rmt_storage_exec:s0
/system/bin/scranton_RD u:object_r:playready_exec:s0
/system/bin/secstarter u:object_r:secstarter_exec:s0
/system/bin/smdexe u:object_r:smdexe_exec:s0
/system/bin/ssr_diag u:object_r:ssr_diag_exec:s0
/system/bin/thermal-engine u:object_r:thermald_exec:s0
/system/bin/thermald u:object_r:thermald_exec:s0
/system/bin/time_daemon u:object_r:time_daemon_exec:s0
/system/bin/wiperiface u:object_r:wiperiface_exec:s0
#line 1 "vendor/samsung/common/sepolicy/vmware/file_contexts"
# VMware daemon
/system/bin/mvpd u:object_r:vmwared_exec:s0
# Vmware device
/dev/mvpkm u:object_r:vmware_device:s0
# VMWare sysfs
/sys/hypervisor(/.*) u:object_r:sysfs_vmware_writable:s0
#line 1 "vendor/samsung/common/sepolicy/qcom_common/carrier_spr/file_contexts"
#### Kineto for secsprextension/java/com/oem/smartwifisupport
/dev/socket/cfiat u:object_r:cfiat_socket:s0
/dev/socket/kipc u:object_r:kipc_socket:s0
#############################
# ItsOn file
#
/system/vendor/itson(/.*)? u:object_r:sprintitson_file:s0
#/vendor/app(/.*)? u:object_r:sprintitson_file:s0
/carrier/itson(/.*)? u:object_r:sprintitson_file:s0
/system/vendor/itson/itson-bootstrapper.sh u:object_r:itsonbs_exec:s0

20
kernel_image/fstab.qcom Normal file
View file

@ -0,0 +1,20 @@
# 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.
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,errors=panic wait
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 nosuid,nodev,noatime,noauto_da_alloc,discard,journal_async_commit,errors=panic wait,check,encryptable=footer
#
/devices/platform/msm_sdcc.2/mmc_host/mmc2,/devices/platform/msm_sdcc.3/mmc_host/mmc1 auto vfat default voldmanaged=extSdCard:auto,noemulatedsd
/devices/platform/msm_hsusb_host/usb*sda auto vfat default voldmanaged=UsbDriveA:auto
/devices/platform/msm_hsusb_host/usb*sdb auto vfat default voldmanaged=UsbDriveB:auto
/devices/platform/msm_hsusb_host/usb*sdc auto vfat default voldmanaged=UsbDriveC:auto
/devices/platform/msm_hsusb_host/usb*sdd auto vfat default voldmanaged=UsbDriveD:auto
/devices/platform/msm_hsusb_host/usb*sde auto vfat default voldmanaged=UsbDriveE:auto
/devices/platform/msm_hsusb_host/usb*sdf auto vfat default voldmanaged=UsbDriveF:auto

BIN
kernel_image/init Executable file

Binary file not shown.

147
kernel_image/init.bt.rc Executable file
View file

@ -0,0 +1,147 @@
on boot
# for bluetooth
service hciattach /system/bin/sh /system/etc/init.qcom.bt.sh
class late_start
user bluetooth
group qcom_oncrpc bluetooth net_bt_admin system radio
disabled
oneshot
# for bluetooth rf test.
service bt_dut_cmd /system/bin/qcom_dut
group bluetooth net_bt_admin
class main
disabled
oneshot
service bt_audio_dut_cmd /system/bin/qcom_audio_dut
group bluetooth net_bt_admin
class main
disabled
## LE 2 wired Test
service LE_dut_cmd_on /system/bin/LE_dut --le_enable
group bluetooth net_bt_admin
disabled
oneshot
service LE_dut_cmd_off /system/bin/LE_dut --le_disable
group bluetooth net_bt_admin
disabled
oneshot
## LE Tx Ouput Power
service LE_tx_low /system/bin/LE_dut --tx_low
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_tx_mid /system/bin/LE_dut --tx_mid
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_tx_max /system/bin/LE_dut --tx_max
class main
group bluetooth net_bt_admin
disabled
oneshot
## LE Tx Modulation Characteristics
# Payload 0x0F
service LE_tx_M_low /system/bin/LE_dut --tx_m_low
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_tx_M_mid /system/bin/LE_dut --tx_m_mid
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_tx_M_max /system/bin/LE_dut --tx_m_max
class main
group bluetooth net_bt_admin
disabled
oneshot
# Payload 0xAA
service LE_tx_M_1_low /system/bin/LE_dut --tx_m_1_low
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_tx_M_1_mid /system/bin/LE_dut --tx_m_1_mid
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_tx_M_1_max /system/bin/LE_dut --tx_m_1_max
class main
group bluetooth net_bt_admin
disabled
oneshot
## Carrier Frequency
service LE_tx_C_low /system/bin/LE_dut --tx_c_low
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_tx_C_mid /system/bin/LE_dut --tx_c_mid
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_tx_C_max /system/bin/LE_dut --tx_c_max
class main
group bluetooth net_bt_admin
disabled
oneshot
## In-band Emissions
service LE_tx_I_low /system/bin/LE_dut --tx_i_low
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_tx_I_max /system/bin/LE_dut --tx_i_max
class main
group bluetooth net_bt_admin
disabled
oneshot
## Rx Test
service LE_rx_ready_low /system/bin/LE_dut --rx_low
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_rx_ready_mid /system/bin/LE_dut --rx_mid
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_rx_ready_max /system/bin/LE_dut --rx_max
class main
group bluetooth net_bt_admin
disabled
oneshot
service LE_test_end /system/bin/LE_dut --test_end
class main
group bluetooth net_bt_admin
disabled
oneshot

143
kernel_image/init.carrier.rc Executable file
View file

@ -0,0 +1,143 @@
# Copyright (c) 2009-2012, Code Aurora Forum. 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 Code Aurora 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.
#
on init
# Support Preload install apks
mkdir /preload 0771 system system
on fs
wait /dev/block/platform/msm_sdcc.1/by-name/modem
mount vfat /dev/block/platform/msm_sdcc.1/by-name/modem /firmware ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337
on boot
# permissions for bluetooth.
setprop ro.bt.bdaddr_path "/efs/bluetooth/bt_addr"
chown bluetooth net_bt_stack ro.bt.bdaddr_path
chown bluetooth net_bt_stack /dev/ttyHS0
chmod 0660 /dev/ttyHS0
chmod 0660 /sys/class/rfkill/rfkill0/state
chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/state
chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/type
# SSWAP
write /proc/sys/vm/swappiness 130
# bluetooth LPM
chmod 0660 /proc/bluetooth/sleep/lpm
chmod 0220 /proc/bluetooth/sleep/btwrite
chown bluetooth net_bt_stack /proc/bluetooth/sleep/lpm
chown bluetooth net_bt_stack /proc/bluetooth/sleep/btwrite
chmod 0600 /dev/btlock
chown bluetooth bluetooth /dev/btlock
chown radio system /sys/class/sec/switch/usb_sel
chown radio system /sys/class/sec/switch/usb_state
chown radio system /sys/class/sec/switch/uart_sel
chown radio system /sys/class/sec/switch/apo_factory
# Permissions for silent crash service
chown system system /dev/ramdump_modem_fw
chown system system /dev/ramdump_modem_sw
chown system system /dev/ramdump_smem-modem
chown system system /dev/ramdump_kernel_log
chmod 0600 /dev/ramdump_modem_fw
chmod 0600 /dev/ramdump_modem_sw
chmod 0600 /dev/ramdump_smem-modem
# Define TCP buffer sizes for various networks
# ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax,
setprop net.tcp.buffersize.default 4096,87380,704512,4096,16384,110208
setprop net.tcp.buffersize.wifi 524288,1048576,2097152,262144,524288,1048576
setprop net.tcp.buffersize.lte 524288,1048576,2560000,524288,1048576,2560000
setprop net.tcp.buffersize.umts 4094,87380,704512,4096,16384,110208
setprop net.tcp.buffersize.hspa 4092,87380,704512,4096,16384,262144
setprop net.tcp.buffersize.hsupa 4092,87380,704512,4096,16384,262144
setprop net.tcp.buffersize.hsdpa 4092,87380,704512,4096,16384,110208
setprop net.tcp.buffersize.hspap 4092,87380,704512,4096,16384,262144
setprop net.tcp.buffersize.edge 4093,26280,35040,4096,16384,35040
setprop net.tcp.buffersize.gprs 4092,30000,30000,4096,8760,11680
setprop net.tcp.buffersize.evdo 4094,87380,262144,4096,16384,262144
on fs
#For Absolute Persistence Partition
mkdir /persdata 0755 system system
mkdir /persdata/absolute 0750 system system
# Support Preload install apks
wait /dev/block/platform/msm_sdcc.1/by-name/hidden
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/hidden /preload nosuid nodev ro barrier=1
setprop storage.preload.complete 1
wait /dev/block/platform/msm_sdcc.1/by-name/modem
mount vfat /dev/block/platform/msm_sdcc.1/by-name/modem /firmware ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337
wait /dev/block/platform/msm_sdcc.1/by-name/persdata
check_fs /dev/block/platform/msm_sdcc.1/by-name/persdata ext4
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/persdata /persdata/absolute nosuid nodev barrier=1
chown system system /persdata
chmod 0755 /persdata
chown system system /persdata/absolute
chmod 0750 /persdata/absolute
# TVout
service TvoutService_C /system/bin/bintvoutservice
class main
user system
group system
# MM Property
#on property:sys.qseecomd.enable=true
# exec /system/bin/scranton_RD
#InsideSecure VPN Client
service vpnclientpm /system/bin/vpnclientpm -u 1000 -g 1000 \
-O /data/data/com.ipsec.service/vpnclientpm.txt \
-U rmnet,rmnet_usb,wlan,bt-pan,rndis,p2p,eth
socket vpnclientpm seqpacket 0600 system system
disabled
on property:service.vpnclientpm.enable=1
start vpnclientpm
on property:service.vpnclientpm.enable=0
stop vpnclientpm
# SSWAP
service swapon /sbin/sswap -s
class core
user root
group root
seclabel u:r:sswap:s0
oneshot

40
kernel_image/init.container.rc Executable file
View file

@ -0,0 +1,40 @@
on early-init
on init
# create Container (KNOX 1.0) mountpoints for KNOX Migration
mkdir /knox_data 0775 root system
mkdir /knox_data/userdata 0775 system system
mkdir /knox_data/appdata 0775 system system
mkdir /mnt/shell/knox-emulated 0700 system system
mkdir /storage/extSdCard 0000 system system
symlink /storage/extSdCard /mnt/extSdCard
symlink /mnt/shell/knox-emulated /storage/knox-emulated
export SECONDARY_STORAGE /storage/extSdCard
on post-fs-data
# create knox filesystem structure
mkdir /data/knox 0771 system system
mkdir /data/knox/data 0771 system system
mkdir /data/knox/sdcard 0771 system system
mkdir /data/knox/ext_sdcard 0771 system system
mkdir /data/knox/app 0771 system system
mkdir /data/knox/tmp 0771 system system
export KNOX_STORAGE /data/knox/ext_sdcard
restorecon /data/knox
on boot
# virtual sdcard daemon running as system (1000)
service knox /system/bin/sdcard /data/knox/sdcard /mnt/shell/knox-emulated 1000 1000
class late_start
oneshot
start knox

12
kernel_image/init.environ.rc Executable file
View file

@ -0,0 +1,12 @@
# set up the global environment
on init
export PATH /sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
export LD_LIBRARY_PATH /vendor/lib:/system/lib
export ANDROID_BOOTLOGO 1
export ANDROID_ROOT /system
export ANDROID_ASSETS /system/app
export ANDROID_DATA /data
export ANDROID_STORAGE /storage
export ASEC_MOUNTPOINT /mnt/asec
export LOOP_MOUNTPOINT /mnt/obb
export BOOTCLASSPATH /system/framework/core.jar:/system/framework/conscrypt.jar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/framework2.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/webviewchromium.jar:/system/framework/sec_edm.jar:/system/framework/secocsp.jar:/system/framework/seccamera.jar:/system/framework/scrollpause.jar:/system/framework/stayrotation.jar:/system/framework/smartfaceservice.jar:/system/framework/commonimsinterface.jar:/system/framework/org.codeaurora.Performance.jar

View file

@ -0,0 +1,199 @@
#!/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.
#
# Set platform variables
target=`getprop ro.board.platform`
soc_hwplatform=`cat /sys/devices/system/soc/soc0/hw_platform` 2> /dev/null
soc_hwid=`cat /sys/devices/system/soc/soc0/id` 2> /dev/null
soc_hwver=`cat /sys/devices/system/soc/soc0/platform_version` 2> /dev/null
# 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
;;
*)
case "$dserial" in
"1")
start console
;;
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
* )
case $target in
"msm8960")
echo "$fake_batt_capacity" > /sys/module/pm8921_bms/parameters/bms_fake_battery
;;
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

View file

@ -0,0 +1,149 @@
#!/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
soc_hwplatform=`cat /sys/devices/system/soc/soc0/hw_platform` 2> /dev/null
soc_hwid=`cat /sys/devices/system/soc/soc0/id` 2> /dev/null
soc_hwver=`cat /sys/devices/system/soc/soc0/platform_version` 2> /dev/null
log -t BOOT -p i "MSM target '$1', SoC '$soc_hwplatform', HwID '$soc_hwid', SoC ver '$soc_hwver'"
case "$1" 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
"142") #8x30 QRD
setprop ro.sf.lcd_density 320
;;
"109")
setprop ro.sf.lcd_density 160
;;
*)
setprop ro.sf.lcd_density 240
;;
esac
;;
esac
#Set up MSM-specific configuration
case "$soc_hwid" in
87)
#8960
setprop debug.composition.type dyn
;;
153 | 154 | 155 | 156 | 157 | 138 | 179 | 180 | 181)
#8064 V2 PRIME | 8930AB | 8630AB | 8230AB | 8030AB | 8960AB | 8130/AA/AB
setprop debug.composition.type c2d
;;
*)
;;
esac
case "$soc_hwid" in
87 | 116 | 117 | 118 | 119 | 138 | 142 | 143 | 144 | 154 | 155 | 156 | 157 | 179 | 180 | 181)
#Disable subsystem restart for 8x30 and 8960
setprop persist.sys.ssr.restart_level 1
;;
*)
;;
esac
;;
esac
# Setup HDMI related nodes & permissions
# HDMI can be fb1 or fb2
# Loop through the sysfs nodes and determine
# the HDMI(dtv panel)
fb_cnt=0
for file in /sys/class/graphics/fb*
do
value=`cat $file/msm_fb_type`
case "$value" in
"dtv panel")
chown -h system.graphics $file/hpd
chown -h system.graphics $file/vendor_name
chown -h system.graphics $file/product_description
chmod -h 0664 $file/hpd
chmod -h 0664 $file/vendor_name
chmod -h 0664 $file/product_description
chmod -h 0664 $file/video_mode
chmod -h 0664 $file/format_3d
# create symbolic link
ln -s "/dev/graphics/fb"$fb_cnt /dev/graphics/hdmi
# Change owner and group for media server and surface flinger
chown -h system.system $file/format_3d;;
esac
fb_cnt=$(( $fb_cnt + 1))
done
# Set date to a time after 2008
# This is a workaround for Zygote to preload time related classes properly
date -s 20090102.130000

801
kernel_image/init.qcom.rc Executable file
View file

@ -0,0 +1,801 @@
# Copyright (c) 2009-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.
#
import init.qcom.usb.rc
import init.target.rc
import init.ril.rc
on init
# See storage config details at http://source.android.com/tech/storage/
mkdir /mnt/media_rw/extSdCard 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveA 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveB 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveC 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveD 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveE 0700 media_rw media_rw
mkdir /mnt/media_rw/UsbDriveF 0700 media_rw media_rw
# Set permissions for persist partition
mkdir /persist 0771 system system
# See storage config details at http://source.android.com/tech/storage/
mkdir /mnt/shell/emulated 0700 shell shell
mkdir /storage/emulated 0555 root root
export EXTERNAL_STORAGE /storage/emulated/legacy
export EMULATED_STORAGE_SOURCE /mnt/shell/emulated
export EMULATED_STORAGE_TARGET /storage/emulated
# This is no longer supported from KK release.
#export BOOTCLASSPATH ${BOOTCLASSPATH}:/system/framework/qcom.fmradio.jar
# Support legacy paths
symlink /storage/emulated/legacy /sdcard
symlink /storage/emulated/legacy /mnt/sdcard
symlink /storage/emulated/legacy /storage/sdcard0
symlink /mnt/shell/emulated/0 /storage/emulated/legacy
# map "real" external storages paths also in same way. backwards compatibility.
symlink /storage/extSdCard /mnt/extSdCard
symlink /storage/UsbDriveA /mnt/UsbDriveA
symlink /storage/UsbDriveB /mnt/UsbDriveB
symlink /storage/UsbDriveC /mnt/UsbDriveC
symlink /storage/UsbDriveD /mnt/UsbDriveD
symlink /storage/UsbDriveE /mnt/UsbDriveE
symlink /storage/UsbDriveF /mnt/UsbDriveF
export SECONDARY_STORAGE /storage/extSdCard
mkdir /storage/extSdCard 0700 root root
mkdir /storage/UsbDriveA 0700 root root
mkdir /storage/UsbDriveB 0700 root root
mkdir /storage/UsbDriveC 0700 root root
mkdir /storage/UsbDriveD 0700 root root
mkdir /storage/UsbDriveE 0700 root root
mkdir /storage/UsbDriveF 0700 root root
on early-boot
# set RLIMIT_MEMLOCK to 64MB
setrlimit 8 67108864 67108864
# exec /system/bin/sh /init.qcom.early_boot.sh ${ro.board.platform}
# exec /system/bin/sh /init.qcom.syspart_fixup.sh ${ro.board.platform} ${ro.serialno}
setprop qcom.audio.init complete
service modem-sh /system/bin/sh /system/etc/init.qcom.modem_links.sh
class core
user root
oneshot
on boot
chown bluetooth bluetooth /sys/module/bluetooth_power/parameters/power
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/type
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state
chown bluetooth bluetooth /proc/bluetooth/sleep/proto
chown system system /sys/module/sco/parameters/disable_esco
chown bluetooth bluetooth /sys/module/hci_smd/parameters/hcismd_set
chmod 0660 /sys/module/bluetooth_power/parameters/power
chmod 0660 /sys/module/hci_smd/parameters/hcismd_set
chmod 0660 /sys/class/rfkill/rfkill0/state
chmod 0660 /proc/bluetooth/sleep/proto
chown bluetooth net_bt_stack /dev/ttyHS0
chmod 0660 /dev/ttyHS0
chown bluetooth bluetooth /sys/devices/platform/msm_serial_hs.0/clock
chmod 0660 /sys/devices/platform/msm_serial_hs.0/clock
chmod 0660 /dev/ttyHS2
chown bluetooth bluetooth /dev/ttyHS2
# for BT MAC address
mkdir /efs/bluetooth 0775 radio system
# if already exist
chown radio system /efs/bluetooth
chmod 0775 /efs/bluetooth
#Create QMUX deamon socket area
mkdir /dev/socket/qmux_radio 0770 radio radio
chmod 2770 /dev/socket/qmux_radio
mkdir /dev/socket/qmux_audio 0770 media audio
chmod 2770 /dev/socket/qmux_audio
mkdir /dev/socket/qmux_bluetooth 0770 bluetooth bluetooth
chmod 2770 /dev/socket/qmux_bluetooth
mkdir /dev/socket/qmux_gps 0770 gps gps
chmod 2770 /dev/socket/qmux_gps
setprop wifi.interface wlan0
setprop ro.telephony.call_ring.multiple false
#Set SUID bit for usbhub
#chmod 4755 /system/bin/usbhub
#chmod 755 /system/bin/usbhub_init
#Remove SUID bit for iproute2 ip tool
chmod 0755 /system/bin/ip
chmod 0444 /sys/devices/platform/msm_hsusb/gadget/usb_state
# Change permissions for fps_level nodes
chown system graphics /sys/class/graphics/fb0/msm_fb_fps_level
chown system graphics /sys/class/graphics/fb1/msm_fb_fps_level
chown system graphics /sys/class/graphics/fb2/msm_fb_fps_level
chmod 644 /sys/class/graphics/fb0/msm_fb_fps_level
chmod 400 /sys/class/graphics/fb1/msm_fb_fps_level
chmod 400 /sys/class/graphics/fb2/msm_fb_fps_level
#For bridgemgr daemon to inform the USB driver of the correct transport
chown radio radio /sys/class/android_usb/f_rmnet_smd_sdio/transport
#To allow interfaces to get v6 address when tethering is enabled
write /proc/sys/net/ipv6/conf/rmnet0/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet1/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet2/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet3/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet4/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet5/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet6/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet7/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_sdio0/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_sdio1/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_sdio2/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_sdio3/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_sdio4/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_sdio5/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_sdio6/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_sdio7/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_usb0/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_usb1/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_usb2/accept_ra 2
write /proc/sys/net/ipv6/conf/rmnet_usb3/accept_ra 2
# To prevent out of order acknowledgements from making
# connection tracking to treat them as not belonging to
# the connection they belong to.
# Otherwise, a weird issue happens in which some long
# connections on high-throughput links get dropped when
# an ack packet comes out of order
write /proc/sys/net/netfilter/nf_conntrack_tcp_be_liberal 1
# import cne init file
# on post-fs
# export LD_PRELOAD /system/lib/libNimsWrap.so
# msm specific files that need to be created on /data
on post-fs-data
# we will remap this as /mnt/sdcard with the sdcard fuse tool
mkdir /data/media 0770 media_rw media_rw
chown media_rw media_rw /data/media
mkdir /data/misc/bluetooth 0770 bluetooth bluetooth
# Create the directories used by the Wireless subsystem
mkdir /data/misc/wifi 0770 wifi system
mkdir /data/misc/wifi/sockets 0770 wifi wifi
mkdir /data/misc/wifi/wpa_supplicant 0770 wifi wifi
mkdir /data/misc/dhcp 0775 dhcp dhcp
chown dhcp dhcp /data/misc/dhcp
# Create the directories used by CnE subsystem
mkdir /data/connectivity 0771 system system
chown system system /data/connectivity
mkdir /data/connectivity/nsrm 0771 system system
chown system system /data/connectivity/nsrm
# for WIFI TRP/TIS
chown system root /data/.psm.info
chmod 0664 /data/.psm.info
# for WIFI Antena Selection
chown system root /data/.ant.info
chmod 0664 /data/.ant.info
# for WIFI Version
write /data/.wifiver.info 0
chown system root /data/.wifiver.info
chmod 0666 /data/.wifiver.info
# for WIFI Cert
chmod 0664 /data/.bustxglom.info
chmod 0664 /data/.roamoff.info
chmod 0664 /data/.frameburst.info
chmod 0664 /data/.txbf.info
# for WIFI MAC address
mkdir /efs/wifi 0775 radio system
chown system wifi /efs/wifi/.mac.info
chmod 0664 /efs/wifi/.mac.info
# Create directory used by audio subsystem
mkdir /data/misc/audio 0770 audio audio
# Mounting of persist is moved to 'on emmc-fs' and 'on fs' sections
# We chown/chmod /persist again so because mount is run as root + defaults
chown system system /persist
chmod 0771 /persist
chmod 0664 /sys/devices/platform/msm_sdcc.1/polling
chmod 0664 /sys/devices/platform/msm_sdcc.2/polling
chmod 0664 /sys/devices/platform/msm_sdcc.3/polling
chmod 0664 /sys/devices/platform/msm_sdcc.4/polling
# Chown polling nodes as needed from UI running on system server
chown system system /sys/devices/platform/msm_sdcc.1/polling
chown system system /sys/devices/platform/msm_sdcc.2/polling
chown system system /sys/devices/platform/msm_sdcc.3/polling
chown system system /sys/devices/platform/msm_sdcc.4/polling
#Create the symlink to qcn wpa_supplicant folder for ar6000 wpa_supplicant
mkdir /data/system 0775 system system
#symlink /data/misc/wifi/wpa_supplicant /data/system/wpa_supplicant
#Create directories for gpsone_daemon services
mkdir /data/misc/gpsone_d 0770 system gps
#Create directories for QuIPS
mkdir /data/misc/quipc 0770 gps system
#Create directories for Location services
mkdir /data/misc/location 0770 gps gps
mkdir /data/misc/location/mq 0770 gps gps
mkdir /data/misc/location/xtwifi 0770 gps gps
#Create directory from IMS services
mkdir /data/shared 0755
chown system system /data/shared
#Create directory for FOTA
mkdir /data/fota 0771
chown system system /data/fota
#Create directory for hostapd
mkdir /data/hostapd 0770 system wifi
# Create /data/time folder for time-services
mkdir /data/time/ 0700 system system
mkdir /data/audio/ 0770 media audio
setprop vold.post_fs_data_done 1
# GPIO DVS
chown radio system /sys/class/secgpio_check/secgpio_check_all/secgpio_ctrl
# Export GPIO56 for fusion targets to enable/disable hub
# service usbhub_init /system/bin/usbhub_init
# class late_start
# user root
# disabled
# oneshot
on property:init.svc.surfaceflinger=stopped
stop ppd
stop hdmid
#on property:ro.board.platform=msm7630_fusion
# start usbhub_init
on property:init.svc.wpa_supplicant=stopped
stop dhcpcd
on property:bluetooth.isEnabled=true
start btwlancoex
write /sys/class/bluetooth/hci0/idle_timeout 7000
on property:bluetooth.sap.status=running
start bt-sap
on property:bluetooth.sap.status=stopped
stop bt-sap
on property:bluetooth.dun.status=running
start bt-dun
on property:bluetooth.dun.status=stopped
stop bt-dun
service qcom-c_core-sh /system/bin/sh /init.qcom.class_core.sh
class core
user root
oneshot
service qcom-ril-sh /system/bin/sh /init.ril.sh
class main
user root
disabled
oneshot
on property:vold.decrypt=trigger_restart_framework
start qcom-ril-sh
start config_bluetooth
service cnd /system/bin/cnd
class late_start
socket cnd stream 660 root inet
service irsc_util /system/bin/logwrapper /system/bin/irsc_util "/etc/sec_config"
class main
user root
oneshot
service rmt_storage /system/bin/rmt_storage
class core
user root
disabled
on property:ro.boot.emmc=true
start rmt_storage
service config_bluetooth /system/bin/sh /system/etc/init.qcom.bt.sh "onboot"
class core
user root
oneshot
service hciattach /system/bin/sh /system/etc/init.qcom.bt.sh
class late_start
user bluetooth
group qcom_oncrpc bluetooth net_bt_admin
disabled
oneshot
on property:bluetooth.hciattach=true
start hciattach
on property:bluetooth.hciattach=false
setprop bluetooth.status off
service hciattach_ath3k /system/bin/sh /system/etc/init.ath3k.bt.sh
class late_start
user bluetooth
group system bluetooth net_bt_admin misc
disabled
oneshot
service bt-dun /system/bin/sh /system/etc/init.qcom.btdun.sh
class late_start
user bluetooth
group bluetooth net_bt_admin inet
disabled
oneshot
service bt-sap /system/bin/sapd 15
user bluetooth
group bluetooth net_bt_admin
class late_start
disabled
oneshot
service bridgemgrd /system/bin/bridgemgrd
class late_start
user radio
group radio qcom_diag
disabled
service port-bridge /system/bin/port-bridge /dev/smd0 /dev/ttyGS0
class late_start
user system
group system inet
disabled
service qmiproxy /system/bin/qmiproxy
class main
user radio
group radio qcom_diag
disabled
# QMUX must be in multiple groups to support external process connections
service qmuxd /system/bin/qmuxd
class main
user radio
group radio audio bluetooth gps qcom_diag
disabled
service netmgrd /system/bin/netmgrd
class main
disabled
service sensors /system/bin/sensors.qcom
class late_start
user root
group root
disabled
on property:ro.use_data_netmgrd=false
# netmgr not supported on specific target
stop netmgrd
# Adjust socket buffer to enlarge TCP receive window for high bandwidth
# but only if ro.data.large_tcp_window_size property is set.
on property:ro.data.large_tcp_window_size=true
write /proc/sys/net/ipv4/tcp_adv_win_scale 2
service btwlancoex /system/bin/sh /system/etc/init.qcom.coex.sh
class late_start
user bluetooth
group bluetooth net_bt_admin inet net_admin net_raw
disabled
oneshot
service p2p_supplicant /system/bin/wpa_supplicant \
-iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \
-I/system/etc/wifi/wpa_supplicant_overlay.conf -O/data/misc/wifi/sockets -N \
-ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \
-I/system/etc/wifi/p2p_supplicant_overlay.conf \
-puse_p2p_group_interface=1 -puse_multi_chan_concurrent=1 \
-e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0
# we will start as root and wpa_supplicant will switch to user wifi
# after setting up the capabilities required for WEXT
# user wifi
# group wifi inet keystore
class main
socket wpa_wlan0 dgram 660 wifi wifi
disabled
oneshot
service wpa_supplicant /system/bin/wpa_supplicant -g@android:wpa_wlan0 \
-iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -e/data/misc/wifi/entropy.bin
# we will start as root and wpa_supplicant will switch to user wifi
# after setting up the capabilities required for WEXT
# user wifi
# group wifi inet keystore
class main
socket wpa_wlan0 dgram 660 wifi wifi
disabled
oneshot
service dhcpcd_wlan0 /system/bin/dhcpcd -ABKL
class late_start
disabled
oneshot
service dhcpcd_p2p /system/bin/dhcpcd -ABKLG
class late_start
disabled
oneshot
service iprenew_wlan0 /system/bin/dhcpcd -n
class late_start
disabled
oneshot
service iprenew_p2p /system/bin/dhcpcd -n
class late_start
disabled
oneshot
service dhcpcd_bt-pan /system/bin/dhcpcd -BKLG
class late_start
disabled
oneshot
service iprenew_bt-pan /system/bin/dhcpcd -n
class late_start
disabled
oneshot
service dhcpcd_bnep0 /system/bin/dhcpcd -BKLG
disabled
oneshot
service dhcpcd_bnep1 /system/bin/dhcpcd -BKLG
disabled
oneshot
service dhcpcd_bnep2 /system/bin/dhcpcd -BKLG
disabled
oneshot
service dhcpcd_bnep3 /system/bin/dhcpcd -BKLG
disabled
oneshot
service dhcpcd_bnep4 /system/bin/dhcpcd -BKLG
disabled
oneshot
#for WiFi MFG(TestMode)
service mfgloader /system/bin/mfgloader
class main
disabled
oneshot
service wlandutservice /system/bin/wlandutservice
class main
user system
group wifi net_raw net_admin system inet
disabled
oneshot
service macloader /system/bin/macloader
class main
oneshot
on property:init.svc.macloader=stopped
chown system root /data/.cid.info
chmod 0664 /data/.cid.info
chown system root /data/.rev
chmod 0664 /data/.rev
# end of wifi
service gpsone_daemon /system/bin/gpsone_daemon
class late_start
user gps
group gps qcom_oncrpc inet net_raw
disabled
service quipc_igsn /system/bin/quipc_igsn
class late_start
user gps
group inet gps
disabled
service quipc_main /system/bin/quipc_main
class late_start
user gps
group gps net_admin wifi inet
disabled
service location_mq /system/bin/location-mq
class late_start
user gps
group gps
disabled
service xtwifi_inet /system/bin/xtwifi-inet-agent
class late_start
user gps
group inet gps
disabled
service xtwifi_client /system/bin/xtwifi-client
class late_start
user gps
group net_admin wifi inet gps
disabled
service lowi-server /system/bin/lowi-server
class late_start
user gps
group gps net_admin wifi inet
disabled
service fm_dl /system/bin/sh /system/etc/init.qcom.fm.sh
class late_start
user root
group system qcom_oncrpc
disabled
oneshot
on property:crypto.driver.load=1
insmod /system/lib/modules/qce.ko
insmod /system/lib/modules/qcedev.ko
on property:crypto.driver.load=0
exec /system/bin/rmmod qcedev.ko
exec /system/bin/rmmod qce.ko
service drmdiag /system/bin/drmdiagapp
class late_start
user root
disabled
oneshot
on property:drmdiag.load=1
start drmdiag
on property:drmdiag.load=0
stop drmdiag
service qcom-sh /system/bin/sh /init.qcom.sh
class late_start
user root
oneshot
service qcom-post-boot /system/bin/sh /system/etc/init.qcom.post_boot.sh
class late_start
user root
disabled
oneshot
service wifi-sdio-on /system/bin/sh /system/etc/init.qcom.sdio.sh
class late_start
group wifi inet
disabled
oneshot
service wifi-crda /system/bin/sh /system/etc/init.crda.sh
class late_start
user root
disabled
oneshot
on property:sys.boot_completed=1
start qcom-post-boot
service atfwd /system/bin/ATFWD-daemon
class late_start
user system
group system radio
onrestart /system/bin/log -t RIL-ATFWD -p w "ATFWD daemon restarted"
service hdmid /system/bin/hdmid
class late_start
socket hdmid stream 0660 root system graphics
disabled
service ppd /system/bin/mm-pp-daemon
class late_start
user system
socket pps stream 0660 system system graphics
group system graphics
service hostapd /system/bin/hostapd -dddd /data/hostapd/hostapd.conf
class late_start
user root
group root
oneshot
disabled
service ds_fmc_appd /system/bin/ds_fmc_appd -p "rmnet0" -D
class late_start
group radio wifi inet
disabled
oneshot
on property:persist.data.ds_fmc_app.mode=1
start ds_fmc_appd
service ims_regmanager /system/bin/exe-ims-regmanagerprocessnative
class late_start
group qcom_oncrpc net_bt_admin inet radio wifi
disabled
on property:persist.ims.regmanager.mode=1
start ims_regmanager
on property:ro.data.large_tcp_window_size=true
# Adjust socket buffer to enlarge TCP receive window for high bandwidth (e.g. DO-RevB)
write /proc/sys/net/ipv4/tcp_adv_win_scale 2
service battery_monitor /system/bin/battery_monitor
user system
group system
disabled
service ril-daemon1 /system/bin/rild -c 1
class main
socket rild1 stream 660 root radio
socket rild-debug1 stream 660 radio system
user root
disabled
group radio cache inet misc audio sdcard_r sdcard_rw qcom_oncrpc diag qcom_diag log
service profiler_daemon /system/bin/profiler_daemon
class late_start
user root
group root
disabled
# virtual sdcard daemon running as media_rw (1023)
service sdcard /system/bin/sdcard -u 1023 -g 1023 -l -r /data/media /mnt/shell/emulated
class late_start
disabled
oneshot
on property:ro.fuse_sdcard=true
start sdcard
service fuse_extSdCard /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d -f /mnt/media_rw/extSdCard /storage/extSdCard
class late_start
disabled
oneshot
service fuse_UsbDriveA /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveA /storage/UsbDriveA
class late_start
disabled
oneshot
service fuse_UsbDriveB /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveB /storage/UsbDriveB
class late_start
disabled
oneshot
service fuse_UsbDriveC /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveC /storage/UsbDriveC
class late_start
disabled
oneshot
service fuse_UsbDriveD /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveD /storage/UsbDriveD
class late_start
disabled
oneshot
service fuse_UsbDriveE /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveE /storage/UsbDriveE
class late_start
disabled
oneshot
service fuse_UsbDriveF /system/bin/sdcard -u 1023 -g 1023 -d -f /mnt/media_rw/UsbDriveF /storage/UsbDriveF
class late_start
disabled
oneshot
# Binding fuse mount point to /storage/emulated/legacy
#on property:init.svc.sdcard=running
# wait /mnt/shell/emulated/0
# mount none /mnt/shell/emulated/0 /storage/emulated/legacy bind
# This will make sure that sdcard service starts as late_start.
on nonencrypted
setprop ro.fuse_sdcard ${persist.fuse_sdcard}
on property:vold.decrypt=trigger_restart_framework
setprop ro.fuse_sdcard ${persist.fuse_sdcard}
service hcidump /system/bin/sh /system/etc/hcidump.sh
user bluetooth
group bluetooth system net_bt_admin net_admin
disabled
oneshot
service charger /charger
class charger
service ssr_diag /system/bin/ssr_diag
class late_start
user system
group system
#Disable boot timeout for external modems.
on property:persist.sys.mdm.timeout_disable=1
write /sys/module/mdm_common/parameters/disable_boot_timeout 1
# Limit to SoC reset (1) and independent SSR (3)
on property:persist.sys.ssr.restart_level=1
write /sys/module/subsystem_restart/parameters/restart_level 1
on property:persist.sys.ssr.restart_level=3
write /sys/module/subsystem_restart/parameters/restart_level 3
on property:persist.radio.sglte_sim_active=true
kill qmiproxy 15
on property:persist.radio.sglte_sim_active=false
kill qmiproxy 15
on property:persist.radio.sglte_csfb=true
kill qmiproxy 15
on property:persist.radio.sglte_csfb=false
kill qmiproxy 15
service diag_mdlog_start /system/bin/diag_mdlog
class late_start
user sdcard_rw
group system qcom_diag sdcard_rw sdcard_r media_rw
disabled
oneshot
service diag_mdlog_stop /system/bin/diag_mdlog -k
class late_start
user sdcard_rw
group system qcom_diag sdcard_rw sdcard_r media_rw
disabled
oneshot

144
kernel_image/init.qcom.sh Executable file
View file

@ -0,0 +1,144 @@
#!/system/bin/sh
# Copyright (c) 2009-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.
#
target=`getprop ro.board.platform`
platformid=`cat /sys/devices/system/soc/soc0/id`
#
# Function to start sensors for DSPS enabled platforms
#
start_sensors()
{
if [ -c /dev/msm_dsps -o -c /dev/sensors ]; then
mkdir -p /data/system/sensors
touch /data/system/sensors/settings
chmod -h 775 /data/system/sensors
chmod -h 664 /data/system/sensors/settings
chown -h system /data/system/sensors/settings
mkdir -p /data/misc/sensors
chmod -h 775 /data/misc/sensors
if [ ! -s /data/system/sensors/settings ]; then
# If the settings file is empty, enable sensors HAL
# Otherwise leave the file with it's current contents
echo 1 > /data/system/sensors/settings
fi
start sensors
fi
}
start_battery_monitor()
{
chown -h root.system /sys/module/pm8921_bms/parameters/*
chmod -h 0660 /sys/module/pm8921_bms/parameters/*
mkdir -p /data/bms
chown -h root.system /data/bms
chmod -h 0770 /data/bms
start battery_monitor
}
baseband=`getprop ro.baseband`
izat_premium_enablement=`getprop ro.qc.sdk.izat.premium_enabled`
#
# Suppress default route installation during RA for IPV6; user space will take
# care of this
# exception default ifc
for file in /proc/sys/net/ipv6/conf/*
do
echo 0 > $file/accept_ra_defrtr
done
echo 1 > /proc/sys/net/ipv6/conf/default/accept_ra_defrtr
#
# Start gpsone_daemon for SVLTE Type I & II devices
#
case "$target" in
"msm7630_fusion")
start gpsone_daemon
esac
case "$baseband" in
"svlte2a")
start gpsone_daemon
start bridgemgrd
;;
"sglte" | "sglte2")
start gpsone_daemon
;;
esac
case "$target" in
"msm7630_surf" | "msm8660" | "msm8960" | "msm8974")
start quipc_igsn
esac
case "$target" in
"msm7630_surf" | "msm8660" | "msm8960" | "msm8974")
start quipc_main
esac
case "$target" in
"msm8960" | "msm8974")
start location_mq
start lowi-server
if [ "$izat_premium_enablement" -eq 1 ]; then
start xtwifi_inet
start xtwifi_client
fi
esac
start_sensors
case "$target" in
"msm7630_surf" | "msm7630_1x" | "msm7630_fusion")
value=`cat /sys/devices/system/soc/soc0/hw_platform`
case "$value" in
"Fluid")
start profiler_daemon;;
esac
;;
"msm8660" )
platformvalue=`cat /sys/devices/system/soc/soc0/hw_platform`
case "$platformvalue" in
"Fluid")
start profiler_daemon;;
esac
;;
"msm8960")
case "$baseband" in
"msm")
start_battery_monitor;;
esac
platformvalue=`cat /sys/devices/system/soc/soc0/hw_platform`
case "$platformvalue" in
"Fluid")
start profiler_daemon;;
"Liquid")
start profiler_daemon;;
esac
;;
esac

View file

@ -0,0 +1,75 @@
#!/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
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

749
kernel_image/init.qcom.usb.rc Executable file
View file

@ -0,0 +1,749 @@
# Copyright (c) 2011-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.
#
on init
write /sys/class/android_usb/android0/f_rndis/wceis 1
chown system system /sys/class/android_usb/android0/terminal_version
chmod 0660 /sys/class/android_usb/android0/terminal_version
service qcom-usb-sh /system/bin/sh /init.qcom.usb.sh
class core
user root
oneshot
# This should only be used during device bringup
on property:sys.usb.config=mtp,diag,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/functions mtp,diag,adb
write /sys/module/ci13xxx_msm/parameters/streaming 1
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# USB Composite for Samsung USB Driver
on property:sys.usb.config=mtp,conn_gadget
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions mtp,acm,conn_gadget
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mtp,conn_gadget,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions mtp,acm,conn_gadget,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mtp
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/acm_transports tty
write /sys/class/android_usb/android0/functions mtp,acm
write /sys/module/ci13xxx_msm/parameters/streaming 1
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mtp,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/acm_transports tty
write /sys/class/android_usb/android0/functions mtp,acm,adb
write /sys/module/ci13xxx_msm/parameters/streaming 1
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=ptp
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6865
write /sys/class/android_usb/android0/functions ptp
write /sys/module/ci13xxx_msm/parameters/streaming 1
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=ptp,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6866
write /sys/class/android_usb/android0/functions ptp,adb
write /sys/module/ci13xxx_msm/parameters/streaming 1
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=rndis
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6863
write /sys/class/android_usb/android0/functions rndis
write /sys/class/android_usb/android0/bDeviceClass 224
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=rndis,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6864
write /sys/class/android_usb/android0/functions rndis,adb
write /sys/class/android_usb/android0/bDeviceClass 224
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=ncm
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685D
write /sys/class/android_usb/android0/functions ncm
write /sys/class/android_usb/android0/bDeviceClass 2
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=ncm,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685D
write /sys/class/android_usb/android0/functions ncm,adb
write /sys/class/android_usb/android0/bDeviceClass 2
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# rndis,acm,diag and rmnet,acm,diag are used for IOT Hidden Menu
on property:sys.usb.config=rndis,acm,diag
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6864
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/acm_transports tty
write /sys/class/android_usb/android0/functions rndis,acm,diag
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=rmnet,acm,diag
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685D
write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/acm_transports tty
write /sys/class/android_usb/android0/functions rmnet,acm,diag
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,acm,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685D
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/acm_transports tty
write /sys/class/android_usb/android0/functions diag,acm,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# For CDFS composite
on property:sys.usb.config=mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685B
write /sys/class/android_usb/android0/functions mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685E
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions mass_storage,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mass_storage,mtp
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/functions mtp,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mass_storage,mtp,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/functions mtp,mass_storage,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mass_storage,acm
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685E
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions acm,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mass_storage,acm,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 685E
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions acm,mass_storage,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mass_storage,acm,mtp
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions mtp,acm,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mass_storage,acm,mtp,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 04E8
write /sys/class/android_usb/android0/idProduct 6860
write /sys/class/android_usb/android0/f_acm/instances 1
write /sys/class/android_usb/android0/functions mtp,acm,mass_storage,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# USB compositions
#on property:sys.usb.config=diag,adb
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct 901D
# write /sys/class/android_usb/android0/f_diag/clients diag
# write /sys/class/android_usb/android0/functions diag,adb
# write /sys/class/android_usb/android0/enable 1
# start adbd
# setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_bam,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9025
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_serial/transports smd,tty
write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_bam,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 903D
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_bam,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9026
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_serial/transports smd,tty
write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_bam,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 903E
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_smd,rmnet_smd_sdio,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9037
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_serial/transports sdio,smd
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_smd_sdio,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_smd,rmnet_smd_sdio,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 903B
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_acm/acm_transports sdio,smd
write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd_sdio,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_smd,rmnet_smd_sdio,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9038
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_serial/transports sdio,smd
write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd_sdio,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_smd,rmnet_smd_sdio,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 903C
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_acm/acm_transports sdio,smd
write /sys/class/android_usb/android0/functions diag,acm,rmnet_smd_sdio,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_tty,rmnet_sdio,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9031
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_serial/transports sdio,tty
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_sdio,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_tty,rmnet_sdio,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 903B
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_acm/acm_transports sdio,tty
write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_sdio,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_tty,rmnet_sdio,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9032
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_serial/transports sdio,tty
write /sys/class/android_usb/android0/functions diag,serial,rmnet_sdio,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_tty,rmnet_sdio,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 903C
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_acm/acm_transports sdio,tty
write /sys/class/android_usb/android0/functions diag,acm,rmnet_sdio,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,serial_tty,serial_tty,rmnet_smd,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9025
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_serial/transports tty,tty
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
start port-bridge
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,acm_tty,acm_tty,rmnet_smd,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 903D
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/acm_transports tty,tty
write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
start port-bridge
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,serial_tty,serial_tty,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9026
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_serial/transports tty,tty
write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 1
start port-bridge
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,acm_tty,acm_tty,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 903E
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/acm_transports tty,tty
write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_smd,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9025
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_serial/transports smd,tty
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_smd,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 903D
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
start port-bridge
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9026
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_serial/transports smd,tty
write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 903E
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
# Fusion 3 composition
on property:sys.usb.config=diag,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9025
write /sys/class/android_usb/android0/f_diag/clients diag
write /sys/class/android_usb/android0/f_serial/transports hsic,tty
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# Fusion 3 composition with diag_mdm and adb
on property:sys.usb.config=diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9031
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_serial/transports hsic,tty
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# Fusion 3 composition with diag_mdm
on property:sys.usb.config=diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9032
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/f_serial/transports hsic,tty
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
# Fusion 3 DSDA composition with adb
on property:sys.usb.config=diag,diag_mdm,diag_qsc,serial_hsic,serial_hsuart,rmnet_hsic,rmnet_hsuart,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9065
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
write /sys/class/android_usb/android0/f_serial/transports hsic,hsuart
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsuart,hsuart
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
# Fusion 3 composition without adb
on property:sys.usb.config=diag,diag_mdm,diag_qsc,serial_hsic,serial_hsuart,rmnet_hsic,rmnet_hsuart,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9066
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
write /sys/class/android_usb/android0/f_serial/transports hsic,hsuart
write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsuart,hsuart
write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
# Fusion 2.2 composition with diag_qsc and adb
on property:sys.usb.config=diag,diag_qsc,serial_smd,serial_tty,serial_hsuart,rmnet_hsuart,mass_storage,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9053
write /sys/class/android_usb/android0/f_diag/clients diag,diag_qsc
write /sys/class/android_usb/android0/f_serial/transports smd,tty,hsuart
write /sys/class/android_usb/android0/f_rmnet/transports smd,bam,hsuart,hsuart
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# Fusion 2.2 composition with diag_qsc
on property:sys.usb.config=diag,diag_qsc,serial_smd,serial_tty,serial_hsuart,rmnet_hsuart,mass_storage
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9054
write /sys/class/android_usb/android0/f_diag/clients diag,diag_qsc
write /sys/class/android_usb/android0/f_serial/transports smd,tty,hsuart
write /sys/class/android_usb/android0/f_rmnet/transports smd,bam,hsuart,hsuart
write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=rndis
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct F00E
# write /sys/class/android_usb/android0/functions rndis
# write /sys/class/android_usb/android0/enable 1
# setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=rndis,adb
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct 9024
# write /sys/class/android_usb/android0/functions rndis,adb
# write /sys/class/android_usb/android0/enable 1
# start adbd
# setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=rndis,diag
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct 902C
# write /sys/class/android_usb/android0/f_diag/clients diag
# write /sys/class/android_usb/android0/functions rndis,diag
# write /sys/class/android_usb/android0/enable 1
# setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=rndis,diag,adb
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct 902D
# write /sys/class/android_usb/android0/f_diag/clients diag
# write /sys/class/android_usb/android0/functions rndis,diag,adb
# write /sys/class/android_usb/android0/enable 1
# start adbd
# setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=rndis,diag,diag_mdm
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9041
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/functions rndis,diag
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=rndis,diag,diag_mdm,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9042
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/functions rndis,diag,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=ptp
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct 904D
# write /sys/class/android_usb/android0/functions ptp
# write /sys/class/android_usb/android0/enable 1
# setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=ptp,adb
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct 904E
# write /sys/class/android_usb/android0/functions ptp,adb
# write /sys/class/android_usb/android0/enable 1
# start adbd
# setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=mtp
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct F003
# write /sys/class/android_usb/android0/functions mtp
# write /sys/class/android_usb/android0/enable 1
# setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=mtp,adb
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct 9039
# write /sys/class/android_usb/android0/functions mtp,adb
# write /sys/class/android_usb/android0/enable 1
# start adbd
# setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=mtp,diag
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct 901B
# write /sys/class/android_usb/android0/f_diag/clients diag
# write /sys/class/android_usb/android0/functions mtp,diag
# write /sys/class/android_usb/android0/enable 1
# setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=mtp,diag,adb
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct 903A
# write /sys/class/android_usb/android0/f_diag/clients diag
# write /sys/class/android_usb/android0/functions mtp,diag,adb
# write /sys/class/android_usb/android0/enable 1
# start adbd
# setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mtp,diag,diag_mdm
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9040
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/functions mtp,diag
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mtp,diag,diag_mdm,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 903F
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/functions mtp,diag,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,diag_mdm,ccid
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9045
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/functions diag,ccid
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,diag_mdm,ccid,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9044
write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
write /sys/class/android_usb/android0/functions diag,adb,ccid
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
#on property:sys.usb.config=mass_storage,adb
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct 9015
# write /sys/class/android_usb/android0/functions adb,mass_storage
# write /sys/class/android_usb/android0/enable 1
# start adbd
# setprop sys.usb.state ${sys.usb.config}
#Mass-storage only composition
#on property:sys.usb.config=mass_storage
# write /sys/class/android_usb/android0/enable 0
# write /sys/class/android_usb/android0/idVendor 05C6
# write /sys/class/android_usb/android0/idProduct F000
# write /sys/class/android_usb/android0/functions mass_storage
# write /sys/class/android_usb/android0/enable 1
# setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,qdss
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 904A
write /sys/class/android_usb/android0/functions diag,qdss
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=diag,qdss,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9060
write /sys/class/android_usb/android0/functions diag,qdss,adb
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}

202
kernel_image/init.qcom.usb.sh Executable file
View file

@ -0,0 +1,202 @@
#!/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.
#
#
# Update USB serial number from persist storage if present, if not update
# with value passed from kernel command line, if none of these values are
# set then use the default value. This order is needed as for devices which
# do not have unique serial number.
# User needs to set unique usb serial number to persist.usb.serialno
#
serialno=`getprop persist.usb.serialno`
case "$serialno" in
"")
serialnum=`getprop ro.serialno`
case "$serialnum" in
"");; #Do nothing, use default serial number
*)
echo "$serialnum" > /sys/class/android_usb/android0/iSerial
esac
;;
*)
echo "$serialno" > /sys/class/android_usb/android0/iSerial
esac
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
#
# 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
"" | "adb") #USB persist config not set, select default configuration
case $target in
"apq8064" | "fusion3")
setprop persist.sys.usb.config mtp
;;
"msm8960" | "msm8974")
case "$baseband" in
"mdm")
# setprop persist.sys.usb.config diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb
setprop persist.sys.usb.config mtp
;;
"sglte")
# setprop persist.sys.usb.config diag,diag_mdm,serial_smd,serial_tty,serial_hsuart,rmnet_hsuart,mass_storage,adb
setprop persist.sys.usb.config mtp
;;
*)
# setprop persist.sys.usb.config diag,serial_smd,serial_tty,rmnet_bam,mass_storage,adb
setprop persist.sys.usb.config mtp
;;
esac
;;
"msm7627a")
setprop persist.sys.usb.config diag,serial_smd,serial_tty,rmnet_smd,mass_storage,adb
;;
* )
case "$baseband" in
"svlte2a")
setprop persist.sys.usb.config diag,diag_mdm,serial_sdio,serial_smd,rmnet_smd_sdio,mass_storage,adb
;;
"csfb")
setprop persist.sys.usb.config diag,diag_mdm,serial_sdio,serial_tty,rmnet_sdio,mass_storage,adb
;;
*)
setprop persist.sys.usb.config diag,serial_tty,serial_tty,rmnet_smd,mass_storage,adb
;;
esac
;;
esac
;;
* ) ;; #USB persist config exists, do nothing
esac
#
# Add support for exposing lun0 as cdrom in mass-storage
#
target=`getprop ro.product.device`
cdromname="/system/etc/cdrom_install.iso"
cdromenable=`getprop persist.service.cdrom.enable`
case "$target" in
"msm7627a")
case "$cdromenable" in
0)
echo "" > /sys/class/android_usb/android0/f_mass_storage/lun0/file
;;
1)
echo "mounting usbcdrom lun"
echo $cdromname > /sys/class/android_usb/android0/f_mass_storage/lun0/file
;;
esac
;;
esac
#
# Select USB BAM - 2.0 or 3.0
#
case "$target" in
"msm8974")
echo hsusb > /sys/bus/platform/devices/usb_bam/enable
;;
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

1156
kernel_image/init.rc Executable file

File diff suppressed because it is too large Load diff

94
kernel_image/init.ril.rc Executable file
View file

@ -0,0 +1,94 @@
# Copyright (c) 2013, The Linux Foundation. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# * Neither the name of Linux Foundation nor
# the names of its contributors may be used to endorse or promote
# products derived from this software without specific prior written
# permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
#
# start ril-daemon only for targets on which radio is present
#
on property:ro.baseband=apq
setprop ro.radio.noril yes
stop ril-daemon
#
# start qmuxd and qmiproxy for appropriate targets
#
on property:ro.baseband=msm
start qmuxd
on property:ro.baseband=csfb
start qmuxd
start qmiproxy
on property:ro.baseband=svlte2a
start qmuxd
start qmiproxy
on property:ro.baseband=mdm
start qmuxd
on property:ro.baseband=sglte
start qmuxd
start qmiproxy
on property:ro.baseband=sglte2
start qmuxd
start qmiproxy
on property:ro.baseband=dsda2
start qmuxd
setprop persist.radio.multisim.config dsda
on property:ro.baseband=unknown
start qmuxd
on property:persist.radio.sglte_csfb=true
stop qmiproxy
setprop persist.radio.voice.modem.index 0
#
# start netmgrd
#
on property:ro.use_data_netmgrd=true
start netmgrd
#
# start multiple rilds based on multisim property
#
on property:persist.radio.multisim.config=dsds
stop ril-daemon
start ril-daemon
start ril-daemon1
on property:persist.radio.multisim.config=dsda
stop ril-daemon
start ril-daemon
start ril-daemon1
on property:persist.radio.multisim.config=tsts
stop ril-daemon
start ril-daemon
start ril-daemon1
start ril-daemon2

112
kernel_image/init.ril.sh Executable file
View file

@ -0,0 +1,112 @@
#!/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.
#
#
# restart qmuxd, ril-daemon at restarting fraemworks
#
volddecrypt=`getprop vold.decrypt`
baseband=`getprop ro.baseband`
sgltecsfb=`getprop persist.radio.sglte_csfb`
netmgr=`getprop ro.use_data_netmgrd`
multisimconfig=`getprop persist.radio.multisim.config`
LOG_TAG="qcom-ril-sh"
LOG_NAME="${0}:"
loge ()
{
/system/bin/log -t $LOG_TAG -p e "$LOG_NAME $@"
}
logi ()
{
/system/bin/log -t $LOG_TAG -p i "$LOG_NAME $@"
}
failed ()
{
loge "$1: exit code $2"
exit $2
}
logi "reason=$volddecrypt"
case "$volddecrypt" in
"trigger_restart_framework" | "trigger_restart_min_framework")
logi "baseband=$baseband netmgr=$netmgr"
case "$baseband" in
"apq")
logi "stop ril-daemon"
setprop ro.radio.noril yes
stop ril-daemon
esac
case "$baseband" in
"msm" | "csfb" | "svlte2a" | "mdm" | "sglte" | "sglte2" | "dsda2" | "unknown")
logi "start qmuxd"
start qmuxd
case "$baseband" in
"csfb" | "svlte2a" | "sglte" | "sglte2")
logi "start qmiproxy"
start qmiproxy
;;
"dsda2")
setprop persist.radio.multisim.config dsda
esac
esac
case "$sgltecsfb" in
"true")
logi "stop qmiproxy"
stop qmiproxy
setprop persist.radio.voice.modem.index 0
esac
case "$netmgr" in
"true")
logi "start netmgrd"
start netmgrd
esac
logi "multisim=$multisimconfig"
case "$multisimconfig" in
"dsds")
logi "start ril-daemon1"
stop ril-daemon
start ril-daemon
start ril-daemon1
;;
"dsda")
logi "start ril-daemon1"
stop ril-daemon
start ril-daemon
start ril-daemon1
;;
"tsts")
logi "start ril-daemon1 ril-daemon2"
stop ril-daemon
start ril-daemon
start ril-daemon1
start ril-daemon2
esac
esac

438
kernel_image/init.target.rc Executable file
View file

@ -0,0 +1,438 @@
# 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.
#
#
import init.mdm.rc
on early-init
mkdir /firmware 0771 system system
symlink /data/tombstones /tombstones
mount debugfs debugfs /sys/kernel/debug
#on init
# This is no longer supported from KK release.
#export BOOTCLASSPATH ${BOOTCLASSPATH}:/system/framework/WfdCommon.jar:/system/framework/qcmediaplayer.jar
on fs
mount_all fstab.qcom
# Keeping following partitions outside fstab file. As user may not have
# these partition flashed on the device. Failure to mount any partition in fstab file
# results in failure to launch late-start class.
wait /dev/block/platform/msm_sdcc.1/by-name/cache
check_fs /dev/block/platform/msm_sdcc.1/by-name/cache ext4
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/cache /cache nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit,errors=panic
wait /dev/block/platform/msm_sdcc.1/by-name/persist
check_fs /dev/block/platform/msm_sdcc.1/by-name/persist ext4
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/persist /persist nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit,errors=panic
wait /dev/block/platform/msm_sdcc.1/by-name/efs
check_fs /dev/block/platform/msm_sdcc.1/by-name/efs ext4
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/efs /efs nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit,errors=panic
chown system radio /efs
chmod 0771 /efs
chown system radio /dev/block/platform/msm_sdcc.1/by-name
chmod 0775 /dev/block/platform/msm_sdcc.1/by-name
on fs_selinux
setprop ro.crypto.fuse_sdcard true
on fs_selinux_disable
# for LogMeIn
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/system /system rw wait errors=panic remount
chown graphics /system/bin/RescueStarter
chmod 0755 /system/bin/RescueStarter
chown graphics /system/bin/RescueServer
chmod 0755 /system/bin/RescueServer
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/system /system ro wait errors=panic remount
# Keeping following partitions outside fstab file. As user may not have
# these partition flashed on the device. Failure to mount any partition in fstab file
# results in failure to launch late-start class.
wait /dev/block/platform/msm_sdcc.1/by-name/cache
check_fs /dev/block/platform/msm_sdcc.1/by-name/cache ext4
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/cache /cache nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit,errors=panic
#wait /dev/block/platform/msm_sdcc.1/by-name/persist
#check_fs /dev/block/platform/msm_sdcc.1/by-name/persist ext4
#mount ext4 /dev/block/platform/msm_sdcc.1/by-name/persist /persist nosuid nodev barrier=1
wait /dev/block/platform/msm_sdcc.1/by-name/efs
check_fs /dev/block/platform/msm_sdcc.1/by-name/efs ext4
mount ext4 /dev/block/platform/msm_sdcc.1/by-name/efs /efs nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit,errors=panic
chown system radio /efs
chmod 0771 /efs
restorecon -R /efs
chown system radio /dev/block/platform/msm_sdcc.1/by-name
chmod 0775 /dev/block/platform/msm_sdcc.1/by-name
on boot
write /sys/devices/i2c-3/3-0024/cyttsp_update_fw 1
write /sys/devices/i2c-3/3-005b/update_fw 1
start qcamerasvr
on post-fs-data
mkdir /data/tombstones 0771 system system
mkdir /tombstones/modem 0771 system system
mkdir /tombstones/lpass 0771 system system
mkdir /tombstones/wcnss 0771 system system
mkdir /tombstones/dsps 0771 system system
mkdir /tombstones/mdm 0771 system system
mkdir /tombstones/mdm2 0771 system system
#sensors
write /sys/class/input/input5/distortion "400 50 15"
write /sys/class/input/input6/distortion "400 50 15"
write /sys/class/input/input7/distortion "400 50 15"
# geomagnetic_raw
chown compass input /sys/class/input/input4/offsets
chown compass input /sys/class/input/input4/dynamic_matrix
chown system input /sys/class/input/input4/threshold
chown system input /sys/class/input/input4/distortion
chown system input /sys/class/input/input4/shape
chown compass input /sys/class/input/input5/offsets
chown compass input /sys/class/input/input5/dynamic_matrix
chown system input /sys/class/input/input5/threshold
chown system input /sys/class/input/input5/distortion
chown system input /sys/class/input/input5/shape
chown compass input /sys/class/input/input6/offsets
chown compass input /sys/class/input/input6/dynamic_matrix
chown system input /sys/class/input/input6/threshold
chown system input /sys/class/input/input6/distortion
chown system input /sys/class/input/input6/shape
chown compass input /sys/class/input/input7/offsets
chown compass input /sys/class/input/input7/dynamic_matrix
chown system input /sys/class/input/input7/threshold
chown system input /sys/class/input/input7/distortion
chown system input /sys/class/input/input7/shape
chown compass input /sys/class/input/input8/offsets
chown compass input /sys/class/input/input8/dynamic_matrix
chown system input /sys/class/input/input8/threshold
chown system input /sys/class/input/input8/distortion
chown system input /sys/class/input/input8/shape
# light_sensor
chown system input /sys/class/input/input7/enable
chown system input /sys/class/input/input7/poll_delay
chown system input /sys/class/input/input8/enable
chown system input /sys/class/input/input8/poll_delay
chown system input /sys/class/input/input9/enable
chown system input /sys/class/input/input9/poll_delay
# mpu6500_input
chown system input /sys/class/input/input3/acc_enable
chown system input /sys/class/input/input3/acc_delay
chown system input /sys/class/input/input3/gyro_enable
chown system input /sys/class/input/input3/gyro_delay
chown system input /sys/class/input/input3/self_test
chown system input /sys/class/input/input4/acc_enable
chown system input /sys/class/input/input4/acc_delay
chown system input /sys/class/input/input4/gyro_enable
chown system input /sys/class/input/input4/gyro_delay
chown system input /sys/class/input/input4/self_test
chown system input /sys/class/input/input5/acc_enable
chown system input /sys/class/input/input5/acc_delay
chown system input /sys/class/input/input5/gyro_enable
chown system input /sys/class/input/input5/gyro_delay
chown system input /sys/class/input/input5/self_test
# accelerometer
chown system input /sys/class/input/input3/enable
chown system input /sys/class/input/input3/delay
chown system input /sys/class/input/input3/filter_enable
chown system input /sys/class/input/input3/data
chown system input /sys/class/input/input3/status
chown system input /sys/class/input/input3/wake
chown system input /sys/class/input/input3/position
chown system input /sys/class/input/input4/enable
chown system input /sys/class/input/input4/delay
chown system input /sys/class/input/input4/filter_enable
chown system input /sys/class/input/input4/data
chown system input /sys/class/input/input4/status
chown system input /sys/class/input/input4/wake
chown system input /sys/class/input/input4/position
# geomagnetic
chown system input /sys/class/input/input3/enable
chown system input /sys/class/input/input3/delay
chown system input /sys/class/input/input3/filter_enable
chown system input /sys/class/input/input3/filter_len
chown system input /sys/class/input/input3/data
chown system input /sys/class/input/input3/status
chown system input /sys/class/input/input3/wake
chown system input /sys/class/input/input3/position
chown system input /sys/class/input/input4/enable
chown system input /sys/class/input/input4/delay
chown system input /sys/class/input/input4/filter_enable
chown system input /sys/class/input/input4/filter_len
chown system input /sys/class/input/input4/data
chown system input /sys/class/input/input4/status
chown system input /sys/class/input/input4/wake
chown system input /sys/class/input/input4/position
chown system input /sys/class/input/input5/enable
chown system input /sys/class/input/input5/delay
chown system input /sys/class/input/input5/filter_enable
chown system input /sys/class/input/input5/filter_len
chown system input /sys/class/input/input5/data
chown system input /sys/class/input/input5/status
chown system input /sys/class/input/input5/wake
chown system input /sys/class/input/input5/position
chown system input /sys/class/input/input6/enable
chown system input /sys/class/input/input6/delay
chown system input /sys/class/input/input6/filter_enable
chown system input /sys/class/input/input6/filter_len
chown system input /sys/class/input/input6/data
chown system input /sys/class/input/input6/status
chown system input /sys/class/input/input6/wake
chown system input /sys/class/input/input6/position
# proximity_sensor
chown system input /sys/class/input/input6/enable
chown system input /sys/class/input/input7/enable
chown system input /sys/class/input/input8/enable
# NFC_BROADCOM
chmod 0600 /dev/bcm2079x
chown nfc nfc /dev/bcm2079x
mkdir /data/bcmnfc
mkdir /data/bcmnfc/param
chmod 0700 /data/bcmnfc
chmod 0700 /data/bcmnfc/param
chown nfc nfc /data/bcmnfc
chown nfc nfc /data/bcmnfc/param
#start camera server as daemon
service qcamerasvr /system/bin/mm-qcamera-daemon
class late_start
user camera
group camera system inet input graphics net_bt_stack
#start GNSS/Sensor interface daemon
service gsiff_daemon /system/bin/gsiff_daemon
class late_start
user system
group gps qcom_oncrpc net_raw
service thermald /system/bin/thermald
class main
user root
group root
disabled
service thermal-engine /system/bin/thermal-engine
class main
user root
group root
disabled
service mpdecision /system/bin/mpdecision --no_sleep --avg_comp
user root
disabled
service rf4ce /system/bin/rf4ce
class main
user root
group root
service qosmgrd /system/bin/qosmgr /system/etc/qosmgr_rules.xml
user system
group system
disabled
service kickstart /system/bin/qcks -i /firmware-mdm/image/
user root
group radio cache inet misc audio sdcard_rw log system
oneshot
disabled
service mdm_helper /system/bin/mdm_helper
class main
onrestart setprop ro.service.mdm_helper_restarted "true"
disabled
service qrngd /system/bin/qrngd -f
class main
user root
group root
service qseecomd /system/bin/qseecomd
class core
user system
group system
# Start kickstart if mdm is detected
on property:ro.baseband=mdm
mkdir /data/qcks 0770 system system
start kickstart
# Start up mdm_helper if sglte detected
on property:ro.baseband=sglte
mkdir /data/misc/mdmhelperdata 0700
start mdm_helper
# Start up mdm_helper if dsda2 detected
on property:ro.baseband=dsda2
mkdir /data/misc/mdmhelperdata 0700
start mdm_helper
on property:ro.baseband=sglte2
mkdir /data/misc/mdmhelperdata 0700
start mdm_helper
service usf_tester /system/bin/usf_tester
user system
group system inet
disabled
service usf_epos /system/bin/usf_epos
user system
group system inet
disabled
service usf_gesture /system/bin/usf_gesture
user system
group system inet
disabled
service usf_p2p /system/bin/usf_p2p
user system
group system inet
disabled
service usf_hovering /system/bin/usf_hovering
user system
group system inet
disabled
service usf-post-boot /system/bin/sh /system/etc/usf_post_boot.sh
class late_start
user root
disabled
oneshot
service prepare-mobicore /system/bin/sh /system/bin/mobicore-presetup.sh
class core
user root
group root
oneshot
service run-mobicore /system/bin/sh /system/bin/mobicore-startup.sh
class core
user system
group system
on property:init.svc.bootanim=stopped
start usf-post-boot
start run-mobicore
service time_daemon /system/bin/time_daemon
class late_start
user root
group root
service imsqmidaemon /system/bin/imsqmidaemon
class main
user system
group radio net_raw log qcom_diag
disabled
on boot
start imsqmidaemon
# imsdatadaemon starts with root and UID will be downgraded to SYSTEM.
service imsdatadaemon /system/bin/imsdatadaemon
class main
user root
group system wifi radio net_raw log qcom_diag net_admin
disabled
service wcnss-service /system/bin/wcnss_service
class main
user system
group system wifi
oneshot
on property:sys.ims.QMI_DAEMON_STATUS=1
start imsdatadaemon
service ims_rtp_daemon /system/bin/ims_rtp_daemon
class main
user system
group radio net_raw diag qcom_diag log
disabled
on property:sys.ims.DATA_DAEMON_STATUS=1
start ims_rtp_daemon
service orientationd /system/bin/orientationd
class main
user compass
group input
service geomagneticd /system/bin/geomagneticd
class main
user compass
group system input
# Secure Storage startup
service secure_storage /system/bin/secure_storage_daemon
class core
user system
group system
disabled
on property:ro.securestorage.support=true
mkdir /dev/.secure_storage
chmod 0711 /dev/.secure_storage
chown system system /dev/.secure_storage
restorecon -R /dev/.secure_storage
start secure_storage
on property:ro.securestorage.knox=true
mkdir /dev/.secure_storage
chmod 0711 /dev/.secure_storage
chown system system /dev/.secure_storage
restorecon -R /dev/.secure_storage
start secure_storage
# SecEDS
service TvoutService_C /system/bin/bintvoutservice
class main
user system
group graphics
on property:ro.SecEDS.enable=false
stop TvoutService_C

37
kernel_image/init.trace.rc Executable file
View file

@ -0,0 +1,37 @@
## Permissions to allow system-wide tracing to the kernel trace buffer.
##
on boot
# Allow writing to the kernel trace log.
chmod 0222 /sys/kernel/debug/tracing/trace_marker
# Allow the shell group to enable (some) kernel tracing.
chown root shell /sys/kernel/debug/tracing/trace_clock
chown root shell /sys/kernel/debug/tracing/buffer_size_kb
chown root shell /sys/kernel/debug/tracing/options/overwrite
chown root shell /sys/kernel/debug/tracing/events/sched/sched_switch/enable
chown root shell /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable
chown root shell /sys/kernel/debug/tracing/events/power/cpu_frequency/enable
chown root shell /sys/kernel/debug/tracing/events/power/cpu_idle/enable
chown root shell /sys/kernel/debug/tracing/events/power/clock_set_rate/enable
chown root shell /sys/kernel/debug/tracing/events/cpufreq_interactive/enable
chown root shell /sys/kernel/debug/tracing/tracing_on
chmod 0664 /sys/kernel/debug/tracing/trace_clock
chmod 0664 /sys/kernel/debug/tracing/buffer_size_kb
chmod 0664 /sys/kernel/debug/tracing/options/overwrite
chmod 0664 /sys/kernel/debug/tracing/events/sched/sched_switch/enable
chmod 0664 /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable
chmod 0664 /sys/kernel/debug/tracing/events/power/cpu_frequency/enable
chmod 0664 /sys/kernel/debug/tracing/events/power/cpu_idle/enable
chmod 0664 /sys/kernel/debug/tracing/events/power/clock_set_rate/enable
chmod 0664 /sys/kernel/debug/tracing/events/cpufreq_interactive/enable
chmod 0664 /sys/kernel/debug/tracing/tracing_on
# Allow only the shell group to read and truncate the kernel trace.
chown root shell /sys/kernel/debug/tracing/trace
chmod 0660 /sys/kernel/debug/tracing/trace
# Allow shell group to enable tgid prints
chown root shell /sys/kernel/debug/tracing/options/print-tgid
chmod 0664 /sys/kernel/debug/tracing/options/print-tgid

91
kernel_image/init.usb.rc Executable file
View file

@ -0,0 +1,91 @@
# Copyright (C) 2012 The Android Open Source Project
#
# USB configuration common for all android devices
#
on post-fs-data
chown system system /sys/class/android_usb/android0/f_mass_storage/lun/file
chmod 0660 /sys/class/android_usb/android0/f_mass_storage/lun/file
chown system system /sys/class/android_usb/android0/f_rndis/ethaddr
chmod 0660 /sys/class/android_usb/android0/f_rndis/ethaddr
# Used to disable USB when switching states
on property:sys.usb.config=none
stop adbd
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/bDeviceClass 0
setprop sys.usb.state ${sys.usb.config}
# adb only USB configuration
# This should only be used during device bringup
# and as a fallback if the USB manager fails to set a standard configuration
on property:sys.usb.config=adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18d1
write /sys/class/android_usb/android0/idProduct D002
write /sys/class/android_usb/android0/functions ${sys.usb.config}
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# USB accessory configuration
on property:sys.usb.config=accessory
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18d1
write /sys/class/android_usb/android0/idProduct 2d00
write /sys/class/android_usb/android0/functions ${sys.usb.config}
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
# USB accessory configuration, with adb
on property:sys.usb.config=accessory,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18d1
write /sys/class/android_usb/android0/idProduct 2d01
write /sys/class/android_usb/android0/functions ${sys.usb.config}
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# audio accessory configuration
on property:sys.usb.config=audio_source
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18d1
write /sys/class/android_usb/android0/idProduct 2d02
write /sys/class/android_usb/android0/functions ${sys.usb.config}
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
# audio accessory configuration, with adb
on property:sys.usb.config=audio_source,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18d1
write /sys/class/android_usb/android0/idProduct 2d03
write /sys/class/android_usb/android0/functions ${sys.usb.config}
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# USB and audio accessory configuration
on property:sys.usb.config=accessory,audio_source
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18d1
write /sys/class/android_usb/android0/idProduct 2d04
write /sys/class/android_usb/android0/functions ${sys.usb.config}
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state ${sys.usb.config}
# USB and audio accessory configuration, with adb
on property:sys.usb.config=accessory,audio_source,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18d1
write /sys/class/android_usb/android0/idProduct 2d05
write /sys/class/android_usb/android0/functions ${sys.usb.config}
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}
# Used to set USB configuration at boot and to switch the configuration
# when changing the default configuration
on property:persist.sys.usb.config=*
setprop sys.usb.config ${persist.sys.usb.config}

View file

@ -0,0 +1,86 @@
#line 1 "vendor/samsung/common/sepolicy/nsa/property_contexts"
##########################
# property service keys
#
#
net.rmnet0 u:object_r:radio_prop:s0
net.rmnet_usb0. u:object_r:radio_prop:s0
net.gprs u:object_r:radio_prop:s0
net.ppp u:object_r:radio_prop:s0
net.qmi u:object_r:radio_prop:s0
net.lte u:object_r:radio_prop:s0
net.cdma u:object_r:radio_prop:s0
gsm. u:object_r:radio_prop:s0
persist.radio u:object_r:radio_prop:s0
net.dns u:object_r:radio_prop:s0
sys.usb.config u:object_r:radio_prop:s0
ril. u:object_r:rild_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
service. u:object_r:system_prop:s0
wlan. u:object_r:system_prop:s0
dhcp. u:object_r:system_prop:s0
bluetooth. u:object_r:bluetooth_prop:s0
debug. u:object_r:debug_prop:s0
log. 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.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
# mmac persistent properties
persist.mmac. u:object_r:security_prop:s0
# selinux non-persistent properties
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
# ctl properties
ctl.dumpstate u:object_r:ctl_dumpstate_prop:s0
ctl.ril-daemon u:object_r:ctl_rildaemon_prop:s0
ctl. u:object_r:ctl_default_prop:s0
#line 1 "vendor/samsung/common/sepolicy/property_contexts"
#fix build error - duplicate definition
#bluetooth. u:object_r:bt_prop:s0
boot. u:object_r:boot_prop:s0
csc.country_code u:object_r:csc_prop:s0
csc.countryiso_code u:object_r:csc_prop:s0
csc.sales_code u:object_r:csc_prop:s0
dev.MDPLimitCondition u:object_r:system_prop:s0
dev.kies. u:object_r:kies_prop:s0
dev.kiessupport u:object_r:kies_prop:s0
installd.sdcard_manipulate_done u:object_r:sdcard_prop:s0
persist.log.seclevel u:object_r:seclevel_prop:s0
rw.km_fips_status u:object_r:km_fips_prop:s0
secmm.player.aiastate u:object_r:secmm_prop:s0
service.camera.running u:object_r:camera_prop:s0
setupwizard.mode u:object_r:setupwizard_prop:s0
sys.mobicoredaemon.enable u:object_r:mobicore_prop:s0
vpnclientpm. u:object_r:vpn_prop:s0
persist.security.ams. u:object_r:container_mgmt_prop:s0
persist.security.good. u:object_r:good_mgmt_prop:s0
persist.security.mdm. u:object_r:policy_mgmt_prop:s0
# drs
persist.sys.drs.date. u:object_r:drs_date_prop:s0
#line 1 "vendor/samsung/common/sepolicy/qcom_common/carrier_spr/property_contexts"
cdma.home. u:object_r:radio_prop:s0
#line 1 "vendor/samsung/common/sepolicy/qcom_common/carrier_tfntmo/property_contexts"
#cdma.home. u:object_r:radio_prop:s0

View file

@ -0,0 +1,25 @@
-----BEGIN CERTIFICATE-----
MIIELTCCAxWgAwIBAgIJANEwmqM2Fs8EMA0GCSqGSIb3DQEBBQUAMGwxCzAJBgNV
BAYTAktSMRQwEgYDVQQIEwtTb3V0aCBLb3JlYTEOMAwGA1UEBxMFU3V3b24xJjAk
BgNVBAoTHVNhbXN1bmcgRWxlY3Ryb25pY3MgQ28uLCBMdGQuMQ8wDQYDVQQLEwZN
b2JpbGUwHhcNMTMxMjE2MDg1MDI4WhcNMjMxMjE0MDg1MDI4WjBsMQswCQYDVQQG
EwJLUjEUMBIGA1UECBMLU291dGggS29yZWExDjAMBgNVBAcTBVN1d29uMSYwJAYD
VQQKEx1TYW1zdW5nIEVsZWN0cm9uaWNzIENvLiwgTHRkLjEPMA0GA1UECxMGTW9i
aWxlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArjoOavjEbusT83Dv
LvsSVrq4y9HhUmZYnVX5VaOgsp7qUM5ntD9zSxR5JQ9QWCbCKh5RDy+ewnXmFcAV
L2MW5zxn6eI58e5e1Uonx9SnaID5JQHOhKImzH5/1qqVjs467nTTVpkXZOzrzLhs
EOau34Q/AlZ5QO0gh0TDr7YYHbry7Ie+gYePA/9gcB5UzbLQPz2oNGQPlB9e4KSw
4XNXu8BfguRltQbkJkm8/BD93vKN7MIbsxIYCzIIBjv/J79ho4NQqzpky9PFzCt/
KL1Ts7DsoQ6r3GeDgebc1ques18UXUZ1wenHy5k4ruCl6ZJ7QaxzHyEta/RT+VOC
j3IuwwIDAQABo4HRMIHOMB0GA1UdDgQWBBQp+BW4OYblL74MNaxtLPuKS1Ky4DCB
ngYDVR0jBIGWMIGTgBQp+BW4OYblL74MNaxtLPuKS1Ky4KFwpG4wbDELMAkGA1UE
BhMCS1IxFDASBgNVBAgTC1NvdXRoIEtvcmVhMQ4wDAYDVQQHEwVTdXdvbjEmMCQG
A1UEChMdU2Ftc3VuZyBFbGVjdHJvbmljcyBDby4sIEx0ZC4xDzANBgNVBAsTBk1v
YmlsZYIJANEwmqM2Fs8EMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEB
AEKg+91c2q1OKoP89QAQCKlLXKQNaaGQisMLISeBAkfF8npSPmftDSu9IPMTR9ZG
2AwCgH1SoI4cBqKJviU1M41IHTC3qJXRAv52Mjfv47AbkVyzLvE5YL/9R9zY+ER/
4KFvye4EvsybB9l0B8eoF/Pk4olX2KrhqkP8EtcDr47VI+FloeHGFef9DSvUz3Np
MQMp4jdNBUZ57mXwKRl1pMgz3f+Cgwi9zWmK9/lf+w0OXKBXxB+vhGMpg/7Y/Ohj
B4OHj7fOFedOEZlSmois41gknKgxyzvd1Xig7QcpIYUgH9FMPZxzhgMElY6zOroC
SYgfWsLmjJM+Q9nMhCMaJf0=
-----END CERTIFICATE-----

BIN
kernel_image/sbin/adbd Executable file

Binary file not shown.

BIN
kernel_image/sbin/ffu Executable file

Binary file not shown.

BIN
kernel_image/sbin/healthd Executable file

Binary file not shown.

BIN
kernel_image/sbin/sswap Executable file

Binary file not shown.

1
kernel_image/sbin/ueventd Symbolic link
View file

@ -0,0 +1 @@
../init

1
kernel_image/sbin/watchdogd Symbolic link
View file

@ -0,0 +1 @@
../init

105
kernel_image/seapp_contexts Normal file
View file

@ -0,0 +1,105 @@
isSystemServer=true domain=system
user=system domain=system_app type=system_data_file
user=bluetooth domain=bluetooth type=bluetooth_data_file
user=nfc domain=nfc type=nfc_data_file
user=radio domain=radio type=radio_data_file
user=drm seinfo=platform name=com.sec.android.SamsungDrmProvider domain=platform_app type=platform_app_data_file
user=shell domain=shell type=shell_data_file
user=shell name=com.android.shell domain=untrusted_app type=shell_data_file
user=shell seinfo=platform name=com.sec.android.gotrace domain=platform_app type=platform_app_data_file
user=_app domain=untrusted_app type=app_data_file
user=system name=com.sec.knox.containeragent domain=knox_system_app type=system_data_file
user=system name=com.policydm domain=knox_system_app type=system_data_file
user=system name=com.example.com.sec.sds.writedatafix domain=writedatafix_app type=system_data_file
user=_app name=com.centrify.mdm.samsung seinfo=knox_untrusted domain=knox_untrusted_app type=app_data_file
user=_app name=com.samsung.knoxemm.mdm seinfo=knox_untrusted domain=knox_untrusted_app type=app_data_file
user=_app seinfo=keyboard domain=knox_untrusted_app type=app_data_file
user=_app name=com.baimobile.android.pcsclite.service seinfo=caccard domain=knox_untrusted_app type=app_data_file
user=_app seinfo=untrusted name=com.android.vending domain=knox_untrusted_app type=app_data_file
user=_app seinfo=untrusted name=com.google.android.googlequicksearchbox domain=knox_untrusted_app type=app_data_file
user=_app seinfo=untrusted name=com.google.android.googlequicksearchbox:search domain=knox_untrusted_app type=app_data_file
user=_app seinfo=untrusted name=com.google.process.gapps domain=knox_untrusted_app type=app_data_file
user=_app seinfo=untrusted name=com.google.android.inputmethod.latin domain=knox_untrusted_app type=app_data_file
user=_app seinfo=untrusted name=com.google.android.inputmethod.korean domain=knox_untrusted_app type=app_data_file
user=_app seinfo=untrusted name=com.google.android.inputmethod.pinyin domain=knox_untrusted_app type=app_data_file
user=_app seinfo=untrusted name=com.google.android.marvin.talkback domain=knox_untrusted_app type=app_data_file
user=_app seinfo=container domain=container_app type=container_app_data_file levelFrom=container sdcard=/mnt_1/sdcard_ sdcardSuffix=_container
user=_app name=com.sec.android.nearby.mediaserver seinfo=platform domain=platform_app type=platform_media_app_data_file
user=_app seinfo=platform domain=platform_app type=platform_app_data_file
user=_app seinfo=platform name=com.sec.knox.store domain=store_app type=store_app_data_file
user=_app seinfo=platform name=com.android.defcontainer domain=bridged_platform_app type=platform_app_data_file
user=_app seinfo=platform name=com.android.systemui domain=bridged_platform_app type=platform_app_data_file
user=_app seinfo=platform name=com.sec.android.app.controlpanel domain=bridged_platform_app type=platform_app_data_file
user=_app seinfo=platform name=com.sec.minimode.taskcloser domain=bridged_platform_app type=platform_app_data_file
user=_app seinfo=shared domain=shared_app type=platform_app_data_file
user=_app seinfo=media domain=media_app type=platform_app_data_file
user=_app seinfo=release domain=release_app type=platform_app_data_file
user=_isolated seinfo=container domain=container_app type=container_app_data_file levelFrom=container sdcard=/mnt_1/sdcard_ sdcardSuffix=_container
user=_isolated domain=isolated_app
user=_app seinfo=platform name=com.sec.smartcard.pinservice type=platform_app_data_file
user=smartcard domain=platform_app type=platform_app_data_file
user=system name=com.sec.android.app.sysscope domain=syscope_app type=system_data_file
user=_app seinfo=samsung domain=samsung_app type=app_data_file
user=_app seinfo=samsung name=com.sec.android.app.samsungapps domain=samsung_app type=app_data_file
user=_app seinfo=samsung name=com.sec.android.app.sns3 domain=samsung_app type=app_data_file
user=_app seinfo=untrusted name=com.vlingo.midas domain=samsung_app type=app_data_file
user=_app seinfo=untrusted name=tv.peel.samsung.app domain=samsung_app type=app_data_file
user=_app seinfo=untrusted name=tv.peel.samsung.widget domain=samsung_app type=app_data_file
user=_app seinfo=untrusted name=com.linkedin.android domain=samsung_app type=app_data_file
user=_app seinfo=untrusted name=com.rageconsulting.android.lightflow domain=filtered_untrusted_app type=app_data_file
user=_app seinfo=untrusted name=com.rageconsulting.android.lightflowlite domain=filtered_untrusted_app type=app_data_file
user=_app seinfo=untrusted name=rubberbigpepper.lgCamera domain=filtered_untrusted_app type=app_data_file
user=_app seinfo=untrusted name=com.google.android.calendar domain=filtered_google_app type=app_data_file
user=_app seinfo=untrusted name=com.google.android.gms domain=filtered_google_app type=app_data_file
user=_app seinfo=untrusted name=com.google.android.gms:snet domain=filtered_google_app type=app_data_file
user=_app seinfo=untrusted name=com.google.process.location domain=filtered_google_app type=app_data_file
user=_app seinfo=vmware domain=vmware_app type=app_data_file
user=_app seinfo=quarksecurity domain=filtered_untrusted_app type=app_data_file
user=_app seinfo=llk_untrusted name=com.customermobile.preload.main2 domain=llk_untrusted_app type=app_data_file
user=_app seinfo=llk_untrusted name=com.customermobile.preload domain=llk_untrusted_app type=app_data_file
user=_app seinfo=llk_untrusted name=com.customermobile.preload.vzw domain=llk_untrusted_app type=app_data_file
user=_app seinfo=vpn_untrusted name=net.juniper.junos.pulse.android domain=vpn_untrusted_app type=app_data_file
user=_app seinfo=vpn_untrusted name=net.juniper.junos.pulse.android:remote domain=vpn_untrusted_app type=app_data_file
user=sprintextension name=com.sec.sprextension domain=system_app type=system_data_file
user=_app seinfo=sprintitson domain=itsonclient_app type=sprintitson_file
user=sprintitson seinfo=sprintitson domain=itsonclient_app type=sprintitson_file
user=itson domain=itsonclient_app type=sprintitson_file
user=_app seinfo=tbaseplatform domain=carrier_app type=app_data_file
user=_app seinfo=mmphone domain=carrier_app type=app_data_file
user=system name=com.sec.android.app.felicatest domain=felica type=felica_data_file
user=mfc domain=mfc type=felica_data_file
user=mfm domain=mfm type=felica_data_file
user=mfs domain=mfs type=felica_data_file
user=mfw domain=mfw type=felica_data_file
user=felicalock domain=felicalock
user=mmbisv domain=mmb_apk type=mmb_data_file
user=mmbi domain=mmb_apk type=mmb_data_file
user=_app seinfo=mmb domain=mmb_apk type=mmb_data_file
user=oneseg name=com.samsung.sec.mtv domain=oneseg_apk type=oneseg_data_file
user=oneseg name=com.nextreaming.player.apps domain=oneseg_apk type=oneseg_data_file
user=oneseg name=com.access.bml domain=oneseg_apk type=oneseg_data_file
user=_app seinfo=dmlmdocomo domain=carrier_app type=app_data_file
user=_app seinfo=fixmo domain=fixmo_app type=fixmo_app_data_file
user=_app seinfo=trustonicpartner domain=trustonicpartner_app type=app_data_file
user=_app seinfo=good_trustonicpartner domain=trustonicpartner_app type=app_data_file
user=_app seinfo=jpnandroidggm domain=carrier_app type=app_data_file
user=_app seinfo=jpnnttdocomo domain=carrier_app type=app_data_file
user=_app seinfo=jpnbridgelauncher domain=carrier_app type=app_data_file
user=_app seinfo=jpncategorynavi domain=carrier_app type=app_data_file
user=_app seinfo=jpncontentsheadline domain=carrier_app type=app_data_file
user=_app seinfo=jpndecoemojimanager domain=carrier_app type=app_data_file
user=_app seinfo=jpnkoenotakuhaibin domain=carrier_app type=app_data_file
user=_app seinfo=jpnmfsaddon domain=carrier_app type=app_data_file
user=_app seinfo=jpnmonthlytraffic domain=carrier_app type=app_data_file
user=_app seinfo=jpnsugotokucontents domain=carrier_app type=app_data_file
user=_app seinfo=jpntwitter domain=carrier_app type=app_data_file
user=_app seinfo=jpnchkapl domain=carrier_app type=app_data_file
user=_app seinfo=jpndcmictag domain=carrier_app type=app_data_file
user=_app seinfo=jpndmapnavi domain=carrier_app type=app_data_file
user=_app seinfo=jpndocomoremote domain=carrier_app type=app_data_file
user=_app seinfo=jpnebookviewer domain=carrier_app type=app_data_file
user=_app seinfo=jpnhanashite domain=carrier_app type=app_data_file
user=_app seinfo=jpnid domain=carrier_app type=app_data_file
user=_app seinfo=jpnrwpushcontroller domain=carrier_app type=app_data_file
user=_app seinfo=jpntoruca domain=carrier_app type=app_data_file
user=_app seinfo=jpnja domain=carrier_app type=app_data_file

BIN
kernel_image/sepolicy Normal file

Binary file not shown.

View file

@ -0,0 +1,7 @@
VE=SEPF_GT-I9195_4.4.2_0042
HS=9bf59b6e50bdb097193759da5ab30b56
HA=e478193cb6e8c77b7e9ee359354f4b74
HP=b25b868b15826f59b504025af5d892ad
HF=50724ef5156f9a928768e889c0ae1d62
HM=4312840b3e4c2fc0ddceee127c2c90a8
BD=Tue May 19 20:25:41 2015

View file

@ -0,0 +1,167 @@
# 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.
#
# 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 0600 system system
/dev/smd0 0660 system system
/dev/smd4 0660 system system
/dev/smd11 0660 system radio
/dev/smd_cxm_qmi 0640 radio radio
/dev/smd7 0660 bluetooth bluetooth
/dev/radio0 0640 system system
/dev/rfcomm0 0660 bluetooth bluetooth
/dev/gss 0660 gps gps
/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/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/ks_hsic_bridge 0660 system system
/dev/efs_hsic_bridge 0660 system system
/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/hsusbctl0 0640 radio radio
/dev/hsusbctl1 0640 radio radio
/dev/hsusbctl2 0640 radio radio
/dev/hsusbctl3 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/gemini0 0660 system camera
/dev/jpeg0 0660 system camera
/dev/jpeg1 0660 system camera
/dev/jpeg2 0660 system camera
/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 0660 system system
#permissions for 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_acdb 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/radio0 0640 fm_radio fm_radio
/dev/smd3 0660 bluetooth net_bt_stack
/dev/smd2 0660 bluetooth net_bt_stack
/dev/ttyHSL1 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
# DVB devices
/dev/dvb/adapter0/demux* 0444 media media
/dev/dvb/adapter0/dvr* 0664 media media
/dev/dvb/adapter0/video* 0664 media media
# native sensors
/sys/devices/i2c-12/12-* pollrate_ms 0664 system system
/sys/devices/i2c-12/12-* enable 0664 system system
/sys/devices/i2c-12/12-* poll_delay 0664 system system
# wlan
/dev/wcnss_wlan 0660 system system
# MDM devices
/dev/block/mmcblk0p13 0660 system radio
/dev/block/mmcblk0p14 0660 system radio
/dev/block/mmcblk0p15 0660 system radio
# for ciq bridge
/dev/ciq_bridge 0660 system system

114
kernel_image/ueventd.rc Normal file
View file

@ -0,0 +1,114 @@
/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
/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
# 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 radio radio
/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 net_bt_stack
/dev/alarm 0664 system radio
/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/audience_a2220 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/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
# sensor sysfs properties
/sys/devices/virtual/input/input* poll_delay 0660 system radio
/sys/devices/virtual/input/input* enable 0660 system radio
/sys/devices/virtual/input/input* acc_enable 0660 system radio
/sys/devices/virtual/input/input* gyro_enable 0660 system radio
/sys/devices/virtual/input/input* acc_delay 0660 system radio
/sys/devices/virtual/input/input* gyro_delay 0660 system radio
#for sensor
/dev/mpu 0660 system system
/dev/mpuirq 0660 system system
/dev/timerirq 0660 system system
/dev/alps_io 0660 system system
# sensorhub
/dev/ssp_sensorhub 0660 system system
# for usb printer
/dev/bus/usb/* 0660 system usb
/dev/usb/lp* 0660 system usb
#permission for dun
/dev/dun 0660 system system
# for PL2303 driver
/dev/ttyUSB* 0660 system usb
# for csvt
/dev/ttyUSB0 0660 system radio

Binary file not shown.