| What: /sys/kernel/debug/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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 it is done while the device is executing user |
| workloads. |
| Only supported on GAUDI at this stage. |
| |
| What: /sys/kernel/debug/accel/<parent_device>/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/accel/<parent_device>/device_release_watchdog_timeout |
| Date: Oct 2022 |
| KernelVersion: 6.2 |
| Contact: ttayar@habana.ai |
| Description: The watchdog timeout value in seconds for a device release upon |
| certain error cases, after which the device is reset. |
| |
| What: /sys/kernel/debug/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/0/mmu |
| |
| What: /sys/kernel/debug/accel/<parent_device>/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/accel/0/mmu_error |
| cat /sys/kernel/debug/accel/0/mmu_error |
| |
| What: /sys/kernel/debug/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/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/accel/<parent_device>/userptr |
| Date: Jan 2019 |
| KernelVersion: 5.1 |
| Contact: ogabbay@kernel.org |
| Description: Displays a list with information about the current user |
| pointers (user virtual addresses) that are pinned and mapped |
| to DMA addresses |
| |
| What: /sys/kernel/debug/accel/<parent_device>/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/accel/<parent_device>/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 |