UPSTREAM: media: rc: default to idle on at startup or after reset

Any spaces events received after a reset or startup should be discarded,
so ensure the rc device is in idle mode.

This also makes it much easier to detect incorrect raw events, as we will
do in a following commit.

Change-Id: I3137eaad02c2ac2b0577783dc37ce961ed39a0d0
Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Signed-off-by: Naveen <133593113+elohim-etz@users.noreply.github.com>
This commit is contained in:
Sean Young
2018-05-10 16:41:15 -04:00
committed by Ansh
parent ffd0b5d6cc
commit 822bcf65d4
2 changed files with 2 additions and 0 deletions

View File

@@ -611,6 +611,7 @@ int ir_raw_event_prepare(struct rc_dev *dev)
dev->raw->dev = dev;
dev->change_protocol = change_protocol;
dev->idle = true;
spin_lock_init(&dev->raw->edge_spinlock);
timer_setup(&dev->raw->edge_handle, ir_raw_edge_handle, 0);
INIT_KFIFO(dev->raw->kfifo);

View File

@@ -347,6 +347,7 @@ static inline void ir_raw_event_reset(struct rc_dev *dev)
struct ir_raw_event ev = { .reset = true };
ir_raw_event_store(dev, &ev);
dev->idle = true;
ir_raw_event_handle(dev);
}