From a7a125f6b868b4ae760f6867891321ab7ee2f204 Mon Sep 17 00:00:00 2001 From: cvh Date: Tue, 11 Jul 2017 14:00:34 +0200 Subject: [PATCH] media_build: add lirc fix --- .../media_build-02-add-to-backports.patch | 3 ++- .../linux-204-lirc_fix_for_4.12.patch | 24 +++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 packages/linux-drivers/media_build/sources/backports/linux-204-lirc_fix_for_4.12.patch diff --git a/packages/linux-drivers/media_build/patches/media_build-02-add-to-backports.patch b/packages/linux-drivers/media_build/patches/media_build-02-add-to-backports.patch index 4f81b7a0c2..58be53948f 100644 --- a/packages/linux-drivers/media_build/patches/media_build-02-add-to-backports.patch +++ b/packages/linux-drivers/media_build/patches/media_build-02-add-to-backports.patch @@ -1,6 +1,6 @@ --- a/backports/backports.txt +++ b/backports/backports.txt -@@ -25,6 +25,14 @@ add api_version.patch +@@ -25,6 +25,15 @@ add api_version.patch add pr_fmt.patch add debug.patch add drx39xxj.patch @@ -10,6 +10,7 @@ +add linux-062-imon_pad_ignore_diagonal.patch +add linux-202-lnbp22_patch_for_more_power_if_rotor.patch +add linux-203-stb0899_enable_low_symbol_rate.patch ++add linux-204-lirc_fix_for_4.12.patch +add linux-220-hauppauge_dualhd_second_tuner_support.patch +add cxd2880-support.patch diff --git a/packages/linux-drivers/media_build/sources/backports/linux-204-lirc_fix_for_4.12.patch b/packages/linux-drivers/media_build/sources/backports/linux-204-lirc_fix_for_4.12.patch new file mode 100644 index 0000000000..7f5694afe0 --- /dev/null +++ b/packages/linux-drivers/media_build/sources/backports/linux-204-lirc_fix_for_4.12.patch @@ -0,0 +1,24 @@ +Subject: [media] lirc: LIRC_GET_REC_RESOLUTION should return microseconds +Date: Tue, 11 Jul 2017 10:47:37 +0100 + +Since commit e8f4818895b3 ("[media] lirc: advertise +LIRC_CAN_GET_REC_RESOLUTION and improve") lircd uses the ioctl +LIRC_GET_REC_RESOLUTION to determine the shortest pulse or space that +the hardware can detect. This breaks decoding in lirc because lircd +expects the answer in microseconds, but nanoseconds is returned. + +drop at bump to 4.13 + +diff --git a/drivers/media/rc/ir-lirc-codec.c b/drivers/media/rc/ir-lirc-codec.c +index a30af91..d2223c0 100644 +--- a/drivers/media/rc/ir-lirc-codec.c ++++ b/drivers/media/rc/ir-lirc-codec.c +@@ -266,7 +266,7 @@ static long ir_lirc_ioctl(struct file *filep, unsigned int cmd, + if (!dev->rx_resolution) + return -ENOTTY; + +- val = dev->rx_resolution; ++ val = dev->rx_resolution / 1000; + break; + + case LIRC_SET_WIDEBAND_RECEIVER: