summaryrefslogtreecommitdiffstats
path: root/drivers/media/rc/rc-main.c
diff options
context:
space:
mode:
authorJames Hogan2014-01-16 23:56:22 +0100
committerMauro Carvalho Chehab2014-02-04 16:09:00 +0100
commit70a2f9120ffdb9bf9732c55c3350cb002a78841d (patch)
treee81d3d52f20e338e6b485c35faf126a552a61e0b /drivers/media/rc/rc-main.c
parent[media] FE_READ_SNR and FE_READ_SIGNAL_STRENGTH docs (diff)
downloadkernel-qcow2-linux-70a2f9120ffdb9bf9732c55c3350cb002a78841d.tar.gz
kernel-qcow2-linux-70a2f9120ffdb9bf9732c55c3350cb002a78841d.tar.xz
kernel-qcow2-linux-70a2f9120ffdb9bf9732c55c3350cb002a78841d.zip
[media] media: rc: only turn on LED if keypress generated
Since v3.12, specifically 153a60bb0fac ([media] rc: add feedback led trigger for rc keypresses), an LED trigger is activated on IR keydown whether or not a keypress is generated (i.e. even if there's no matching keycode). However the repeat and keyup logic isn't used unless there is a keypress, which results in non-keypress keydown events turning on the LED and not turning it off again. On the assumption that the intent was for the LED only to light up on valid key presses (you probably don't want it lighting up for the wrong remote control for example), move the led_trigger_event() call inside the keycode check. Signed-off-by: James Hogan <james.hogan@imgtec.com> Acked-by: Sean Young <sean@mess.org> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers/media/rc/rc-main.c')
-rw-r--r--drivers/media/rc/rc-main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/media/rc/rc-main.c b/drivers/media/rc/rc-main.c
index 399eef4e966a..b75b63b1f492 100644
--- a/drivers/media/rc/rc-main.c
+++ b/drivers/media/rc/rc-main.c
@@ -653,9 +653,10 @@ static void ir_do_keydown(struct rc_dev *dev, int scancode,
"key 0x%04x, scancode 0x%04x\n",
dev->input_name, keycode, scancode);
input_report_key(dev->input_dev, keycode, 1);
+
+ led_trigger_event(led_feedback, LED_FULL);
}
- led_trigger_event(led_feedback, LED_FULL);
input_sync(dev->input_dev);
}