[RFC PATCH 0/4] Implementation of IR support using the input subsystem

From: Jon Smirl
Date: Mon Sep 29 2008 - 12:17:36 EST


Second pass at implementing evdev support for IR. The goal of in-kernel IR is to integrate IR events into the evdev input event queue and maintain ordering of events from all input devices.

Note that user space IR device drivers can use the existing support in evdev to inject events into the input queue.

Send and receive are implemented. Received IR messages are decoded and sent to user space as input messages. Send is done via an IOCTL on the input device.

Two drivers are supplied. mceusb2 implements send and receive support for the Microsoft USB IR dongle.

The GPT driver implements receive only support for a GPT pin - GPT is a GPIO with a timer attached.

Encoders and decoders have not been written for all protocols. Repeat is not handled for any protocol.
I'm looking for help. There are 15 more existing LIRC drivers.

---

Jon Smirl (4):
Microsoft mceusb2 driver for in-kernel IR subsystem
GPT driver for in-kernel IR support.
Example of PowerPC device tree support for GPT based IR
Changes to core input subsystem to allow send and receive of IR messages. Encode and decode state machines are provided for common IR porotocols such as Sony, JVC, NEC, Philips, etc.


arch/powerpc/boot/dts/dspeak01.dts | 19 -
drivers/input/Kconfig | 2
drivers/input/Makefile | 3
drivers/input/evdev.c | 55 +++
drivers/input/input.c | 4
drivers/input/ir-core.c | 523 ++++++++++++++++++++++++++
drivers/input/ir/Kconfig | 26 +
drivers/input/ir/Makefile | 7
drivers/input/ir/ir-gpt.c | 214 +++++++++++
drivers/input/ir/ir-mceusb2.c | 729 ++++++++++++++++++++++++++++++++++++
include/linux/input.h | 70 +++
11 files changed, 1640 insertions(+), 12 deletions(-)
create mode 100644 drivers/input/ir-core.c
create mode 100644 drivers/input/ir/Kconfig
create mode 100644 drivers/input/ir/Makefile
create mode 100644 drivers/input/ir/ir-gpt.c
create mode 100644 drivers/input/ir/ir-mceusb2.c

--
Jon Smirl
jonsmirl@xxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/