xref: /linux/Documentation/ABI/stable/sysfs-driver-dma-idxd (revision 34dc1baba215b826e454b8d19e4f24adbeb7d00d)
1What:		/sys/bus/dsa/devices/dsa<m>/version
2Date:		Apr 15, 2020
3KernelVersion:	5.8.0
4Contact:	dmaengine@vger.kernel.org
5Description:	The hardware version number.
6
7What:           /sys/bus/dsa/devices/dsa<m>/cdev_major
8Date:           Oct 25, 2019
9KernelVersion:  5.6.0
10Contact:        dmaengine@vger.kernel.org
11Description:	The major number that the character device driver assigned to
12		this device.
13
14What:           /sys/bus/dsa/devices/dsa<m>/errors
15Date:           Oct 25, 2019
16KernelVersion:  5.6.0
17Contact:        dmaengine@vger.kernel.org
18Description:    The error information for this device.
19
20What:           /sys/bus/dsa/devices/dsa<m>/max_batch_size
21Date:           Oct 25, 2019
22KernelVersion:  5.6.0
23Contact:        dmaengine@vger.kernel.org
24Description:    The largest number of work descriptors in a batch.
25                It's not visible when the device does not support batch.
26
27What:           /sys/bus/dsa/devices/dsa<m>/max_work_queues_size
28Date:           Oct 25, 2019
29KernelVersion:  5.6.0
30Contact:        dmaengine@vger.kernel.org
31Description:    The maximum work queue size supported by this device.
32
33What:           /sys/bus/dsa/devices/dsa<m>/max_engines
34Date:           Oct 25, 2019
35KernelVersion:  5.6.0
36Contact:        dmaengine@vger.kernel.org
37Description:    The maximum number of engines supported by this device.
38
39What:           /sys/bus/dsa/devices/dsa<m>/max_groups
40Date:           Oct 25, 2019
41KernelVersion:  5.6.0
42Contact:        dmaengine@vger.kernel.org
43Description:    The maximum number of groups can be created under this device.
44
45What:           /sys/bus/dsa/devices/dsa<m>/max_read_buffers
46Date:           Dec 10, 2021
47KernelVersion:  5.17.0
48Contact:        dmaengine@vger.kernel.org
49Description:    The total number of read buffers supported by this device.
50		The read buffers represent resources within the DSA
51		implementation, and these resources are allocated by engines to
52		support operations. See DSA spec v1.2 9.2.4 Total Read Buffers.
53		It's not visible when the device does not support Read Buffer
54		allocation control.
55
56What:           /sys/bus/dsa/devices/dsa<m>/max_transfer_size
57Date:           Oct 25, 2019
58KernelVersion:  5.6.0
59Contact:        dmaengine@vger.kernel.org
60Description:    The number of bytes to be read from the source address to
61		perform the operation. The maximum transfer size is dependent on
62		the workqueue the descriptor was submitted to.
63
64What:           /sys/bus/dsa/devices/dsa<m>/max_work_queues
65Date:           Oct 25, 2019
66KernelVersion:  5.6.0
67Contact:        dmaengine@vger.kernel.org
68Description:    The maximum work queue number that this device supports.
69
70What:           /sys/bus/dsa/devices/dsa<m>/numa_node
71Date:           Oct 25, 2019
72KernelVersion:  5.6.0
73Contact:        dmaengine@vger.kernel.org
74Description:    The numa node number for this device.
75
76What:           /sys/bus/dsa/devices/dsa<m>/op_cap
77Date:           Oct 25, 2019
78KernelVersion:  5.6.0
79Contact:        dmaengine@vger.kernel.org
80Description:    The operation capability bit mask specify the operation types
81		supported by the this device.
82
83What:		/sys/bus/dsa/devices/dsa<m>/pasid_enabled
84Date:		Oct 27, 2020
85KernelVersion:	5.11.0
86Contact:	dmaengine@vger.kernel.org
87Description:	To indicate if user PASID (process address space identifier) is
88		enabled or not for this device.
89
90What:           /sys/bus/dsa/devices/dsa<m>/state
91Date:           Oct 25, 2019
92KernelVersion:  5.6.0
93Contact:        dmaengine@vger.kernel.org
94Description:    The state information of this device. It can be either enabled
95		or disabled.
96
97What:           /sys/bus/dsa/devices/dsa<m>/group<m>.<n>
98Date:           Oct 25, 2019
99KernelVersion:  5.6.0
100Contact:        dmaengine@vger.kernel.org
101Description:    The assigned group under this device.
102
103What:           /sys/bus/dsa/devices/dsa<m>/engine<m>.<n>
104Date:           Oct 25, 2019
105KernelVersion:  5.6.0
106Contact:        dmaengine@vger.kernel.org
107Description:    The assigned engine under this device.
108
109What:           /sys/bus/dsa/devices/dsa<m>/wq<m>.<n>
110Date:           Oct 25, 2019
111KernelVersion:  5.6.0
112Contact:        dmaengine@vger.kernel.org
113Description:    The assigned work queue under this device.
114
115What:           /sys/bus/dsa/devices/dsa<m>/configurable
116Date:           Oct 25, 2019
117KernelVersion:  5.6.0
118Contact:        dmaengine@vger.kernel.org
119Description:    To indicate if this device is configurable or not.
120
121What:           /sys/bus/dsa/devices/dsa<m>/read_buffer_limit
122Date:           Dec 10, 2021
123KernelVersion:  5.17.0
124Contact:        dmaengine@vger.kernel.org
125Description:    The maximum number of read buffers that may be in use at
126		one time by operations that access low bandwidth memory in the
127		device. See DSA spec v1.2 9.2.8 GENCFG on Global Read Buffer Limit.
128		It's not visible when the device does not support Read Buffer
129		allocation control.
130
131What:		/sys/bus/dsa/devices/dsa<m>/cmd_status
132Date:		Aug 28, 2020
133KernelVersion:	5.10.0
134Contact:	dmaengine@vger.kernel.org
135Description:	The last executed device administrative command's status/error.
136		Also last configuration error overloaded.
137		Writing to it will clear the status.
138
139What:		/sys/bus/dsa/devices/dsa<m>/iaa_cap
140Date:		Sept 14, 2022
141KernelVersion: 6.0.0
142Contact:	dmaengine@vger.kernel.org
143Description:	IAA (IAX) capability mask. Exported to user space for application
144		consumption. This attribute should only be visible on IAA devices
145		that are version 2 or later.
146
147What:		/sys/bus/dsa/devices/dsa<m>/event_log_size
148Date:		Sept 14, 2022
149KernelVersion: 6.4.0
150Contact:	dmaengine@vger.kernel.org
151Description:	The event log size to be configured. Default is 64 entries and
152		occupies 4k size if the evl entry is 64 bytes. It's visible
153		only on platforms that support the capability.
154
155What:		/sys/bus/dsa/devices/wq<m>.<n>/block_on_fault
156Date:		Oct 27, 2020
157KernelVersion:	5.11.0
158Contact:	dmaengine@vger.kernel.org
159Description:	To indicate block on fault is allowed or not for the work queue
160		to support on demand paging.
161
162What:           /sys/bus/dsa/devices/wq<m>.<n>/group_id
163Date:           Oct 25, 2019
164KernelVersion:  5.6.0
165Contact:        dmaengine@vger.kernel.org
166Description:    The group id that this work queue belongs to.
167
168What:           /sys/bus/dsa/devices/wq<m>.<n>/size
169Date:           Oct 25, 2019
170KernelVersion:  5.6.0
171Contact:        dmaengine@vger.kernel.org
172Description:    The work queue size for this work queue.
173
174What:           /sys/bus/dsa/devices/wq<m>.<n>/type
175Date:           Oct 25, 2019
176KernelVersion:  5.6.0
177Contact:        dmaengine@vger.kernel.org
178Description:    The type of this work queue, it can be "kernel" type for work
179		queue usages in the kernel space or "user" type for work queue
180		usages by applications in user space.
181
182What:           /sys/bus/dsa/devices/wq<m>.<n>/cdev_minor
183Date:           Oct 25, 2019
184KernelVersion:  5.6.0
185Contact:        dmaengine@vger.kernel.org
186Description:    The minor number assigned to this work queue by the character
187		device driver.
188
189What:           /sys/bus/dsa/devices/wq<m>.<n>/mode
190Date:           Oct 25, 2019
191KernelVersion:  5.6.0
192Contact:        dmaengine@vger.kernel.org
193Description:    The work queue mode type for this work queue.
194
195What:           /sys/bus/dsa/devices/wq<m>.<n>/priority
196Date:           Oct 25, 2019
197KernelVersion:  5.6.0
198Contact:        dmaengine@vger.kernel.org
199Description:    The priority value of this work queue, it is a value relative to
200		other work queue in the same group to control quality of service
201		for dispatching work from multiple workqueues in the same group.
202
203What:           /sys/bus/dsa/devices/wq<m>.<n>/state
204Date:           Oct 25, 2019
205KernelVersion:  5.6.0
206Contact:        dmaengine@vger.kernel.org
207Description:    The current state of the work queue.
208
209What:           /sys/bus/dsa/devices/wq<m>.<n>/threshold
210Date:           Oct 25, 2019
211KernelVersion:  5.6.0
212Contact:        dmaengine@vger.kernel.org
213Description:    The number of entries in this work queue that may be filled
214		via a limited portal.
215
216What:		/sys/bus/dsa/devices/wq<m>.<n>/max_transfer_size
217Date:		Aug 28, 2020
218KernelVersion:	5.10.0
219Contact:	dmaengine@vger.kernel.org
220Description:	The max transfer sized for this workqueue. Cannot exceed device
221		max transfer size. Configurable parameter.
222
223What:		/sys/bus/dsa/devices/wq<m>.<n>/max_batch_size
224Date:		Aug 28, 2020
225KernelVersion:	5.10.0
226Contact:	dmaengine@vger.kernel.org
227Description:	The max batch size for this workqueue. Cannot exceed device
228		max batch size. Configurable parameter.
229		It's not visible when the device does not support batch.
230
231What:		/sys/bus/dsa/devices/wq<m>.<n>/ats_disable
232Date:		Nov 13, 2020
233KernelVersion:	5.11.0
234Contact:	dmaengine@vger.kernel.org
235Description:	Indicate whether ATS disable is turned on for the workqueue.
236		0 indicates ATS is on, and 1 indicates ATS is off for the workqueue.
237
238What:		/sys/bus/dsa/devices/wq<m>.<n>/prs_disable
239Date:		Sept 14, 2022
240KernelVersion: 6.4.0
241Contact:	dmaengine@vger.kernel.org
242Description:	Controls whether PRS disable is turned on for the workqueue.
243		0 indicates PRS is on, and 1 indicates PRS is off for the
244		workqueue. This option overrides block_on_fault attribute
245		if set. It's visible only on platforms that support the
246		capability.
247
248What:		/sys/bus/dsa/devices/wq<m>.<n>/occupancy
249Date		May 25, 2021
250KernelVersion:	5.14.0
251Contact:	dmaengine@vger.kernel.org
252Description:	Show the current number of entries in this WQ if WQ Occupancy
253		Support bit WQ capabilities is 1.
254
255What:		/sys/bus/dsa/devices/wq<m>.<n>/enqcmds_retries
256Date		Oct 29, 2021
257KernelVersion:	5.17.0
258Contact:	dmaengine@vger.kernel.org
259Description:	Indicate the number of retires for an enqcmds submission on a sharedwq.
260		A max value to set attribute is capped at 64.
261
262What:		/sys/bus/dsa/devices/wq<m>.<n>/op_config
263Date:		Sept 14, 2022
264KernelVersion:	6.0.0
265Contact:	dmaengine@vger.kernel.org
266Description:	Shows the operation capability bits displayed in bitmap format
267		presented by %*pb printk() output format specifier.
268		The attribute can be configured when the WQ is disabled in
269		order to configure the WQ to accept specific bits that
270		correlates to the operations allowed. It's visible only
271		on platforms that support the capability.
272
273What:           /sys/bus/dsa/devices/engine<m>.<n>/group_id
274Date:           Oct 25, 2019
275KernelVersion:  5.6.0
276Contact:        dmaengine@vger.kernel.org
277Description:    The group that this engine belongs to.
278
279What:		/sys/bus/dsa/devices/group<m>.<n>/use_read_buffer_limit
280Date:		Dec 10, 2021
281KernelVersion:	5.17.0
282Contact:	dmaengine@vger.kernel.org
283Description:	Enable the use of global read buffer limit for the group. See DSA
284		spec v1.2 9.2.18 GRPCFG Use Global Read Buffer Limit.
285		It's not visible when the device does not support Read Buffer
286		allocation control.
287
288What:		/sys/bus/dsa/devices/group<m>.<n>/read_buffers_allowed
289Date:		Dec 10, 2021
290KernelVersion:	5.17.0
291Contact:	dmaengine@vger.kernel.org
292Description:	Indicates max number of read buffers that may be in use at one time
293		by all engines in the group. See DSA spec v1.2 9.2.18 GRPCFG Read
294		Buffers Allowed.
295		It's not visible when the device does not support Read Buffer
296		allocation control.
297
298What:		/sys/bus/dsa/devices/group<m>.<n>/read_buffers_reserved
299Date:		Dec 10, 2021
300KernelVersion:	5.17.0
301Contact:	dmaengine@vger.kernel.org
302Description:	Indicates the number of Read Buffers reserved for the use of
303		engines in the group. See DSA spec v1.2 9.2.18 GRPCFG Read Buffers
304		Reserved.
305		It's not visible when the device does not support Read Buffer
306		allocation control.
307
308What:		/sys/bus/dsa/devices/group<m>.<n>/desc_progress_limit
309Date:		Sept 14, 2022
310KernelVersion:	6.0.0
311Contact:	dmaengine@vger.kernel.org
312Description:	Allows control of the number of work descriptors that can be
313		concurrently processed by an engine in the group as a fraction
314		of the Maximum Work Descriptors in Progress value specified in
315		the ENGCAP register. The acceptable values are 0 (default),
316		1 (1/2 of max value), 2 (1/4 of the max value), and 3 (1/8 of
317		the max value). It's visible only on platforms that support
318		the capability.
319
320What:		/sys/bus/dsa/devices/group<m>.<n>/batch_progress_limit
321Date:		Sept 14, 2022
322KernelVersion:	6.0.0
323Contact:	dmaengine@vger.kernel.org
324Description:	Allows control of the number of batch descriptors that can be
325		concurrently processed by an engine in the group as a fraction
326		of the Maximum Batch Descriptors in Progress value specified in
327		the ENGCAP register. The acceptable values are 0 (default),
328		1 (1/2 of max value), 2 (1/4 of the max value), and 3 (1/8 of
329		the max value). It's visible only on platforms that support
330		the capability.
331
332What:		/sys/bus/dsa/devices/wq<m>.<n>/dsa<x>\!wq<m>.<n>/file<y>/cr_faults
333Date:		Sept 14, 2022
334KernelVersion:	6.4.0
335Contact:	dmaengine@vger.kernel.org
336Description:	Show the number of Completion Record (CR) faults this application
337		has caused.
338
339What:		/sys/bus/dsa/devices/wq<m>.<n>/dsa<x>\!wq<m>.<n>/file<y>/cr_fault_failures
340Date:		Sept 14, 2022
341KernelVersion:	6.4.0
342Contact:	dmaengine@vger.kernel.org
343Description:	Show the number of Completion Record (CR) faults failures that this
344		application has caused. The failure counter is incremented when the
345		driver cannot fault in the address for the CR. Typically this is caused
346		by a bad address programmed in the submitted descriptor or a malicious
347		submitter is using bad CR address on purpose.
348
349What:		/sys/bus/dsa/devices/wq<m>.<n>/dsa<x>\!wq<m>.<n>/file<y>/pid
350Date:		Sept 14, 2022
351KernelVersion:	6.4.0
352Contact:	dmaengine@vger.kernel.org
353Description:	Show the process id of the application that opened the file. This is
354		helpful information for a monitor daemon that wants to kill the
355		application that opened the file.
356