| From bbdb34c90aeb8b2253eae88029788ebe1d7f2fd4 Mon Sep 17 00:00:00 2001 |
| From: Jonathan McDowell <noodles@earth.li> |
| Date: Sat, 14 May 2016 14:01:26 -0300 |
| Subject: [media] Fix RC5 decoding with Fintek CIR chipset |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: Jonathan McDowell <noodles@earth.li> |
| |
| commit bbdb34c90aeb8b2253eae88029788ebe1d7f2fd4 upstream. |
| |
| Fix RC5 decoding with Fintek CIR chipset |
| |
| Commit e87b540be2dd02552fb9244d50ae8b4e4619a34b tightened up the RC5 |
| decoding by adding a check for trailing silence to ensure a valid RC5 |
| command had been received. Unfortunately the trailer length checked was |
| 10 units and the Fintek CIR device does not want to provide details of a |
| space longer than 6350us. This meant that RC5 remotes working on a |
| Fintek setup on 3.16 failed on 3.17 and later. Fix this by shortening |
| the trailer check to 6 units (allowing for a previous space in the |
| received remote command). |
| |
| Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=117221 |
| |
| Signed-off-by: Jonathan McDowell <noodles@earth.li> |
| Signed-off-by: David Hรคrdeman <david@hardeman.nu> |
| Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/media/rc/ir-rc5-decoder.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/media/rc/ir-rc5-decoder.c |
| +++ b/drivers/media/rc/ir-rc5-decoder.c |
| @@ -29,7 +29,7 @@ |
| #define RC5_BIT_START (1 * RC5_UNIT) |
| #define RC5_BIT_END (1 * RC5_UNIT) |
| #define RC5X_SPACE (4 * RC5_UNIT) |
| -#define RC5_TRAILER (10 * RC5_UNIT) /* In reality, approx 100 */ |
| +#define RC5_TRAILER (6 * RC5_UNIT) /* In reality, approx 100 */ |
| |
| enum rc5_state { |
| STATE_INACTIVE, |