From 3b104949ebc43354d265240bdc9e56b1e05aa414 Mon Sep 17 00:00:00 2001 From: Jarod Wilson Date: Sun, 27 Mar 2011 00:08:52 -0400 Subject: [PATCH] Merge in-kernel decode disable support Signed-off-by: Jarod Wilson --- lirc.init | 25 +++++++++++++++++++++++++ lirc.spec | 1 + 2 files changed, 26 insertions(+) mode change 100644 => 100755 lirc.init diff --git a/lirc.init b/lirc.init old mode 100644 new mode 100755 index 1a32831..a397f8b --- a/lirc.init +++ b/lirc.init @@ -74,6 +74,18 @@ start() { echo fi [ $retval -eq 0 ] && touch $lockfile + + # To prevent double key events w/both in-kernel and lirc decode, + # we disable the in-kernel decoding when lircd is started up + # successfully + if [ $retval -eq 0 ]; then + rcs=$(find -L /sys/class/rc/ -maxdepth 2 -name protocols 2> /dev/null) + for rc in $rcs + do + echo lirc > ${rc} + done + fi + return $retval } @@ -92,6 +104,19 @@ stop() { echo fi [ $retval -eq 0 ] && rm -f $lockfile + + # On lircd shutdown, turn all the in-kernel IR decoders back on + rcs=$(find -L /sys/class/rc/ -maxdepth 2 -name protocols 2> /dev/null) + for rc in $rcs + do + echo none > ${rc} + protos=$(cat ${rc}) + for p in $protos + do + echo "+${p}" > ${rc} + done + done + return $retval } diff --git a/lirc.spec b/lirc.spec index ae952d6..d490423 100644 --- a/lirc.spec +++ b/lirc.spec @@ -299,6 +299,7 @@ fi %changelog * Sat Mar 26 2011 Jarod Wilson 0.9.0-1 - Update to lirc 0.9.0 release +- Disable in-kernel IR decoding when starting up lircd, reenable on shutdown * Tue Feb 08 2011 Fedora Release Engineering - 0.9.0-0.2.pre1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild