From a6d6fa29abf889cac62e19b0e2bf6a8579305671 Mon Sep 17 00:00:00 2001 From: Daniel Hillenbrand Date: Sat, 10 Aug 2013 17:47:36 +0200 Subject: smdk4412: unified init.smdk4x12.rc Change-Id: I593cc0de388dd3135937d7aa611b19ee7ba868b3 --- rootdir/init.smdk4x12.rc | 502 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 502 insertions(+) create mode 100755 rootdir/init.smdk4x12.rc (limited to 'rootdir') diff --git a/rootdir/init.smdk4x12.rc b/rootdir/init.smdk4x12.rc new file mode 100755 index 0000000..4ff9c72 --- /dev/null +++ b/rootdir/init.smdk4x12.rc @@ -0,0 +1,502 @@ +import init.target.rc +import init.smdk4x12.usb.rc + +on init + mkdir /mnt/shell/emulated 0700 shell shell + mkdir /storage 0550 system sdcard_r + mkdir /storage/emulated 0555 root root + mkdir /storage/sdcard1 0775 system system + mkdir /storage/usbdisk0 0775 system system + + export EXTERNAL_STORAGE /storage/emulated/legacy + export SECONDARY_STORAGE /storage/sdcard1 + export EMULATED_STORAGE_SOURCE /mnt/shell/emulated + export EMULATED_STORAGE_TARGET /storage/emulated + + # for backwards compatibility + symlink /storage/emulated/legacy /sdcard + symlink /storage/emulated/legacy /mnt/sdcard + symlink /storage/emulated/legacy /storage/sdcard0 + symlink /mnt/shell/emulated/0 /storage/emulated/legacy + symlink /storage/sdcard1 /extSdCard + symlink /storage/sdcard1 /mnt/extSdCard + symlink /storage/usbdisk0 /usbdisk0 + symlink /storage/usbdisk0 /mnt/usbdisk0 + + mkdir /efs 0771 radio system + mkdir /tombstones + symlink /efs /factory + +# ko files for FM Radio + insmod /system/lib/modules/Si4709_driver.ko + +on fs + mkdir /preload + mount_all /fstab.smdk4x12 + + setprop ro.crypto.fuse_sdcard true + + chown radio system /efs + chmod 0771 /efs + +on post-fs-data + # we will remap this as /mnt/sdcard with the sdcard fuse tool + mkdir /data/media 0775 media_rw media_rw + chown media_rw media_rw /data/media + +# data/log + mkdir /data/log 0775 system log + chown system log /data/log + chmod 0775 /data/log + chmod 0775 /data/anr + + # create data/gps for GPS demon + chown root system /dev/ttySAC1 + chmod 0660 /dev/ttySAC1 + chown root system /sys/class/sec/gps/GPS_PWR_EN/value + chmod 0664 /sys/class/sec/gps/GPS_PWR_EN/value + chown root system /sys/class/sec/gps/GPS_nRST/value + chmod 0664 /sys/class/sec/gps/GPS_nRST/value + mkdir /data/gps 771 system system + chown system system /data/gps + + mkdir /data/misc/radio 0775 radio system + chmod 0775 /data/misc/radio + mkdir /efs/imei 0775 radio system + +# icd + exec icd_check + chown system system /dev/icd + chmod 0644 /dev/icd + write /dev/icdr 0 + chown system system /dev/icdr + chmod 0644 /dev/icdr + chown system system /dev/tzic + +# HDCP 2.x + mkdir /data/system/hdcp2 0775 system system + +# h2k permission + chmod 0644 /efs/redata.bin + chmod 0644 /efs/h2k.dat + +# Camera firmware + mkdir /data/cfw 0775 system system + chown system media /data/cfw/SlimISP_GD.bin + chmod 0775 /data/cfw/SlimISP_GD.bin + chown system media /data/cfw/SlimISP_ZD.bin + chmod 0775 /data/cfw/SlimISP_ZD.bin + +# Camera + chown system radio /sys/class/camera/rear/rear_camfw + chown system radio /sys/class/camera/rear/rear_camtype + + chown system radio /sys/class/camera/rear/rear_flash + chmod 0666 /sys/class/camera/rear/rear_flash + + chown system radio /sys/class/camera/flash/rear_flash + chmod 0666 /sys/class/camera/flash/rear_flash + + chown system radio /sys/devices/virtual/flash/flash/flash_power + chmod 0666 /sys/devices/virtual/flash/flash/flash_power + + chown system radio /sys/class/camera/rear/isp_core + chown system radio /sys/class/camera/front/front_camfw + chown system radio /sys/class/camera/front/front_camtype + write /data/ISP_CV 1 + +# Permissions for bluetooth + setprop ro.bt.bdaddr_path "/efs/bluetooth/bt_addr" + chown bluetooth bluetooth ro.bt.bdaddr_path + chown bluetooth bluetooth /dev/ttySAC0 + chmod 0600 /dev/ttySAC0 + chmod 0660 /sys/class/rfkill/rfkill0/state + chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state + chown bluetooth bluetooth /sys/class/rfkill/rfkill0/type + restorecon /sys/class/rfkill/rfkill0/state + restorecon /sys/class/rfkill/rfkill0/type + +# NFC + setprop ro.nfc.port "I2C" + chmod 0600 /dev/pn544 + chown nfc nfc /dev/pn544 + +# Vibrator + chmod 0660 /dev/tspdrv + chown root shell /dev/tspdrv + chmod 0660 /sys/class/timed_output/vibrator/pwm_value + chown system system /sys/class/timed_output/vibrator/pwm_value + +# LED + chmod 0660 /sys/class/sec/led/led_fade + chown system system /sys/class/sec/led/led_fade + +# Touchkey + chmod 0660 /sys/class/sec/sec_touchkey/timeout + chown system system /sys/class/sec/sec_touchkey/timeout + chmod 0660 /sys/class/sec/sec_touchkey/force_disable + chown system system /sys/class/sec/sec_touchkey/force_disable + +# S-Pen + chown system system /sys/class/sec/sec_epen/epen_saving_mode + chmod 660 /sys/class/sec/sec_epen/epen_saving_mode + +# Permissions for LCD + chown system radio /sys/class/lcd/panel/lcd_power + chown system radio /sys/class/lcd/panel/lcd_type + chown system radio /sys/class/lcd/panel/device/hs_toggle + chown system media_rw /sys/class/lcd/panel/power_reduce + chown system system /sys/class/backlight/panel/auto_brightness + chown system system /sys/class/backlight/panel/brightness + chown system system /sys/class/graphics/fb0/lcdfreq/level + +# Permissions for mDNIe + chown system media_rw /sys/class/mdnie/mdnie/mode + chown system media_rw /sys/class/mdnie/mdnie/outdoor + chown system media_rw /sys/class/mdnie/mdnie/scenario + chown system system /sys/class/mdnie/mdnie/negative + write /sys/class/mdnie/mdnie/scenario 0 + write /sys/class/mdnie/mdnie/mode 0 + +# Permissions for System Server and daemons. + chown radio system /sys/android_power/state + chown radio system /sys/android_power/request_state + chown radio system /sys/android_power/acquire_full_wake_lock + chown radio system /sys/android_power/acquire_partial_wake_lock + chown radio system /sys/android_power/release_wake_lock + chown radio system /sys/power/state + chown radio system /sys/power/wake_lock + chown radio system /sys/power/wake_unlock + chown radio system /sys/power/cpufreq_table + chown radio system /sys/power/cpufreq_max_limit + chown radio system /sys/power/cpufreq_min_limit + chown radio system /sys/power/mali_lock + chown radio system /sys/class/power_supply/battery/siop_activated + chown radio system /sys/devices/system/cpu/cpufreq/pegasusq/max_cpu_lock + chown radio system /sys/devices/system/cpu/cpufreq/pegasusq/hotplug_lock + chown radio system /sys/devices/system/cpu/busfreq/curr_freq + chown radio system /sys/module/mali/parameters/mali_dvfs_control + chown system radio /sys/bus/platform/devices/s5p-tmu/lot_id + chmod 0660 /sys/power/state + chmod 0660 /sys/power/wake_lock + chmod 0660 /sys/power/wake_unlock + chmod 0660 /sys/power/cpufreq_table + chmod 0660 /sys/power/cpufreq_max_limit + chmod 0660 /sys/power/cpufreq_min_limit + chmod 0660 /sys/power/mali_lock + chmod 0660 /sys/class/power_supply/battery/siop_activated + chmod 0660 /sys/devices/system/cpu/cpufreq/pegasusq/max_cpu_lock + chmod 0660 /sys/devices/system/cpu/cpufreq/pegasusq/hotplug_lock + chmod 0660 /sys/devices/system/cpu/busfreq/curr_freq + chmod 0660 /sys/module/mali/parameters/mali_dvfs_control + chmod 0664 /sys/bus/platform/devices/s5p-tmu/lot_id + chown system system /sys/class/timed_output/vibrator/enable + chown system system /sys/class/leds/keyboard-backlight/brightness + chown system system /sys/class/leds/lcd-backlight/brightness + chown system system /sys/class/backlight/panel/brightness + chown system system /sys/class/leds/button-backlight/brightness + chown system system /sys/class/sec/sec_touchkey/brightness + chown system system /sys/class/leds/jogball-backlight/brightness + chown system system /sys/class/leds/red/brightness + chown system system /sys/class/leds/green/brightness + chown system system /sys/class/leds/blue/brightness + chown system system /sys/class/leds/red/device/grpfreq + chown system system /sys/class/leds/red/device/grppwm + chown system system /sys/class/leds/red/device/blink + chown system system /sys/class/leds/red/brightness + chown system system /sys/class/leds/green/brightness + chown system system /sys/class/leds/blue/brightness + chown system system /sys/class/leds/red/device/grpfreq + chown system system /sys/class/leds/red/device/grppwm + chown system system /sys/class/leds/red/device/blink + chown system system /sys/class/timed_output/vibrator/enable + chown system system /sys/module/sco/parameters/disable_esco + chown system system /sys/kernel/ipv4/tcp_wmem_min + chown system system /sys/kernel/ipv4/tcp_wmem_def + chown system system /sys/kernel/ipv4/tcp_wmem_max + chown system system /sys/kernel/ipv4/tcp_rmem_min + chown system system /sys/kernel/ipv4/tcp_rmem_def + chown system system /sys/kernel/ipv4/tcp_rmem_max + chown root radio /proc/cmdline + +# Audio (Earjack) + chown system radio /sys/class/audio/earjack/select_jack + chown system radio /sys/class/audio/earjack/key_state + chown system radio /sys/class/audio/earjack/state + chown media system /sys/class/audio/earjack/reselect_jack + +# Battery node + chown system radio /sys/class/power_supply/battery/batt_reset_soc + chown system radio /sys/class/power_supply/battery/batt_read_raw_soc + chown system radio /sys/class/power_supply/battery/batt_read_adj_soc + chown system radio /sys/class/power_supply/battery/batt_type + chown system radio /sys/class/power_supply/battery/batt_temp_adc + chown system radio /sys/class/power_supply/battery/batt_temp_aver + chown system radio /sys/class/power_supply/battery/batt_temp_adc_aver + chown system radio /sys/class/power_supply/battery/batt_vfocv + chown system radio /sys/class/power_supply/battery/batt_lp_charging + chown system radio /sys/class/power_supply/battery/batt_charging_source + chown system radio /sys/class/power_supply/battery/test_mode + chown system radio /sys/class/power_supply/battery/wc_status + chown system radio /sys/class/power_supply/battery/wpc_pin_state + +# Thermistor node + chown radio system /sys/devices/platform/sec-thermistor/temp_adc + chown radio system /sys/devices/platform/sec-thermistor/temperature + +# Permissions for touch + chown system radio /sys/class/sec/tsp/cmd + +# Permissions for Touchkey + chown system radio /sys/class/sec/sec_touchkey/enable_disable + chown system radio /sys/class/sec/sec_touchkey/touchkey_brightness + chown system radio /sys/class/sec/sec_touchkey/touchkey_menu + chown system radio /sys/class/sec/sec_touchkey/touchkey_back + chown system radio /sys/class/sec/sec_touchkey/touch_update + chown system radio /sys/class/sec/sec_touchkey/touch_version + chown system radio /sys/class/sec/sec_touchkey/touchkey_firm_version_panel + chown system radio /sys/class/sec/sec_touchkey/touchkey_firm_version_phone + chown system radio /sys/class/sec/sec_touchkey/touchkey_firm_update_status + chown system radio /sys/class/sec/sec_touchkey/touchkey_firm_update + chown system radio /sys/class/sec/sec_touchkey/touch_sensitivity + chown system radio /sys/class/sec/sec_touchkey/touchkey_threshold + chown system system /sys/devices/virtual/sec/sec_touchkey/brightness + +# Permissions for gpio_keys + chown radio system /sys/class/sec/sec_key/wakeup_keys + write /sys/class/sec/sec_key/wakeup_keys 116,172 + +# Switch Device + chown system system /sys/class/sec/switch/uart_sel + chown system system /sys/class/sec/switch/usb_sel + chown system system /sys/class/sec/switch/otg_test + chown system radio /sys/class/sec/switch/adc + +# SVC LED + chown system system /sys/class/sec/led/led_r + chown system system /sys/class/sec/led/led_g + chown system system /sys/class/sec/led/led_b + + chown system system /sys/class/leds/led_r/brightness + chown system system /sys/class/leds/led_g/brightness + chown system system /sys/class/leds/led_b/brightness + chown system system /sys/class/leds/led_r/delay_on + chown system system /sys/class/leds/led_g/delay_on + chown system system /sys/class/leds/led_b/delay_on + chown system system /sys/class/leds/led_r/delay_off + chown system system /sys/class/leds/led_g/delay_off + chown system system /sys/class/leds/led_b/delay_off + chown system system /sys/class/leds/led_r/blink + chown system system /sys/class/leds/led_g/blink + chown system system /sys/class/leds/led_b/blink + + chown system system /sys/class/sec/led/led_pattern + chown system system /sys/class/sec/led/led_blink + chown system system /sys/class/sec/led/led_br_lev + +# +# Input Events + chown system radio /sys/class/input/input2/enable + chown system radio /sys/class/input/input2/poll_delay + chown system radio /sys/class/input/input3/enable + chown system radio /sys/class/input/input3/poll_delay + chown system radio /sys/class/input/input4/enable + chown system radio /sys/class/input/input4/poll_delay + chown system radio /sys/class/input/input5/enable + chown system radio /sys/class/input/input5/poll_delay + chown system radio /sys/class/input/input6/enable + chown system radio /sys/class/input/input6/poll_delay + chown system radio /sys/class/input/input7/enable + chown system radio /sys/class/input/input7/poll_delay + chown system radio /sys/class/input/input8/enable + chown system radio /sys/class/input/input8/poll_delay + chown system radio /sys/class/input/input9/enable + chown system radio /sys/class/input/input9/poll_delay +# Accelerometer_sensor + chown system radio /dev/accelerometer + chown system radio /sys/class/sensors/accelerometer_sensor + chown system radio /sys/class/sensors/accelerometer_sensor/raw_data + chown system radio /sys/class/sensors/accelerometer_sensor/calibration + chown system radio /sys/class/sensors/accelerometer_sensor/reactive_alert + chown system radio /sys/class/sensors/accelerometer_sensor/vendor + chown system radio /sys/class/sensors/accelerometer_sensor/name +# Proximity_sensor + chown system radio /sys/class/sensors/proximity_sensor/state + chown system radio /sys/class/sensors/proximity_sensor/prox_avg + chown system radio /sys/class/sensors/proximity_sensor/prox_cal + chown system radio /sys/class/sensors/proximity_sensor/vendor + chown system radio /sys/class/sensors/proximity_sensor/name + chown system radio /sys/class/sensors/proximity_sensor/prox_thresh + chown system radio /sys/class/sensors/proximity_sensor/barcode_emul_en +# Light_sensor + chown system radio /sys/class/input/input7/enable + chown system radio /sys/class/input/input7/poll_delay + chown system radio /sys/class/sensors/light_sensor/lux + chown system radio /sys/class/sensors/light_sensor/raw_data + chown system radio /sys/class/sensors/light_sensor/vendor + chown system radio /sys/class/sensors/light_sensor/name +# Gyro_sensor + chown system radio /dev/lsm330dlc_gyro_misc + chown system radio /sys/class/sensors/gyro_sensor/power_on + chown system radio /sys/class/sensors/gyro_sensor/power_off + chown system radio /sys/class/sensors/gyro_sensor/temperature + chown system radio /sys/class/sensors/gyro_sensor/selftest + chown system radio /sys/class/sensors/gyro_sensor/selftest_dps + chown system radio /sys/class/sensors/gyro_sensor/vendor + chown system radio /sys/class/sensors/gyro_sensor/name +# Barometer_sensor + chown system radio /sys/class/input/input5/pressure_reference_level + chown system radio /sys/class/input/input5/temperature_reference_level + chown system radio /sys/class/input/input5/enable_autozero + chown system radio /sys/class/input/input5/compensation_param + chown system radio /sys/class/input/input5/reg_value + chown system radio /sys/class/input/input5/reg_addr + chown system radio /sys/class/sensors/barometer_sensor/sea_level_pressure + chown system radio /sys/class/sensors/barometer_sensor/vendor + chown system radio /sys/class/sensors/barometer_sensor/name + chown system radio /sys/class/sensors/barometer_sensor/calibration +# Magnetic_sensor + chown system radio /dev/akm8963 + chown system radio /dev/akm8975 + chown system radio /sys/class/sensors/magnetic_sensor/raw_data + chown system radio /sys/class/sensors/magnetic_sensor/vendor + chown system radio /sys/class/sensors/magnetic_sensor/name + +# for datarouter + chown system system /dev/dun + chown system system /dev/ttyGS0 + chown system system /dev/ttyGS1 + chown system system /dev/ttyGS2 + chown system system /dev/ttyGS3 + +# for wifi + mkdir /data/misc/wifi/sockets 0770 wifi wifi + mkdir /data/misc/dhcp 0775 dhcp dhcp + chown dhcp dhcp /data/misc/dhcp + +# for TRP/TIS + write /data/.psm.info 1 + chown system root /data/.psm.info + chmod 0660 /data/.psm.info + + # Set indication (checked by vold) that we have finished this action + setprop vold.post_fs_data_done 1 + +on boot + mount debugfs /sys/kernel/debug /sys/kernel/debug + + setprop ro.build.product smdk4x12 + setprop ro.product.device smdk4x12 + setprop wifi.interface wlan0 + +# fake some battery state + setprop status.battery.state Slow + setprop status.battery.level 5 + setprop status.battery.level_raw 50 + setprop status.battery.level_scale 9 + +# wifi display + write /proc/sys/net/core/wmem_max 262144 + + # Set permission for Widevine DRM temporarily + chmod 0777 /dev/s5p-smem + rm /data/app/tlcd_sock + +# serial keyboard port + chown root system /dev/ttySAC2 + chmod 0660 /dev/ttySAC2 + +# touchscreen + chown radio system /sys/class/sec/tsp/cmd + chown media_rw media_rw /sys/class/sec/tsp/set_jitter + +# epen + chown radio system /sys/class/sec/sec_epen/epen_firm_update + chown radio system /sys/class/sec/sec_epen/epen_checksum + chown radio system /sys/class/sec/sec_epen/epen_checksum_result + chown radio system /sys/class/sec/sec_epen/epen_reset + +# wakeup keys + chown radio system /sys/class/sec/sec_key/wakeup_keys + write /sys/class/sec/sec_key/wakeup_keys 116,172 + +# serial keyboard daemon +service sec_keyboard /system/bin/sec_keyboard /dev/ttySAC2 + class late_start + disabled + group system + +on property:ro.uart_debug=0 + start sec_keyboard + +# create virtual SD card at /mnt/sdcard, based on the /data/media directory +# daemon will drop to user/group system/media_rw after initializing +# underlying files in /data/media wil be created with user and group media_rw (1023) +service sdcard /system/bin/sdcard /data/media /mnt/shell/emulated 1023 1023 + class late_start + +service p2p_supplicant /system/bin/wpa_supplicant \ + -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -N \ + -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf -e/data/misc/wifi/entropy.bin \ + -puse_p2p_group_interface=1 + # 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 u:object_r:wpa_socket:s0 + disabled + oneshot + +service wpa_supplicant /system/bin/wpa_supplicant \ + -Dnl80211 -iwlan0 -e/data/misc/wifi/entropy.bin \ + -c/data/misc/wifi/wpa_supplicant.conf + # 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 u:object_r:wpa_socket:s0 + disabled + oneshot + +service dhcpcd_wlan0 /system/bin/dhcpcd -ABKL + class main + disabled + oneshot + +service dhcpcd_p2p /system/bin/dhcpcd -aABKL + class main + disabled + oneshot + +service dhcpcd_bnep0 /system/bin/dhcpcd -ABKL + class main + disabled + oneshot + +service iprenew_wlan0 /system/bin/dhcpcd -n + class main + disabled + oneshot + +service iprenew_p2p /system/bin/dhcpcd -n + class main + disabled + oneshot + +service iprenew_bnep0 /system/bin/dhcpcd -n + class main + disabled + oneshot + +service macloader /system/bin/macloader + class main + oneshot + +# Workaround for broken incall audio +service bootsnd /system/bin/tinyplay /system/etc/sound/silence.wav -D 0 -d 0 -p 880 + class late_start + user root + group audio + oneshot -- cgit v1.1