Skip to content

Commit 73af6c7

Browse files
Hans Verkuilmchehab
authored andcommitted
media: cec: core: don't set last_initiator if tx in progress
When a message was received the last_initiator is set to 0xff. This will force the signal free time for the next transmit to that for a new initiator. However, if a new transmit is already in progress, then don't set last_initiator, since that's the initiator of the current transmit. Overwriting this would cause the signal free time of a following transmit to be that of the new initiator instead of a next transmit. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
1 parent fe4526d commit 73af6c7

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

drivers/media/cec/core/cec-adap.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1091,7 +1091,8 @@ void cec_received_msg_ts(struct cec_adapter *adap,
10911091
mutex_lock(&adap->lock);
10921092
dprintk(2, "%s: %*ph\n", __func__, msg->len, msg->msg);
10931093

1094-
adap->last_initiator = 0xff;
1094+
if (!adap->transmit_in_progress)
1095+
adap->last_initiator = 0xff;
10951096

10961097
/* Check if this message was for us (directed or broadcast). */
10971098
if (!cec_msg_is_broadcast(msg)) {

0 commit comments

Comments
 (0)