From: David Härdeman Date: Thu, 28 Apr 2011 15:13:32 +0000 (-0300) Subject: [media] rc-core: add trailing silence in rc-loopback tx X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=08ffff9fa410916f1847aff831206465cefa924f;p=mv-sheeva.git [media] rc-core: add trailing silence in rc-loopback tx If an IR command is sent (using the LIRC userspace) to rc-loopback which doesn't include a trailing space, the result is that the message won't be completely decoded. In addition, "leftovers" from a previous transmission can be left until the next one. Fix this by faking a long silence after the end of TX data. Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/rc/rc-loopback.c b/drivers/media/rc/rc-loopback.c index 49cee61d79c..cc846b2619c 100644 --- a/drivers/media/rc/rc-loopback.c +++ b/drivers/media/rc/rc-loopback.c @@ -146,6 +146,12 @@ static int loop_tx_ir(struct rc_dev *dev, int *txbuf, u32 n) if (rawir.duration) ir_raw_event_store_with_filter(dev, &rawir); } + + /* Fake a silence long enough to cause us to go idle */ + rawir.pulse = false; + rawir.duration = dev->timeout; + ir_raw_event_store_with_filter(dev, &rawir); + ir_raw_event_handle(dev); out: