xref: /linux/Documentation/ABI/stable/sysfs-driver-dma-idxd (revision c5dbf04160005e07e8ca7232a7faa77ab1547ae0)
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/wq<m>.<n>/driver_name
274Date:		Sept 8, 2023
275KernelVersion:	6.7.0
276Contact:	dmaengine@vger.kernel.org
277Description:	Name of driver to be bounded to the wq.
278
279What:           /sys/bus/dsa/devices/engine<m>.<n>/group_id
280Date:           Oct 25, 2019
281KernelVersion:  5.6.0
282Contact:        dmaengine@vger.kernel.org
283Description:    The group that this engine belongs to.
284
285What:		/sys/bus/dsa/devices/group<m>.<n>/use_read_buffer_limit
286Date:		Dec 10, 2021
287KernelVersion:	5.17.0
288Contact:	dmaengine@vger.kernel.org
289Description:	Enable the use of global read buffer limit for the group. See DSA
290		spec v1.2 9.2.18 GRPCFG Use Global Read Buffer Limit.
291		It's not visible when the device does not support Read Buffer
292		allocation control.
293
294What:		/sys/bus/dsa/devices/group<m>.<n>/read_buffers_allowed
295Date:		Dec 10, 2021
296KernelVersion:	5.17.0
297Contact:	dmaengine@vger.kernel.org
298Description:	Indicates max number of read buffers that may be in use at one time
299		by all engines in the group. See DSA spec v1.2 9.2.18 GRPCFG Read
300		Buffers Allowed.
301		It's not visible when the device does not support Read Buffer
302		allocation control.
303
304What:		/sys/bus/dsa/devices/group<m>.<n>/read_buffers_reserved
305Date:		Dec 10, 2021
306KernelVersion:	5.17.0
307Contact:	dmaengine@vger.kernel.org
308Description:	Indicates the number of Read Buffers reserved for the use of
309		engines in the group. See DSA spec v1.2 9.2.18 GRPCFG Read Buffers
310		Reserved.
311		It's not visible when the device does not support Read Buffer
312		allocation control.
313
314What:		/sys/bus/dsa/devices/group<m>.<n>/desc_progress_limit
315Date:		Sept 14, 2022
316KernelVersion:	6.0.0
317Contact:	dmaengine@vger.kernel.org
318Description:	Allows control of the number of work descriptors that can be
319		concurrently processed by an engine in the group as a fraction
320		of the Maximum Work Descriptors in Progress value specified in
321		the ENGCAP register. The acceptable values are 0 (default),
322		1 (1/2 of max value), 2 (1/4 of the max value), and 3 (1/8 of
323		the max value). It's visible only on platforms that support
324		the capability.
325
326What:		/sys/bus/dsa/devices/group<m>.<n>/batch_progress_limit
327Date:		Sept 14, 2022
328KernelVersion:	6.0.0
329Contact:	dmaengine@vger.kernel.org
330Description:	Allows control of the number of batch descriptors that can be
331		concurrently processed by an engine in the group as a fraction
332		of the Maximum Batch Descriptors in Progress value specified in
333		the ENGCAP register. The acceptable values are 0 (default),
334		1 (1/2 of max value), 2 (1/4 of the max value), and 3 (1/8 of
335		the max value). It's visible only on platforms that support
336		the capability.
337
338What:		/sys/bus/dsa/devices/wq<m>.<n>/dsa<x>\!wq<m>.<n>/file<y>/cr_faults
339Date:		Sept 14, 2022
340KernelVersion:	6.4.0
341Contact:	dmaengine@vger.kernel.org
342Description:	Show the number of Completion Record (CR) faults this application
343		has caused.
344
345What:		/sys/bus/dsa/devices/wq<m>.<n>/dsa<x>\!wq<m>.<n>/file<y>/cr_fault_failures
346Date:		Sept 14, 2022
347KernelVersion:	6.4.0
348Contact:	dmaengine@vger.kernel.org
349Description:	Show the number of Completion Record (CR) faults failures that this
350		application has caused. The failure counter is incremented when the
351		driver cannot fault in the address for the CR. Typically this is caused
352		by a bad address programmed in the submitted descriptor or a malicious
353		submitter is using bad CR address on purpose.
354
355What:		/sys/bus/dsa/devices/wq<m>.<n>/dsa<x>\!wq<m>.<n>/file<y>/pid
356Date:		Sept 14, 2022
357KernelVersion:	6.4.0
358Contact:	dmaengine@vger.kernel.org
359Description:	Show the process id of the application that opened the file. This is
360		helpful information for a monitor daemon that wants to kill the
361		application that opened the file.
362