[git pull] habanalabs pull request for kernel 5.7

From: Oded Gabbay
Date: Tue Mar 24 2020 - 05:35:09 EST


Hello Greg,

This is the pull request for habanalabs driver for kernel 5.7.

It mainly contains improvements to MMU, hwmon sensors and a new debugfs
interface to improve debug speed when reading large internal memories.

Please see the tag message for more details on what this pull request
contains.

Thanks,
Oded

The following changes since commit bbde5709ee4f60a43b7372545454947044655728:

nvmem: mxs-ocotp: Use devm_add_action_or_reset() for cleanup (2020-03-23 20:05:23 +0100)

are available in the Git repository at:

git://people.freedesktop.org/~gabbayo/linux tags/misc-habanalabs-next-2020-03-24

for you to fetch changes up to 1184550155013f2672198c4c68f3a6961fccab09:

habanalabs: fix pm manual->auto in GOYA (2020-03-24 10:54:17 +0200)

----------------------------------------------------------------
This tag contains the following changes for kernel 5.7:

- MMU code improvements that includes:
- Flush MMU TLB cache only once, at the end of mapping/unmapping
function, instead of flushing after mapping of every page.
- Add future ASIC support by splitting properties of ASIC capabilities
regarding mapping of host memory to regular and huge pages.

- Add debugfs interface to write and read 64-bit values from the device's
memory/registers. Previously the driver provided interface for 32-bit
values and this will allow the user to debug much more quickly. We saw it
gives a boost of around 1.5 - 1.7 when reading internal memories.

- Support temperature offset via sysfs as defined in
https://www.kernel.org/doc/Documentation/hwmon/sysfs-interface

- Display historical maximum of various sensors.

- Print to kernel log when clock throttling occurs to due breach of power
or thermal envelope. Also prints when clock throttling is finished
(clock is back to optimal).

- Fix bug when moving from manual to auto power-management mode.

- Print a message ("unsupported device") to kernel log in case a GAUDI device
is recognized.

- Small bug fixes and minor improvements to code.

----------------------------------------------------------------
Christine Gharzuzi (1):
habanalabs: provide historical maximum of various sensors

Jules Irenge (2):
habanalabs: Add missing annotation for goya_hw_queues_lock()
habanalabs: Add missing annotation for goya_hw_queues_unlock()

Moti Haimovski (3):
habanalabs: add debugfs write64/read64
habanalabs: support temperature offset via sysfs
habanalabs: modify the return values of hl_read/write routines

Oded Gabbay (5):
habanalabs: removing extra ;
habanalabs: ratelimit error prints of IRQs
habanalabs: update goya firmware register map
habanalabs: show unsupported message for GAUDI
habanalabs: fix pm manual->auto in GOYA

Omer Shpigelman (4):
habanalabs: use the user CB size as a default job size
habanalabs: split the host MMU properties
habanalabs: fix DDR bar address setting
habanalabs: add print upon clock change

Pawel Piskorski (1):
habanalabs: flush only at the end of the map/unmap

Tomer Tayar (3):
habanalabs: Modify CS jobs counter to u16
habanalabs: Avoid running restore chunks if no execute chunks
habanalabs: Remove unused parse_cnt variable

.../ABI/testing/debugfs-driver-habanalabs | 14 ++
drivers/misc/habanalabs/command_submission.c | 51 +++--
drivers/misc/habanalabs/debugfs.c | 92 ++++++++-
drivers/misc/habanalabs/device.c | 2 +-
drivers/misc/habanalabs/goya/goya.c | 204 ++++++++++++++++---
drivers/misc/habanalabs/goya/goya_coresight.c | 4 +-
drivers/misc/habanalabs/goya/goya_hwmgr.c | 2 +-
drivers/misc/habanalabs/habanalabs.h | 62 +++---
drivers/misc/habanalabs/habanalabs_drv.c | 11 +-
drivers/misc/habanalabs/hwmon.c | 106 +++++++---
drivers/misc/habanalabs/include/armcp_if.h | 20 +-
.../habanalabs/include/goya/goya_async_events.h | 4 +
.../misc/habanalabs/include/goya/goya_reg_map.h | 39 ++--
drivers/misc/habanalabs/include/hl_boot_if.h | 39 ++--
drivers/misc/habanalabs/memory.c | 222 ++++++++++++++-------
drivers/misc/habanalabs/mmu.c | 110 ++++++----
16 files changed, 709 insertions(+), 273 deletions(-)