media: adv7604.c: add missing return
authorHans Verkuil <hverkuil@xs4all.nl>
Sun, 3 Dec 2017 15:03:11 +0000 (10:03 -0500)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Fri, 8 Dec 2017 15:39:17 +0000 (10:39 -0500)
A 'return' was missing when detecting Arbitration Lost and
calling transmit_done. With the return transmit_done could be
called a second time, confusing the CEC framework. Luckily
the Arbitration Lost condition is very rare.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/i2c/adv7604.c

index c786cd1..1544920 100644 (file)
@@ -1982,6 +1982,7 @@ static void adv76xx_cec_tx_raw_status(struct v4l2_subdev *sd, u8 tx_raw_status)
                         __func__);
                cec_transmit_done(state->cec_adap, CEC_TX_STATUS_ARB_LOST,
                                  1, 0, 0, 0);
+               return;
        }
        if (tx_raw_status & 0x04) {
                u8 status;