Hello Greg, This is habanalabs pull request for the merge window of kernel 5.10. It contains many small improvements to common and GAUDI code. Details are in the tag.
Thanks, Oded The following changes since commit 8fd0e2a6df262539eaa28b0a2364cca10d1dc662: uio: free uio id after uio file node is freed (2020-09-17 18:52:03 +0200) are available in the Git repository at: git://people.freedesktop.org/~gabbayo/linux tags/misc-habanalabs-next-2020-09-22 for you to fetch changes up to f279e5cd95058ddbb8f86e1c32f25d36502a115c: habanalabs: update scratchpad register map (2020-09-22 18:49:54 +0300) ---------------------------------------------------------------- This tag contains the following changes for kernel 5.10-rc1: - Stop using the DRM's dma-fence module and instead use kernel completions. - Support PCIe AER - Use dma_mmap_coherent for memory allocated using dma_alloc_coherent - Use smallest possible alignment when allocating virtual addresses in our MMU driver. - Refactor MMU driver code to be device-oriented - Allow user to check CS status without any sleep - Add an option to map a Command Buffer to the Device's MMU - Expose sync manager resource allocation to user through INFO IOCTL - Convert code to use standard BIT(), GENMASK() and FIELD_PREP() - Many small fixes (casting, better error messages, remove unused defines, h/w configuration fixes, etc.) ---------------------------------------------------------------- Dotan Barak (1): habanalabs: print the queue id in case of an error Hillf Danton (1): habanalabs: make use of dma_mmap_coherent Moti Haimovski (4): habanalabs: rename mmu.c to mmu_v1.c habanalabs: refactor MMU as device-oriented habanalabs: add num_hops to hl_mmu_properties habanalabs: add debugfs support for MMU with 6 HOPs Oded Gabbay (28): habanalabs: increase length of ASIC name habanalabs: change CB's ID to be 64 bits habanalabs: cast int to u32 before printing it with %u habanalabs: eliminate redundant else condition habanalabs: use standard BIT() and GENMASK() habanalabs: use FIELD_PREP() instead of << habanalabs: remove redundant assignment to variable habanalabs: check TPC vector pipe is empty habanalabs: use 1U when shifting bits habanalabs: update GAUDI hardware specs habanalabs: replace armcp with the generic cpucp habanalabs: cast to u64 before shift > 31 bits habanalabs: restructure hl_mmap habanalabs: clear vm_pgoff before doing the mmap habanalabs: count dropped CS because max CS in-flight habanalabs: rename ArmCP to CPU-CP habanalabs: remove unused ASIC function pointer habanalabs: remove unused define habanalabs: increase PQ COMP_OFFSET by one nibble habanalabs: check flag before reset because of f/w event habanalabs/gaudi: increase timeout for boot fit load habanalabs: allow to wait on CS without sleep habanalabs: no need for DMA_SHARED_BUFFER habanalabs: update firmware interface file habanalabs/gaudi: remove axi drain support habanalabs/gaudi: fix DMA completions max outstanding to 15 habanalabs: add indication of security-enabled F/W habanalabs: update scratchpad register map Ofir Bitton (5): habanalabs: Replace dma-fence mechanism with completions habanalabs: add information about PCIe controller habanalabs: expose sync manager resources allocation in INFO IOCTL habanalabs: PCIe Advanced Error Reporting support habanalabs: Fix alignment issue in cpucp_info structure Omer Shpigelman (1): habanalabs: use smallest possible alignment for virtual addresses Tomer Tayar (3): habanalabs: Include linux/bitfield.h only in habanalabs.h habanalabs: Save context in a command buffer object habanalabs: Add an option to map CB to device MMU farah kassabri (3): habanalabs: remove security from ARB_MST_QUIET register habanalabs: extend busy engines mask to 64 bits habanalabs: add support for getting device total energy Documentation/ABI/testing/sysfs-driver-habanalabs | 18 +- drivers/misc/habanalabs/Kconfig | 1 - drivers/misc/habanalabs/common/Makefile | 4 +- drivers/misc/habanalabs/common/command_buffer.c | 229 +- .../misc/habanalabs/common/command_submission.c | 107 +- drivers/misc/habanalabs/common/context.c | 25 +- drivers/misc/habanalabs/common/debugfs.c | 92 +- drivers/misc/habanalabs/common/device.c | 18 +- drivers/misc/habanalabs/common/firmware_if.c | 229 +- drivers/misc/habanalabs/common/habanalabs.h | 200 +- drivers/misc/habanalabs/common/habanalabs_drv.c | 76 +- drivers/misc/habanalabs/common/habanalabs_ioctl.c | 105 +- drivers/misc/habanalabs/common/hw_queue.c | 10 +- drivers/misc/habanalabs/common/hwmon.c | 60 +- drivers/misc/habanalabs/common/irq.c | 2 +- drivers/misc/habanalabs/common/memory.c | 86 +- drivers/misc/habanalabs/common/mmu.c | 812 +- drivers/misc/habanalabs/common/mmu_v1.c | 863 ++ drivers/misc/habanalabs/common/pci.c | 17 +- drivers/misc/habanalabs/common/sysfs.c | 60 +- drivers/misc/habanalabs/gaudi/gaudi.c | 192 +- drivers/misc/habanalabs/gaudi/gaudiP.h | 52 +- drivers/misc/habanalabs/gaudi/gaudi_security.c | 12351 +++++++++---------- drivers/misc/habanalabs/goya/goya.c | 89 +- drivers/misc/habanalabs/goya/goyaP.h | 2 +- .../include/common/{armcp_if.h => cpucp_if.h} | 298 +- drivers/misc/habanalabs/include/common/qman_if.h | 2 +- drivers/misc/habanalabs/include/gaudi/gaudi.h | 2 + .../misc/habanalabs/include/gaudi/gaudi_masks.h | 273 +- .../misc/habanalabs/include/gaudi/gaudi_reg_map.h | 1 + .../misc/habanalabs/include/goya/goya_reg_map.h | 1 + .../habanalabs/include/hw_ip/mmu/mmu_general.h | 2 + include/uapi/misc/habanalabs.h | 87 +- 33 files changed, 8662 insertions(+), 7704 deletions(-) create mode 100644 drivers/misc/habanalabs/common/mmu_v1.c rename drivers/misc/habanalabs/include/common/{armcp_if.h => cpucp_if.h} (60%)