]> asedeno.scripts.mit.edu Git - linux.git/commit
habanalabs: flush EQ workers in hard reset
authorOded Gabbay <oded.gabbay@gmail.com>
Sun, 17 Nov 2019 15:41:57 +0000 (17:41 +0200)
committerOded Gabbay <oded.gabbay@gmail.com>
Thu, 21 Nov 2019 09:35:47 +0000 (11:35 +0200)
commit55f6d680970ea922d4ee23d5ac88d3a8046221fb
treee699504b680a0ce9d75ea9d21be4776f6eef98e2
parent1af69d30c41d0b0f15d8be80c100cefaa909816c
habanalabs: flush EQ workers in hard reset

During hard-reset, there can be multiple events received from the H/W. For
each event, the driver opens a worker thread to handle it. For some of the
events, the driver will read/write registers in the code that handles the
event.

In case of hard-reset, we must prevent reads/writes to the registers during
the reset operation because the device might get stuck if that happens.

Therefore, flush the EQ workers before resetting the device (in hard-reset
only). Additional events won't arrive as we synced and disabled the
interrupts.

Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
Reviewed-by: Tomer Tayar <ttayar@habana.ai>
drivers/misc/habanalabs/device.c