/init.rc

http://github.com/kyapa/sc02b_initramfs · Windows Resource-Definition Script · 828 lines · 681 code · 147 blank · 0 comment · 0 complexity · 5a1964b6b37102181fe1972cb7b43feb MD5 · raw file

  1. on early-init
  2. start ueventd
  3. on init
  4. sysclktz 0
  5. loglevel 3
  6. # setup the global environment
  7. export PATH /sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
  8. export LD_LIBRARY_PATH /vendor/lib:/system/lib
  9. export ANDROID_BOOTLOGO 1
  10. export ANDROID_ROOT /system
  11. export ANDROID_ASSETS /system/app
  12. export ANDROID_DATA /data
  13. export EXTERNAL_STORAGE /mnt/sdcard
  14. export EXTERNAL_STORAGE2 /mnt/sdcard/external_sd
  15. export USBHOST_STORAGE /mnt/sdcard/usbStorage
  16. export ASEC_MOUNTPOINT /mnt/asec
  17. export LOOP_MOUNTPOINT /mnt/obb
  18. export BOOTCLASSPATH /system/framework/core.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/core-junit.jar
  19. # Backward compatibility
  20. symlink /system/etc /etc
  21. symlink /sys/kernel/debug /d
  22. # Right now vendor lives on the same filesystem as system,
  23. # but someday that may change.
  24. symlink /system/vendor /vendor
  25. # create mountpoints
  26. mkdir /mnt 0775 root system
  27. mkdir /mnt/sdcard 0000 system system
  28. # Create cgroup mount point for cpu accounting
  29. mkdir /acct
  30. mount cgroup none /acct cpuacct
  31. mkdir /acct/uid
  32. #add booting sound property
  33. setprop audioflinger.bootsnd 1
  34. #S1_JPN_NTT
  35. #add camera sound property
  36. setprop ro.camera.sound.forced 1
  37. # Backwards Compat - XXX: Going away in G*
  38. symlink /mnt/sdcard /sdcard
  39. mkdir /system
  40. mkdir /dbdata 0771 system system
  41. mkdir /data 0771 system system
  42. mkdir /cache 0770 system cache
  43. mkdir /config 0500 root root
  44. mkdir /efs 0771 system system
  45. chown system system /efs
  46. chmod 0771 /efs
  47. # Directory for putting things only root should see.
  48. mkdir /mnt/secure 0700 root root
  49. # Directory for staging bindmounts
  50. mkdir /mnt/secure/staging 0700 root root
  51. # Directory-target for where the secure container
  52. # imagefile directory will be bind-mounted
  53. mkdir /mnt/secure/asec 0700 root root
  54. # Secure container public mount points.
  55. mkdir /mnt/asec 0700 root system
  56. mount tmpfs tmpfs /mnt/asec mode=0755,gid=1000
  57. # Filesystem image public mount points.
  58. mkdir /mnt/obb 0700 root system
  59. mount tmpfs tmpfs /mnt/obb mode=0755,gid=1000
  60. write /proc/sys/kernel/panic_on_oops 1
  61. write /proc/sys/kernel/hung_task_timeout_secs 0
  62. write /proc/cpu/alignment 4
  63. write /proc/sys/kernel/sched_latency_ns 10000000
  64. write /proc/sys/kernel/sched_wakeup_granularity_ns 2000000
  65. write /proc/sys/kernel/sched_compat_yield 1
  66. write /proc/sys/kernel/sched_child_runs_first 0
  67. # Create cgroup mount points for process groups
  68. mkdir /dev/cpuctl
  69. mount cgroup none /dev/cpuctl cpu
  70. chown system system /dev/cpuctl
  71. chown system system /dev/cpuctl/tasks
  72. chmod 0777 /dev/cpuctl/tasks
  73. write /dev/cpuctl/cpu.shares 1024
  74. mkdir /dev/cpuctl/fg_boost
  75. chown system system /dev/cpuctl/fg_boost/tasks
  76. chmod 0777 /dev/cpuctl/fg_boost/tasks
  77. write /dev/cpuctl/fg_boost/cpu.shares 1024
  78. mkdir /dev/cpuctl/bg_non_interactive
  79. chown system system /dev/cpuctl/bg_non_interactive/tasks
  80. chmod 0777 /dev/cpuctl/bg_non_interactive/tasks
  81. # 5.0 %
  82. write /dev/cpuctl/bg_non_interactive/cpu.shares 52
  83. insmod /lib/modules/fsr.ko
  84. insmod /lib/modules/fsr_stl.ko
  85. insmod /lib/modules/rfs_glue.ko
  86. insmod /lib/modules/rfs_fat.ko
  87. insmod /lib/modules/j4fs.ko
  88. insmod /lib/modules/Si4709_driver.ko
  89. # ko files for vibrator
  90. insmod /lib/modules/vibrator.ko
  91. # ko files for bthid
  92. insmod /lib/modules/bthid.ko
  93. #temp
  94. chown root root /sbin/fat.format
  95. chmod 750 /sbin/fat.format
  96. on fs
  97. # mount mtd partitions
  98. # Mount /system rw first to give the filesystem a chance to save a checkpoint
  99. # mount yaffs2 mtd@system /system
  100. # mount yaffs2 mtd@system /system ro remount
  101. # mount yaffs2 mtd@userdata /data nosuid nodev
  102. # mount yaffs2 mtd@cache /cache nosuid nodev
  103. mount rfs /dev/block/stl9 /system check=no
  104. # Temp add for FY -> GB update problem
  105. # After update GB, need to remove
  106. copy /tmp/linker /system/bin/linker
  107. copy /tmp/libc.so /system/lib/libc.so
  108. copy /tmp/libcutils.so /system/lib/libcutils.so
  109. copy /tmp/liblog.so /system/lib/liblog.so
  110. copy /tmp/libz.so /system/lib/libz.so
  111. copy /tmp/libstdc++.so /system/lib/libstdc++.so
  112. exec umount
  113. mount rfs /dev/block/stl9 /system check=no
  114. # BLN - system patch run & wait
  115. start blnpatch
  116. mount rfs /dev/block/stl9 /system ro remount
  117. # SEC_DMCRYPT for MC_CRYPT_ROOT before apply_disk_policy or apply_sec_devenc_init
  118. #chown system system /efs
  119. #chown radio radio /efs
  120. chown radio system /efs
  121. chmod 0771 /efs
  122. mount rfs /dev/block/stl3 /efs nosuid nodev check=no
  123. # use movinand second partition as /data. d.moskvitin
  124. #temp
  125. chown root root /sbin/fat.format
  126. chmod 750 /sbin/fat.format
  127. exec apply_disk_policy
  128. mkdir /data
  129. # SEC_DMCRYPT crypt flag added data
  130. # mount rfs /dev/block/mmcblk0p2 /data nosuid nodev check=no
  131. mount rfs /dev/block/mmcblk0p2 /data nosuid nodev crypt check=no
  132. chown system system /data
  133. chmod 0771 /data
  134. mkdir /dbdata
  135. #SEC_DMCRYPT crypt flag added
  136. mount rfs /dev/block/stl10 /dbdata nosuid nodev crypt check=no
  137. #mount rfs /dev/block/stl10 /dbdata nosuid nodev check=no
  138. chown system system /dbdata
  139. chmod 0771 /dbdata
  140. chmod 0771 /dbdata
  141. mkdir /dbdata/databases
  142. chown system system /dbdata/databases
  143. chmod 0777 /dbdata/databases
  144. mkdir /dbdata/system
  145. chown system system /dbdata/system
  146. chmod 0775 /dbdata/system
  147. mkdir /dbdata/db-journal
  148. chown system system /dbdata/db-journal
  149. chmod 0777 /dbdata/db-journal
  150. mount rfs /dev/block/stl11 /cache nosuid nodev check=no
  151. mkdir /mnt/.lfs 0755 root root
  152. mount j4fs /dev/block/stl6 /mnt/.lfs
  153. insmod /lib/modules/param.ko
  154. # samsung module
  155. insmod /lib/modules/storage.ko
  156. # SEC_DMCRYPT efs or cache or lfs partition required
  157. exec apply_sec_devenc_init
  158. on post-fs
  159. # once everything is setup, no need to modify /
  160. mount rootfs rootfs / ro remount
  161. # We chown/chmod /data again so because mount is run as root + defaults
  162. chown system system /data
  163. chmod 0771 /data
  164. # Create dump dir and collect dumps.
  165. # Do this before we mount cache so eventually we can use cache for
  166. # storing dumps on platforms which do not have a dedicated dump partition.
  167. mkdir /data/dontpanic
  168. chown root log /data/dontpanic
  169. chmod 0750 /data/dontpanic
  170. # Collect apanic data, free resources and re-arm trigger
  171. copy /proc/apanic_console /data/dontpanic/apanic_console
  172. chown root log /data/dontpanic/apanic_console
  173. chmod 0640 /data/dontpanic/apanic_console
  174. copy /proc/apanic_threads /data/dontpanic/apanic_threads
  175. chown root log /data/dontpanic/apanic_threads
  176. chmod 0640 /data/dontpanic/apanic_threads
  177. write /proc/apanic_console 1
  178. # Same reason as /data above
  179. chown system cache /cache
  180. chmod 0770 /cache
  181. # cache folder for bigger file than /cache
  182. mkdir /data/cache
  183. chown system cache /data/cache
  184. chmod 0770 /data/cache
  185. # This may have been created by the recovery system with odd permissions
  186. chown system cache /cache/recovery
  187. chmod 0770 /cache/recovery
  188. #change permissions on vmallocinfo so we can grab it from bugreports
  189. chown root log /proc/vmallocinfo
  190. chmod 0440 /proc/vmallocinfo
  191. #change permissions on kmsg & sysrq-trigger so bugreports can grab kthread stacks
  192. chown root system /proc/kmsg
  193. chmod 0440 /proc/kmsg
  194. chown root system /proc/sysrq-trigger
  195. chmod 0220 /proc/sysrq-trigger
  196. # create basic filesystem structure
  197. mkdir /data/misc 01771 system misc
  198. mkdir /data/misc/bluetoothd 0770 bluetooth bluetooth
  199. mkdir /data/misc/bluetooth 0770 system system
  200. mkdir /data/misc/keystore 0700 keystore keystore
  201. mkdir /data/misc/vpn 0770 system system
  202. mkdir /data/misc/systemkeys 0700 system system
  203. mkdir /data/misc/vpn/profiles 0770 system system
  204. mkdir /data/misc/radio 0771 radio radio
  205. # give system access to wpa_supplicant.conf for backup and restore
  206. mkdir /data/wifi 0777 wifi wifi
  207. # mkdir /data/misc/wifi 0771 wifi system
  208. mkdir /data/misc/wifi 0771 wifi wifi
  209. chmod 0777 /data/misc/wifi/
  210. chmod 0777 /data/wifi/
  211. mkdir /data/misc/dhcp 0777 dhcp dhcp
  212. mkdir /data/misc/wifi/sockets 0777 wifi wifi
  213. chmod 0664 /system/etc/wifi/wpa_supplicant.conf
  214. chown dhcp dhcp /data/misc/dhcp
  215. mkdir /data/misc/dhcpcd 0771 dhcp dhcp
  216. chown dhcp dhcp /data/misc/dhcpcd
  217. chown dhcp dhcp /data/misc/dhcp
  218. mkdir /data/local 0771 shell shell
  219. mkdir /data/local/tmp 0771 shell shell
  220. mkdir /data/data 0771 system system
  221. mkdir /data/app-private 0771 system system
  222. mkdir /data/app 0771 system system
  223. mkdir /data/property 0700 root root
  224. #over-wirte-permission.
  225. chmod 0771 /data/app
  226. chown system system /data/app
  227. # create log system
  228. mkdir /data/log 0777 system system
  229. chmod 0777 /data/log
  230. chmod 0777 /data/anr
  231. chmod 0662 /dev/log/radio
  232. chmod 0662 /dev/log/main
  233. chmod 0662 /dev/log/event
  234. # create dalvik-cache and double-check the perms
  235. mkdir /data/dalvik-cache 0771 system system
  236. chown system system /data/dalvik-cache
  237. chmod 0771 /data/dalvik-cache
  238. # create the lost+found directories, so as to enforce our permissions
  239. mkdir /data/lost+found 0770
  240. mkdir /cache/lost+found 0770
  241. # permissions for MTP device node_temporary permission_will be changed 0660
  242. chmod 0660 /dev/usb_mtp_gadget
  243. chown system system /dev/usb_mtp_gadget
  244. #DRM directory creation
  245. mkdir /system/etc/security/drm 0775
  246. chown root root /system/etc/security/drm
  247. chmod 0775 /system/etc/security/drm
  248. # Added for testing DIVX DRM
  249. mkdir /efs/.android 0775
  250. chown radio radio /efs/.android
  251. chmod 0775 /efs/.android
  252. # Added for testing WMDRM
  253. mkdir /data/data/.drm 0775
  254. mkdir /data/data/.drm/.wmdrm 0775
  255. chown media system /data/data/.drm
  256. chown media system /data/data/.drm/.wmdrm
  257. # Setting device permissions for /dev/fmradio
  258. chown system system /dev/fmradio
  259. chmod 0660 /dev/fmradio
  260. # double check the perms, in case lost+found already exists, and set owner
  261. chown root root /data/lost+found
  262. chmod 0770 /data/lost+found
  263. chown root root /cache/lost+found
  264. chmod 0770 /cache/lost+found
  265. # create data/gps for GPS demon
  266. mkdir /data/gps 771 gps system
  267. chown gps system /data/gps
  268. chown gps root /sys/class/sec/gps/GPS_PWR_EN/value
  269. chmod 660 /sys/class/sec/gps/GPS_PWR_EN/value
  270. # for sensor control
  271. chown system input /sys/class/input/input0/enable
  272. chown system input /sys/class/input/input0/delay
  273. chown system input /sys/class/input/input0/wake
  274. chown system input /sys/class/input/input0/data
  275. chown system input /sys/class/input/input1/enable
  276. chown system input /sys/class/input/input1/delay
  277. chown system input /sys/class/input/input1/wake
  278. chown system input /sys/class/input/input1/threshold
  279. chown system input /sys/class/input/input1/distortion
  280. chown system input /sys/class/input/input1/shape
  281. chown system input /sys/class/input/input1/offsets
  282. chown system input /sys/class/input/input1/filter_enable
  283. chown system input /sys/class/input/input1/filter_len
  284. chown system input /sys/class/input/input1/data
  285. chown system input /sys/class/input/input1/status
  286. chown system input /sys/class/input/input1/position
  287. chown system input /sys/class/input/input2/enable
  288. chown system input /sys/class/input/input2/delay
  289. chown system input /sys/class/input/input2/wake
  290. chown system input /sys/class/input/input2/threshold
  291. chown system input /sys/class/input/input2/distortion
  292. chown system input /sys/class/input/input2/shape
  293. chown system input /sys/class/input/input2/offsets
  294. chown system input /sys/class/input/input2/filter_enable
  295. chown system input /sys/class/input/input2/filter_len
  296. chown system input /sys/class/input/input2/data
  297. chown system input /sys/class/input/input2/status
  298. chown system input /sys/class/input/input2/position
  299. chown system input /sys/class/input/input3/enable
  300. chown system input /sys/class/input/input3/delay
  301. chown system input /sys/class/input/input3/wake
  302. chown system input /sys/class/input/input3/threshold
  303. chown system input /sys/class/input/input3/distortion
  304. chown system input /sys/class/input/input3/shape
  305. chown system input /sys/class/input/input3/offsets
  306. chown system input /sys/class/input/input3/filter_enable
  307. chown system input /sys/class/input/input3/filter_len
  308. chown system input /sys/class/input/input3/data
  309. chown system input /sys/class/input/input3/status
  310. chown system input /sys/class/input/input3/position
  311. chown system input /sys/class/input/input4/enable
  312. chown system input /sys/class/input/input4/delay
  313. chown system input /sys/class/input/input4/wake
  314. chown system input /sys/class/input/input5/enable
  315. chown system input /sys/class/input/input5/delay
  316. chown system input /sys/class/input/input5/wake
  317. chown system input /sys/class/input/input6/enable
  318. chown system input /sys/class/input/input6/delay
  319. chown system input /sys/class/input/input6/wake
  320. chown system input /sys/class/input/input7/enable
  321. chown system input /sys/class/input/input7/delay
  322. chown system input /sys/class/input/input7/wake
  323. chown system input /sys/class/input/input8/enable
  324. chown system input /sys/class/input/input8/delay
  325. chown system input /sys/class/input/input8/wake
  326. chown system input /sys/class/input/input9/enable
  327. chown system input /sys/class/input/input9/delay
  328. chown system input /sys/class/input/input9/wake
  329. chown system input /dev/i2c-12
  330. #change permissions for modem
  331. chown radio system /sys/class/modemctl/xmm/control
  332. chown radio system /sys/class/net/svnet0/waketime
  333. chown radio system /sys/class/net/svnet0/pdp/activate
  334. chown radio system /sys/class/net/svnet0/pdp/deactivate
  335. chown radio system /sys/class/net/svnet0/pdp/suspend
  336. chown radio system /sys/class/net/svnet0/pdp/resume
  337. #change permissions for USB
  338. chown radio system /sys/class/sec/switch/usb_sel
  339. chown radio system /sys/class/sec/switch/uart_sel
  340. chown radio system /sys/class/sec/switch/usb_state
  341. chown radio system /sys/class/sec/switch/disable_vbus
  342. chmod 0664 /sys/devices/platform/android_usb/UsbMenuSel
  343. chown radio system /sys/devices/platform/android_usb/UsbMenuSel
  344. chmod 0664 /sys/devices/platform/android_usb/AskOnStatus
  345. chown radio system /sys/devices/platform/android_usb/AskOnStatus
  346. #change permissions for fuel gauge
  347. chown radio system /sys/class/sec/fg_atcom_test/set_fuel_gauage_read
  348. chown radio system /sys/class/sec/fg_atcom_test/set_fuel_gauage_reset
  349. #change permissions for battery
  350. chown radio system /sys/class/power_supply/battery/batt_vol
  351. chown radio system /sys/class/power_supply/battery/batt_vol_adc
  352. chown radio system /sys/class/power_supply/battery/batt_temp
  353. chown radio system /sys/class/power_supply/battery/batt_temp_adc
  354. chown radio system /sys/class/power_supply/battery/charging_source
  355. chown radio system /sys/class/power_supply/battery/fg_soc
  356. chown radio system /sys/class/power_supply/battery/reset_soc
  357. chown radio system /sys/class/power_supply/battery/charging_mode_booting
  358. chown radio system /sys/class/power_supply/battery/batt_temp_check
  359. chown radio system /sys/class/power_supply/battery/batt_full_check
  360. chown radio system /sys/class/power_supply/battery/batt_type
  361. #for jack control
  362. chown radio system /sys/class/jack/jack_selector/select_jack
  363. #change permissions for touch
  364. chown radio system /sys/class/sec/qt602240_noise_test/set_refer0
  365. chown radio system /sys/class/sec/qt602240_noise_test/set_delta0
  366. chown radio system /sys/class/sec/qt602240_noise_test/set_refer1
  367. chown radio system /sys/class/sec/qt602240_noise_test/set_delta1
  368. chown radio system /sys/class/sec/qt602240_noise_test/set_refer2
  369. chown radio system /sys/class/sec/qt602240_noise_test/set_delta2
  370. chown radio system /sys/class/sec/qt602240_noise_test/set_refer3
  371. chown radio system /sys/class/sec/qt602240_noise_test/set_delta3
  372. chown radio system /sys/class/sec/qt602240_noise_test/set_refer4
  373. chown radio system /sys/class/sec/qt602240_noise_test/set_delta4
  374. chown radio system /sys/class/sec/qt602240_noise_test/set_referminmax
  375. chown radio system /sys/class/sec/qt602240_noise_test/set_deltaminmax
  376. chown radio system /sys/class/sec/qt602240_noise_test/set_threshould
  377. chown radio system /sys/class/sec/qt602240_atcom_test/set_qt_update
  378. chown radio system /sys/class/sec/qt602240_atcom_test/set_qt_firm_version
  379. chown radio system /sys/class/sec/qt602240_atcom_test/set_qt_firm_status
  380. chown radio system /sys/class/sec/qt602240_atcom_test/set_qt_firm_version_read
  381. chown radio system /sys/class/touch/switch/set_power
  382. chown radio system /sys/class/touch/switch/set_acquisition
  383. chown radio system /sys/class/touch/switch/set_touchscreen
  384. chown radio system /sys/class/touch/switch/set_keyarray
  385. chown radio system /sys/class/touch/switch/set_total
  386. chown radio system /sys/class/touch/switch/set_write
  387. chown radio system /sys/class/touch/switch/set_noise
  388. chown radio system /sys/class/touch/switch/set_grip
  389. chown radio system /sys/class/touch/qt_stylus/config_mode
  390. #change permissions for lcd
  391. chown radio system /sys/class/lcd/s5p_lcd/lcd_power
  392. chown radio radio /sys/class/gammaset/switch_gammaset/gammaset_file_cmd
  393. chown radio radio /sys/class/aclset/switch_aclset/aclset_file_cmd
  394. chown radio system /sys/class/sec/sec_lcd/lcdtype_file_cmd
  395. chown radio radio /sys/class/mdnieset_ui/switch_mdnieset_ui/mdnieset_ui_file_cmd
  396. chown radio radio /sys/class/mdnieset_outdoor/switch_mdnieset_outdoor/mdnieset_outdoor_file_cmd
  397. #change permissions for touchkey
  398. chown radio system /sys/class/misc/melfas_touchkey/touch_version
  399. chown radio system /sys/class/misc/melfas_touchkey/touch_update
  400. chown radio system /sys/class/misc/melfas_touchkey/brightness
  401. chown radio system /sys/class/misc/melfas_touchkey/enable_disable
  402. chown radio system /sys/devices/platform/s3c-keypad/key_pressed
  403. chown radio system /sys/class/misc/level/control
  404. chown radio system /sys/class/sec/switch/tethering
  405. on boot
  406. # basic network init
  407. ifup lo
  408. hostname localhost
  409. domainname localdomain
  410. # set RLIMIT_NICE to allow priorities from 19 to -20
  411. setrlimit 13 40 40
  412. start setrooted
  413. # Define the oom_adj values for the classes of processes that can be
  414. # killed by the kernel. These are used in ActivityManagerService.
  415. setprop ro.FOREGROUND_APP_ADJ 0
  416. setprop ro.VISIBLE_APP_ADJ 1
  417. setprop ro.PERCEPTIBLE_APP_ADJ 1
  418. setprop ro.HEAVY_WEIGHT_APP_ADJ 2
  419. setprop ro.SECONDARY_SERVER_ADJ 2
  420. setprop ro.BACKUP_APP_ADJ 2
  421. setprop ro.HOME_APP_ADJ 4
  422. setprop ro.HIDDEN_APP_MIN_ADJ 7
  423. setprop ro.CONTENT_PROVIDER_MEM 14
  424. setprop ro.EMPTY_APP_ADJ 15
  425. # to enable wifi
  426. setprop wifi.interface "eth0"
  427. # Define the memory thresholds at which the above process classes will
  428. # be killed. These numbers are in pages (4k).
  429. setprop ro.FOREGROUND_APP_MEM 2560
  430. setprop ro.VISIBLE_APP_MEM 4096
  431. setprop ro.PERCEPTIBLE_APP_MEM 4096
  432. setprop ro.HEAVY_WEIGHT_APP_MEM 4096
  433. setprop ro.SECONDARY_SERVER_MEM 6144
  434. setprop ro.BACKUP_APP_MEM 6144
  435. setprop ro.HOME_APP_MEM 6144
  436. setprop ro.HIDDEN_APP_MEM 10240
  437. setprop ro.CONTENT_PROVIDER_MEM 11264
  438. setprop ro.EMPTY_APP_MEM 12288
  439. # Write value must be consistent with the above properties.
  440. # Note that the driver only supports 6 slots, so we have combined some of
  441. # the classes into the same memory level; the associated processes of higher
  442. # classes will still be killed first.
  443. write /sys/module/lowmemorykiller/parameters/adj 0,1,2,7,14,15
  444. write /proc/sys/vm/overcommit_memory 1
  445. write /proc/sys/vm/min_free_order_shift 4
  446. write /sys/module/lowmemorykiller/parameters/minfree 2560,4096,6144,10240,11264,12288
  447. # Set init its forked children's oom_adj.
  448. write /proc/1/oom_adj -16
  449. # Tweak background writeout
  450. write /proc/sys/vm/dirty_expire_centisecs 200
  451. write /proc/sys/vm/dirty_background_ratio 5
  452. # Permissions for System Server and daemons.
  453. chown radio system /sys/android_power/state
  454. chown radio system /sys/android_power/request_state
  455. chown radio system /sys/android_power/acquire_full_wake_lock
  456. chown radio system /sys/android_power/acquire_partial_wake_lock
  457. chown radio system /sys/android_power/release_wake_lock
  458. chown radio system /sys/power/state
  459. chown radio system /sys/power/wake_lock
  460. chown radio system /sys/power/wake_unlock
  461. chown radio system /sys/power/dvfslock_ctrl
  462. chmod 0660 /sys/power/state
  463. chmod 0660 /sys/power/wake_lock
  464. chmod 0660 /sys/power/wake_unlock
  465. chmod 0660 /sys/power/dvfslock_ctrl
  466. chown system system /sys/class/timed_output/vibrator/enable
  467. chown system system /sys/class/leds/keyboard-backlight/brightness
  468. chown system system /sys/class/leds/lcd-backlight/brightness
  469. chown system system /sys/class/leds/button-backlight/brightness
  470. chown system system /sys/class/leds/jogball-backlight/brightness
  471. chown system system /sys/class/leds/red/brightness
  472. chown system system /sys/class/leds/green/brightness
  473. chown system system /sys/class/leds/blue/brightness
  474. chown system system /sys/class/leds/red/device/grpfreq
  475. chown system system /sys/class/leds/red/device/grppwm
  476. chown system system /sys/class/leds/red/device/blink
  477. chown system system /sys/class/leds/red/brightness
  478. chown system system /sys/class/leds/green/brightness
  479. chown system system /sys/class/leds/blue/brightness
  480. chown system system /sys/class/leds/red/device/grpfreq
  481. chown system system /sys/class/leds/red/device/grppwm
  482. chown system system /sys/class/leds/red/device/blink
  483. chown system system /sys/class/timed_output/vibrator/enable
  484. chown system system /sys/module/sco/parameters/disable_esco
  485. chown system system /sys/kernel/ipv4/tcp_wmem_min
  486. chown system system /sys/kernel/ipv4/tcp_wmem_def
  487. chown system system /sys/kernel/ipv4/tcp_wmem_max
  488. chown system system /sys/kernel/ipv4/tcp_rmem_min
  489. chown system system /sys/kernel/ipv4/tcp_rmem_def
  490. chown system system /sys/kernel/ipv4/tcp_rmem_max
  491. chown root radio /proc/cmdline
  492. # Define TCP buffer sizes for various networks
  493. # ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax,
  494. setprop net.tcp.buffersize.default 4096,87380,110208,4096,16384,110208
  495. setprop net.tcp.buffersize.wifi 4095,87380,110208,4096,16384,110208
  496. setprop net.tcp.buffersize.umts 4094,87380,110208,4096,16384,110208
  497. setprop net.tcp.buffersize.edge 4093,26280,35040,4096,16384,35040
  498. setprop net.tcp.buffersize.gprs 4092,8760,11680,4096,8760,11680
  499. # +++++++++++++++++++++++++++++++++++++++++++
  500. # for datarouter
  501. chown system system /dev/ttyGS0
  502. chown system system /dev/dun
  503. # +++++++++++++++++++++++++++++++++++++++++++
  504. class_start default
  505. # bln - system patch service
  506. service blnpatch /sbin/install_bln_liblights.sh
  507. user root
  508. oneshot
  509. disabled
  510. # add su and busybox
  511. service setrooted /sbin/rooted.sh
  512. user root
  513. oneshot
  514. disabled
  515. ## Daemon processes to be run by init.
  516. ##
  517. service ueventd /sbin/ueventd
  518. critical
  519. service console /system/bin/sh
  520. console
  521. user shell
  522. group shell system log
  523. # Samsung USB Mode : system properties are linked with sysfs
  524. # write /sys/class/sec/switch/UsbMenuSel 0
  525. on property:persist.service.usb.setting=0
  526. write /sys/devices/platform/android_usb/UsbMenuSel 0
  527. on property:persist.service.usb.setting=1
  528. write /sys/devices/platform/android_usb/UsbMenuSel 1
  529. on property:persist.service.usb.setting=2
  530. write /sys/devices/platform/android_usb/UsbMenuSel 2
  531. on property:persist.service.usb.setting=3
  532. write /sys/devices/platform/android_usb/UsbMenuSel 3
  533. on property:persist.service.usb.setting=4
  534. write /sys/devices/platform/android_usb/UsbMenuSel 4
  535. # adbd is controlled by the persist.service.adb.enable system property
  536. service adbd /sbin/adbd
  537. disabled
  538. # adbd on at boot in emulator
  539. on property:ro.kernel.qemu=1
  540. start adbd
  541. on property:persist.service.adb.enable=1
  542. start adbd
  543. on property:persist.service.adb.enable=0
  544. stop adbd
  545. # 3D init
  546. service pvrsrvinit /system/bin/pvrsrvinit
  547. user root
  548. group root
  549. oneshot
  550. #for WiFi MFG(TestMode)
  551. service mfgloader /system/bin/mfgloader
  552. disabled
  553. oneshot
  554. service wlandutservice /system/bin/wlandutservice
  555. disabled
  556. oneshot
  557. service macloader /system/bin/macloader
  558. oneshot
  559. # end of wifi
  560. service dhcpcd /system/bin/dhcpcd
  561. disabled
  562. oneshot
  563. service servicemanager /system/bin/servicemanager
  564. user system
  565. critical
  566. onrestart restart zygote
  567. onrestart restart media
  568. service vold /system/bin/vold
  569. socket vold stream 0660 root mount
  570. socket usbstorage stream 0660 root mount
  571. ioprio be 2
  572. socket enc_report stream 0660 root mount
  573. service notified_event /system/bin/notified_event
  574. user system
  575. group system
  576. socket notified_event stream 0660 root system
  577. service netd /system/bin/netd
  578. socket netd stream 0660 root system
  579. service debuggerd /system/bin/debuggerd
  580. service ril-daemon /system/bin/rild
  581. socket rild stream 660 root radio
  582. socket rild-debug stream 660 radio system
  583. user root
  584. group radio cache inet misc audio sdcard_rw log
  585. service mobex-daemon /system/bin/npsmobex
  586. user system
  587. group system inet
  588. service DR-deamon /system/bin/drexe
  589. user root
  590. group system radio inet net_raw
  591. service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server
  592. socket zygote stream 666
  593. onrestart write /sys/android_power/request_state wake
  594. onrestart write /sys/power/state on
  595. onrestart restart media
  596. onrestart restart netd
  597. service media /system/bin/mediaserver
  598. user media
  599. group system audio camera graphics inet net_bt net_bt_admin net_raw radio
  600. ioprio rt 4
  601. service samsungani /system/bin/samsungani
  602. user graphics
  603. group graphics
  604. disabled
  605. oneshot
  606. service wpa_supplicant /system/bin/wpa_supplicant -Dwext -ieth0 -c/data/wifi/bcm_supp.conf
  607. disabled
  608. oneshot
  609. service playsound /system/bin/playsound
  610. user media
  611. group system
  612. disabled
  613. oneshot
  614. service dbus /system/bin/dbus-daemon --system --nofork
  615. socket dbus stream 660 bluetooth bluetooth
  616. user bluetooth
  617. group bluetooth net_bt_admin
  618. service bluetoothd /system/bin/bluetoothd -n
  619. socket bluetooth stream 660 bluetooth bluetooth
  620. socket dbus_bluetooth stream 660 bluetooth bluetooth
  621. # init.rc does not yet support applying capabilities, so run as root and
  622. # let bluetoothd drop uid to bluetooth with the right linux capabilities
  623. group bluetooth net_bt_admin misc
  624. disabled
  625. service hfag /system/bin/sdptool add --channel=10 HFAG
  626. user bluetooth
  627. group bluetooth net_bt_admin
  628. disabled
  629. oneshot
  630. service hsag /system/bin/sdptool add --channel=11 HSAG
  631. user bluetooth
  632. group bluetooth net_bt_admin
  633. disabled
  634. oneshot
  635. service opush /system/bin/sdptool add --channel=12 OPUSH
  636. user bluetooth
  637. group bluetooth net_bt_admin
  638. disabled
  639. oneshot
  640. service pbap /system/bin/sdptool add --channel=19 PBAP
  641. user bluetooth
  642. group bluetooth net_bt_admin
  643. disabled
  644. oneshot
  645. service installd /system/bin/installd
  646. socket installd stream 600 system system
  647. service flash_recovery /system/etc/install-recovery.sh
  648. oneshot
  649. service racoon /system/bin/racoon
  650. socket racoon stream 600 system system
  651. # racoon will setuid to vpn after getting necessary resources.
  652. group net_admin
  653. disabled
  654. oneshot
  655. service mtpd /system/bin/mtpd
  656. socket mtpd stream 600 system system
  657. user vpn
  658. group vpn net_admin net_raw
  659. disabled
  660. oneshot
  661. service keystore /system/bin/keystore /data/misc/keystore
  662. user keystore
  663. group keystore
  664. socket keystore stream 666
  665. service immvibed /system/bin/immvibed
  666. user shell
  667. group shell
  668. oneshot
  669. service dumpstate /system/bin/dumpstate -s
  670. socket dumpstate stream 0660 shell log
  671. disabled
  672. oneshot
  673. service orientationd /system/bin/orientationd
  674. user compass
  675. group input
  676. service geomagneticd /system/bin/geomagneticd
  677. user compass
  678. group system input
  679. service gps-daemon /system/bin/gpsd
  680. user system
  681. group system inet