xref: /OK3568_Linux_fs/kernel/Documentation/ABI/testing/configfs-usb-gadget (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunWhat:		/config/usb-gadget
2*4882a593SmuzhiyunDate:		Jun 2013
3*4882a593SmuzhiyunKernelVersion:	3.11
4*4882a593SmuzhiyunDescription:
5*4882a593Smuzhiyun		This group contains sub-groups corresponding to created
6*4882a593Smuzhiyun		USB gadgets.
7*4882a593Smuzhiyun
8*4882a593SmuzhiyunWhat:		/config/usb-gadget/gadget
9*4882a593SmuzhiyunDate:		Jun 2013
10*4882a593SmuzhiyunKernelVersion:	3.11
11*4882a593SmuzhiyunDescription:
12*4882a593Smuzhiyun
13*4882a593Smuzhiyun		The attributes of a gadget:
14*4882a593Smuzhiyun
15*4882a593Smuzhiyun		================  ============================================
16*4882a593Smuzhiyun		UDC		  bind a gadget to UDC/unbind a gadget;
17*4882a593Smuzhiyun				  write UDC's name found in /sys/class/udc/*
18*4882a593Smuzhiyun				  to bind a gadget, empty string "" to unbind.
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun		max_speed	  maximum speed the driver supports. Valid
21*4882a593Smuzhiyun				  names are super-speed-plus, super-speed,
22*4882a593Smuzhiyun				  high-speed, full-speed, and low-speed.
23*4882a593Smuzhiyun
24*4882a593Smuzhiyun		bDeviceClass	  USB device class code
25*4882a593Smuzhiyun		bDeviceSubClass	  USB device subclass code
26*4882a593Smuzhiyun		bDeviceProtocol	  USB device protocol code
27*4882a593Smuzhiyun		bMaxPacketSize0	  maximum endpoint 0 packet size
28*4882a593Smuzhiyun		bcdDevice	  bcd device release number
29*4882a593Smuzhiyun		bcdUSB		  bcd USB specification version number
30*4882a593Smuzhiyun		idProduct	  product ID
31*4882a593Smuzhiyun		idVendor	  vendor ID
32*4882a593Smuzhiyun		================  ============================================
33*4882a593Smuzhiyun
34*4882a593SmuzhiyunWhat:		/config/usb-gadget/gadget/configs
35*4882a593SmuzhiyunDate:		Jun 2013
36*4882a593SmuzhiyunKernelVersion:	3.11
37*4882a593SmuzhiyunDescription:
38*4882a593Smuzhiyun		This group contains a USB gadget's configurations
39*4882a593Smuzhiyun
40*4882a593SmuzhiyunWhat:		/config/usb-gadget/gadget/configs/config
41*4882a593SmuzhiyunDate:		Jun 2013
42*4882a593SmuzhiyunKernelVersion:	3.11
43*4882a593SmuzhiyunDescription:
44*4882a593Smuzhiyun		The attributes of a configuration:
45*4882a593Smuzhiyun
46*4882a593Smuzhiyun		================  ======================================
47*4882a593Smuzhiyun		bmAttributes	  configuration characteristics
48*4882a593Smuzhiyun		MaxPower	  maximum power consumption from the bus
49*4882a593Smuzhiyun		================  ======================================
50*4882a593Smuzhiyun
51*4882a593SmuzhiyunWhat:		/config/usb-gadget/gadget/configs/config/strings
52*4882a593SmuzhiyunDate:		Jun 2013
53*4882a593SmuzhiyunKernelVersion:	3.11
54*4882a593SmuzhiyunDescription:
55*4882a593Smuzhiyun		This group contains subdirectories for language-specific
56*4882a593Smuzhiyun		strings for this configuration.
57*4882a593Smuzhiyun
58*4882a593SmuzhiyunWhat:		/config/usb-gadget/gadget/configs/config/strings/language
59*4882a593SmuzhiyunDate:		Jun 2013
60*4882a593SmuzhiyunKernelVersion:	3.11
61*4882a593SmuzhiyunDescription:
62*4882a593Smuzhiyun		The attributes:
63*4882a593Smuzhiyun
64*4882a593Smuzhiyun		================  =========================
65*4882a593Smuzhiyun		configuration	  configuration description
66*4882a593Smuzhiyun		================  =========================
67*4882a593Smuzhiyun
68*4882a593Smuzhiyun
69*4882a593SmuzhiyunWhat:		/config/usb-gadget/gadget/functions
70*4882a593SmuzhiyunDate:		Jun 2013
71*4882a593SmuzhiyunKernelVersion:	3.11
72*4882a593SmuzhiyunDescription:
73*4882a593Smuzhiyun		This group contains functions available to this USB gadget.
74*4882a593Smuzhiyun
75*4882a593SmuzhiyunWhat:		/config/usb-gadget/gadget/functions/<func>.<inst>/interface.<n>
76*4882a593SmuzhiyunDate:		May 2014
77*4882a593SmuzhiyunKernelVersion:	3.16
78*4882a593SmuzhiyunDescription:
79*4882a593Smuzhiyun		This group contains "Feature Descriptors" specific for one
80*4882a593Smuzhiyun		gadget's USB interface or one interface group described
81*4882a593Smuzhiyun		by an IAD.
82*4882a593Smuzhiyun
83*4882a593Smuzhiyun		The attributes:
84*4882a593Smuzhiyun
85*4882a593Smuzhiyun		=================	=====================================
86*4882a593Smuzhiyun		compatible_id		8-byte string for "Compatible ID"
87*4882a593Smuzhiyun		sub_compatible_id	8-byte string for "Sub Compatible ID"
88*4882a593Smuzhiyun		=================	=====================================
89*4882a593Smuzhiyun
90*4882a593SmuzhiyunWhat:		/config/usb-gadget/gadget/functions/<func>.<inst>/interface.<n>/<property>
91*4882a593SmuzhiyunDate:		May 2014
92*4882a593SmuzhiyunKernelVersion:	3.16
93*4882a593SmuzhiyunDescription:
94*4882a593Smuzhiyun		This group contains "Extended Property Descriptors" specific for one
95*4882a593Smuzhiyun		gadget's USB interface or one interface group described
96*4882a593Smuzhiyun		by an IAD.
97*4882a593Smuzhiyun
98*4882a593Smuzhiyun		The attributes:
99*4882a593Smuzhiyun
100*4882a593Smuzhiyun		=====		===============================================
101*4882a593Smuzhiyun		type		value 1..7 for interpreting the data
102*4882a593Smuzhiyun
103*4882a593Smuzhiyun				- 1: unicode string
104*4882a593Smuzhiyun				- 2: unicode string with environment variable
105*4882a593Smuzhiyun				- 3: binary
106*4882a593Smuzhiyun				- 4: little-endian 32-bit
107*4882a593Smuzhiyun				- 5: big-endian 32-bit
108*4882a593Smuzhiyun				- 6: unicode string with a symbolic link
109*4882a593Smuzhiyun				- 7: multiple unicode strings
110*4882a593Smuzhiyun		data		blob of data to be interpreted depending on
111*4882a593Smuzhiyun				type
112*4882a593Smuzhiyun		=====		===============================================
113*4882a593Smuzhiyun
114*4882a593SmuzhiyunWhat:		/config/usb-gadget/gadget/strings
115*4882a593SmuzhiyunDate:		Jun 2013
116*4882a593SmuzhiyunKernelVersion:	3.11
117*4882a593SmuzhiyunDescription:
118*4882a593Smuzhiyun		This group contains subdirectories for language-specific
119*4882a593Smuzhiyun		strings for this gadget.
120*4882a593Smuzhiyun
121*4882a593SmuzhiyunWhat:		/config/usb-gadget/gadget/strings/language
122*4882a593SmuzhiyunDate:		Jun 2013
123*4882a593SmuzhiyunKernelVersion:	3.11
124*4882a593SmuzhiyunDescription:
125*4882a593Smuzhiyun		The attributes:
126*4882a593Smuzhiyun
127*4882a593Smuzhiyun		============	=================================
128*4882a593Smuzhiyun		serialnumber	gadget's serial number (string)
129*4882a593Smuzhiyun		product		gadget's product description
130*4882a593Smuzhiyun		manufacturer	gadget's manufacturer description
131*4882a593Smuzhiyun		============	=================================
132*4882a593Smuzhiyun
133*4882a593SmuzhiyunWhat:		/config/usb-gadget/gadget/os_desc
134*4882a593SmuzhiyunDate:		May 2014
135*4882a593SmuzhiyunKernelVersion:	3.16
136*4882a593SmuzhiyunDescription:
137*4882a593Smuzhiyun		This group contains "OS String" extension handling attributes.
138*4882a593Smuzhiyun
139*4882a593Smuzhiyun		=============	===============================================
140*4882a593Smuzhiyun		use		flag turning "OS Desctiptors" support on/off
141*4882a593Smuzhiyun		b_vendor_code	one-byte value used for custom per-device and
142*4882a593Smuzhiyun				per-interface requests
143*4882a593Smuzhiyun		qw_sign		an identifier to be reported as "OS String"
144*4882a593Smuzhiyun				proper
145*4882a593Smuzhiyun		=============	===============================================
146