Added and merged init files from stock sm-g530w boot image.
diff --git a/rootdir/etc/init.qcom.rc b/rootdir/etc/init.qcom.rc
old mode 100644
new mode 100755
index b6f3673..b8c3fb9
--- a/rootdir/etc/init.qcom.rc
+++ b/rootdir/etc/init.qcom.rc
@@ -31,32 +31,31 @@
on early-init
mount debugfs debugfs /sys/kernel/debug
write /sys/block/mmcblk0/queue/scheduler noop
-# additionaly for init.trace.rc
-# 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
on init
# Set permissions for persist partition
mkdir /persist 0771 system system
-
mkdir /preload 0771 system system
+
+ # 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
+
+
# See storage config details at http://source.android.com/tech/storage/
mkdir /mnt/shell/emulated 0700 shell shell
mkdir /storage/emulated 0555 root root
- mkdir /mnt/media_rw/sdcard1 0700 media_rw media_rw
- mkdir /mnt/media_rw/usbotg 0700 media_rw media_rw
- mkdir /mnt/media_rw/uicc0 0700 media_rw media_rw
- mkdir /mnt/media_rw/uicc1 0700 media_rw media_rw
- mkdir /storage/sdcard1 0700 root root
- mkdir /storage/uicc0 0700 root root
- mkdir /storage/uicc1 0700 root root
- mkdir /storage/usbotg 0700 root root
export EXTERNAL_STORAGE /storage/emulated/legacy
- export SECONDARY_STORAGE /storage/sdcard1
export EMULATED_STORAGE_SOURCE /mnt/shell/emulated
export EMULATED_STORAGE_TARGET /storage/emulated
+ export SECONDARY_STORAGE /storage/extSdCard
+ mkdir /storage/extSdCard 0555 root root
# Support legacy paths
symlink /storage/emulated/legacy /sdcard
@@ -64,6 +63,23 @@
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
+
+ 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
@@ -97,9 +113,6 @@
chmod 0660 /dev/ttyHS2
chown bluetooth bluetooth /dev/ttyHS2
- chown bluetooth bluetooth /sys/class/rfkill/rfkill0/device/extldo
- chmod 0660 /sys/class/rfkill/rfkill0/device/extldo
-
# for BT MAC address
mkdir /efs/bluetooth 0775 radio system
# if already exist
@@ -136,6 +149,11 @@
#For bridgemgr daemon to inform the USB driver of the correct transport
chown radio radio /sys/class/android_usb/f_rmnet_smd_sdio/transport
+
+ # For setting tcp delayed ack
+ chown system system /sys/kernel/ipv4/tcp_delack_seg
+ chown system system /sys/kernel/ipv4/tcp_use_userconfig
+
# Define TCP buffer sizes for various networks
# ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax,
@@ -154,6 +172,12 @@
# Increased technology maximums should be reflected here.
write /proc/sys/net/core/rmem_max 8388608
write /proc/sys/net/core/wmem_max 8388608
+# Define TCP delayed ack settings for WiFi
+ setprop net.tcp.delack.default 1
+ setprop net.tcp.delack.wifi 20
+ setprop net.tcp.usercfg.default 0
+ setprop net.tcp.usercfg.wifi 1
+ setprop persist.tcp.delack.enable true
#To allow interfaces to get v6 address when tethering is enabled
write /proc/sys/net/ipv6/conf/rmnet0/accept_ra 2
@@ -192,6 +216,39 @@
# Allow access for CCID command/response timeout configuration
chown system system /sys/module/ccid_bridge/parameters/bulk_msg_timeout
+#
+# 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=mdm
+ start qmuxd
+
+on property:ro.baseband=unknown
+ start qmuxd
+
+#
+# start netmgrd
+#
+on property:ro.use_data_netmgrd=true
+ start netmgrd
+
+#
+# start multiple rilds based on multisim property
+#
+on property:ro.multisim.simslotcount=2
+ stop ril-daemon
+ start ril-daemon
+ start ril-daemon1
+
# msm specific files that need to be created on /data
on post-fs-data
# Create directory for TZ Apps
@@ -214,6 +271,14 @@
mkdir /data/misc/dhcp 0775 dhcp dhcp
chown dhcp dhcp /data/misc/dhcp
+ # 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 MAC address
mkdir /efs/wifi 0775 radio system
chown system wifi /efs/wifi/.mac.info
@@ -224,6 +289,7 @@
write /data/.wifiver.info 0
chown system root /data/.wifiver.info
chmod 0666 /data/.wifiver.info
+
# Create the directories used by CnE subsystem
mkdir /data/connectivity 0771 system system
chown system system /data/connectivity
@@ -246,6 +312,7 @@
# Create directory used by display clients
mkdir /data/misc/display 0770 system graphics
+ mkdir /persist/display 0770 system graphics
# 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
@@ -303,24 +370,15 @@
chmod 2755 /data/misc/perfd
mkdir /data/system/perfd 0770 root system
chmod 2770 /data/system/perfd
+#service qcomsysd /system/bin/qcom-system-daemon
+# class main
+# user root
+# group root qcom_diag
# NFC local data and nfcee xml storage
mkdir /data/nfc 0770 nfc nfc
mkdir /data/nfc/param 0770 nfc nfc
- # DCT(Display Clock Tunning) - Interface 2.0
- chown radio system /sys/class/dct/dct_node/data
- chown radio system /sys/class/dct/dct_node/state
- chown radio system /sys/class/dct/dct_node/log
- chown radio system /sys/class/dct/dct_node/enabled
- chown radio system /sys/class/dct/dct_node/interface
- chown radio system /sys/class/dct/dct_node/libname
- chown radio system /sys/class/dct/dct_node/tunned
-
-#service qcomsysd /system/bin/qcom-system-daemon
-# class main
-# user root
-# group root qcom_diag
service ssr_setup /system/bin/ssr_setup
oneshot
@@ -348,6 +406,11 @@
on property:persist.radio.atfwd.start=false
stop atfwd
+service qcom-debug /system/bin/sh /system/etc/init.qcom.debug.sh
+ class core
+ user root
+ oneshot
+
# corefile limit and ETB enabling
on property:persist.debug.trace=1
mkdir /data/core 0777 root root
@@ -415,6 +478,14 @@
on property:persist.env.fastdorm.enabled=true
setprop persist.radio.data_no_toggle 1
+service cnd /system/bin/cnd
+ class late_start
+ socket cnd stream 660 root inet
+
+service dpmd /system/bin/dpmd
+ class late_start
+ socket dpmd stream 660 root system
+
service irsc_util /system/bin/irsc_util "/etc/sec_config"
class main
user root
@@ -436,6 +507,12 @@
on property:wc_transport.start_hci=false
stop start_hci_filter
+service start_hci_filter /system/bin/wcnss_filter
+ class late_start
+ user root
+ group bluetooth qcom_diag
+ disabled
+
service config_bluetooth /system/bin/sh /system/etc/init.qcom.bt.sh "onboot"
class core
user root
@@ -475,6 +552,13 @@
disabled
oneshot
+service btsnoop /system/bin/btsnoop
+ user bluetooth
+ group bluetooth net_bt_admin sdcard_rw sdcard_r
+ class late_start
+ disabled
+ oneshot
+
service ftmd /system/bin/logwrapper /system/bin/ftmdaemon
class late_start
user root
@@ -511,6 +595,29 @@
class main
disabled
+service ipacm-diag /system/bin/ipacm-diag
+ class main
+ user system
+ socket ipacm_log_file dgram 660 system net_admin
+ group net_admin qcom_diag
+ disabled
+
+service ipacm /system/bin/ipacm
+ class main
+ user net_admin
+ group net_admin inet
+ disabled
+
+service qti /system/vendor/bin/qti
+ 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
@@ -527,6 +634,48 @@
disabled
oneshot
+service amp_init /system/bin/amploader -i
+ class late_start
+ user root
+ disabled
+ oneshot
+
+service amp_load /system/bin/amploader -l 7000
+ class late_start
+ user root
+ disabled
+ oneshot
+
+service amp_unload /system/bin/amploader -u
+ class late_start
+ user root
+ 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 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 \
@@ -534,6 +683,20 @@
-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 \
+ -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \
+ -I/system/etc/wifi/wpa_supplicant_overlay.conf \
+ -O/data/misc/wifi/sockets \
+ -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
@@ -543,18 +706,12 @@
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
+service olsrd /system/bin/olsrd -f /etc/wifi/olsrd.conf
class main
- socket wpa_wlan0 dgram 660 wifi wifi
disabled
oneshot
-service dhcpcd_wlan0 /system/bin/dhcpcd -ABKL
+service dhcpcd_wlan0 /system/bin/dhcpcd -ABKLG
class late_start
disabled
oneshot
@@ -564,29 +721,16 @@
disabled
oneshot
+service dhcpcd_ibss /system/bin/dhcpcd -BKM
+ 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 ptt_socket_app /system/bin/ptt_socket_app -d
- class main
- user root
- group root
- disabled
- oneshot
-
-service ptt_ffbm /system/bin/ptt_socket_app -f -d
- user root
- group root
- disabled
- oneshot
-
service ftm_ffbm /system/bin/ftmdaemon
user root
group root
@@ -623,31 +767,11 @@
disabled
oneshot
-#for WiFi MFG(TestMode)
-service mfgloader /system/bin/mfgloader
+service sec-sh /system/bin/sh /system/etc/init.sec.boot.sh
class main
- disabled
+ user root
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 loc_launcher /system/bin/loc_launcher
#loc_launcher will start as root and set its uid to gps
class late_start
@@ -664,6 +788,18 @@
insmod /system/lib/modules/qce.ko
insmod /system/lib/modules/qcedev.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
@@ -675,18 +811,6 @@
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
-
service config-zram /system/bin/sh /system/etc/init.qcom.zram.sh
class late_start
user root
@@ -709,27 +833,31 @@
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 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
-#
-# start multiple rilds based on multisim property
-#
-on property:ro.multisim.simslotcount=2
- stop ril-daemon
- start ril-daemon
- start ril-daemon1
-
-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
+service battery_monitor /system/bin/battery_monitor
+ user system
+ group system
+ disabled
#service ril-daemon2 /system/bin/rild -c 2
# class main
@@ -765,30 +893,63 @@
on property:sys.usb_uicc.enabled=0
start usb_uicc_enable
+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 /data/media /mnt/shell/emulated
+service sdcard /system/bin/sdcard -u 1023 -g 1023 -l -r /data/media /mnt/shell/emulated
class late_start
+ oneshot
+
-service fuse_sdcard1 /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d /mnt/media_rw/sdcard1 /storage/sdcard1
+service fuse_extSdCard /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d -f /mnt/media_rw/extSdCard /storage/extSdCard
class late_start
disabled
+ oneshot
-service fuse_uicc0 /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d /mnt/media_rw/uicc0 /storage/uicc0
- class late_start
-
-service fuse_uicc1 /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d /mnt/media_rw/uicc1 /storage/uicc1
+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_usbotg /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d /mnt/media_rw/usbotg /storage/usbotg
+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
+#on property:init.svc.sdcard=running
+# wait /mnt/shell/emulated/0
+# mount none /mnt/shell/emulated/0 /storage/emulated/legacy bind
+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
@@ -827,6 +988,22 @@
trigger early-boot
trigger mmi
+service hvdcp /system/bin/hvdcp
+ class core
+ user root
+ disabled
+
+on property:persist.usb.hvdcp.detect=true
+ start hvdcp
+
+on property:persist.usb.hvdcp.detect=false
+ stop hvdcp
+
+service charger_monitor /system/bin/charger_monitor
+ user root
+ group root
+ disabled
+
service qbcharger /charger -m 1
disabled
oneshot
@@ -851,8 +1028,25 @@
disabled
oneshot
+service qlogd /system/xbin/qlogd
+ socket qlogd stream 0662 system system
+ class main
+ disabled
+on property:persist.sys.qlogd=1
+ start qlogd
+on property:persist.sys.qlogd=0
+ stop qlogd
+
+service rootagent /system/bin/sh /system/etc/init.qcom.rootagent.sh
+ disabled
+ oneshot
+on property:persist.sys.rootagent=1
+ start rootagent
+on property:persist.sys.rootagent=0
+ stop rootagent
+
service bms-sh /system/bin/sh /init.qcom.bms.sh
- class core
+ class main
user root
oneshot
@@ -870,3 +1064,29 @@
# Change IO scheduler to CFQ after boot_complete
on property:sys.boot_completed=1
write /sys/block/mmcblk0/queue/scheduler cfq
+
+# umount service
+service umount_service /system/bin/umount /preload
+ disabled
+ oneshot
+
+# Support Preload install apks
+on property:persist.sys.storage_preload=1
+ mount ext4 /dev/block/bootdevice/by-name/hidden /preload nosuid nodev ro barrier=1
+ setprop storage.preload.complete 1
+
+on property:persist.sys.storage_preload=0
+ start umount_service
+
+service wfdservice /system/bin/wfdservice
+ class main
+ user system
+ group graphics audio camera inet net_bt net_bt_admin net_bt_stack drmrpc bluetooth media_rw media
+ disabled
+ oneshot
+
+on property:sys.wfdservice=enable
+ start wfdservice
+
+on property:sys.wfdservice=disable
+ stop wfdservice