diff options
| author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-09-27 16:36:09 +0200 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-09-27 16:36:09 +0200 |
| commit | 5ecb11dd892f443d4900292edaba88a26efee8fe (patch) | |
| tree | d92c07b74431f862289a86230c66e2ef790f8980 /drivers/misc/habanalabs/common/hw_queue.c | |
| parent | 7c783601a3bc22a54cce0fb650259a983c8cafba (diff) | |
| parent | 5816b3e6577eaa676ceb00a848f0fd65fe2adc29 (diff) | |
| download | linux-5ecb11dd892f443d4900292edaba88a26efee8fe.tar.gz linux-5ecb11dd892f443d4900292edaba88a26efee8fe.tar.bz2 linux-5ecb11dd892f443d4900292edaba88a26efee8fe.zip | |
Merge 5.15-rc3 into tty-next
We need the tty fixes in here as well.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc/habanalabs/common/hw_queue.c')
| -rw-r--r-- | drivers/misc/habanalabs/common/hw_queue.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/misc/habanalabs/common/hw_queue.c b/drivers/misc/habanalabs/common/hw_queue.c index 76b7de8f1406..0743319b10c7 100644 --- a/drivers/misc/habanalabs/common/hw_queue.c +++ b/drivers/misc/habanalabs/common/hw_queue.c @@ -437,6 +437,7 @@ void hl_hw_queue_encaps_sig_set_sob_info(struct hl_device *hdev, struct hl_cs_compl *cs_cmpl) { struct hl_cs_encaps_sig_handle *handle = cs->encaps_sig_hdl; + u32 offset = 0; cs_cmpl->hw_sob = handle->hw_sob; @@ -446,9 +447,13 @@ void hl_hw_queue_encaps_sig_set_sob_info(struct hl_device *hdev, * set offset 1 for example he mean to wait only for the first * signal only, which will be pre_sob_val, and if he set offset 2 * then the value required is (pre_sob_val + 1) and so on... + * if user set wait offset to 0, then treat it as legacy wait cs, + * wait for the next signal. */ - cs_cmpl->sob_val = handle->pre_sob_val + - (job->encaps_sig_wait_offset - 1); + if (job->encaps_sig_wait_offset) + offset = job->encaps_sig_wait_offset - 1; + + cs_cmpl->sob_val = handle->pre_sob_val + offset; } static int init_wait_cs(struct hl_device *hdev, struct hl_cs *cs, |
