blob: e3001ee13ef4cdf72f75be948bf73529a8082f10 [file] [log] [blame]
Zvikomborero VIncent Zvikarambaa25011a2016-07-21 16:32:35 -04001# Copyright (c) 2011-2012, The Linux Foundation. All rights reserved.
2#
3# Redistribution and use in source and binary forms, with or without
4# modification, are permitted provided that the following conditions are met:
5# * Redistributions of source code must retain the above copyright
6# notice, this list of conditions and the following disclaimer.
7# * Redistributions in binary form must reproduce the above copyright
8# notice, this list of conditions and the following disclaimer in the
9# documentation and/or other materials provided with the distribution.
10# * Neither the name of The Linux Foundation nor
11# the names of its contributors may be used to endorse or promote
12# products derived from this software without specific prior written
13# permission.
14#
15# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
16# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
19# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
22# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
24# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26#
27
28on init
29 write /sys/class/android_usb/android0/f_rndis/wceis 1
30 write /sys/class/android_usb/android0/iSerial ${ro.serialno}
31 chown system system /sys/class/android_usb/android0/terminal_version
32 chmod 0660 /sys/class/android_usb/android0/terminal_version
33
34on charger
35 setprop sys.usb.config mass_storage
36
37on fs
38 mkdir /dev/usb-ffs 0770 shell shell
39 mkdir /dev/usb-ffs/adb 0770 shell shell
40 mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000
41 write /sys/class/android_usb/android0/f_ffs/aliases adb
42
43service qcom-usb-sh /system/bin/sh /init.qcom.usb.sh
44 class main
45 user root
46 oneshot
47
48# Following are the parameters required for usb functionality. They provide configurable options like
49# product_id/vendor id and allows specifying required functions:
50#
51# Required parameters:
52#
53# /sys/class/android_usb/android0/enable: Enables/disables usb composition
54# Value: 0 (disable), 1 (enable)
55#
56# /sys/class/android_usb/android0/idVendor: Stores Vendor ID
57# Value: 05c6 (Vendor id for Qualcomm Inc)
58#
59# /sys/class/android_usb/android0/idProduct: Stores Product id corresponding to usb composition
60# Value: 0x9xxx for composite interface, 0xFxxx for single interface
61#
62# /sys/class/android_usb/android0/f_diag/clients: Stores name of clients representing a diag interface.
63# Value: Passed one per interface. e.g. diag[,diag_mdm, diag_qsc, diag_mdm2]
64#
65# /sys/class/android_usb/android0/functions: Stores name of the function drivers used in usb composition.
66# Value: Passed one per function driver. e.g. diag[,adb]
67#
68#Optional parameters:
69#
70# /sys/class/android_usb/android0/f_serial/transports: Stores type of underlying transports used to
71# communicate to serial interface.
72# Value: Passed one per interface. One value represents control and data transport together.
73# e.g. smd[,sdio,tty,hsic]
74# Only required if serial interface is present.
75#
76# /sys/class/android_usb/android0/f_serial/transport_names: Stores name of the underlying transports
77# used to communicate to serial interface. This is used to distinguish between more than one interface
78# using same transport type.
79# Value: Passed one per interface. One value represents control and data transport together.
80# e.g. serial_hsic[,serial_hsusb]
81# Only required for transport type hsic, optional for other transport types.
82#
83# /sys/class/android_usb/android0/f_rmnet/transports: Stores type of underlying transports used to
84# communicate to rmnet interface.
85# Value: Passed two per interface as control, data transport type pair.
86# e.g. smd,bam[,hsuart,hsuart]
87# Only required if rmnet interface is present.
88#
89# /sys/class/android_usb/android0/f_rmnet/transport_names: Stores name of the underlying transports
90# used to communicate to rmnet interface. This is used to distinguish between more than one interface
91# using same transport type.
92# Value: Passed one per interface. One value represents control and data transport together.
93# e.g. rmnet_hsic[,rmnet_hsusb]
94# Only required for transport type hsic, optional for other transport types.
95
96
97# USB Composite for Samsung USB Driver
98
99on property:sys.usb.config=mtp,conn_gadget
100 write /sys/class/android_usb/android0/enable 0
101 write /sys/class/android_usb/android0/idVendor 04E8
102 write /sys/class/android_usb/android0/idProduct 6860
103 write /sys/class/android_usb/android0/f_acm/acm_transports tty
104 write /sys/class/android_usb/android0/functions mtp,acm,conn_gadget
105 write /sys/class/android_usb/android0/enable 1
106 setprop sys.usb.state ${sys.usb.config}
107
108on property:sys.usb.config=mtp,conn_gadget,adb
109 write /sys/class/android_usb/android0/enable 0
110 write /sys/class/android_usb/android0/idVendor 04E8
111 write /sys/class/android_usb/android0/idProduct 6860
112 write /sys/class/android_usb/android0/f_acm/acm_transports tty
113 write /sys/class/android_usb/android0/functions mtp,acm,conn_gadget,adb
114 write /sys/class/android_usb/android0/enable 1
115 start adbd
116 setprop sys.usb.state ${sys.usb.config}
117
118on property:sys.usb.config=mtp
119 write /sys/class/android_usb/android0/enable 0
120 write /sys/class/android_usb/android0/idVendor 04E8
121 write /sys/class/android_usb/android0/idProduct 6860
122 write /sys/class/android_usb/android0/f_acm/acm_transports tty
123 write /sys/class/android_usb/android0/functions mtp,acm
124 write /sys/class/android_usb/android0/enable 1
125 setprop sys.usb.state ${sys.usb.config}
126
127
128on property:sys.usb.config=mtp,adb
129 write /sys/class/android_usb/android0/enable 0
130 write /sys/class/android_usb/android0/idVendor 04E8
131 write /sys/class/android_usb/android0/idProduct 6860
132 write /sys/class/android_usb/android0/f_acm/acm_transports tty
133 write /sys/class/android_usb/android0/functions mtp,acm,adb
134 write /sys/class/android_usb/android0/enable 1
135 start adbd
136 setprop sys.usb.state ${sys.usb.config}
137
138
139on property:sys.usb.config=ptp
140 write /sys/class/android_usb/android0/enable 0
141 write /sys/class/android_usb/android0/idVendor 04E8
142 write /sys/class/android_usb/android0/idProduct 6865
143 write /sys/class/android_usb/android0/functions ptp
144 write /sys/class/android_usb/android0/enable 1
145 setprop sys.usb.state ${sys.usb.config}
146
147on property:sys.usb.config=ptp,adb
148 write /sys/class/android_usb/android0/enable 0
149 write /sys/class/android_usb/android0/idVendor 04E8
150 write /sys/class/android_usb/android0/idProduct 6866
151 write /sys/class/android_usb/android0/functions ptp,adb
152 write /sys/class/android_usb/android0/enable 1
153 start adbd
154 setprop sys.usb.state ${sys.usb.config}
155
156on property:sys.usb.config=rndis
157 write /sys/class/android_usb/android0/enable 0
158 write /sys/class/android_usb/android0/idVendor 04E8
159 write /sys/class/android_usb/android0/idProduct 6863
160 write /sys/class/android_usb/android0/functions rndis
161 write /sys/class/android_usb/android0/enable 1
162 setprop sys.usb.state ${sys.usb.config}
163
164on property:sys.usb.config=rndis,adb
165 write /sys/class/android_usb/android0/enable 0
166 write /sys/class/android_usb/android0/idVendor 04E8
167 write /sys/class/android_usb/android0/idProduct 6864
168 write /sys/class/android_usb/android0/functions rndis,adb
169 write /sys/class/android_usb/android0/enable 1
170 start adbd
171 setprop sys.usb.state ${sys.usb.config}
172
173on property:sys.usb.config=ncm
174 write /sys/class/android_usb/android0/enable 0
175 write /sys/class/android_usb/android0/idVendor 04e8
176 write /sys/class/android_usb/android0/idProduct 685d
177 write /sys/class/android_usb/android0/functions ncm
178 write /sys/class/android_usb/android0/bDeviceClass 2
179 write /sys/class/android_usb/android0/enable 1
180 setprop sys.usb.state ${sys.usb.config}
181
182on property:sys.usb.config=ncm,adb
183 write /sys/class/android_usb/android0/enable 0
184 write /sys/class/android_usb/android0/idVendor 04e8
185 write /sys/class/android_usb/android0/idProduct 685d
186 write /sys/class/android_usb/android0/functions ncm,adb
187 write /sys/class/android_usb/android0/bDeviceClass 2
188 write /sys/class/android_usb/android0/enable 1
189 start adbd
190 setprop sys.usb.state ${sys.usb.config}
191
192# rndis,acm,diag and rmnet,acm,diag are used for IOT Hidden Menu
193on property:sys.usb.config=rndis,acm,diag
194 write /sys/class/android_usb/android0/enable 0
195 write /sys/class/android_usb/android0/idVendor 04E8
196 write /sys/class/android_usb/android0/idProduct 6864
197 write /sys/class/android_usb/android0/f_diag/clients diag
198 write /sys/class/android_usb/android0/f_acm/acm_transports tty
199 write /sys/class/android_usb/android0/functions rndis,acm,diag
200 write /sys/class/android_usb/android0/enable 1
201 setprop sys.usb.state ${sys.usb.config}
202
203on property:sys.usb.config=rmnet,acm,diag
204 write /sys/class/android_usb/android0/enable 0
205 write /sys/class/android_usb/android0/idVendor 04E8
206 write /sys/class/android_usb/android0/idProduct 685D
207 write /sys/class/android_usb/android0/f_diag/clients diag
208 write /sys/class/android_usb/android0/f_acm/acm_transports tty
209 write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
210 write /sys/class/android_usb/android0/functions diag,acm,rmnet
211 write /sys/class/android_usb/android0/enable 1
212 setprop sys.usb.state ${sys.usb.config}
213
214on property:sys.usb.config=diag,acm,adb
215 write /sys/class/android_usb/android0/enable 0
216 write /sys/class/android_usb/android0/idVendor 04E8
217 write /sys/class/android_usb/android0/idProduct 685D
218 write /sys/class/android_usb/android0/f_diag/clients diag
219 write /sys/class/android_usb/android0/f_acm/acm_transports tty
220 write /sys/class/android_usb/android0/functions diag,acm,adb
221 write /sys/class/android_usb/android0/enable 1
222 start adbd
223 setprop sys.usb.state ${sys.usb.config}
224
225# For CDFS composite
226on property:sys.usb.config=mass_storage
227 write /sys/class/android_usb/android0/enable 0
228 write /sys/class/android_usb/android0/idVendor 04E8
229 write /sys/class/android_usb/android0/idProduct 685B
230 write /sys/class/android_usb/android0/functions mass_storage
231 write /sys/class/android_usb/android0/enable 1
232 setprop sys.usb.state ${sys.usb.config}
233
234on property:sys.usb.config=mass_storage,adb
235 write /sys/class/android_usb/android0/enable 0
236 write /sys/class/android_usb/android0/idVendor 04E8
237 write /sys/class/android_usb/android0/idProduct 685E
238# write /sys/class/android_usb/android0/f_acm/instances 1
239 write /sys/class/android_usb/android0/f_acm/acm_transports tty
240 write /sys/class/android_usb/android0/functions mass_storage,adb
241 write /sys/class/android_usb/android0/enable 1
242 start adbd
243 setprop sys.usb.state ${sys.usb.config}
244
245on property:sys.usb.config=mass_storage,mtp
246 write /sys/class/android_usb/android0/enable 0
247 write /sys/class/android_usb/android0/idVendor 04E8
248 write /sys/class/android_usb/android0/idProduct 6860
249 write /sys/class/android_usb/android0/functions mtp,mass_storage
250 write /sys/class/android_usb/android0/enable 1
251 setprop sys.usb.state ${sys.usb.config}
252
253on property:sys.usb.config=mass_storage,mtp,adb
254 write /sys/class/android_usb/android0/enable 0
255 write /sys/class/android_usb/android0/idVendor 04E8
256 write /sys/class/android_usb/android0/idProduct 6860
257 write /sys/class/android_usb/android0/functions mtp,mass_storage,adb
258 write /sys/class/android_usb/android0/enable 1
259 start adbd
260 setprop sys.usb.state ${sys.usb.config}
261
262# As request from the CHINA GOVERNMENT SECURITY POLICY
263on property:sys.usb.config=askon
264 write /sys/class/android_usb/android0/enable 0
265 write /sys/class/android_usb/android0/functions ${sys.usb.config}
266 setprop sys.usb.state ${sys.usb.config}
267
268on property:sys.usb.config=askon,adb
269 write /sys/class/android_usb/android0/enable 0
270 write /sys/class/android_usb/android0/functions ${sys.usb.config}
271 setprop sys.usb.state ${sys.usb.config}
272
273# USB compositions
274on property:sys.usb.config=diag,serial_tty,serial_smd
275 write /sys/class/android_usb/android0/enable 0
276 write /sys/class/android_usb/android0/idVendor 05C6
277 write /sys/class/android_usb/android0/idProduct 9002
278 write /sys/class/android_usb/android0/f_diag/clients diag
279 write /sys/class/android_usb/android0/f_serial/transports tty,smd
280 write /sys/class/android_usb/android0/functions diag,serial
281 write /sys/class/android_usb/android0/enable 1
282 setprop sys.usb.state ${sys.usb.config}
283
284on property:sys.usb.config=diag,serial_tty,serial_smd,adb
285 stop adbd
286 write /sys/class/android_usb/android0/enable 0
287 write /sys/class/android_usb/android0/idVendor 05C6
288 write /sys/class/android_usb/android0/idProduct 9020
289 write /sys/class/android_usb/android0/f_diag/clients diag
290 write /sys/class/android_usb/android0/f_serial/transports smd,tty
291 write /sys/class/android_usb/android0/functions diag,adb,serial
292 write /sys/class/android_usb/android0/enable 1
293 start adbd
294 setprop sys.usb.state ${sys.usb.config}
295
296on property:sys.usb.config=diag,adb
297 stop adbd
298 write /sys/class/android_usb/android0/enable 0
299 write /sys/class/android_usb/android0/idVendor 05C6
300 write /sys/class/android_usb/android0/idProduct 901D
301 write /sys/class/android_usb/android0/f_diag/clients diag
302 write /sys/class/android_usb/android0/functions diag,adb
303 write /sys/class/android_usb/android0/enable 1
304 start adbd
305 setprop sys.usb.state ${sys.usb.config}
306
307on property:sys.usb.config=diag
308 write /sys/class/android_usb/android0/enable 0
309 write /sys/class/android_usb/android0/idVendor 05C6
310 write /sys/class/android_usb/android0/idProduct 900E
311 write /sys/class/android_usb/android0/f_diag/clients diag
312 write /sys/class/android_usb/android0/functions diag
313 write /sys/class/android_usb/android0/enable 1
314 setprop sys.usb.state ${sys.usb.config}
315
316on property:sys.usb.config=diag,serial_smd,rmnet_bam,adb
317 stop adbd
318 write /sys/class/android_usb/android0/enable 0
319 write /sys/class/android_usb/android0/idVendor 05C6
320 write /sys/class/android_usb/android0/idProduct 9091
321 write /sys/class/android_usb/android0/f_diag/clients diag
322 write /sys/class/android_usb/android0/f_serial/transports smd
323 write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
324 write /sys/class/android_usb/android0/functions diag,serial,rmnet,adb
325 write /sys/class/android_usb/android0/enable 1
326 start adbd
327 setprop sys.usb.state ${sys.usb.config}
328
329on property:sys.usb.config=diag,serial_smd,rmnet_qti_bam,adb
330 stop adbd
331 write /sys/class/android_usb/android0/enable 0
332 write /sys/class/android_usb/android0/idVendor 05C6
333 write /sys/class/android_usb/android0/idProduct 9091
334 write /sys/class/android_usb/android0/f_diag/clients diag
335 write /sys/class/android_usb/android0/f_serial/transports smd
336 write /sys/class/android_usb/android0/f_rmnet/transports qti,bam
337 write /sys/class/android_usb/android0/functions diag,serial,rmnet,adb
338 write /sys/class/android_usb/android0/enable 1
339 start adbd
340 setprop sys.usb.state ${sys.usb.config}
341
342on property:sys.usb.config=diag,serial_smd,rmnet_bam
343 write /sys/class/android_usb/android0/enable 0
344 write /sys/class/android_usb/android0/idVendor 05C6
345 write /sys/class/android_usb/android0/idProduct 9092
346 write /sys/class/android_usb/android0/f_diag/clients diag
347 write /sys/class/android_usb/android0/f_serial/transports smd
348 write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
349 write /sys/class/android_usb/android0/functions diag,serial,rmnet
350 write /sys/class/android_usb/android0/enable 1
351 setprop sys.usb.state ${sys.usb.config}
352
353on property:sys.usb.config=diag,serial_smd,rmnet_qti_bam
354 write /sys/class/android_usb/android0/enable 0
355 write /sys/class/android_usb/android0/idVendor 05C6
356 write /sys/class/android_usb/android0/idProduct 9092
357 write /sys/class/android_usb/android0/f_diag/clients diag
358 write /sys/class/android_usb/android0/f_serial/transports smd
359 write /sys/class/android_usb/android0/f_rmnet/transports qti,bam
360 write /sys/class/android_usb/android0/functions diag,serial,rmnet
361 write /sys/class/android_usb/android0/enable 1
362 setprop sys.usb.state ${sys.usb.config}
363
364on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_bam,mass_storage,adb
365 stop adbd
366 write /sys/class/android_usb/android0/enable 0
367 write /sys/class/android_usb/android0/idVendor 05C6
368 write /sys/class/android_usb/android0/idProduct 9025
369 write /sys/class/android_usb/android0/f_diag/clients diag
370 write /sys/class/android_usb/android0/f_serial/transports smd,tty
371 write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
372 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
373 write /sys/class/android_usb/android0/enable 1
374 start adbd
375 setprop sys.usb.state ${sys.usb.config}
376
377on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_bam,mass_storage,adb
378 stop adbd
379 write /sys/class/android_usb/android0/enable 0
380 write /sys/class/android_usb/android0/idVendor 05C6
381 write /sys/class/android_usb/android0/idProduct 903D
382 write /sys/class/android_usb/android0/f_diag/clients diag
383 write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
384 write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
385 write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet,mass_storage
386 write /sys/class/android_usb/android0/enable 1
387 start adbd
388 setprop sys.usb.state ${sys.usb.config}
389
390on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_bam,mass_storage
391 write /sys/class/android_usb/android0/enable 0
392 write /sys/class/android_usb/android0/idVendor 05C6
393 write /sys/class/android_usb/android0/idProduct 9026
394 write /sys/class/android_usb/android0/f_diag/clients diag
395 write /sys/class/android_usb/android0/f_serial/transports smd,tty
396 write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
397 write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
398 write /sys/class/android_usb/android0/enable 1
399 setprop sys.usb.state ${sys.usb.config}
400
401on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_bam,mass_storage
402 write /sys/class/android_usb/android0/enable 0
403 write /sys/class/android_usb/android0/idVendor 05C6
404 write /sys/class/android_usb/android0/idProduct 903E
405 write /sys/class/android_usb/android0/f_diag/clients diag
406 write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
407 write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
408 write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
409 write /sys/class/android_usb/android0/enable 1
410 setprop sys.usb.state ${sys.usb.config}
411
412on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_smd,rmnet_smd_sdio,mass_storage,adb
413 stop adbd
414 write /sys/class/android_usb/android0/enable 0
415 write /sys/class/android_usb/android0/idVendor 05C6
416 write /sys/class/android_usb/android0/idProduct 9037
417 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
418 write /sys/class/android_usb/android0/f_serial/transports sdio,smd
419 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_smd_sdio,mass_storage
420 write /sys/class/android_usb/android0/enable 1
421 start adbd
422 setprop sys.usb.state ${sys.usb.config}
423
424on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_smd,rmnet_smd_sdio,mass_storage,adb
425 stop adbd
426 write /sys/class/android_usb/android0/enable 0
427 write /sys/class/android_usb/android0/idVendor 05C6
428 write /sys/class/android_usb/android0/idProduct 903B
429 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
430 write /sys/class/android_usb/android0/f_acm/acm_transports sdio,smd
431 write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd_sdio,mass_storage
432 write /sys/class/android_usb/android0/enable 1
433 start adbd
434 setprop sys.usb.state ${sys.usb.config}
435
436on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_smd,rmnet_smd_sdio,mass_storage
437 write /sys/class/android_usb/android0/enable 0
438 write /sys/class/android_usb/android0/idVendor 05C6
439 write /sys/class/android_usb/android0/idProduct 9038
440 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
441 write /sys/class/android_usb/android0/f_serial/transports sdio,smd
442 write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd_sdio,mass_storage
443 write /sys/class/android_usb/android0/enable 1
444 setprop sys.usb.state ${sys.usb.config}
445
446on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_smd,rmnet_smd_sdio,mass_storage
447 write /sys/class/android_usb/android0/enable 0
448 write /sys/class/android_usb/android0/idVendor 05C6
449 write /sys/class/android_usb/android0/idProduct 903C
450 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
451 write /sys/class/android_usb/android0/f_acm/acm_transports sdio,smd
452 write /sys/class/android_usb/android0/functions diag,acm,rmnet_smd_sdio,mass_storage
453 write /sys/class/android_usb/android0/enable 1
454 setprop sys.usb.state ${sys.usb.config}
455
456on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_tty,rmnet_sdio,mass_storage,adb
457 stop adbd
458 write /sys/class/android_usb/android0/enable 0
459 write /sys/class/android_usb/android0/idVendor 05C6
460 write /sys/class/android_usb/android0/idProduct 9031
461 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
462 write /sys/class/android_usb/android0/f_serial/transports sdio,tty
463 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_sdio,mass_storage
464 write /sys/class/android_usb/android0/enable 1
465 start adbd
466 setprop sys.usb.state ${sys.usb.config}
467
468on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_tty,rmnet_sdio,mass_storage,adb
469 stop adbd
470 write /sys/class/android_usb/android0/enable 0
471 write /sys/class/android_usb/android0/idVendor 05C6
472 write /sys/class/android_usb/android0/idProduct 903B
473 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
474 write /sys/class/android_usb/android0/f_acm/acm_transports sdio,tty
475 write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_sdio,mass_storage
476 write /sys/class/android_usb/android0/enable 1
477 start adbd
478 setprop sys.usb.state ${sys.usb.config}
479
480on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_tty,rmnet_sdio,mass_storage
481 write /sys/class/android_usb/android0/enable 0
482 write /sys/class/android_usb/android0/idVendor 05C6
483 write /sys/class/android_usb/android0/idProduct 9032
484 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
485 write /sys/class/android_usb/android0/f_serial/transports sdio,tty
486 write /sys/class/android_usb/android0/functions diag,serial,rmnet_sdio,mass_storage
487 write /sys/class/android_usb/android0/enable 1
488 setprop sys.usb.state ${sys.usb.config}
489
490on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_tty,rmnet_sdio,mass_storage
491 write /sys/class/android_usb/android0/enable 0
492 write /sys/class/android_usb/android0/idVendor 05C6
493 write /sys/class/android_usb/android0/idProduct 903C
494 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
495 write /sys/class/android_usb/android0/f_acm/acm_transports sdio,tty
496 write /sys/class/android_usb/android0/functions diag,acm,rmnet_sdio,mass_storage
497 write /sys/class/android_usb/android0/enable 1
498 setprop sys.usb.state ${sys.usb.config}
499
500on property:sys.usb.config=diag,serial_tty,serial_tty,rmnet_smd,mass_storage,adb
501 stop adbd
502 write /sys/class/android_usb/android0/enable 0
503 write /sys/class/android_usb/android0/idVendor 05C6
504 write /sys/class/android_usb/android0/idProduct 9025
505 write /sys/class/android_usb/android0/f_diag/clients diag
506 write /sys/class/android_usb/android0/f_serial/transports tty,tty
507 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_smd,mass_storage
508 write /sys/class/android_usb/android0/enable 1
509 start adbd
510 start port-bridge
511 setprop sys.usb.state ${sys.usb.config}
512
513on property:sys.usb.config=diag,acm_tty,acm_tty,rmnet_smd,mass_storage,adb
514 stop adbd
515 write /sys/class/android_usb/android0/enable 0
516 write /sys/class/android_usb/android0/idVendor 05C6
517 write /sys/class/android_usb/android0/idProduct 903D
518 write /sys/class/android_usb/android0/f_diag/clients diag
519 write /sys/class/android_usb/android0/f_acm/acm_transports tty,tty
520 write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd,mass_storage
521 write /sys/class/android_usb/android0/enable 1
522 start adbd
523 start port-bridge
524 setprop sys.usb.state ${sys.usb.config}
525
526on property:sys.usb.config=diag,serial_tty,serial_tty,rmnet_smd,mass_storage
527 write /sys/class/android_usb/android0/enable 0
528 write /sys/class/android_usb/android0/idVendor 05C6
529 write /sys/class/android_usb/android0/idProduct 9026
530 write /sys/class/android_usb/android0/f_diag/clients diag
531 write /sys/class/android_usb/android0/f_serial/transports tty,tty
532 write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
533 write /sys/class/android_usb/android0/enable 1
534 start port-bridge
535 setprop sys.usb.state ${sys.usb.config}
536
537on property:sys.usb.config=diag,acm_tty,acm_tty,rmnet_smd,mass_storage
538 write /sys/class/android_usb/android0/enable 0
539 write /sys/class/android_usb/android0/idVendor 05C6
540 write /sys/class/android_usb/android0/idProduct 903E
541 write /sys/class/android_usb/android0/f_diag/clients diag
542 write /sys/class/android_usb/android0/f_acm/acm_transports tty,tty
543 write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
544 write /sys/class/android_usb/android0/enable 1
545 setprop sys.usb.state ${sys.usb.config}
546
547on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_smd,mass_storage,adb
548 stop adbd
549 write /sys/class/android_usb/android0/enable 0
550 write /sys/class/android_usb/android0/idVendor 05C6
551 write /sys/class/android_usb/android0/idProduct 9025
552 write /sys/class/android_usb/android0/f_diag/clients diag
553 write /sys/class/android_usb/android0/f_serial/transports smd,tty
554 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_smd,mass_storage
555 write /sys/class/android_usb/android0/enable 1
556 start adbd
557 setprop sys.usb.state ${sys.usb.config}
558
559on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_smd,mass_storage,adb
560 stop adbd
561 write /sys/class/android_usb/android0/enable 0
562 write /sys/class/android_usb/android0/idVendor 05C6
563 write /sys/class/android_usb/android0/idProduct 903D
564 write /sys/class/android_usb/android0/f_diag/clients diag
565 write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
566 write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd,mass_storage
567 write /sys/class/android_usb/android0/enable 1
568 start adbd
569 start port-bridge
570 setprop sys.usb.state ${sys.usb.config}
571
572on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_smd,mass_storage
573 write /sys/class/android_usb/android0/enable 0
574 write /sys/class/android_usb/android0/idVendor 05C6
575 write /sys/class/android_usb/android0/idProduct 9026
576 write /sys/class/android_usb/android0/f_diag/clients diag
577 write /sys/class/android_usb/android0/f_serial/transports smd,tty
578 write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
579 write /sys/class/android_usb/android0/enable 1
580 setprop sys.usb.state ${sys.usb.config}
581
582on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_smd,mass_storage
583 write /sys/class/android_usb/android0/enable 0
584 write /sys/class/android_usb/android0/idVendor 05C6
585 write /sys/class/android_usb/android0/idProduct 903E
586 write /sys/class/android_usb/android0/f_diag/clients diag
587 write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
588 write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
589 write /sys/class/android_usb/android0/enable 1
590 setprop sys.usb.state ${sys.usb.config}
591
592# RmNet using USB BAM to IPA BAM
593on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_ipa,mass_storage,adb
594 stop adbd
595 write /sys/class/android_usb/android0/enable 0
596 write /sys/class/android_usb/android0/idVendor 05C6
597 write /sys/class/android_usb/android0/idProduct 9025
598 write /sys/class/android_usb/android0/f_diag/clients diag
599 write /sys/class/android_usb/android0/f_serial/transports smd,tty
600 write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
601 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
602 write /sys/class/android_usb/android0/enable 1
603 start adbd
604 setprop sys.usb.state ${sys.usb.config}
605
606on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_ipa,mass_storage
607 write /sys/class/android_usb/android0/enable 0
608 write /sys/class/android_usb/android0/idVendor 05C6
609 write /sys/class/android_usb/android0/idProduct 9026
610 write /sys/class/android_usb/android0/f_diag/clients diag
611 write /sys/class/android_usb/android0/f_serial/transports smd,tty
612 write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
613 write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
614 write /sys/class/android_usb/android0/enable 1
615 setprop sys.usb.state ${sys.usb.config}
616
617on property:sys.usb.config=diag,serial_smd,rmnet_ipa,adb
618 stop adbd
619 write /sys/class/android_usb/android0/enable 0
620 write /sys/class/android_usb/android0/idVendor 05C6
621 write /sys/class/android_usb/android0/idProduct 9091
622 write /sys/class/android_usb/android0/f_diag/clients diag
623 write /sys/class/android_usb/android0/f_serial/transports smd
624 write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
625 write /sys/class/android_usb/android0/functions diag,serial,rmnet,adb
626 write /sys/class/android_usb/android0/enable 1
627 start adbd
628 setprop sys.usb.state ${sys.usb.config}
629
630on property:sys.usb.config=diag,serial_smd,rmnet_ipa
631 write /sys/class/android_usb/android0/enable 0
632 write /sys/class/android_usb/android0/idVendor 05C6
633 write /sys/class/android_usb/android0/idProduct 9092
634 write /sys/class/android_usb/android0/f_diag/clients diag
635 write /sys/class/android_usb/android0/f_serial/transports smd
636 write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
637 write /sys/class/android_usb/android0/functions diag,serial,rmnet
638 write /sys/class/android_usb/android0/enable 1
639 setprop sys.usb.state ${sys.usb.config}
640
641# Fusion 3 composition
642on property:sys.usb.config=diag,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb
643 stop adbd
644 write /sys/class/android_usb/android0/enable 0
645 write /sys/class/android_usb/android0/idVendor 05C6
646 write /sys/class/android_usb/android0/idProduct 9025
647 write /sys/class/android_usb/android0/f_diag/clients diag
648 write /sys/class/android_usb/android0/f_serial/transports hsic,tty
649 write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
650 write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
651 write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic
652 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
653 write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384
654 write /sys/module/mdm_bridge/parameters/max_rx_urbs 20
655 write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384
656 write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20
657 write /sys/class/android_usb/android0/enable 1
658 start adbd
659 setprop sys.usb.state ${sys.usb.config}
660
661# Fusion 3 composition with diag_mdm and adb
662on property:sys.usb.config=diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb
663 stop adbd
664 write /sys/class/android_usb/android0/enable 0
665 write /sys/class/android_usb/android0/idVendor 05C6
666 write /sys/class/android_usb/android0/idProduct 9031
667 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
668 write /sys/class/android_usb/android0/f_serial/transports hsic,tty
669 write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
670 write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
671 write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic
672 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
673 write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384
674 write /sys/module/mdm_bridge/parameters/max_rx_urbs 20
675 write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384
676 write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20
677 write /sys/class/android_usb/android0/enable 1
678 start adbd
679 setprop sys.usb.state ${sys.usb.config}
680
681# Fusion 3 composition with diag_mdm
682on property:sys.usb.config=diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage
683 write /sys/class/android_usb/android0/enable 0
684 write /sys/class/android_usb/android0/idVendor 05C6
685 write /sys/class/android_usb/android0/idProduct 9032
686 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
687 write /sys/class/android_usb/android0/f_serial/transports hsic,tty
688 write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
689 write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
690 write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic
691 write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
692 write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384
693 write /sys/module/mdm_bridge/parameters/max_rx_urbs 20
694 write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384
695 write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20
696 write /sys/class/android_usb/android0/enable 1
697 setprop sys.usb.state ${sys.usb.config}
698
699# Fusion 3 DSDA composition with adb
700on property:sys.usb.config=diag,diag_mdm,diag_qsc,serial_hsic,serial_hsuart,rmnet_hsic,rmnet_hsuart,mass_storage,adb
701 stop adbd
702 write /sys/class/android_usb/android0/enable 0
703 write /sys/class/android_usb/android0/idVendor 05C6
704 write /sys/class/android_usb/android0/idProduct 9065
705 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
706 write /sys/class/android_usb/android0/f_serial/transports hsic,hsuart
707 write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsuart
708 write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsuart,hsuart
709 write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsuart
710 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
711 write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384
712 write /sys/module/mdm_bridge/parameters/max_rx_urbs 20
713 write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384
714 write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20
715 write /sys/class/android_usb/android0/enable 1
716 start adbd
717 setprop sys.usb.state ${sys.usb.config}
718
719# Fusion 3 DSDA composition without adb
720on property:sys.usb.config=diag,diag_mdm,diag_qsc,serial_hsic,serial_hsuart,rmnet_hsic,rmnet_hsuart,mass_storage
721 write /sys/class/android_usb/android0/enable 0
722 write /sys/class/android_usb/android0/idVendor 05C6
723 write /sys/class/android_usb/android0/idProduct 9066
724 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
725 write /sys/class/android_usb/android0/f_serial/transports hsic,hsuart
726 write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsuart
727 write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsuart,hsuart
728 write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsuart
729 write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
730 write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384
731 write /sys/module/mdm_bridge/parameters/max_rx_urbs 20
732 write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384
733 write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20
734 write /sys/class/android_usb/android0/enable 1
735 setprop sys.usb.state ${sys.usb.config}
736
737# Fusion 3 DSDA2 composition with adb
738on property:sys.usb.config=diag,diag_mdm,diag_mdm2,serial_hsic,serial_hsusb,rmnet_hsic,rmnet_hsusb,mass_storage,adb
739 stop adbd
740 write /sys/class/android_usb/android0/enable 0
741 write /sys/class/android_usb/android0/idVendor 05C6
742 write /sys/class/android_usb/android0/idProduct 9065
743 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_mdm2
744 write /sys/class/android_usb/android0/f_serial/transports hsic,hsic
745 write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsusb
746 write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsic,hsic
747 write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsusb
748 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
749 write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384
750 write /sys/module/mdm_bridge/parameters/max_rx_urbs 20
751 write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384
752 write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20
753 write /sys/class/android_usb/android0/enable 1
754 start adbd
755 setprop sys.usb.state ${sys.usb.config}
756
757# Fusion 3 DSDA2 composition without adb
758on property:sys.usb.config=diag,diag_mdm,diag_mdm2,serial_hsic,serial_hsusb,rmnet_hsic,rmnet_hsusb,mass_storage
759 write /sys/class/android_usb/android0/enable 0
760 write /sys/class/android_usb/android0/idVendor 05C6
761 write /sys/class/android_usb/android0/idProduct 9066
762 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_mdm2
763 write /sys/class/android_usb/android0/f_serial/transports hsic,hsic
764 write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsusb
765 write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsic,hsic
766 write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsusb
767 write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
768 write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384
769 write /sys/module/mdm_bridge/parameters/max_rx_urbs 20
770 write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384
771 write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20
772 write /sys/class/android_usb/android0/enable 1
773 setprop sys.usb.state ${sys.usb.config}
774
775# Fusion PCIe composition with diag_mdm and adb
776# Serial & RmNet bridged in userspace with tty and qti/ether
777on property:sys.usb.config=diag,diag_mdm,serial_tty,rmnet_qti_ether,mass_storage,adb
778 stop adbd
779 write /sys/class/android_usb/android0/enable 0
780 write /sys/class/android_usb/android0/idVendor 05C6
781 write /sys/class/android_usb/android0/idProduct 9035
782 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
783 write /sys/class/android_usb/android0/f_serial/transports tty
784 write /sys/class/android_usb/android0/f_rmnet/transports qti,ether
785 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
786 write /sys/class/android_usb/android0/enable 1
787 start adbd
788 setprop sys.usb.state ${sys.usb.config}
789
790# Fusion PCIe composition with diag_mdm
791# Serial & RmNet bridged in userspace with tty and qti/ether
792on property:sys.usb.config=diag,diag_mdm,serial_hsic,rmnet_hsic,mass_storage
793 write /sys/class/android_usb/android0/enable 0
794 write /sys/class/android_usb/android0/idVendor 05C6
795 write /sys/class/android_usb/android0/idProduct 9036
796 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
797 write /sys/class/android_usb/android0/f_serial/transports tty
798 write /sys/class/android_usb/android0/f_rmnet/transports qti,ether
799 write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
800 write /sys/class/android_usb/android0/enable 1
801 setprop sys.usb.state ${sys.usb.config}
802
803# Fusion HSIC/PCIe Hybrid composition with diag_mdm and adb
804# RmNet is bridged over PCIe using qti,ether ctrl/data transports
805on property:sys.usb.config=diag,diag_mdm,serial_hsic,rmnet_qti_ether,mass_storage,adb
806 stop adbd
807 write /sys/class/android_usb/android0/enable 0
808 write /sys/class/android_usb/android0/idVendor 05C6
809 write /sys/class/android_usb/android0/idProduct 9035
810 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
811 write /sys/class/android_usb/android0/f_serial/transports hsic
812 write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
813 write /sys/class/android_usb/android0/f_rmnet/transports qti,ether
814 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
815 write /sys/class/android_usb/android0/enable 1
816 start adbd
817 setprop sys.usb.state ${sys.usb.config}
818
819# Fusion HSIC/PCIe Hybrid composition with diag_mdm
820# RmNet is bridged over PCIe using qti,ether ctrl/data transports
821on property:sys.usb.config=diag,diag_mdm,serial_hsic,rmnet_hsic,mass_storage
822 write /sys/class/android_usb/android0/enable 0
823 write /sys/class/android_usb/android0/idVendor 05C6
824 write /sys/class/android_usb/android0/idProduct 9036
825 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
826 write /sys/class/android_usb/android0/f_serial/transports hsic
827 write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
828 write /sys/class/android_usb/android0/f_rmnet/transports qti,ether
829 write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
830 write /sys/class/android_usb/android0/enable 1
831 setprop sys.usb.state ${sys.usb.config}
832
833# Fusion 2.2 composition with diag_qsc and adb
834on property:sys.usb.config=diag,diag_qsc,serial_smd,serial_tty,serial_hsuart,rmnet_hsuart,mass_storage,adb
835 stop adbd
836 write /sys/class/android_usb/android0/enable 0
837 write /sys/class/android_usb/android0/idVendor 05C6
838 write /sys/class/android_usb/android0/idProduct 9053
839 write /sys/class/android_usb/android0/f_diag/clients diag,diag_qsc
840 write /sys/class/android_usb/android0/f_serial/transports smd,tty,hsuart
841 write /sys/class/android_usb/android0/f_rmnet/transports smd,bam,hsuart,hsuart
842 write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
843 write /sys/class/android_usb/android0/enable 1
844 start adbd
845 setprop sys.usb.state ${sys.usb.config}
846
847# Fusion 2.2 composition with diag_qsc
848on property:sys.usb.config=diag,diag_qsc,serial_smd,serial_tty,serial_hsuart,rmnet_hsuart,mass_storage
849 write /sys/class/android_usb/android0/enable 0
850 write /sys/class/android_usb/android0/idVendor 05C6
851 write /sys/class/android_usb/android0/idProduct 9054
852 write /sys/class/android_usb/android0/f_diag/clients diag,diag_qsc
853 write /sys/class/android_usb/android0/f_serial/transports smd,tty,hsuart
854 write /sys/class/android_usb/android0/f_rmnet/transports smd,bam,hsuart,hsuart
855 write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
856 write /sys/class/android_usb/android0/enable 1
857 setprop sys.usb.state ${sys.usb.config}
858
859on property:sys.usb.tethering=true
860 write /sys/class/net/rndis0/queues/rx-0/rps_cpus ${sys.usb.rps_mask}
861
862#on property:sys.usb.config=rndis
863# setprop sys.usb.config rndis,${persist.sys.usb.config.extra}
864
865on property:sys.usb.config=rndis,none
866 write /sys/class/android_usb/android0/enable 0
867 write /sys/class/android_usb/android0/idVendor 05C6
868 write /sys/class/android_usb/android0/idProduct F00E
869 write /sys/class/android_usb/android0/functions rndis
870 write /sys/class/android_usb/android0/enable 1
871 setprop sys.usb.state rndis
872
873#on property:sys.usb.config=rndis,adb
874# stop adbd
875# setprop sys.usb.config rndis,${persist.sys.usb.config.extra},adb
876
877on property:sys.usb.config=rndis,none,adb
878 stop adbd
879 write /sys/class/android_usb/android0/enable 0
880 write /sys/class/android_usb/android0/idVendor 05C6
881 write /sys/class/android_usb/android0/idProduct 9024
882 write /sys/class/android_usb/android0/functions rndis,adb
883 write /sys/class/android_usb/android0/enable 1
884 start adbd
885 setprop sys.usb.state rndis,adb
886
887on property:sys.usb.config=rndis,diag
888 write /sys/class/android_usb/android0/enable 0
889 write /sys/class/android_usb/android0/idVendor 05C6
890 write /sys/class/android_usb/android0/idProduct 902C
891 write /sys/class/android_usb/android0/f_diag/clients diag
892 write /sys/class/android_usb/android0/functions rndis,diag
893 write /sys/class/android_usb/android0/enable 1
894 setprop sys.usb.state rndis
895
896on property:sys.usb.config=rndis,diag,adb
897 stop adbd
898 write /sys/class/android_usb/android0/enable 0
899 write /sys/class/android_usb/android0/idVendor 05C6
900 write /sys/class/android_usb/android0/idProduct 902D
901 write /sys/class/android_usb/android0/f_diag/clients diag
902 write /sys/class/android_usb/android0/functions rndis,diag,adb
903 write /sys/class/android_usb/android0/enable 1
904 start adbd
905 setprop sys.usb.state rndis,adb
906
907on property:sys.usb.config=rndis,serial_smd
908 write /sys/class/android_usb/android0/enable 0
909 write /sys/class/android_usb/android0/idVendor 05C6
910 write /sys/class/android_usb/android0/idProduct 90B3
911 write /sys/class/android_usb/android0/f_serial/transports smd
912 write /sys/class/android_usb/android0/functions rndis,serial
913 write /sys/class/android_usb/android0/enable 1
914 setprop sys.usb.state rndis
915
916on property:sys.usb.config=rndis,serial_smd,adb
917 stop adbd
918 write /sys/class/android_usb/android0/enable 0
919 write /sys/class/android_usb/android0/idVendor 05C6
920 write /sys/class/android_usb/android0/idProduct 90B4
921 write /sys/class/android_usb/android0/f_serial/transports smd
922 write /sys/class/android_usb/android0/functions rndis,serial,adb
923 write /sys/class/android_usb/android0/enable 1
924 start adbd
925 setprop sys.usb.state rndis,adb
926
927on property:sys.usb.config=rndis,serial_smd,diag
928 write /sys/class/android_usb/android0/enable 0
929 write /sys/class/android_usb/android0/idVendor 05C6
930 write /sys/class/android_usb/android0/idProduct 90B5
931 write /sys/class/android_usb/android0/f_diag/clients diag
932 write /sys/class/android_usb/android0/f_serial/transports smd
933 write /sys/class/android_usb/android0/functions rndis,serial,diag
934 write /sys/class/android_usb/android0/enable 1
935 setprop sys.usb.state rndis
936
937on property:sys.usb.config=rndis,serial_smd,diag,adb
938 stop adbd
939 write /sys/class/android_usb/android0/enable 0
940 write /sys/class/android_usb/android0/idVendor 05C6
941 write /sys/class/android_usb/android0/idProduct 90B6
942 write /sys/class/android_usb/android0/f_diag/clients diag
943 write /sys/class/android_usb/android0/f_serial/transports smd
944 write /sys/class/android_usb/android0/functions rndis,serial,diag,adb
945 write /sys/class/android_usb/android0/enable 1
946 start adbd
947 setprop sys.usb.state rndis,adb
948
949on property:sys.usb.config=rndis,diag,diag_mdm
950 write /sys/class/android_usb/android0/enable 0
951 write /sys/class/android_usb/android0/idVendor 05C6
952 write /sys/class/android_usb/android0/idProduct 9041
953 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
954 write /sys/class/android_usb/android0/functions rndis,diag
955 write /sys/class/android_usb/android0/enable 1
956 setprop sys.usb.state rndis
957
958on property:sys.usb.config=rndis,diag,diag_mdm,adb
959 stop adbd
960 write /sys/class/android_usb/android0/enable 0
961 write /sys/class/android_usb/android0/idVendor 05C6
962 write /sys/class/android_usb/android0/idProduct 9042
963 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
964 write /sys/class/android_usb/android0/functions rndis,diag,adb
965 write /sys/class/android_usb/android0/enable 1
966 start adbd
967 setprop sys.usb.state rndis,adb
968
969on property:sys.usb.config=rndis,diag,diag_mdm,diag_qsc
970 write /sys/class/android_usb/android0/enable 0
971 write /sys/class/android_usb/android0/idVendor 05C6
972 write /sys/class/android_usb/android0/idProduct 9086
973 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
974 write /sys/class/android_usb/android0/functions rndis,diag
975 write /sys/class/android_usb/android0/enable 1
976 setprop sys.usb.state rndis
977
978on property:sys.usb.config=rndis,diag,diag_mdm,diag_qsc,adb
979 stop adbd
980 write /sys/class/android_usb/android0/enable 0
981 write /sys/class/android_usb/android0/idVendor 05C6
982 write /sys/class/android_usb/android0/idProduct 9087
983 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
984 write /sys/class/android_usb/android0/functions rndis,diag,adb
985 write /sys/class/android_usb/android0/enable 1
986 start adbd
987 setprop sys.usb.state rndis,adb
988
989#on property:sys.usb.config=ptp
990# write /sys/class/android_usb/android0/enable 0
991# write /sys/class/android_usb/android0/idVendor 05C6
992# write /sys/class/android_usb/android0/idProduct 904D
993# write /sys/class/android_usb/android0/functions ptp
994# write /sys/class/android_usb/android0/enable 1
995# setprop sys.usb.state ${sys.usb.config}
996
997#on property:sys.usb.config=ptp,adb
998# stop adbd
999# write /sys/class/android_usb/android0/enable 0
1000# write /sys/class/android_usb/android0/idVendor 05C6
1001# write /sys/class/android_usb/android0/idProduct 904E
1002# write /sys/class/android_usb/android0/functions ptp,adb
1003# write /sys/class/android_usb/android0/enable 1
1004# start adbd
1005# setprop sys.usb.state ${sys.usb.config}
1006
1007#on property:sys.usb.config=mtp
1008# write /sys/class/android_usb/android0/enable 0
1009# write /sys/class/android_usb/android0/idVendor 05C6
1010# write /sys/class/android_usb/android0/idProduct F003
1011# write /sys/class/android_usb/android0/functions mtp
1012# write /sys/class/android_usb/android0/enable 1
1013# setprop sys.usb.state ${sys.usb.config}
1014
1015#on property:sys.usb.config=mtp,adb
1016# stop adbd
1017# write /sys/class/android_usb/android0/enable 0
1018# write /sys/class/android_usb/android0/idVendor 05C6
1019# write /sys/class/android_usb/android0/idProduct 9039
1020# write /sys/class/android_usb/android0/functions mtp,adb
1021# write /sys/class/android_usb/android0/enable 1
1022# start adbd
1023# setprop sys.usb.state ${sys.usb.config}
1024
1025on property:sys.usb.config=mtp,diag
1026 write /sys/class/android_usb/android0/enable 0
1027 write /sys/class/android_usb/android0/idVendor 05C6
1028 write /sys/class/android_usb/android0/idProduct 901B
1029 write /sys/class/android_usb/android0/f_diag/clients diag
1030 write /sys/class/android_usb/android0/functions mtp,diag
1031 write /sys/class/android_usb/android0/enable 1
1032 setprop sys.usb.state ${sys.usb.config}
1033
1034on property:sys.usb.config=mtp,diag,adb
1035 stop adbd
1036 write /sys/class/android_usb/android0/enable 0
1037 write /sys/class/android_usb/android0/idVendor 05C6
1038 write /sys/class/android_usb/android0/idProduct 903A
1039 write /sys/class/android_usb/android0/f_diag/clients diag
1040 write /sys/class/android_usb/android0/functions mtp,diag,adb
1041 write /sys/class/android_usb/android0/enable 1
1042 start adbd
1043 setprop sys.usb.state ${sys.usb.config}
1044
1045on property:sys.usb.config=mtp,diag,diag_mdm
1046 write /sys/class/android_usb/android0/enable 0
1047 write /sys/class/android_usb/android0/idVendor 05C6
1048 write /sys/class/android_usb/android0/idProduct 9040
1049 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
1050 write /sys/class/android_usb/android0/functions mtp,diag
1051 write /sys/class/android_usb/android0/enable 1
1052 setprop sys.usb.state ${sys.usb.config}
1053
1054on property:sys.usb.config=mtp,diag,diag_mdm,adb
1055 stop adbd
1056 write /sys/class/android_usb/android0/enable 0
1057 write /sys/class/android_usb/android0/idVendor 05C6
1058 write /sys/class/android_usb/android0/idProduct 903F
1059 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
1060 write /sys/class/android_usb/android0/functions mtp,diag,adb
1061 write /sys/class/android_usb/android0/enable 1
1062 start adbd
1063 setprop sys.usb.state ${sys.usb.config}
1064
1065on property:sys.usb.config=mtp,diag,diag_mdm,diag_qsc
1066 write /sys/class/android_usb/android0/enable 0
1067 write /sys/class/android_usb/android0/idVendor 05C6
1068 write /sys/class/android_usb/android0/idProduct 9088
1069 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
1070 write /sys/class/android_usb/android0/functions mtp,diag
1071 write /sys/class/android_usb/android0/enable 1
1072 setprop sys.usb.state ${sys.usb.config}
1073
1074on property:sys.usb.config=mtp,diag,diag_mdm,diag_qsc,adb
1075 stop adbd
1076 write /sys/class/android_usb/android0/enable 0
1077 write /sys/class/android_usb/android0/idVendor 05C6
1078 write /sys/class/android_usb/android0/idProduct 9089
1079 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
1080 write /sys/class/android_usb/android0/functions mtp,diag,adb
1081 write /sys/class/android_usb/android0/enable 1
1082 start adbd
1083 setprop sys.usb.state ${sys.usb.config}
1084
1085on property:sys.usb.config=diag,diag_mdm,ccid
1086 write /sys/class/android_usb/android0/enable 0
1087 write /sys/class/android_usb/android0/idVendor 05C6
1088 write /sys/class/android_usb/android0/idProduct 9045
1089 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
1090 write /sys/class/android_usb/android0/functions diag,ccid
1091 write /sys/class/android_usb/android0/enable 1
1092 setprop sys.usb.state ${sys.usb.config}
1093
1094on property:sys.usb.config=diag,diag_mdm,ccid,adb
1095 stop adbd
1096 write /sys/class/android_usb/android0/enable 0
1097 write /sys/class/android_usb/android0/idVendor 05C6
1098 write /sys/class/android_usb/android0/idProduct 9044
1099 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
1100 write /sys/class/android_usb/android0/functions diag,adb,ccid
1101 write /sys/class/android_usb/android0/enable 1
1102 start adbd
1103 setprop sys.usb.state ${sys.usb.config}
1104
1105#on property:sys.usb.config=mass_storage,adb
1106# stop adbd
1107# write /sys/class/android_usb/android0/enable 0
1108# write /sys/class/android_usb/android0/idVendor 05C6
1109# write /sys/class/android_usb/android0/idProduct 9015
1110# write /sys/class/android_usb/android0/functions adb,mass_storage
1111# write /sys/class/android_usb/android0/enable 1
1112# start adbd
1113# setprop sys.usb.state ${sys.usb.config}
1114
1115#Mass-storage only composition
1116#on property:sys.usb.config=mass_storage
1117# write /sys/class/android_usb/android0/enable 0
1118# write /sys/class/android_usb/android0/idVendor 05C6
1119# write /sys/class/android_usb/android0/idProduct F000
1120# write /sys/class/android_usb/android0/functions mass_storage
1121# write /sys/class/android_usb/android0/enable 1
1122# setprop sys.usb.state ${sys.usb.config}
1123
1124on property:sys.usb.config=diag,qdss
1125 write /sys/class/android_usb/android0/enable 0
1126 write /sys/class/android_usb/android0/idVendor 05C6
1127 write /sys/class/android_usb/android0/idProduct 904A
1128 write /sys/class/android_usb/android0/f_diag/clients diag
1129 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1130 write /sys/class/android_usb/android0/f_qdss/transports bam
1131 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1132 write /sys/class/android_usb/android0/functions diag,qdss
1133 write /sys/class/android_usb/android0/enable 1
1134 setprop sys.usb.state ${sys.usb.config}
1135
1136on property:sys.usb.config=diag,qdss,adb
1137 stop adbd
1138 write /sys/class/android_usb/android0/enable 0
1139 write /sys/class/android_usb/android0/idVendor 05C6
1140 write /sys/class/android_usb/android0/idProduct 9060
1141 write /sys/class/android_usb/android0/f_diag/clients diag
1142 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1143 write /sys/class/android_usb/android0/f_qdss/transports bam
1144 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1145 write /sys/class/android_usb/android0/functions diag,qdss,adb
1146 write /sys/class/android_usb/android0/enable 1
1147 start adbd
1148 setprop sys.usb.state ${sys.usb.config}
1149
1150on property:sys.usb.config=diag,diag_mdm,qdss
1151 write /sys/class/android_usb/android0/enable 0
1152 write /sys/class/android_usb/android0/idVendor 05C6
1153 write /sys/class/android_usb/android0/idProduct 9099
1154 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
1155 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1156 write /sys/class/android_usb/android0/f_qdss/transports bam
1157 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1158 write /sys/class/android_usb/android0/functions diag,qdss
1159 write /sys/class/android_usb/android0/enable 1
1160 setprop sys.usb.state ${sys.usb.config}
1161
1162on property:sys.usb.config=diag,diag_mdm,qdss,adb
1163 stop adbd
1164 write /sys/class/android_usb/android0/enable 0
1165 write /sys/class/android_usb/android0/idVendor 05C6
1166 write /sys/class/android_usb/android0/idProduct 9098
1167 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
1168 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1169 write /sys/class/android_usb/android0/f_qdss/transports bam
1170 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1171 write /sys/class/android_usb/android0/functions diag,qdss,adb
1172 write /sys/class/android_usb/android0/enable 1
1173 start adbd
1174 setprop sys.usb.state ${sys.usb.config}
1175
1176on property:sys.usb.config=diag,qdss,rmnet_bam
1177 write /sys/class/android_usb/android0/enable 0
1178 write /sys/class/android_usb/android0/idVendor 05C6
1179 write /sys/class/android_usb/android0/idProduct 9083
1180 write /sys/class/android_usb/android0/f_diag/clients diag
1181 write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
1182 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1183 write /sys/class/android_usb/android0/f_qdss/transports bam
1184 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1185 write /sys/class/android_usb/android0/functions diag,qdss,rmnet
1186 write /sys/class/android_usb/android0/enable 1
1187 setprop sys.usb.state ${sys.usb.config}
1188
1189on property:sys.usb.config=diag,qdss,rmnet_qti_bam
1190 write /sys/class/android_usb/android0/enable 0
1191 write /sys/class/android_usb/android0/idVendor 05C6
1192 write /sys/class/android_usb/android0/idProduct 9083
1193 write /sys/class/android_usb/android0/f_diag/clients diag
1194 write /sys/class/android_usb/android0/f_rmnet/transports qti,bam
1195 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1196 write /sys/class/android_usb/android0/f_qdss/transports bam
1197 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1198 write /sys/class/android_usb/android0/functions diag,qdss,rmnet
1199 write /sys/class/android_usb/android0/enable 1
1200 setprop sys.usb.state ${sys.usb.config}
1201
1202on property:sys.usb.config=diag,qdss,rmnet_bam,adb
1203 stop adbd
1204 write /sys/class/android_usb/android0/enable 0
1205 write /sys/class/android_usb/android0/idVendor 05C6
1206 write /sys/class/android_usb/android0/idProduct 9084
1207 write /sys/class/android_usb/android0/f_diag/clients diag
1208 write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
1209 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1210 write /sys/class/android_usb/android0/f_qdss/transports bam
1211 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1212 write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet
1213 write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1
1214 write /sys/class/android_usb/android0/enable 1
1215 start adbd
1216 setprop sys.usb.state ${sys.usb.config}
1217
1218on property:sys.usb.config=diag,qdss,rmnet_qti_bam,adb
1219 stop adbd
1220 write /sys/class/android_usb/android0/enable 0
1221 write /sys/class/android_usb/android0/idVendor 05C6
1222 write /sys/class/android_usb/android0/idProduct 9084
1223 write /sys/class/android_usb/android0/f_diag/clients diag
1224 write /sys/class/android_usb/android0/f_rmnet/transports qti,bam
1225 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1226 write /sys/class/android_usb/android0/f_qdss/transports bam
1227 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1228 write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet
1229 write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1
1230 write /sys/class/android_usb/android0/enable 1
1231 start adbd
1232 setprop sys.usb.state ${sys.usb.config}
1233
1234on property:sys.usb.config=diag,qdss,rmnet_ipa
1235 write /sys/class/android_usb/android0/enable 0
1236 write /sys/class/android_usb/android0/idVendor 05C6
1237 write /sys/class/android_usb/android0/idProduct 9083
1238 write /sys/class/android_usb/android0/f_diag/clients diag
1239 write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
1240 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1241 write /sys/class/android_usb/android0/f_qdss/transports bam
1242 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1243 write /sys/class/android_usb/android0/functions diag,qdss,rmnet
1244 write /sys/class/android_usb/android0/enable 1
1245 setprop sys.usb.state ${sys.usb.config}
1246
1247on property:sys.usb.config=diag,qdss,rmnet_ipa,adb
1248 stop adbd
1249 write /sys/class/android_usb/android0/enable 0
1250 write /sys/class/android_usb/android0/idVendor 05C6
1251 write /sys/class/android_usb/android0/idProduct 9084
1252 write /sys/class/android_usb/android0/f_diag/clients diag
1253 write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
1254 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1255 write /sys/class/android_usb/android0/f_qdss/transports bam
1256 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1257 write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet
1258 write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1
1259 write /sys/class/android_usb/android0/enable 1
1260 start adbd
1261 setprop sys.usb.state ${sys.usb.config}
1262
1263on property:sys.usb.config=diag,diag_mdm,qdss,rmnet_hsic
1264 write /sys/class/android_usb/android0/enable 0
1265 write /sys/class/android_usb/android0/idVendor 05C6
1266 write /sys/class/android_usb/android0/idProduct 909B
1267 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
1268 write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
1269 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1270 write /sys/class/android_usb/android0/f_qdss/transports bam
1271 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1272 write /sys/class/android_usb/android0/functions diag,qdss,rmnet
1273 write /sys/class/android_usb/android0/enable 1
1274 setprop sys.usb.state ${sys.usb.config}
1275
1276on property:sys.usb.config=diag,diag_mdm,qdss,rmnet_hsic,adb
1277 stop adbd
1278 write /sys/class/android_usb/android0/enable 0
1279 write /sys/class/android_usb/android0/idVendor 05C6
1280 write /sys/class/android_usb/android0/idProduct 909A
1281 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
1282 write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
1283 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1284 write /sys/class/android_usb/android0/f_qdss/transports bam
1285 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1286 write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet
1287 write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1
1288 write /sys/class/android_usb/android0/enable 1
1289 start adbd
1290 setprop sys.usb.state ${sys.usb.config}
1291
1292on property:sys.usb.config=diag,diag_mdm,qdss_apq,qdss_mdm,rmnet_hsic
1293 write /sys/class/android_usb/android0/enable 0
1294 write /sys/class/android_usb/android0/idVendor 05C6
1295 write /sys/class/android_usb/android0/idProduct 90A3
1296 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
1297 write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
1298 write /sys/class/android_usb/android0/f_qdss/debug_intf 0
1299 write /sys/class/android_usb/android0/f_qdss/transports bam,hsic
1300 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam,qdss_hsic
1301 write /sys/class/android_usb/android0/functions diag,qdss,rmnet
1302 write /sys/class/android_usb/android0/enable 1
1303 setprop sys.usb.state ${sys.usb.config}
1304
1305on property:sys.usb.config=diag,diag_mdm,qdss_apq,qdss_mdm,rmnet_hsic,adb
1306 stop adbd
1307 write /sys/class/android_usb/android0/enable 0
1308 write /sys/class/android_usb/android0/idVendor 05C6
1309 write /sys/class/android_usb/android0/idProduct 90A2
1310 write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
1311 write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
1312 write /sys/class/android_usb/android0/f_qdss/debug_intf 0
1313 write /sys/class/android_usb/android0/f_qdss/transports bam,hsic
1314 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam,qdss_hsic
1315 write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet
1316 write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1
1317 write /sys/class/android_usb/android0/enable 1
1318 start adbd
1319 setprop sys.usb.state ${sys.usb.config}
1320
1321on property:sys.usb.config=rndis,diag,qdss
1322 write /sys/class/android_usb/android0/enable 0
1323 write /sys/class/android_usb/android0/idVendor 05C6
1324 write /sys/class/android_usb/android0/idProduct 9081
1325 write /sys/class/android_usb/android0/f_diag/clients diag
1326 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1327 write /sys/class/android_usb/android0/f_qdss/transports bam
1328 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1329 write /sys/class/android_usb/android0/functions rndis,diag,qdss
1330 write /sys/class/android_usb/android0/enable 1
1331 setprop sys.usb.state ${sys.usb.config}
1332
1333on property:sys.usb.config=rndis,diag,qdss,adb
1334 stop adbd
1335 write /sys/class/android_usb/android0/enable 0
1336 write /sys/class/android_usb/android0/idVendor 05C6
1337 write /sys/class/android_usb/android0/idProduct 9082
1338 write /sys/class/android_usb/android0/f_diag/clients diag
1339 write /sys/class/android_usb/android0/f_qdss/debug_intf 1
1340 write /sys/class/android_usb/android0/f_qdss/transports bam
1341 write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
1342 write /sys/class/android_usb/android0/functions rndis,diag,qdss,adb
1343 write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1
1344 write /sys/class/android_usb/android0/enable 1
1345 start adbd
1346 setprop sys.usb.state ${sys.usb.config}
1347
1348#on property:sys.usb.config=ncm
1349# write /sys/class/android_usb/android0/enable 0
1350# write /sys/class/android_usb/android0/idVendor 0525
1351# write /sys/class/android_usb/android0/idProduct A4A1
1352# write /sys/class/android_usb/android0/functions ncm
1353# write /sys/class/android_usb/android0/enable 1
1354# setprop sys.usb.state ${sys.usb.config}
1355
1356#on property:sys.usb.config=ncm,adb
1357# stop adbd
1358# write /sys/class/android_usb/android0/enable 0
1359# write /sys/class/android_usb/android0/idVendor 05C6
1360# write /sys/class/android_usb/android0/idProduct 908C
1361# write /sys/class/android_usb/android0/functions ncm,adb
1362# write /sys/class/android_usb/android0/enable 1
1363# start adbd
1364# setprop sys.usb.state ${sys.usb.config}
1365
1366on property:sys.usb.config=charging
1367 write /sys/class/android_usb/android0/enable 0
1368 write /sys/class/android_usb/android0/idVendor 05C6
1369 write /sys/class/android_usb/android0/idProduct F006
1370 write /sys/class/android_usb/android0/functions charging
1371 write /sys/class/android_usb/android0/enable 1
1372 setprop sys.usb.state ${sys.usb.config}