From e5bbe61bbb45b5b4cb43278d4ee9f63d18029abc Mon Sep 17 00:00:00 2001 From: Aly Hirani Date: Thu, 7 Jun 2018 13:04:29 -0700 Subject: [PATCH] misc: tegra_cec: fixing return values for wait This change fixes the code that was checking the return value for the wait_event_interruptible_timeout. Change-Id: Ief6c180f1df9994dd6caa776e08cdb26e15bb32b Signed-off-by: Aly Hirani Reviewed-on: https://git-master.nvidia.com/r/1742938 (cherry picked from commit 8e4b55aa0571a10acf106d21f7c70b2d8b8108c6) Reviewed-on: https://git-master.nvidia.com/r/1746696 Reviewed-by: svc-mobile-coverity Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Vinayak Pane Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/misc/tegra-cec/tegra_cec.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/drivers/misc/tegra-cec/tegra_cec.c b/drivers/misc/tegra-cec/tegra_cec.c index e1a0e974..904f48be 100644 --- a/drivers/misc/tegra-cec/tegra_cec.c +++ b/drivers/misc/tegra-cec/tegra_cec.c @@ -124,8 +124,9 @@ int tegra_cec_native_write_l(struct tegra_cec *cec, const u8 *buf, size_t cnt) * this means we have to wait for it to finish before beginning * subsequent transmission. */ - ret = wait_event_interruptible_timeout(cec->tx_waitq, cec->tx_wake == 1, HZ); - if (ret) + ret = wait_event_interruptible_timeout(cec->tx_waitq, cec->tx_wake == 1, + msecs_to_jiffies(1000)); + if (ret <= 0) return ret; mode = TEGRA_CEC_LADDR_MODE(buf[0]) << TEGRA_CEC_TX_REG_ADDR_MODE_SHIFT; @@ -145,8 +146,9 @@ int tegra_cec_native_write_l(struct tegra_cec *cec, const u8 *buf, size_t cnt) writel(mask | TEGRA_CEC_INT_MASK_TX_REGISTER_EMPTY, cec->cec_base + TEGRA_CEC_INT_MASK); - ret = wait_event_interruptible_timeout(cec->tx_waitq, cec->tx_wake == 1, HZ); - if (!ret) + ret = wait_event_interruptible_timeout(cec->tx_waitq, cec->tx_wake == 1, + msecs_to_jiffies(1000)); + if (ret > 0) ret = cec->tx_error; return ret;