311 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			311 lines
		
	
	
		
			14 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:    This setting is now deprecated as clock gating is handled solely by the f/w
 | |
| 
 | |
| 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_razwi_events
 | |
| Date:           Aug 2022
 | |
| KernelVersion:  5.20
 | |
| Contact:        fkassabri@habana.ai
 | |
| Description:    Dumps all razwi events to dmesg if exist.
 | |
|                 After reading the status register of an existing event
 | |
|                 the routine will clear the status register.
 | |
|                 Usage: cat dump_razwi_events
 | |
| 
 | |
| 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, Not available when device is loaded with secured
 | |
|                 firmware
 | |
| 
 | |
| 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, Not available when device is loaded with secured
 | |
|                 firmware
 | |
| 
 | |
| 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, Not available
 | |
|                 when device is loaded with secured firmware
 | |
| 
 | |
| What:           /sys/kernel/debug/habanalabs/hl<n>/i2c_len
 | |
| Date:           Dec 2021
 | |
| KernelVersion:  5.17
 | |
| Contact:        obitton@habana.ai
 | |
| Description:    Sets I2C length in bytes for I2C transaction that is generated by
 | |
|                 the device's CPU, Not available when device is loaded with secured
 | |
|                 firmware
 | |
| 
 | |
| 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, Not available when device is loaded with secured
 | |
|                 firmware
 | |
| 
 | |
| 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, Not available
 | |
|                 when device is loaded with secured firmware
 | |
| 
 | |
| 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, Not available
 | |
|                 when device is loaded with secured firmware
 | |
| 
 | |
| 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, Not available
 | |
|                 when device is loaded with secured firmware
 | |
| 
 | |
| What:           /sys/kernel/debug/habanalabs/hl<n>/memory_scrub
 | |
| Date:           May 2022
 | |
| KernelVersion:  5.19
 | |
| Contact:        dhirschfeld@habana.ai
 | |
| Description:    Allows the root user to scrub the dram memory. The scrubbing
 | |
|                 value can be set using the debugfs file memory_scrub_val.
 | |
| 
 | |
| What:           /sys/kernel/debug/habanalabs/hl<n>/memory_scrub_val
 | |
| Date:           May 2022
 | |
| KernelVersion:  5.19
 | |
| Contact:        dhirschfeld@habana.ai
 | |
| Description:    The value to which the dram will be set to when the user
 | |
|                 scrubs the dram using 'memory_scrub' debugfs file and
 | |
|                 the scrubbing value when using module param 'memory_scrub'
 | |
| 
 | |
| 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>/monitor_dump
 | |
| Date:           Mar 2022
 | |
| KernelVersion:  5.19
 | |
| Contact:        osharabi@habana.ai
 | |
| Description:    Allows the root user to dump monitors status from the device's
 | |
|                 protected config space.
 | |
|                 This property is a binary blob that contains the result of the
 | |
|                 monitors registers dump.
 | |
|                 This custom interface is needed (instead of using the generic
 | |
|                 Linux user-space PCI mapping) because this space is protected
 | |
|                 and cannot be accessed using PCI read.
 | |
|                 This interface doesn't support concurrency in the same device.
 | |
|                 Only supported on GAUDI.
 | |
| 
 | |
| What:           /sys/kernel/debug/habanalabs/hl<n>/monitor_dump_trig
 | |
| Date:           Mar 2022
 | |
| KernelVersion:  5.19
 | |
| Contact:        osharabi@habana.ai
 | |
| Description:    Triggers dump of monitor data. The value to trigger the operation
 | |
|                 must be 1. Triggering the monitor dump operation initiates dump of
 | |
|                 current registers values of all monitors.
 | |
|                 When the write is finished, the user can read the "monitor_dump"
 | |
|                 blob
 | |
| 
 | |
| 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.
 | |
|                 Relevant only for GOYA and GAUDI.
 | |
| 
 | |
| What:           /sys/kernel/debug/habanalabs/hl<n>/timeout_locked
 | |
| Date:           Sep 2021
 | |
| KernelVersion:  5.16
 | |
| Contact:        obitton@habana.ai
 | |
| Description:    Sets the command submission timeout value in seconds.
 | |
| 
 | |
| 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:           Oct 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
 |