258 lines
11 KiB
Plaintext
258 lines
11 KiB
Plaintext
What: /sys/kernel/debug/habanalabs/hl<n>/addr
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Sets the device address to be used for read or write through
|
|
PCI bar, or the device VA of a host mapped memory to be read or
|
|
written directly from the host. The latter option is allowed
|
|
only when the IOMMU is disabled.
|
|
The acceptable value is a string that starts with "0x"
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/clk_gate
|
|
Date: May 2020
|
|
KernelVersion: 5.8
|
|
Contact: ogabbay@kernel.org
|
|
Description: Allow the root user to disable/enable in runtime the clock
|
|
gating mechanism in Gaudi. Due to how Gaudi is built, the
|
|
clock gating needs to be disabled in order to access the
|
|
registers of the TPC and MME engines. This is sometimes needed
|
|
during debug by the user and hence the user needs this option.
|
|
The user can supply a bitmask value, each bit represents
|
|
a different engine to disable/enable its clock gating feature.
|
|
The bitmask is composed of 20 bits:
|
|
|
|
======= ============
|
|
0 - 7 DMA channels
|
|
8 - 11 MME engines
|
|
12 - 19 TPC engines
|
|
======= ============
|
|
|
|
The bit's location of a specific engine can be determined
|
|
using (1 << GAUDI_ENGINE_ID_*). GAUDI_ENGINE_ID_* values
|
|
are defined in uapi habanalabs.h file in enum gaudi_engine_id
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/command_buffers
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Displays a list with information about the currently allocated
|
|
command buffers
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/command_submission
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Displays a list with information about the currently active
|
|
command submissions
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/command_submission_jobs
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Displays a list with detailed information about each JOB (CB) of
|
|
each active command submission
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/data32
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Allows the root user to read or write directly through the
|
|
device's PCI bar. Writing to this file generates a write
|
|
transaction while reading from the file generates a read
|
|
transaction. This custom interface is needed (instead of using
|
|
the generic Linux user-space PCI mapping) because the DDR bar
|
|
is very small compared to the DDR memory and only the driver can
|
|
move the bar before and after the transaction.
|
|
|
|
If the IOMMU is disabled, it also allows the root user to read
|
|
or write from the host a device VA of a host mapped memory
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/data64
|
|
Date: Jan 2020
|
|
KernelVersion: 5.6
|
|
Contact: ogabbay@kernel.org
|
|
Description: Allows the root user to read or write 64 bit data directly
|
|
through the device's PCI bar. Writing to this file generates a
|
|
write transaction while reading from the file generates a read
|
|
transaction. This custom interface is needed (instead of using
|
|
the generic Linux user-space PCI mapping) because the DDR bar
|
|
is very small compared to the DDR memory and only the driver can
|
|
move the bar before and after the transaction.
|
|
|
|
If the IOMMU is disabled, it also allows the root user to read
|
|
or write from the host a device VA of a host mapped memory
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/data_dma
|
|
Date: Apr 2021
|
|
KernelVersion: 5.13
|
|
Contact: ogabbay@kernel.org
|
|
Description: Allows the root user to read from the device's internal
|
|
memory (DRAM/SRAM) through a DMA engine.
|
|
This property is a binary blob that contains the result of the
|
|
DMA transfer.
|
|
This custom interface is needed (instead of using the generic
|
|
Linux user-space PCI mapping) because the amount of internal
|
|
memory is huge (>32GB) and reading it via the PCI bar will take
|
|
a very long time.
|
|
This interface doesn't support concurrency in the same device.
|
|
In GAUDI and GOYA, this action can cause undefined behavior
|
|
in case the it is done while the device is executing user
|
|
workloads.
|
|
Only supported on GAUDI at this stage.
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/device
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Enables the root user to set the device to specific state.
|
|
Valid values are "disable", "enable", "suspend", "resume".
|
|
User can read this property to see the valid values
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/dma_size
|
|
Date: Apr 2021
|
|
KernelVersion: 5.13
|
|
Contact: ogabbay@kernel.org
|
|
Description: Specify the size of the DMA transaction when using DMA to read
|
|
from the device's internal memory. The value can not be larger
|
|
than 128MB. Writing to this value initiates the DMA transfer.
|
|
When the write is finished, the user can read the "data_dma"
|
|
blob
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/dump_security_violations
|
|
Date: Jan 2021
|
|
KernelVersion: 5.12
|
|
Contact: ogabbay@kernel.org
|
|
Description: Dumps all security violations to dmesg. This will also ack
|
|
all security violations meanings those violations will not be
|
|
dumped next time user calls this API
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/engines
|
|
Date: Jul 2019
|
|
KernelVersion: 5.3
|
|
Contact: ogabbay@kernel.org
|
|
Description: Displays the status registers values of the device engines and
|
|
their derived idle status
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/i2c_addr
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Sets I2C device address for I2C transaction that is generated
|
|
by the device's CPU
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/i2c_bus
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Sets I2C bus address for I2C transaction that is generated by
|
|
the device's CPU
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/i2c_data
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Triggers an I2C transaction that is generated by the device's
|
|
CPU. Writing to this file generates a write transaction while
|
|
reading from the file generates a read transaction
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/i2c_reg
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Sets I2C register id for I2C transaction that is generated by
|
|
the device's CPU
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/led0
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Sets the state of the first S/W led on the device
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/led1
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Sets the state of the second S/W led on the device
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/led2
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Sets the state of the third S/W led on the device
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/mmu
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Displays the hop values and physical address for a given ASID
|
|
and virtual address. The user should write the ASID and VA into
|
|
the file and then read the file to get the result.
|
|
e.g. to display info about VA 0x1000 for ASID 1 you need to do:
|
|
echo "1 0x1000" > /sys/kernel/debug/habanalabs/hl0/mmu
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/mmu_error
|
|
Date: Mar 2021
|
|
KernelVersion: 5.12
|
|
Contact: fkassabri@habana.ai
|
|
Description: Check and display page fault or access violation mmu errors for
|
|
all MMUs specified in mmu_cap_mask.
|
|
e.g. to display error info for MMU hw cap bit 9, you need to do:
|
|
echo "0x200" > /sys/kernel/debug/habanalabs/hl0/mmu_error
|
|
cat /sys/kernel/debug/habanalabs/hl0/mmu_error
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/set_power_state
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Sets the PCI power state. Valid values are "1" for D0 and "2"
|
|
for D3Hot
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/skip_reset_on_timeout
|
|
Date: Jun 2021
|
|
KernelVersion: 5.13
|
|
Contact: ynudelman@habana.ai
|
|
Description: Sets the skip reset on timeout option for the device. Value of
|
|
"0" means device will be reset in case some CS has timed out,
|
|
otherwise it will not be reset.
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/state_dump
|
|
Date: Oct 2021
|
|
KernelVersion: 5.15
|
|
Contact: ynudelman@habana.ai
|
|
Description: Gets the state dump occurring on a CS timeout or failure.
|
|
State dump is used for debug and is created each time in case of
|
|
a problem in a CS execution, before reset.
|
|
Reading from the node returns the newest state dump available.
|
|
Writing an integer X discards X state dumps, so that the
|
|
next read would return X+1-st newest state dump.
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/stop_on_err
|
|
Date: Mar 2020
|
|
KernelVersion: 5.6
|
|
Contact: ogabbay@kernel.org
|
|
Description: Sets the stop-on_error option for the device engines. Value of
|
|
"0" is for disable, otherwise enable.
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/userptr
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Displays a list with information about the currently user
|
|
pointers (user virtual addresses) that are pinned and mapped
|
|
to DMA addresses
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/userptr_lookup
|
|
Date: Aug 2021
|
|
KernelVersion: 5.15
|
|
Contact: ogabbay@kernel.org
|
|
Description: Allows to search for specific user pointers (user virtual
|
|
addresses) that are pinned and mapped to DMA addresses, and see
|
|
their resolution to the specific dma address.
|
|
|
|
What: /sys/kernel/debug/habanalabs/hl<n>/vm
|
|
Date: Jan 2019
|
|
KernelVersion: 5.1
|
|
Contact: ogabbay@kernel.org
|
|
Description: Displays a list with information about all the active virtual
|
|
address mappings per ASID and all user mappings of HW blocks
|