diff options
author | Dave Airlie <airlied@redhat.com> | 2018-10-04 10:28:27 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2018-10-04 10:32:14 +1000 |
commit | d8938c981f58ee344687b7910a611ac345960045 (patch) | |
tree | 3a9c70ce5c7a8889e82292643cdec5fa4a2357d8 | |
parent | 659c9370e53c99b2e98eba0c07161f839dbf8521 (diff) | |
parent | e0dccce1193f87597548d0db6ecc942fb92c04cd (diff) |
Merge branch 'drm-tda9950-fixes' of git://git.armlinux.org.uk/~rmk/linux-arm into drm-fixesdrm-fixes-2018-10-04
two tda9950 fixes.
Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Russell King <rmk@armlinux.org.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20181001162948.GA9508@rmk-PC.armlinux.org.uk
-rw-r--r-- | drivers/gpu/drm/i2c/tda9950.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i2c/tda9950.c b/drivers/gpu/drm/i2c/tda9950.c index 5d2f0d548469..250b5e02a314 100644 --- a/drivers/gpu/drm/i2c/tda9950.c +++ b/drivers/gpu/drm/i2c/tda9950.c @@ -191,7 +191,8 @@ static irqreturn_t tda9950_irq(int irq, void *data) break; } /* TDA9950 executes all retries for us */ - tx_status |= CEC_TX_STATUS_MAX_RETRIES; + if (tx_status != CEC_TX_STATUS_OK) + tx_status |= CEC_TX_STATUS_MAX_RETRIES; cec_transmit_done(priv->adap, tx_status, arb_lost_cnt, nack_cnt, 0, err_cnt); break; @@ -310,7 +311,7 @@ static void tda9950_release(struct tda9950_priv *priv) /* Wait up to .5s for it to signal non-busy */ do { csr = tda9950_read(client, REG_CSR); - if (!(csr & CSR_BUSY) || --timeout) + if (!(csr & CSR_BUSY) || !--timeout) break; msleep(10); } while (1); |