[git pull] habanalabs next second pull for 5.2

From: Oded Gabbay
Date: Fri May 03 2019 - 03:36:51 EST

Hi Greg,

This is the second pull request of habanalabs driver for kernel 5.2.

As the tag describes, all of the changes are either bug fixes or simple
re-factoring of existing code, so they should all be relatively low-risk.


The following changes since commit 78e6427b4e7b017951785982f7f97cf64e2d624b:

coresight: funnel: Support static funnel (2019-05-02 19:12:21 +0200)

are available in the Git repository at:

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

for you to fetch changes up to 9f832fda79eb6e4f8ebde8d77eb442b95bf6b08a:

habanalabs: Update CPU DMA memory label name (2019-05-02 15:37:19 +0300)

This tag contains further changes for kernel 5.2.

The changes are either bug fixes or simple re-factoring of existing code.
The notable changes are:

- Add missing fields in the bmon structure that is passed in the debug
IOCTL when the user wants to configure the bus monitor.

- Use the dedicated device-CPU accessible memory pool for all host memory
allocations that are accessible directly by the embedded CPU. This is
needed to enforce certain restrictions we have due to the embedded CPU's

- Manipulate DMA addresses only inside ASIC-specific files. This is needed
to better support future ASICs code.

Other minor changes include:

- Move pr_fmt() to c files to avoid dependency in include order.

- Remove call to CS parsing function for workloads that originates from
the driver and remove dead code as a result from this change.

- Update names of structure members and labels to better reflect their

- When moving the dram PCI bar aperture, return the old aperture address
range instead of error code. This will allow us to restore the old
address range in a simpler fashion.

Dalit Ben Zoor (4):
habanalabs: remove call to cs_parser()
habanalabs: remove redundant member from parser struct
habanalabs: remove condition that is always true
habanalabs: increase timeout if working with simulator

Oded Gabbay (6):
habanalabs: re-factor goya_parse_cb_no_ext_queue()
uapi/habanalabs: add missing fields in bmon params
habanalabs: use ASIC functions interface for rreg/wreg
habanalabs: rename restore to ctx_switch when appropriate
habanalabs: return old dram bar address upon change
habanalabs: rename functions to improve code readability

Tomer Tayar (5):
habanalabs: Cancel pr_fmt() definition dependency on includes order
habanalabs: Use single pool for CPU accessible host memory
habanalabs: Manipulate DMA addresses in ASIC functions
habanalabs: Update CPU DMA pool label name
habanalabs: Update CPU DMA memory label name

drivers/misc/habanalabs/command_buffer.c | 6 +-
drivers/misc/habanalabs/command_submission.c | 17 +-
drivers/misc/habanalabs/context.c | 4 +-
drivers/misc/habanalabs/device.c | 16 +-
drivers/misc/habanalabs/firmware_if.c | 7 +-
drivers/misc/habanalabs/goya/goya.c | 347 +++++++++++++-------------
drivers/misc/habanalabs/goya/goyaP.h | 40 ++-
drivers/misc/habanalabs/goya/goya_coresight.c | 16 +-
drivers/misc/habanalabs/habanalabs.h | 116 +++++----
drivers/misc/habanalabs/habanalabs_drv.c | 2 +
drivers/misc/habanalabs/hw_queue.c | 46 ++--
drivers/misc/habanalabs/include/armcp_if.h | 8 -
drivers/misc/habanalabs/irq.c | 14 +-
drivers/misc/habanalabs/memory.c | 4 -
drivers/misc/habanalabs/pci.c | 16 +-
include/uapi/misc/habanalabs.h | 9 +-
16 files changed, 368 insertions(+), 300 deletions(-)