media: tc358743: limit msg.len to CEC_MAX_MSG_SIZE
I expect that the hardware will have limited this to 16, but just in case it hasn't, check for this corner case. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
parent
05c480f4d0
commit
3028fb90f5
|
@ -964,6 +964,8 @@ static void tc358743_cec_handler(struct v4l2_subdev *sd, u16 intstatus,
|
|||
|
||||
v = i2c_rd32(sd, CECRCTR);
|
||||
msg.len = v & 0x1f;
|
||||
if (msg.len > CEC_MAX_MSG_SIZE)
|
||||
msg.len = CEC_MAX_MSG_SIZE;
|
||||
for (i = 0; i < msg.len; i++) {
|
||||
v = i2c_rd32(sd, CECRBUF1 + i * 4);
|
||||
msg.msg[i] = v & 0xff;
|
||||
|
|
Loading…
Reference in New Issue