# Caiman specific init.rc
import /vendor/etc/init/hw/init.${ro.board.platform}.board.rc

on init && property:ro.vendor.factory=1
    import /vendor/etc/init/hw/init.factory.rc

on init && property:ro.boot.hardware.platform=zuma
    setprop vendor.powerhal.config powerhint-proto.json

on init
    # eSE  streset tool name
    setprop persist.vendor.se.streset libstreset24
# No se_chip_en for P1.0
on late-init && property:ro.boot.hardware.revision=PROTO1.0
    setprop persist.vendor.se.reset.chip_en false

on early-boot
    # Wait for insmod_sh to finish all common modules
    wait_for_prop vendor.common.modules.ready 1
    start insmod_sh_caiman

service insmod_sh_caiman /vendor/bin/insmod.sh /vendor_dlkm/etc/init.insmod.${ro.hardware}.cfg
    class main
    user root
    group root system
    disabled
    oneshot

on property:vendor.mfgapi.touchpanel.permission=1
    chmod 0600 /sys/devices/virtual/sec/tsp/cmd
    chown system system /sys/devices/virtual/sec/tsp/cmd

# Permissions for display
on fs
    chown system system /sys/class/backlight/panel0-backlight/acl_mode

# WiFi
on post-fs-data
    setprop wifi.direct.interface p2p-dev-wlan0
    setprop wifi.aware.interface aware_nmi0

    # Speaker amp permission
    chmod 644 /mnt/vendor/persist/audio/speaker.cal

# Bluetooth
on post-fs-data
    chown bluetooth system /proc/bluetooth/timesync

# Thermal
on late-init && property:ro.boot.hardware.revision=PROTO1.0
    setprop vendor.thermal.config "thermal_info_config_proto.json"

on late-init && property:ro.boot.hardware.revision=PROTO1.1
    setprop vendor.thermal.config "thermal_info_config_proto.json"

# Toggle high_sensitivity according to touch_sensitivity_mode
on property:persist.vendor.touch_sensitivity_mode=0 && property:sys.boot_completed=1
    write /sys/devices/virtual/goog_touch_interface/gti.0/screen_protector_mode_enabled 0

on property:persist.vendor.touch_sensitivity_mode=1 && property:sys.boot_completed=1
    write /sys/devices/virtual/goog_touch_interface/gti.0/screen_protector_mode_enabled 1

# ODPM
on early-boot && property:ro.boot.hardware.sku=GEC77
    write /sys/bus/iio/devices/iio:device0/enabled_rails "CH11=BUCK12S"
    write /sys/bus/iio/devices/iio:device1/enabled_rails "CH11=BUCK12S"
on early-boot && property:ro.boot.hardware.sku=GWVK6
    write /sys/bus/iio/devices/iio:device0/enabled_rails "CH11=BUCK12S"
    write /sys/bus/iio/devices/iio:device1/enabled_rails "CH11=BUCK12S"

# Start the twoshay touch service
on property:sys.boot_completed=1
    chown system input /dev/touch_offload
    chmod 660 /dev/touch_offload
    start twoshay

# For Japan sku, always enforce camera shutter sound
# Since this property is read by the audio server in system service,
# it should be written by the system init.
on property:ro.boot.hardware.sku=GWVK6
    setprop audio.camerasound.force true

# Check serial no. from specific CM4 devices for audio.
on property:ro.boot.serialno=*
    setprop vendor.audio_hal.device.serialno ${ro.boot.serialno}