Messages in this thread | | | Date | Mon, 18 Oct 2021 13:02:50 +0300 | From | Oded Gabbay <> | Subject | [git pull] habanalabs pull request for kernel 5.16 |
| |
Hi Greg,
This is habanalabs pull request for the merge window of kernel 5.16. It's a relatively small pull request as Gaudi code is mostly mature. Please note this contains the peer-to-peer support with DMA-BUF code.
Full details are in the tag.
Thanks, Oded
The following changes since commit 22d4f9beaf32a7cda9edeafdf5e99bec3de32c51:
Merge 5.15-rc6 into char-misc-next (2021-10-18 09:29:27 +0200)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/ogabbay/linux.git tags/misc-habanalabs-next-2021-10-18
for you to fetch changes up to b2faac3887df87a6e4bc3356280ea35dc7459c0b:
habanalabs: refactor fence handling in hl_cs_poll_fences (2021-10-18 12:05:48 +0300)
---------------------------------------------------------------- This tag contains habanalabs driver changes for v5.16:
- Add a new uAPI (under the memory ioctl) to request from the driver to export a DMA-BUF object that represents a memory region on the device's DRAM. This is needed to enable peer-to-peer over PCIe between habana device and an RDMA adapter (e.g. mlnx5 or efa rdma adapter).
- Add debugfs node to dynamically configure CS timeout. Up until now, it was only configurable through kernel module parameter.
- Fetch more comprehensive power information from the firmware.
- Always take timestamp when waiting for user interrupt, as the user needs that information to optimize the graph runtime compilation.
- Modify user interrupt to look on 64-bit user value as fence, instead of 32-bit.
- Bypass reset in case of repeated h/w error event after device reset. This is to prevent endless loop of resets to the device.
- Fix several bugs in multi CS completion code.
- Fix race condition in fd close/open.
- Update to latest firmware headers
- Add select CRC32 in kconfig
- Small fixes, cosmetics
---------------------------------------------------------------- Alon Mizrahi (1): habanalabs: generalize COMMS message sending procedure
Bharat Jauhari (1): habanalabs: bypass reset for continuous h/w error event
Dani Liberman (3): habanalabs: fix race condition in multi CS completion habanalabs: fix NULL pointer dereference habanalabs: refactor fence handling in hl_cs_poll_fences
Moti Haimovski (1): habanalabs: initialize hpriv fields before adding new node
Oded Gabbay (7): habanalabs: add kernel-doc style comments habanalabs: define soft-reset as inference op habanalabs: refactor reset log message habanalabs: prevent race between fd close/open habanalabs: update firmware files habanalabs: use only u32 habanalabs: define uAPI to export FD for DMA-BUF
Ofir Bitton (3): habanalabs: add debugfs node for configuring CS timeout habanalabs: remove redundant cs validity checks habanalabs: add support for a long interrupt target value
Omer Shpigelman (1): habanalabs: context cleanup cosmetics
Rajaravi Krishna Katta (3): habanalabs: create static map of f/w hwmon enums habanalabs: enable power info via HWMON framework habanalabs: Unify frequency set/get functionality
Tomer Tayar (1): habanalabs: add support for dma-buf exporter
Vegard Nossum (1): habanalabs: select CRC32
Yuri Nudelman (3): habanalabs: fix debugfs device memory MMU VA translation habanalabs: take timestamp on wait for interrupt habanalabs: simplify wait for interrupt with timestamp flow
.../ABI/testing/debugfs-driver-habanalabs | 6 + drivers/misc/habanalabs/Kconfig | 2 + drivers/misc/habanalabs/common/Makefile | 2 +- .../misc/habanalabs/common/command_submission.c | 105 +++-- drivers/misc/habanalabs/common/context.c | 8 +- drivers/misc/habanalabs/common/debugfs.c | 51 ++ drivers/misc/habanalabs/common/device.c | 159 +++++-- drivers/misc/habanalabs/common/firmware_if.c | 28 +- drivers/misc/habanalabs/common/habanalabs.h | 64 ++- drivers/misc/habanalabs/common/habanalabs_drv.c | 24 +- .../{gaudi/gaudi_hwmgr.c => common/hwmgr.c} | 38 +- drivers/misc/habanalabs/common/hwmon.c | 194 +++++++- drivers/misc/habanalabs/common/irq.c | 5 +- drivers/misc/habanalabs/common/memory.c | 513 ++++++++++++++++++++- drivers/misc/habanalabs/common/mmu/mmu.c | 30 +- drivers/misc/habanalabs/common/sysfs.c | 6 +- drivers/misc/habanalabs/gaudi/Makefile | 2 +- drivers/misc/habanalabs/gaudi/gaudi.c | 22 +- drivers/misc/habanalabs/gaudi/gaudiP.h | 4 - drivers/misc/habanalabs/goya/goya.c | 13 +- drivers/misc/habanalabs/goya/goyaP.h | 1 - drivers/misc/habanalabs/goya/goya_hwmgr.c | 31 -- drivers/misc/habanalabs/include/common/cpucp_if.h | 22 +- .../misc/habanalabs/include/common/hl_boot_if.h | 189 +++++--- .../misc/habanalabs/include/gaudi/gaudi_fw_if.h | 10 +- .../misc/habanalabs/include/gaudi/gaudi_reg_map.h | 1 + include/uapi/misc/habanalabs.h | 84 +++- 27 files changed, 1309 insertions(+), 305 deletions(-) rename drivers/misc/habanalabs/{gaudi/gaudi_hwmgr.c => common/hwmgr.c} (61%)
| |