media: rc: meson-ir: lower timeout and make configurable
authorSean Young <sean@mess.org>
Mon, 12 Mar 2018 21:23:00 +0000 (17:23 -0400)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Wed, 21 Mar 2018 17:59:38 +0000 (13:59 -0400)
A timeout of 200ms is much longer than necessary, and delays the decoding
decoding of a single scancode and the last scancode when a button is being
held. This makes the remote seem sluggish.

If the min_timeout and max_timeout values are set, the timeout is
configurable via the LIRC_SET_REC_TIMEOUT ioctl.

Tested-by: Matthias Reichl <hias@horus.com>
Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/rc/meson-ir.c

index 64b0aa4..f449b35 100644 (file)
@@ -144,7 +144,9 @@ static int meson_ir_probe(struct platform_device *pdev)
        ir->rc->map_name = map_name ? map_name : RC_MAP_EMPTY;
        ir->rc->allowed_protocols = RC_PROTO_BIT_ALL_IR_DECODER;
        ir->rc->rx_resolution = US_TO_NS(MESON_TRATE);
-       ir->rc->timeout = MS_TO_NS(200);
+       ir->rc->min_timeout = 1;
+       ir->rc->timeout = IR_DEFAULT_TIMEOUT;
+       ir->rc->max_timeout = 10 * IR_DEFAULT_TIMEOUT;
        ir->rc->driver_name = DRIVER_NAME;
 
        spin_lock_init(&ir->lock);