Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[vdr] Patch for New driver + Old Firmware + Remote Control Plugin
- To: vdr@linuxtv.org
- Subject: [vdr] Patch for New driver + Old Firmware + Remote Control Plugin
- From: Oliver Endriss <o.endriss@gmx.de>
- Date: Wed, 25 Dec 2002 19:50:22 +0100
- Content-transfer-encoding: 8bit
- Content-type: text/plain; charset="iso-8859-1"
- Organization: ESCAPE GmbH EDV-Loesungen
- Reply-to: vdr@linuxtv.org
- Sender: vdr-bounce@linuxtv.org
- User-agent: KMail/1.4.3
Hi all,
due to problems with RTL recordings, some of you might have switched
back to the old firmware. If you want to use the built-in remote
control port of the DVB-S together with the Remote Control plugin,
you have to apply the following patch to the driver:
---------------------------------------- snip ------------------------------------------
diff -ru linux-dvb.2002-11-01/driver/av7110/av7110_ir.c linux-dvb.2002-11-01-oldfirm/driver/av7110/av7110_ir.c
--- linux-dvb.2002-11-01/driver/av7110/av7110_ir.c Thu Oct 10 21:22:29 2002
+++ linux-dvb.2002-11-01-oldfirm/driver/av7110/av7110_ir.c Sun Dec 1 06:02:16 2002
@@ -9,6 +9,8 @@
#include "input_fake.h"
+#define OLDFIRM
+#define REP_TIMEOUT (HZ/8)
#define UP_TIMEOUT (HZ/2)
static int av7110_ir_debug = 0;
@@ -45,20 +47,31 @@
static
+void av7110_emit_keyup (unsigned long data);
+
+
+static
+struct timer_list keyup_timer = { function: av7110_emit_keyup };
+
+
+static
void av7110_emit_keyup (unsigned long data)
{
+#ifdef OLDFIRM
+ clear_bit (data, input_dev.key);
+ input_event (&input_dev, EV_KEY, data, 1);
+ keyup_timer.expires = jiffies + REP_TIMEOUT;
+ add_timer (&keyup_timer);
+#else
if (!data || !test_bit (data, input_dev.key))
return;
input_event (&input_dev, EV_KEY, data, !!0);
+#endif
}
static
-struct timer_list keyup_timer = { function: av7110_emit_keyup };
-
-
-static
void av7110_emit_key (u32 ircom)
{
int down = ircom & (0x80000000);
@@ -73,6 +86,17 @@
return;
}
+#ifdef OLDFIRM
+ if (down) {
+ input_event (&input_dev, EV_KEY, keycode, 1);
+ keyup_timer.expires = jiffies + UP_TIMEOUT;
+ keyup_timer.data = keycode;
+ add_timer (&keyup_timer);
+ } else {
+ input_event (&input_dev, EV_KEY, keycode, 0);
+ del_timer (&keyup_timer);
+ }
+#else
if (timer_pending (&keyup_timer)) {
del_timer (&keyup_timer);
if (keyup_timer.data != keycode)
@@ -87,6 +111,7 @@
keyup_timer.data = keycode;
add_timer (&keyup_timer);
+#endif
}
static
---------------------------------------- snip ------------------------------------------
Notes:
(1) This patch should only be applied, if you use
*new* driver + *old* firmware + built-in remote control port.
(2) The autorepeat function of the remote control works with the old firmware.
Merry Christmas!
Oliver
--
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe vdr" as subject.
Home |
Main Index |
Thread Index