mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 13:46:49 +00:00
lirc: update to lirc-0.9.0
Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
parent
72ba432f04
commit
c30c2b92b4
@ -25,7 +25,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://code.google.com/p/eventlircd"
|
||||
PKG_URL="$OPENELEC_SRC/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||
PKG_DEPENDS="udev lirc"
|
||||
PKG_DEPENDS="udev"
|
||||
PKG_BUILD_DEPENDS="toolchain udev"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="system/remote"
|
||||
@ -34,3 +34,7 @@ PKG_LONGDESC="The eventlircd daemon provides four functions for LIRC devices"
|
||||
PKG_IS_ADDON="no"
|
||||
|
||||
PKG_AUTORECONF="yes"
|
||||
|
||||
if [ "$DEVTOOLS" = "yes" ]; then
|
||||
PKG_DEPENDS="$PKG_DEPENDS lirc"
|
||||
fi
|
||||
|
@ -47,5 +47,3 @@ cd $PKG_BUILD
|
||||
$DEBUG_CONFIG
|
||||
|
||||
make
|
||||
|
||||
$MAKEINSTALL -C tools
|
||||
|
@ -27,9 +27,8 @@ mkdir -p $INSTALL/usr/sbin
|
||||
|
||||
mkdir -p $INSTALL/etc/lirc
|
||||
cp $PKG_BUILD/remotes/mceusb/lircd.conf.mceusb $INSTALL/etc/lirc/lircd.conf
|
||||
# cp $PKG_BUILD/remotes/devinput/lircd.conf.devinput $INSTALL/etc/lirc
|
||||
cp $PKG_BUILD/remotes/devinput/lircd.conf.devinput $INSTALL/etc/lirc
|
||||
|
||||
if [ "$DEVTOOLS" = yes ]; then
|
||||
mkdir -p $INSTALL/usr/sbin
|
||||
cp $PKG_BUILD/daemons/lircmd $INSTALL/usr/sbin # do we need this?
|
||||
|
||||
@ -43,4 +42,3 @@ if [ "$DEVTOOLS" = yes ]; then
|
||||
cp $PKG_BUILD/tools/mode2 $INSTALL/usr/bin
|
||||
cp $PKG_BUILD/daemons/irrecord $INSTALL/usr/bin
|
||||
cp $PKG_BUILD/tools/irsend $INSTALL/usr/bin # do we need this?
|
||||
fi
|
||||
|
@ -19,7 +19,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="lirc"
|
||||
PKG_VERSION="0.8.7"
|
||||
PKG_VERSION="0.9.0"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
|
@ -1,116 +0,0 @@
|
||||
Index: lirc-0.8.7pre2/drivers/lirc.h
|
||||
===================================================================
|
||||
--- lirc-0.8.7pre2.orig/drivers/lirc.h
|
||||
+++ lirc-0.8.7pre2/drivers/lirc.h
|
||||
@@ -11,6 +11,9 @@
|
||||
#define __USE_LINUX_IOCTL_DEFS
|
||||
#include <sys/ioctl.h>
|
||||
#endif
|
||||
+#include <stdint.h>
|
||||
+
|
||||
+typedef uint32_t __u32;
|
||||
|
||||
/* <obsolete> */
|
||||
#define PULSE_BIT 0x01000000
|
||||
@@ -95,60 +96,60 @@ typedef int lirc_t;
|
||||
|
||||
/*** IOCTL commands for lirc driver ***/
|
||||
|
||||
-#define LIRC_GET_FEATURES _IOR('i', 0x00000000, unsigned long)
|
||||
+#define LIRC_GET_FEATURES _IOR('i', 0x00000000, __u32)
|
||||
|
||||
-#define LIRC_GET_SEND_MODE _IOR('i', 0x00000001, unsigned long)
|
||||
-#define LIRC_GET_REC_MODE _IOR('i', 0x00000002, unsigned long)
|
||||
-#define LIRC_GET_SEND_CARRIER _IOR('i', 0x00000003, unsigned int)
|
||||
-#define LIRC_GET_REC_CARRIER _IOR('i', 0x00000004, unsigned int)
|
||||
-#define LIRC_GET_SEND_DUTY_CYCLE _IOR('i', 0x00000005, unsigned int)
|
||||
-#define LIRC_GET_REC_DUTY_CYCLE _IOR('i', 0x00000006, unsigned int)
|
||||
-#define LIRC_GET_REC_RESOLUTION _IOR('i', 0x00000007, unsigned int)
|
||||
-
|
||||
-#define LIRC_GET_MIN_TIMEOUT _IOR('i', 0x00000008, lirc_t)
|
||||
-#define LIRC_GET_MAX_TIMEOUT _IOR('i', 0x00000009, lirc_t)
|
||||
-
|
||||
-#define LIRC_GET_MIN_FILTER_PULSE _IOR('i', 0x0000000a, lirc_t)
|
||||
-#define LIRC_GET_MAX_FILTER_PULSE _IOR('i', 0x0000000b, lirc_t)
|
||||
-#define LIRC_GET_MIN_FILTER_SPACE _IOR('i', 0x0000000c, lirc_t)
|
||||
-#define LIRC_GET_MAX_FILTER_SPACE _IOR('i', 0x0000000d, lirc_t)
|
||||
+#define LIRC_GET_SEND_MODE _IOR('i', 0x00000001, __u32)
|
||||
+#define LIRC_GET_REC_MODE _IOR('i', 0x00000002, __u32)
|
||||
+#define LIRC_GET_SEND_CARRIER _IOR('i', 0x00000003, __u32)
|
||||
+#define LIRC_GET_REC_CARRIER _IOR('i', 0x00000004, __u32)
|
||||
+#define LIRC_GET_SEND_DUTY_CYCLE _IOR('i', 0x00000005, __u32)
|
||||
+#define LIRC_GET_REC_DUTY_CYCLE _IOR('i', 0x00000006, __u32)
|
||||
+#define LIRC_GET_REC_RESOLUTION _IOR('i', 0x00000007, __u32)
|
||||
+
|
||||
+#define LIRC_GET_MIN_TIMEOUT _IOR('i', 0x00000008, __u32)
|
||||
+#define LIRC_GET_MAX_TIMEOUT _IOR('i', 0x00000009, __u32)
|
||||
+
|
||||
+#define LIRC_GET_MIN_FILTER_PULSE _IOR('i', 0x0000000a, __u32)
|
||||
+#define LIRC_GET_MAX_FILTER_PULSE _IOR('i', 0x0000000b, __u32)
|
||||
+#define LIRC_GET_MIN_FILTER_SPACE _IOR('i', 0x0000000c, __u32)
|
||||
+#define LIRC_GET_MAX_FILTER_SPACE _IOR('i', 0x0000000d, __u32)
|
||||
|
||||
/* code length in bits, currently only for LIRC_MODE_LIRCCODE */
|
||||
-#define LIRC_GET_LENGTH _IOR('i', 0x0000000f, unsigned long)
|
||||
+#define LIRC_GET_LENGTH _IOR('i', 0x0000000f, __u32)
|
||||
|
||||
/* all values set should be reset by the driver when the device is
|
||||
reopened */
|
||||
|
||||
/* obsolete: drivers only support one mode */
|
||||
-#define LIRC_SET_SEND_MODE _IOW('i', 0x00000011, unsigned long)
|
||||
+#define LIRC_SET_SEND_MODE _IOW('i', 0x00000011, __u32)
|
||||
/* obsolete: drivers only support one mode */
|
||||
-#define LIRC_SET_REC_MODE _IOW('i', 0x00000012, unsigned long)
|
||||
+#define LIRC_SET_REC_MODE _IOW('i', 0x00000012, __u32)
|
||||
/* Note: these can reset the according pulse_width */
|
||||
-#define LIRC_SET_SEND_CARRIER _IOW('i', 0x00000013, unsigned int)
|
||||
-#define LIRC_SET_REC_CARRIER _IOW('i', 0x00000014, unsigned int)
|
||||
-#define LIRC_SET_SEND_DUTY_CYCLE _IOW('i', 0x00000015, unsigned int)
|
||||
-#define LIRC_SET_REC_DUTY_CYCLE _IOW('i', 0x00000016, unsigned int)
|
||||
-#define LIRC_SET_TRANSMITTER_MASK _IOW('i', 0x00000017, unsigned int)
|
||||
+#define LIRC_SET_SEND_CARRIER _IOW('i', 0x00000013, __u32)
|
||||
+#define LIRC_SET_REC_CARRIER _IOW('i', 0x00000014, __u32)
|
||||
+#define LIRC_SET_SEND_DUTY_CYCLE _IOW('i', 0x00000015, __u32)
|
||||
+#define LIRC_SET_REC_DUTY_CYCLE _IOW('i', 0x00000016, __u32)
|
||||
+#define LIRC_SET_TRANSMITTER_MASK _IOW('i', 0x00000017, __u32)
|
||||
|
||||
/* a value of 0 disables all hardware timeouts and data should be
|
||||
reported as soon as possible */
|
||||
-#define LIRC_SET_REC_TIMEOUT _IOW('i', 0x00000018, lirc_t)
|
||||
+#define LIRC_SET_REC_TIMEOUT _IOW('i', 0x00000018, __u32)
|
||||
/* 1 enables, 0 disables timeout reports in MODE2 */
|
||||
-#define LIRC_SET_REC_TIMEOUT_REPORTS _IOW('i', 0x00000019, unsigned int)
|
||||
+#define LIRC_SET_REC_TIMEOUT_REPORTS _IOW('i', 0x00000019, __u32)
|
||||
|
||||
/* pulses shorter than this are filtered out by hardware (software
|
||||
emulation in lirc_dev/lircd?) */
|
||||
-#define LIRC_SET_REC_FILTER_PULSE _IOW('i', 0x0000001a, lirc_t)
|
||||
+#define LIRC_SET_REC_FILTER_PULSE _IOW('i', 0x0000001a, __u32)
|
||||
/* spaces shorter than this are filtered out by hardware (software
|
||||
emulation in lirc_dev/lircd?) */
|
||||
-#define LIRC_SET_REC_FILTER_SPACE _IOW('i', 0x0000001b, lirc_t)
|
||||
+#define LIRC_SET_REC_FILTER_SPACE _IOW('i', 0x0000001b, __u32)
|
||||
/* if filter cannot be set independently for pulse/space, this should
|
||||
be used */
|
||||
-#define LIRC_SET_REC_FILTER _IOW('i', 0x0000001c, lirc_t)
|
||||
+#define LIRC_SET_REC_FILTER _IOW('i', 0x0000001c, __u32)
|
||||
|
||||
/* if enabled from the next key press on the driver will send
|
||||
LIRC_MODE2_FREQUENCY packets */
|
||||
-#define LIRC_SET_MEASURE_CARRIER_MODE _IOW('i', 0x0000001d, unsigned int)
|
||||
+#define LIRC_SET_MEASURE_CARRIER_MODE _IOW('i', 0x0000001d, __u32)
|
||||
|
||||
/*
|
||||
* to set a range use
|
||||
@@ -157,8 +158,8 @@ typedef int lirc_t;
|
||||
* LIRC_SET_REC_DUTY_CYCLE/LIRC_SET_REC_CARRIER with the upper bound
|
||||
*/
|
||||
|
||||
-#define LIRC_SET_REC_DUTY_CYCLE_RANGE _IOW('i', 0x0000001e, unsigned int)
|
||||
-#define LIRC_SET_REC_CARRIER_RANGE _IOW('i', 0x0000001f, unsigned int)
|
||||
+#define LIRC_SET_REC_DUTY_CYCLE_RANGE _IOW('i', 0x0000001e, __u32)
|
||||
+#define LIRC_SET_REC_CARRIER_RANGE _IOW('i', 0x0000001f, __u32)
|
||||
|
||||
#define LIRC_NOTIFY_DECODE _IO('i', 0x00000020)
|
||||
|
@ -1,69 +0,0 @@
|
||||
diff -Naur lirc-0.8.7-old/daemons/input_map.c lirc-0.8.7-new/daemons/input_map.c
|
||||
--- lirc-0.8.7-old/daemons/input_map.c 2008-10-26 08:10:17.000000000 -0700
|
||||
+++ lirc-0.8.7-new/daemons/input_map.c 2010-09-07 16:19:12.000000000 -0700
|
||||
@@ -25,6 +25,21 @@
|
||||
{NULL, 0}
|
||||
};
|
||||
|
||||
+int get_input_code_by_index(int index, linux_input_code *code)
|
||||
+{
|
||||
+ int i;
|
||||
+
|
||||
+ for (i=0; input_map[i].name != NULL; i++)
|
||||
+ {
|
||||
+ if (i == index)
|
||||
+ {
|
||||
+ *code = input_map[i].code;
|
||||
+ return i;
|
||||
+ }
|
||||
+ }
|
||||
+ return -1;
|
||||
+}
|
||||
+
|
||||
int get_input_code(const char *name, linux_input_code *code)
|
||||
{
|
||||
int i;
|
||||
diff -Naur lirc-0.8.7-old/daemons/input_map.h lirc-0.8.7-new/daemons/input_map.h
|
||||
--- lirc-0.8.7-old/daemons/input_map.h 2008-10-26 08:10:17.000000000 -0700
|
||||
+++ lirc-0.8.7-new/daemons/input_map.h 2010-09-07 16:19:12.000000000 -0700
|
||||
@@ -28,6 +28,7 @@
|
||||
typedef unsigned short linux_input_code;
|
||||
#endif
|
||||
|
||||
+int get_input_code_by_index(int index, linux_input_code *code);
|
||||
int get_input_code(const char *name, linux_input_code *code);
|
||||
void fprint_namespace(FILE *f);
|
||||
int is_in_namespace(const char *name);
|
||||
diff -Naur lirc-0.8.7-old/daemons/lircd.c lirc-0.8.7-new/daemons/lircd.c
|
||||
--- lirc-0.8.7-old/daemons/lircd.c 2010-08-26 22:08:09.000000000 -0700
|
||||
+++ lirc-0.8.7-new/daemons/lircd.c 2010-09-07 16:19:12.000000000 -0700
|
||||
@@ -422,6 +422,8 @@
|
||||
#if defined(__linux__)
|
||||
int fd;
|
||||
int key;
|
||||
+ linux_input_code code;
|
||||
+ int i;
|
||||
struct uinput_user_dev dev;
|
||||
|
||||
fd = open("/dev/input/uinput", O_RDWR);
|
||||
@@ -450,12 +452,16 @@
|
||||
goto setup_error;
|
||||
}
|
||||
|
||||
- for(key = KEY_RESERVED; key <= KEY_UNKNOWN; key++)
|
||||
+ for(i = 0; get_input_code_by_index(i, &code) >= 0; i++)
|
||||
{
|
||||
- if(ioctl(fd, UI_SET_KEYBIT, key) != 0)
|
||||
+ key = (int)code;
|
||||
+ if ((key < BTN_MISC) || (key > BTN_GEAR_UP))
|
||||
{
|
||||
- goto setup_error;
|
||||
- }
|
||||
+ if(ioctl(fd, UI_SET_KEYBIT, key) != 0)
|
||||
+ {
|
||||
+ goto setup_error;
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
|
||||
if(ioctl(fd, UI_DEV_CREATE) != 0)
|
Loading…
x
Reference in New Issue
Block a user