# This file gets copied as /init.angler.diag.rc

on post-fs-data
    # Modem logging collection
    mkdir /data/diag_logs 0777 system system

    #Create folder subsystem_ramdump
    mkdir /data/ramdump 0700 system system

on boot
    chmod 666 /dev/diag

# diag and adb
on property:sys.usb.config=diag,adb
    stop adbd
    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}
