2270dbbc84
init.usb.rc and adbd.rc contain similar contents and belong in the same file. This file also belongs on the ramdisk as adbd is on the ramdisk, not the system partition, therefore resolving to keep init.usb.rc in its current location and combining the contents of adbd.rc is the best approach Change-Id: I430f8fea58694679e7b8b7be69ce87daadd616f4
104 lines
4.2 KiB
Text
104 lines
4.2 KiB
Text
# Copyright (C) 2012 The Android Open Source Project
|
|
#
|
|
# USB configuration common for all android devices
|
|
#
|
|
|
|
on post-fs-data
|
|
chown system system /sys/class/android_usb/android0/f_mass_storage/lun/file
|
|
chmod 0660 /sys/class/android_usb/android0/f_mass_storage/lun/file
|
|
chown system system /sys/class/android_usb/android0/f_rndis/ethaddr
|
|
chmod 0660 /sys/class/android_usb/android0/f_rndis/ethaddr
|
|
mkdir /data/misc/adb 02750 system shell
|
|
mkdir /data/adb 0700 root root
|
|
|
|
# adbd is controlled via property triggers in init.<platform>.usb.rc
|
|
service adbd /sbin/adbd --root_seclabel=u:r:su:s0
|
|
class core
|
|
socket adbd stream 660 system system
|
|
disabled
|
|
seclabel u:r:adbd:s0
|
|
|
|
# adbd on at boot in emulator
|
|
on property:ro.kernel.qemu=1
|
|
start adbd
|
|
|
|
# Used to disable USB when switching states
|
|
on property:sys.usb.config=none
|
|
stop adbd
|
|
write /sys/class/android_usb/android0/enable 0
|
|
write /sys/class/android_usb/android0/bDeviceClass 0
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
# adb only USB configuration
|
|
# This is the fallback configuration if the
|
|
# USB manager fails to set a standard configuration
|
|
on property:sys.usb.config=adb
|
|
write /sys/class/android_usb/android0/enable 0
|
|
write /sys/class/android_usb/android0/idVendor 18d1
|
|
write /sys/class/android_usb/android0/idProduct 4EE7
|
|
write /sys/class/android_usb/android0/functions ${sys.usb.config}
|
|
write /sys/class/android_usb/android0/enable 1
|
|
start adbd
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
# USB accessory configuration
|
|
on property:sys.usb.config=accessory
|
|
write /sys/class/android_usb/android0/enable 0
|
|
write /sys/class/android_usb/android0/idVendor 18d1
|
|
write /sys/class/android_usb/android0/idProduct 2d00
|
|
write /sys/class/android_usb/android0/functions ${sys.usb.config}
|
|
write /sys/class/android_usb/android0/enable 1
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
# USB accessory configuration, with adb
|
|
on property:sys.usb.config=accessory,adb
|
|
write /sys/class/android_usb/android0/enable 0
|
|
write /sys/class/android_usb/android0/idVendor 18d1
|
|
write /sys/class/android_usb/android0/idProduct 2d01
|
|
write /sys/class/android_usb/android0/functions ${sys.usb.config}
|
|
write /sys/class/android_usb/android0/enable 1
|
|
start adbd
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
# audio accessory configuration
|
|
on property:sys.usb.config=audio_source
|
|
write /sys/class/android_usb/android0/enable 0
|
|
write /sys/class/android_usb/android0/idVendor 18d1
|
|
write /sys/class/android_usb/android0/idProduct 2d02
|
|
write /sys/class/android_usb/android0/functions ${sys.usb.config}
|
|
write /sys/class/android_usb/android0/enable 1
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
# audio accessory configuration, with adb
|
|
on property:sys.usb.config=audio_source,adb
|
|
write /sys/class/android_usb/android0/enable 0
|
|
write /sys/class/android_usb/android0/idVendor 18d1
|
|
write /sys/class/android_usb/android0/idProduct 2d03
|
|
write /sys/class/android_usb/android0/functions ${sys.usb.config}
|
|
write /sys/class/android_usb/android0/enable 1
|
|
start adbd
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
# USB and audio accessory configuration
|
|
on property:sys.usb.config=accessory,audio_source
|
|
write /sys/class/android_usb/android0/enable 0
|
|
write /sys/class/android_usb/android0/idVendor 18d1
|
|
write /sys/class/android_usb/android0/idProduct 2d04
|
|
write /sys/class/android_usb/android0/functions ${sys.usb.config}
|
|
write /sys/class/android_usb/android0/enable 1
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
# USB and audio accessory configuration, with adb
|
|
on property:sys.usb.config=accessory,audio_source,adb
|
|
write /sys/class/android_usb/android0/enable 0
|
|
write /sys/class/android_usb/android0/idVendor 18d1
|
|
write /sys/class/android_usb/android0/idProduct 2d05
|
|
write /sys/class/android_usb/android0/functions ${sys.usb.config}
|
|
write /sys/class/android_usb/android0/enable 1
|
|
start adbd
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
# Used to set USB configuration at boot and to switch the configuration
|
|
# when changing the default configuration
|
|
on property:persist.sys.usb.config=*
|
|
setprop sys.usb.config ${persist.sys.usb.config}
|