Mention branches and keyring.
[releases.git] / ABI / testing / debugfs-driver-habanalabs
1 What:           /sys/kernel/debug/habanalabs/hl<n>/addr
2 Date:           Jan 2019
3 KernelVersion:  5.1
4 Contact:        ogabbay@kernel.org
5 Description:    Sets the device address to be used for read or write through
6                 PCI bar, or the device VA of a host mapped memory to be read or
7                 written directly from the host. The latter option is allowed
8                 only when the IOMMU is disabled.
9                 The acceptable value is a string that starts with "0x"
10
11 What:           /sys/kernel/debug/habanalabs/hl<n>/clk_gate
12 Date:           May 2020
13 KernelVersion:  5.8
14 Contact:        ogabbay@kernel.org
15 Description:    This setting is now deprecated as clock gating is handled solely by the f/w
16
17 What:           /sys/kernel/debug/habanalabs/hl<n>/command_buffers
18 Date:           Jan 2019
19 KernelVersion:  5.1
20 Contact:        ogabbay@kernel.org
21 Description:    Displays a list with information about the currently allocated
22                 command buffers
23
24 What:           /sys/kernel/debug/habanalabs/hl<n>/command_submission
25 Date:           Jan 2019
26 KernelVersion:  5.1
27 Contact:        ogabbay@kernel.org
28 Description:    Displays a list with information about the currently active
29                 command submissions
30
31 What:           /sys/kernel/debug/habanalabs/hl<n>/command_submission_jobs
32 Date:           Jan 2019
33 KernelVersion:  5.1
34 Contact:        ogabbay@kernel.org
35 Description:    Displays a list with detailed information about each JOB (CB) of
36                 each active command submission
37
38 What:           /sys/kernel/debug/habanalabs/hl<n>/data32
39 Date:           Jan 2019
40 KernelVersion:  5.1
41 Contact:        ogabbay@kernel.org
42 Description:    Allows the root user to read or write directly through the
43                 device's PCI bar. Writing to this file generates a write
44                 transaction while reading from the file generates a read
45                 transaction. This custom interface is needed (instead of using
46                 the generic Linux user-space PCI mapping) because the DDR bar
47                 is very small compared to the DDR memory and only the driver can
48                 move the bar before and after the transaction.
49
50                 If the IOMMU is disabled, it also allows the root user to read
51                 or write from the host a device VA of a host mapped memory
52
53 What:           /sys/kernel/debug/habanalabs/hl<n>/data64
54 Date:           Jan 2020
55 KernelVersion:  5.6
56 Contact:        ogabbay@kernel.org
57 Description:    Allows the root user to read or write 64 bit data directly
58                 through the device's PCI bar. Writing to this file generates a
59                 write transaction while reading from the file generates a read
60                 transaction. This custom interface is needed (instead of using
61                 the generic Linux user-space PCI mapping) because the DDR bar
62                 is very small compared to the DDR memory and only the driver can
63                 move the bar before and after the transaction.
64
65                 If the IOMMU is disabled, it also allows the root user to read
66                 or write from the host a device VA of a host mapped memory
67
68 What:           /sys/kernel/debug/habanalabs/hl<n>/data_dma
69 Date:           Apr 2021
70 KernelVersion:  5.13
71 Contact:        ogabbay@kernel.org
72 Description:    Allows the root user to read from the device's internal
73                 memory (DRAM/SRAM) through a DMA engine.
74                 This property is a binary blob that contains the result of the
75                 DMA transfer.
76                 This custom interface is needed (instead of using the generic
77                 Linux user-space PCI mapping) because the amount of internal
78                 memory is huge (>32GB) and reading it via the PCI bar will take
79                 a very long time.
80                 This interface doesn't support concurrency in the same device.
81                 In GAUDI and GOYA, this action can cause undefined behavior
82                 in case the it is done while the device is executing user
83                 workloads.
84                 Only supported on GAUDI at this stage.
85
86 What:           /sys/kernel/debug/habanalabs/hl<n>/device
87 Date:           Jan 2019
88 KernelVersion:  5.1
89 Contact:        ogabbay@kernel.org
90 Description:    Enables the root user to set the device to specific state.
91                 Valid values are "disable", "enable", "suspend", "resume".
92                 User can read this property to see the valid values
93
94 What:           /sys/kernel/debug/habanalabs/hl<n>/dma_size
95 Date:           Apr 2021
96 KernelVersion:  5.13
97 Contact:        ogabbay@kernel.org
98 Description:    Specify the size of the DMA transaction when using DMA to read
99                 from the device's internal memory. The value can not be larger
100                 than 128MB. Writing to this value initiates the DMA transfer.
101                 When the write is finished, the user can read the "data_dma"
102                 blob
103
104 What:           /sys/kernel/debug/habanalabs/hl<n>/dump_security_violations
105 Date:           Jan 2021
106 KernelVersion:  5.12
107 Contact:        ogabbay@kernel.org
108 Description:    Dumps all security violations to dmesg. This will also ack
109                 all security violations meanings those violations will not be
110                 dumped next time user calls this API
111
112 What:           /sys/kernel/debug/habanalabs/hl<n>/engines
113 Date:           Jul 2019
114 KernelVersion:  5.3
115 Contact:        ogabbay@kernel.org
116 Description:    Displays the status registers values of the device engines and
117                 their derived idle status
118
119 What:           /sys/kernel/debug/habanalabs/hl<n>/i2c_addr
120 Date:           Jan 2019
121 KernelVersion:  5.1
122 Contact:        ogabbay@kernel.org
123 Description:    Sets I2C device address for I2C transaction that is generated
124                 by the device's CPU
125
126 What:           /sys/kernel/debug/habanalabs/hl<n>/i2c_bus
127 Date:           Jan 2019
128 KernelVersion:  5.1
129 Contact:        ogabbay@kernel.org
130 Description:    Sets I2C bus address for I2C transaction that is generated by
131                 the device's CPU
132
133 What:           /sys/kernel/debug/habanalabs/hl<n>/i2c_data
134 Date:           Jan 2019
135 KernelVersion:  5.1
136 Contact:        ogabbay@kernel.org
137 Description:    Triggers an I2C transaction that is generated by the device's
138                 CPU. Writing to this file generates a write transaction while
139                 reading from the file generates a read transaction
140
141 What:           /sys/kernel/debug/habanalabs/hl<n>/i2c_len
142 Date:           Dec 2021
143 KernelVersion:  5.17
144 Contact:        obitton@habana.ai
145 Description:    Sets I2C length in bytes for I2C transaction that is generated by
146                 the device's CPU
147
148 What:           /sys/kernel/debug/habanalabs/hl<n>/i2c_reg
149 Date:           Jan 2019
150 KernelVersion:  5.1
151 Contact:        ogabbay@kernel.org
152 Description:    Sets I2C register id for I2C transaction that is generated by
153                 the device's CPU
154
155 What:           /sys/kernel/debug/habanalabs/hl<n>/led0
156 Date:           Jan 2019
157 KernelVersion:  5.1
158 Contact:        ogabbay@kernel.org
159 Description:    Sets the state of the first S/W led on the device
160
161 What:           /sys/kernel/debug/habanalabs/hl<n>/led1
162 Date:           Jan 2019
163 KernelVersion:  5.1
164 Contact:        ogabbay@kernel.org
165 Description:    Sets the state of the second S/W led on the device
166
167 What:           /sys/kernel/debug/habanalabs/hl<n>/led2
168 Date:           Jan 2019
169 KernelVersion:  5.1
170 Contact:        ogabbay@kernel.org
171 Description:    Sets the state of the third S/W led on the device
172
173 What:           /sys/kernel/debug/habanalabs/hl<n>/memory_scrub
174 Date:           May 2022
175 KernelVersion:  5.19
176 Contact:        dhirschfeld@habana.ai
177 Description:    Allows the root user to scrub the dram memory. The scrubbing
178                 value can be set using the debugfs file memory_scrub_val.
179
180 What:           /sys/kernel/debug/habanalabs/hl<n>/memory_scrub_val
181 Date:           May 2022
182 KernelVersion:  5.19
183 Contact:        dhirschfeld@habana.ai
184 Description:    The value to which the dram will be set to when the user
185                 scrubs the dram using 'memory_scrub' debugfs file
186
187 What:           /sys/kernel/debug/habanalabs/hl<n>/mmu
188 Date:           Jan 2019
189 KernelVersion:  5.1
190 Contact:        ogabbay@kernel.org
191 Description:    Displays the hop values and physical address for a given ASID
192                 and virtual address. The user should write the ASID and VA into
193                 the file and then read the file to get the result.
194                 e.g. to display info about VA 0x1000 for ASID 1 you need to do:
195                 echo "1 0x1000" > /sys/kernel/debug/habanalabs/hl0/mmu
196
197 What:           /sys/kernel/debug/habanalabs/hl<n>/mmu_error
198 Date:           Mar 2021
199 KernelVersion:  5.12
200 Contact:        fkassabri@habana.ai
201 Description:    Check and display page fault or access violation mmu errors for
202                 all MMUs specified in mmu_cap_mask.
203                 e.g. to display error info for MMU hw cap bit 9, you need to do:
204                 echo "0x200" > /sys/kernel/debug/habanalabs/hl0/mmu_error
205                 cat /sys/kernel/debug/habanalabs/hl0/mmu_error
206
207 What:           /sys/kernel/debug/habanalabs/hl<n>/monitor_dump
208 Date:           Mar 2022
209 KernelVersion:  5.19
210 Contact:        osharabi@habana.ai
211 Description:    Allows the root user to dump monitors status from the device's
212                 protected config space.
213                 This property is a binary blob that contains the result of the
214                 monitors registers dump.
215                 This custom interface is needed (instead of using the generic
216                 Linux user-space PCI mapping) because this space is protected
217                 and cannot be accessed using PCI read.
218                 This interface doesn't support concurrency in the same device.
219                 Only supported on GAUDI.
220
221 What:           /sys/kernel/debug/habanalabs/hl<n>/monitor_dump_trig
222 Date:           Mar 2022
223 KernelVersion:  5.19
224 Contact:        osharabi@habana.ai
225 Description:    Triggers dump of monitor data. The value to trigger the operation
226                 must be 1. Triggering the monitor dump operation initiates dump of
227                 current registers values of all monitors.
228                 When the write is finished, the user can read the "monitor_dump"
229                 blob
230
231 What:           /sys/kernel/debug/habanalabs/hl<n>/set_power_state
232 Date:           Jan 2019
233 KernelVersion:  5.1
234 Contact:        ogabbay@kernel.org
235 Description:    Sets the PCI power state. Valid values are "1" for D0 and "2"
236                 for D3Hot
237
238 What:           /sys/kernel/debug/habanalabs/hl<n>/skip_reset_on_timeout
239 Date:           Jun 2021
240 KernelVersion:  5.13
241 Contact:        ynudelman@habana.ai
242 Description:    Sets the skip reset on timeout option for the device. Value of
243                 "0" means device will be reset in case some CS has timed out,
244                 otherwise it will not be reset.
245
246 What:           /sys/kernel/debug/habanalabs/hl<n>/state_dump
247 Date:           Oct 2021
248 KernelVersion:  5.15
249 Contact:        ynudelman@habana.ai
250 Description:    Gets the state dump occurring on a CS timeout or failure.
251                 State dump is used for debug and is created each time in case of
252                 a problem in a CS execution, before reset.
253                 Reading from the node returns the newest state dump available.
254                 Writing an integer X discards X state dumps, so that the
255                 next read would return X+1-st newest state dump.
256
257 What:           /sys/kernel/debug/habanalabs/hl<n>/stop_on_err
258 Date:           Mar 2020
259 KernelVersion:  5.6
260 Contact:        ogabbay@kernel.org
261 Description:    Sets the stop-on_error option for the device engines. Value of
262                 "0" is for disable, otherwise enable.
263                 Relevant only for GOYA and GAUDI.
264
265 What:           /sys/kernel/debug/habanalabs/hl<n>/timeout_locked
266 Date:           Sep 2021
267 KernelVersion:  5.16
268 Contact:        obitton@habana.ai
269 Description:    Sets the command submission timeout value in seconds.
270
271 What:           /sys/kernel/debug/habanalabs/hl<n>/userptr
272 Date:           Jan 2019
273 KernelVersion:  5.1
274 Contact:        ogabbay@kernel.org
275 Description:    Displays a list with information about the currently user
276                 pointers (user virtual addresses) that are pinned and mapped
277                 to DMA addresses
278
279 What:           /sys/kernel/debug/habanalabs/hl<n>/userptr_lookup
280 Date:           Aug 2021
281 KernelVersion:  5.15
282 Contact:        ogabbay@kernel.org
283 Description:    Allows to search for specific user pointers (user virtual
284                 addresses) that are pinned and mapped to DMA addresses, and see
285                 their resolution to the specific dma address.
286
287 What:           /sys/kernel/debug/habanalabs/hl<n>/vm
288 Date:           Jan 2019
289 KernelVersion:  5.1
290 Contact:        ogabbay@kernel.org
291 Description:    Displays a list with information about all the active virtual
292                 address mappings per ASID and all user mappings of HW blocks