kernel-fxtec-pro1x/drivers/media/IR
David Härdeman 724e249550 V4L/DVB: Teach drivers/media/IR/ir-raw-event.c to use durations
drivers/media/IR/ir-raw-event.c is currently written with the assumption
that all "raw" hardware will generate events only on state change (i.e.
when a pulse or space starts).

However, some hardware (like mceusb, probably the most popular IR receiver
out there) only generates duration data (and that data is buffered so using
any kind of timing on the data is futile).

Furthermore, using signed int's to represent pulse/space durations is a
well-known approach when writing ir decoders.

With this patch:

- s64 int's are used to represent pulse/space durations in ns

- a workqueue is used to decode the ir protocols outside of interrupt context

- #defines are added to make decoders clearer

- decoder reset is implemented by passing a zero duration to the kfifo queue
  and decoders are updated accordingly

Signed-off-by: David Härdeman <david@hardeman.nu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-05-19 12:57:03 -03:00
..
keymaps V4L/DVB: ir-core: Add support for badly-implemented hardware decoders 2010-05-19 12:56:58 -03:00
ir-functions.c V4L/DVB (13680): ir: use unsigned long instead of enum 2010-02-26 15:10:24 -03:00
ir-keytable.c V4L/DVB: ir-core: Distinguish sysfs attributes for in-hardware and raw decoders 2010-05-19 12:57:02 -03:00
ir-nec-decoder.c V4L/DVB: Teach drivers/media/IR/ir-raw-event.c to use durations 2010-05-19 12:57:03 -03:00
ir-raw-event.c V4L/DVB: Teach drivers/media/IR/ir-raw-event.c to use durations 2010-05-19 12:57:03 -03:00
ir-rc5-decoder.c V4L/DVB: Teach drivers/media/IR/ir-raw-event.c to use durations 2010-05-19 12:57:03 -03:00
ir-sysfs.c V4L/DVB: ir-core: fix gcc warning noise 2010-05-19 12:57:03 -03:00
Kconfig V4L-DVB: ir-rc5-decoder: Add a decoder for RC-5 IR protocol 2010-05-19 12:56:56 -03:00
Makefile V4L-DVB: ir-rc5-decoder: Add a decoder for RC-5 IR protocol 2010-05-19 12:56:56 -03:00
rc-map.c V4L/DVB: ir: Make sure that the spinlocks are properly initialized 2010-05-19 12:57:01 -03:00