1on early-boot 2 mkdir /config/usb_gadget/g1 3 mkdir /config/usb_gadget/g1/strings/0x409 4 mkdir /config/usb_gadget/g1/configs/b.1 5 write /config/usb_gadget/g1/idVendor 0x18d1 6 write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno} 7 write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer} 8 write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model} 9 write /config/usb_gadget/g1/configs/b.1/MaxPower 0x384 10 write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1 11 write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100" 12 13 # ffs function 14 mkdir /config/usb_gadget/g1/functions/ffs.adb 0770 shell shell 15 mkdir /config/usb_gadget/g1/functions/ffs.mtp 16 mkdir /config/usb_gadget/g1/functions/ffs.ptp 17 mkdir /dev/usb-ffs 0775 shell shell 18 mkdir /dev/usb-ffs/adb 0770 shell shell 19 mkdir /dev/usb-ffs/mtp 0770 mtp mtp 20 mkdir /dev/usb-ffs/ptp 0770 mtp mtp 21 mount functionfs adb /dev/usb-ffs/adb rmode=0770,fmode=0660,uid=2000,gid=2000,no_disconnect=1 22 mount functionfs mtp /dev/usb-ffs/mtp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1 23 mount functionfs ptp /dev/usb-ffs/ptp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1 24 setprop sys.usb.mtp.device_type 3 25 setprop sys.usb.mtp.batchcancel true 26 symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 27 28 # mtp function 29 mkdir /config/usb_gadget/g1/functions/mtp.gs0 30 31 # ptp function 32 mkdir /config/usb_gadget/g1/functions/ptp.gs1 33 34 # accessory function 35 mkdir /config/usb_gadget/g1/functions/accessory.gs2 36 37 # audio_source function 38 mkdir /config/usb_gadget/g1/functions/audio_source.gs3 39 40 # rndis function 41 mkdir /config/usb_gadget/g1/functions/rndis.gs4 42 # Modify class/subclass/protocol for rndis.gs4 43 # Remote NDIS: Class: Wireless Controller (0xe0), Subclass: 0x1, Protocol: 0x3 44 write /config/usb_gadget/g1/functions/rndis.gs4/class e0 45 write /config/usb_gadget/g1/functions/rndis.gs4/subclass 01 46 write /config/usb_gadget/g1/functions/rndis.gs4/protocol 03 47 write /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.ncm/compatible_id RNDIS 48 write /config/usb_gadget/g1/functions/rndis.gs4/ifname rndis%d 49 setprop vendor.usb.rndis.config rndis.gs4 50 51 # midi function 52 mkdir /config/usb_gadget/g1/functions/midi.gs5 53 54 # acm function 55 mkdir /config/usb_gadget/g1/functions/acm.gs6 56 57 # dm function 58 mkdir /config/usb_gadget/g1/functions/dm.gs7 59 60 # uts function 61 mkdir /config/usb_gadget/g1/functions/uts.gs8 62 63 # ncm function 64 mkdir /config/usb_gadget/g1/functions/ncm.gs9 65 write /config/usb_gadget/g1/functions/ncm.gs9/os_desc/interface.ncm/compatible_id WINNCM 66 write /config/usb_gadget/g1/functions/ncm.gs9/ifname ncm%d 67 68 # etr_miu function 69 mkdir /config/usb_gadget/g1/functions/etr_miu.gs11 70 71 # acm function for uwb 72 mkdir /config/usb_gadget/g1/functions/acm.uwb0 73 74 # uvc function 75 mkdir /config/usb_gadget/g1/functions/uvc.0 76 write /config/usb_gadget/g1/functions/uvc.0/function_name "Android Webcam" 77 write /config/usb_gadget/g1/functions/uvc.0/streaming_maxpacket 3072 78 # write /config/usb_gadget/g1/functions/uvc.0/streaming_maxburst 5 79 # write /config/usb_gadget/g1/functions/uvc.0/streaming_interval 2 80 # setup control params 81 mkdir /config/usb_gadget/g1/functions/uvc.0/control/header/h 82 symlink /config/usb_gadget/g1/functions/uvc.0/control/header/h /config/usb_gadget/g1/functions/uvc.0/control/class/fs/h 83 symlink /config/usb_gadget/g1/functions/uvc.0/control/header/h /config/usb_gadget/g1/functions/uvc.0/control/class/ss/h 84 # advertise mjpeg streams 85 mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m 86 # advertise 360p resolution for webcam encoded as mjpeg 87 mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p 88 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/wHeight 360 89 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/wWidth 640 90 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwMaxVideoFrameBufferSize 460800 91 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwDefaultFrameInterval 333333 92 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwFrameInterval "166666 93333333 94416666 95666666" 96 # advertise 480p resolution for webcam encoded as mjpeg 97 mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p 98 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/wHeight 480 99 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/wWidth 640 100 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwMaxVideoFrameBufferSize 614400 101 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwDefaultFrameInterval 333333 102 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwFrameInterval "166666 103333333 104416666 105666666" 106 # advertise 720p resolution for webcam encoded as mjpeg 107 mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p 108 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/wHeight 720 109 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/wWidth 1280 110 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMaxVideoFrameBufferSize 1843200 111 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwDefaultFrameInterval 333333 112 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwFrameInterval "166666 113333333 114416666 115666666" 116 # advertise 1080p resolution for webcam encoded as mjpeg 117 mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p 118 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/wHeight 1080 119 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/wWidth 1920 120 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwMaxVideoFrameBufferSize 4147200 121 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwDefaultFrameInterval 333333 122 write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwFrameInterval "166666 123333333 124416666 125666666" 126 # TODO: Add uncompressed streams 127 # setup streaming params 128 mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/header/h 129 symlink /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m /config/usb_gadget/g1/functions/uvc.0/streaming/header/h/m 130 symlink /config/usb_gadget/g1/functions/uvc.0/streaming/header/h /config/usb_gadget/g1/functions/uvc.0/streaming/class/fs/h 131 symlink /config/usb_gadget/g1/functions/uvc.0/streaming/header/h /config/usb_gadget/g1/functions/uvc.0/streaming/class/hs/h 132 symlink /config/usb_gadget/g1/functions/uvc.0/streaming/header/h /config/usb_gadget/g1/functions/uvc.0/streaming/class/ss/h 133 # remove write permissions for 'others' 134 chmod 664 /config/usb_gadget/g1/functions/uvc.0/control/header/h/bcdUVC 135 chmod 664 /config/usb_gadget/g1/functions/uvc.0/control/header/h/dwClockFrequency 136 chmod 664 /config/usb_gadget/g1/functions/uvc.0/control/terminal/output/default/bSourceID 137 chmod 664 /config/usb_gadget/g1/functions/uvc.0/function_name 138 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming_interval 139 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming_maxburst 140 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming_maxpacket 141 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/bmCapabilities 142 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwDefaultFrameInterval 143 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwFrameInterval 144 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwMaxBitRate 145 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwMaxVideoFrameBufferSize 146 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwMinBitRate 147 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/wHeight 148 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/wWidth 149 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/bmCapabilities 150 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwDefaultFrameInterval 151 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwFrameInterval 152 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwMaxBitRate 153 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwMaxVideoFrameBufferSize 154 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwMinBitRate 155 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/wHeight 156 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/wWidth 157 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/bmCapabilities 158 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwDefaultFrameInterval 159 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwFrameInterval 160 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwMaxBitRate 161 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwMaxVideoFrameBufferSize 162 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwMinBitRate 163 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/wHeight 164 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/wWidth 165 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/bmCapabilities 166 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwDefaultFrameInterval 167 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwFrameInterval 168 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMaxBitRate 169 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMaxVideoFrameBufferSize 170 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMinBitRate 171 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/wHeight 172 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/wWidth 173 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bDefaultFrameIndex 174 chmod 664 /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bmaControls 175 176 # chown file/folder permission 177 chown system system /config/usb_gadget/ 178 chown system system /config/usb_gadget/g1 179 chown system system /config/usb_gadget/g1/UDC 180 chown system system /config/usb_gadget/g1/bDeviceClass 181 chown system system /config/usb_gadget/g1/bDeviceProtocol 182 chown system system /config/usb_gadget/g1/bDeviceSubClass 183 chown system system /config/usb_gadget/g1/bMaxPacketSize0 184 chown system system /config/usb_gadget/g1/bcdDevice 185 chown system system /config/usb_gadget/g1/bcdUSB 186 chown system system /config/usb_gadget/g1/configs 187 chown system system /config/usb_gadget/g1/configs/b.1 188 chown system system /config/usb_gadget/g1/configs/b.1/MaxPower 189 chown system system /config/usb_gadget/g1/configs/b.1/bmAttributes 190 chown system system /config/usb_gadget/g1/configs/b.1/strings 191 chown system system /config/usb_gadget/g1/functions 192 chown system system /config/usb_gadget/g1/functions/accessory.gs2 193 chown system system /config/usb_gadget/g1/functions/acm.gs6 194 chown system system /config/usb_gadget/g1/functions/acm.gs6/port_num 195 chown system system /config/usb_gadget/g1/functions/acm.uwb0 196 chown system system /config/usb_gadget/g1/functions/acm.uwb0/port_num 197 chown system system /config/usb_gadget/g1/functions/audio_source.gs3 198 chown system system /config/usb_gadget/g1/functions/dm.gs7 199 chown system system /config/usb_gadget/g1/functions/ffs.adb 200 chown system system /config/usb_gadget/g1/functions/ffs.mtp 201 chown system system /config/usb_gadget/g1/functions/ffs.ptp 202 chown system system /config/usb_gadget/g1/functions/midi.gs5 203 chown system system /config/usb_gadget/g1/functions/midi.gs5/buflen 204 chown system system /config/usb_gadget/g1/functions/midi.gs5/id 205 chown system system /config/usb_gadget/g1/functions/midi.gs5/in_ports 206 chown system system /config/usb_gadget/g1/functions/midi.gs5/index 207 chown system system /config/usb_gadget/g1/functions/midi.gs5/out_ports 208 chown system system /config/usb_gadget/g1/functions/midi.gs5/qlen 209 chown system system /config/usb_gadget/g1/functions/mtp.gs0 210 chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc 211 chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP 212 chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP/compatible_id 213 chown system system /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP/sub_compatible_id 214 chown system system /config/usb_gadget/g1/functions/ncm.gs9 215 chown system system /config/usb_gadget/g1/functions/ncm.gs9/dev_addr 216 chown system system /config/usb_gadget/g1/functions/ncm.gs9/host_addr 217 chown system system /config/usb_gadget/g1/functions/ncm.gs9/ifname 218 chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc 219 chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc/interface.ncm 220 chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc/interface.ncm/compatible_id 221 chown system system /config/usb_gadget/g1/functions/ncm.gs9/os_desc/interface.ncm/sub_compatible_id 222 chown system system /config/usb_gadget/g1/functions/ncm.gs9/qmult 223 chown system system /config/usb_gadget/g1/functions/ptp.gs1 224 chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc 225 chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP 226 chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP/compatible_id 227 chown system system /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP/sub_compatible_id 228 chown system system /config/usb_gadget/g1/functions/rndis.gs4 229 chown system system /config/usb_gadget/g1/functions/rndis.gs4/class 230 chown system system /config/usb_gadget/g1/functions/rndis.gs4/dev_addr 231 chown system system /config/usb_gadget/g1/functions/rndis.gs4/host_addr 232 chown system system /config/usb_gadget/g1/functions/rndis.gs4/ifname 233 chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc 234 chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.rndis 235 chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.rndis/compatible_id 236 chown system system /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.rndis/sub_compatible_id 237 chown system system /config/usb_gadget/g1/functions/rndis.gs4/protocol 238 chown system system /config/usb_gadget/g1/functions/rndis.gs4/qmult 239 chown system system /config/usb_gadget/g1/functions/rndis.gs4/subclass 240 chown system system /config/usb_gadget/g1/functions/uvc.0/ 241 chown system system /config/usb_gadget/g1/functions/uvc.0/control 242 chown system system /config/usb_gadget/g1/functions/uvc.0/control/bInterfaceNumber 243 chown system system /config/usb_gadget/g1/functions/uvc.0/control/class 244 chown system system /config/usb_gadget/g1/functions/uvc.0/control/class/fs 245 chown system system /config/usb_gadget/g1/functions/uvc.0/control/class/fs/h 246 chown system system /config/usb_gadget/g1/functions/uvc.0/control/class/ss 247 chown system system /config/usb_gadget/g1/functions/uvc.0/control/class/ss/h 248 chown system system /config/usb_gadget/g1/functions/uvc.0/control/header 249 chown system system /config/usb_gadget/g1/functions/uvc.0/control/header/h 250 chown system system /config/usb_gadget/g1/functions/uvc.0/control/header/h/bcdUVC 251 chown system system /config/usb_gadget/g1/functions/uvc.0/control/header/h/dwClockFrequency 252 chown system system /config/usb_gadget/g1/functions/uvc.0/control/processing 253 chown system system /config/usb_gadget/g1/functions/uvc.0/control/processing/default 254 chown system system /config/usb_gadget/g1/functions/uvc.0/control/processing/default/bmControls 255 chown system system /config/usb_gadget/g1/functions/uvc.0/control/processing/default/bSourceID 256 chown system system /config/usb_gadget/g1/functions/uvc.0/control/processing/default/bUnitID 257 chown system system /config/usb_gadget/g1/functions/uvc.0/control/processing/default/iProcessing 258 chown system system /config/usb_gadget/g1/functions/uvc.0/control/processing/default/wMaxMultiplier 259 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal 260 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/camera 261 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/camera/default 262 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/camera/default/bAssocTerminal 263 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/camera/default/bmControls 264 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/camera/default/bTerminalID 265 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/camera/default/iTerminal 266 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/camera/default/wObjectiveFocalLengthMax 267 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/camera/default/wObjectiveFocalLengthMin 268 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/camera/default/wOcularFocalLength 269 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/camera/default/wTerminalType 270 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/output 271 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/output/default 272 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/output/default/bAssocTerminal 273 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/output/default/bSourceID 274 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/output/default/bTerminalID 275 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/output/default/iTerminal 276 chown system system /config/usb_gadget/g1/functions/uvc.0/control/terminal/output/default/wTerminalType 277 chown system system /config/usb_gadget/g1/functions/uvc.0/function_name 278 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming 279 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming_interval 280 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming_maxburst 281 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming_maxpacket 282 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/bInterfaceNumber 283 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/class 284 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/class/fs 285 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/class/fs/h 286 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/class/hs 287 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/class/hs/h 288 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/class/ss 289 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/class/ss/h 290 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/color_matching 291 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/color_matching/default 292 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/color_matching/default/bColorPrimaries 293 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/color_matching/default/bMatrixCoefficients 294 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/color_matching/default/bTransferCharacteristics 295 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/header 296 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/header/h 297 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/header/h/bmInfo 298 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/header/h/bStillCaptureMethod 299 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/header/h/bTerminalLink 300 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/header/h/bTriggerSupport 301 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/header/h/bTriggerUsage 302 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/header/h/m 303 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg 304 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m 305 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p 306 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/bFrameIndex 307 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/bmCapabilities 308 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwDefaultFrameInterval 309 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwFrameInterval 310 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwMaxBitRate 311 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwMaxVideoFrameBufferSize 312 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/dwMinBitRate 313 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/wHeight 314 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/1080p/wWidth 315 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p 316 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/bFrameIndex 317 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/bmCapabilities 318 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwDefaultFrameInterval 319 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwFrameInterval 320 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwMaxBitRate 321 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwMaxVideoFrameBufferSize 322 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwMinBitRate 323 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/wHeight 324 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/wWidth 325 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p 326 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/bFrameIndex 327 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/bmCapabilities 328 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwDefaultFrameInterval 329 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwFrameInterval 330 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwMaxBitRate 331 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwMaxVideoFrameBufferSize 332 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/dwMinBitRate 333 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/wHeight 334 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/480p/wWidth 335 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p 336 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/bFrameIndex 337 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/bmCapabilities 338 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwDefaultFrameInterval 339 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwFrameInterval 340 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMaxBitRate 341 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMaxVideoFrameBufferSize 342 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMinBitRate 343 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/wHeight 344 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/wWidth 345 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bAspectRatioX 346 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bAspectRatioY 347 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bDefaultFrameIndex 348 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bFormatIndex 349 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bmaControls 350 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bmFlags 351 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bmInterlaceFlags 352 chown system system /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed 353 chown system system /config/usb_gadget/g1/idProduct 354 chown system system /config/usb_gadget/g1/idVendor 355 chown system system /config/usb_gadget/g1/max_speed 356 chown system system /config/usb_gadget/g1/os_desc 357 chown system system /config/usb_gadget/g1/os_desc/b.1 358 chown system system /config/usb_gadget/g1/os_desc/b_vendor_code 359 chown system system /config/usb_gadget/g1/os_desc/qw_sign 360 chown system system /config/usb_gadget/g1/os_desc/use 361 chown system system /config/usb_gadget/g1/strings 362 chown system system /config/usb_gadget/g1/strings/0x409 363 chown system system /config/usb_gadget/g1/strings/0x409/manufacturer 364 chown system system /config/usb_gadget/g1/strings/0x409/product 365 chown system system /config/usb_gadget/g1/strings/0x409/serialnumber 366 setprop vendor.usb.functions.ready 1 367 368on boot 369 # Set USB timeout 370 write sys/module/usbcore/parameters/initial_descriptor_timeout 500 371 # Use USB Gadget HAL 372 setprop sys.usb.configfs 2 373 # Enable in-kernel media-presence polling for SD cards 374 write /sys/module/block/parameters/events_dfl_poll_msecs 2000 375 376on property:sys.usb.ffs.ready=1 && property:sys.usb.config=adb && property:sys.usb.configfs=1 377 write /config/usb_gadget/g1/idProduct 0x4EE7 378 write /config/usb_gadget/g1/idVendor 0x18D1 379 380on property:vendor.usb.config=* 381 start usbd 382 383on property:persist.vendor.usb.usbradio.config=* 384 start usbd 385 386on charger 387 mkdir /config/usb_gadget/g1 388 mkdir /config/usb_gadget/g1/strings/0x409 389 mkdir /config/usb_gadget/g1/configs/b.1 390 write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno} 391 write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer} 392 write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model} 393 write /config/usb_gadget/g1/configs/b.1/MaxPower 0x384 394 write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1 395 write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100" 396 mkdir /config/usb_gadget/g1/functions/midi.gs5 397 symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 398 setprop sys.usb.controller "11210000.dwc3" 399 setprop sys.usb.configfs 1 400 401on property:ro.bootmode=charger 402 setprop sys.usb.config charger 403 404on property:sys.usb.config=charger && property:sys.usb.configfs=1 405 write /config/usb_gadget/g1/idVendor 0x18d1 406 write /config/usb_gadget/g1/idProduct 0x4eea 407 write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "midi" 408 symlink /config/usb_gadget/g1/functions/midi.gs5 /config/usb_gadget/g1/configs/b.1/f1 409 write /config/usb_gadget/g1/UDC ${sys.usb.controller} 410 write /sys/class/typec/port0/device/update_sdp_enum_timeout 0x1 411 setprop sys.usb.state ${sys.usb.config} 412 413on property:ro.bootmode=usbuwb 414 setprop persist.vendor.usb.usbradio.config uwb_acm 415 416on property:vendor.usb.contaminantdisable=true 417 exec /vendor/bin/hw/disable_contaminant_detection.sh 418 419on property:persist.vendor.usb.displayport.enabled=1 420 write /sys/module/exynos_drm/parameters/dp_enabled 1 421 write /sys/class/typec/port0/port0.0/mode1/active "yes" 422 423on property:persist.vendor.usb.displayport.enabled=0 424 write /sys/module/exynos_drm/parameters/dp_enabled 0 425 write /sys/class/typec/port0/port0.0/mode1/active "no" 426 427on property:persist.sys.hdcp_checking=always 428 write /sys/module/exynos_hdcp2/parameters/max_ver 3 429 430on property:persist.sys.hdcp_checking="drm-only" 431 write /sys/module/exynos_hdcp2/parameters/max_ver 2 432 433on property:persist.sys.hdcp_checking=never 434 write /sys/module/exynos_hdcp2/parameters/max_ver 0 435