[git pull] habanalabs pull request for kernel 5.10-rc1

From: Oded Gabbay
Date: Tue Sep 22 2020 - 12:08:43 EST


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%)