summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOmer Shpigelman <oshpigelman@habana.ai>2020-06-16 17:56:27 +0300
committerOded Gabbay <oded.gabbay@gmail.com>2020-06-24 12:35:23 +0300
commitce04326edd59d7902d7ef3a9d853864096e0cd1a (patch)
tree043b76341d8899db2f941d06247a0b04f4880a30
parent3292055c85aa02723b7b7a1114c4c91deefad5e4 (diff)
downloadlinux-ce04326edd59d7902d7ef3a9d853864096e0cd1a.tar.xz
habanalabs: increase h/w timer when checking idle
In GAUDI the current timer value for the hardware to check if it is in IDLE state is too low. As a result, there are occasions where the H/W wrongly reports it is not IDLE. The driver checks that before submitting work on behalf of the driver during initialization, so a false report might cause the driver to fail during device initialization. Signed-off-by: Omer Shpigelman <oshpigelman@habana.ai> Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
-rw-r--r--drivers/misc/habanalabs/gaudi/gaudi.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/misc/habanalabs/gaudi/gaudi.c b/drivers/misc/habanalabs/gaudi/gaudi.c
index 69317d2ebdfa..834470d10b46 100644
--- a/drivers/misc/habanalabs/gaudi/gaudi.c
+++ b/drivers/misc/habanalabs/gaudi/gaudi.c
@@ -1893,6 +1893,8 @@ static void gaudi_init_pci_dma_qman(struct hl_device *hdev, int dma_id,
WREG32(mmDMA0_QM_CP_MSG_BASE3_ADDR_LO_0 + q_off, so_base_ws_lo);
WREG32(mmDMA0_QM_CP_MSG_BASE3_ADDR_HI_0 + q_off, so_base_ws_hi);
+ WREG32(mmDMA0_QM_CP_BARRIER_CFG_0 + q_off, 0x100);
+
/* The following configuration is needed only once per QMAN */
if (qman_id == 0) {
/* Configure RAZWI IRQ */