If, while trying to claim a free logical address, a POLL message
times out, then abort this process. A CEC_TX_STATUS_TIMEOUT
should be handled the same as a CEC_TX_STATUS_ABORTED.
This avoids a situation where transmits time out due to a
driver or hardware bug and it takes ages before the attempt
to find available free logical addresses finishes.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
                        return err;
 
                /*
-                * The message was aborted due to a disconnect or
+                * The message was aborted or timed out due to a disconnect or
                 * unconfigure, just bail out.
                 */
-               if (msg.tx_status & CEC_TX_STATUS_ABORTED)
+               if (msg.tx_status &
+                   (CEC_TX_STATUS_ABORTED | CEC_TX_STATUS_TIMEOUT))
                        return -EINTR;
                if (msg.tx_status & CEC_TX_STATUS_OK)
                        return 0;