linux/include/media
Jarod Wilson 7a569f524d V4L/DVB: IR/streamzap: functional in-kernel decoding
This patch makes in-kernel decoding with the stock Streamzap PC Remote
work out of the box. There are quite a few things going on in this
patch, all related to getting this working:

1) I had to enable reporting of a long space at the end of each signal,
   or I had weird buffering and keybounce issues.

2) The keymap has been reworked slightly to match actual decoded values,
   the first edition was missing the pre-data bits present in the lirc
   config file for this remote.

3) There's a whole new decoder included, specifically for the
   not-quite-RC5 15-bit protocol variant used by the Streamzap PC
   Remote. The decoder, while usable with other recievers (tested with
   an mceusb receiver), will only be loaded by the streamzap driver, as
   its likely not of use in almost all other situations. This can be
   revisited if/when all keytable loading (and disabling of unneeded
   protocol decoder engines) is moved to userspace, but for now, I think
   this makes the most sense.

Note that I did try to enable handling the streamzap RC5-ish protocol in
the current RC5 decoder, but there's no particularly easy way to tell if
its 14-bit RC5 or 15-bit Streamzap until we see bit 14, and even then,
in testing an attempted decoder merge, only 2/3 of the keys were
properly recognized as being the 15-bit variant and decoded correctly,
the rest were close enough to compliant with 14-bit that they were
decoded as such (but they have overlap with one another, and thus we
can't just shrug and use the 14-bit decoded values).

Also of note in this patch is the removal of the streamzap driver's
internal delay buffer. Per discussion w/Christoph, it shouldn't be
needed by lirc any longer anyway, and it doesn't seem to make any
difference to the in-kernel decoder engine. That being the case, I'm
yanking it all out, as it greatly simplifies the driver code.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-21 01:04:47 -02:00
..
davinci V4L/DVB: V4L: vpfe_capture: Add call back function for interrupt clear for vpfe_cfg 2010-05-18 00:52:43 -03:00
adv7343.h V4L/DVB (11743): Analog Devices ADV7343 video encoder driver 2009-06-16 18:20:59 -03:00
ak881x.h V4L/DVB: V4L: v4l2-subdev driver for AK8813 and AK8814 TV-encoders from AKM 2010-05-19 12:58:02 -03:00
bt819.h V4L/DVB (11022): zoran/bt819: use new notify functionality. 2009-03-30 12:43:21 -03:00
cs53l32a.h V4L/DVB (3599): Implement new routing commands for wm8775 and cs53l32a. 2006-03-24 16:27:00 -03:00
cs5345.h V4L/DVB (6869): cs5345: new i2c driver 2008-01-25 19:04:08 -02:00
cx2341x.h V4L/DVB: cx2341x: convert to the control framework 2010-08-08 23:43:05 -03:00
cx25840.h V4L/DVB: cx25840/ivtv: replace ugly priv control with s_config 2010-08-08 23:43:05 -03:00
i2c-addr.h V4L/DVB (9940): bt832: remove this driver 2008-12-30 09:39:25 -02:00
ir-common.h V4L/DVB: ir-common: remove keymap tables from the module 2010-05-19 12:56:51 -03:00
ir-core.h V4L/DVB: IR: extend interfaces to support more device settings 2010-08-08 23:43:00 -03:00
ir-kbd-i2c.h V4L/DVB: ir-core: partially convert ir-kbd-i2c.c to not use ir-functions.c 2010-08-02 14:53:59 -03:00
lirc_dev.h V4L/DVB: IR/lirc: make lirc userspace and staging modules buildable 2010-08-02 16:42:55 -03:00
lirc.h V4L/DVB: IR: extend interfaces to support more device settings 2010-08-08 23:43:00 -03:00
m52790.h V4L/DVB (6486): m52790: add new Mitsubishi A/V switch i2c driver 2008-01-25 19:01:46 -02:00
msp3400.h V4L/DVB (11380): v4l2-subdev: change s_routing prototype 2009-04-06 21:44:27 -03:00
mt9t112.h V4L/DVB (13670): soc-camera: Add mt9t112 camera driver 2009-12-16 09:27:41 -02:00
ov772x.h soc-camera: ov772x: Modify buswidth control 2010-02-26 15:11:00 -03:00
ovcamchip.h i2c: Cleanup the includes of <linux/i2c.h> 2007-05-01 23:26:29 +02:00
pwc-ioctl.h v4l-dvb: remove legacy checks to allow support for kernels < 2.6.10 2008-07-20 07:17:52 -03:00
radio-si4713.h V4L/DVB (12551): FM TX: si4713: Add files to add radio interface for si4713 2009-09-12 12:19:19 -03:00
rc-map.h V4L/DVB: IR/streamzap: functional in-kernel decoding 2010-10-21 01:04:47 -02:00
rds.h include/media/: Spelling fixes 2008-02-03 17:19:47 +02:00
rj54n1cb0c.h V4L/DVB (13661): rj54n1cb0c: Add cropping, auto white balance, restrict sizes, add platform data 2009-12-16 09:27:30 -02:00
saa6752hs.h [PATCH] v4l: SAA7134 hybrid DVB 2005-07-12 16:01:05 -07:00
saa7115.h V4L/DVB (8940): saa7115: fix saa7111(a) support 2008-10-12 09:37:00 -02:00
saa7127.h V4L/DVB (3608): Implement new routing commands in saa7127.c 2006-04-02 04:54:56 -03:00
saa7146_vv.h V4L/DVB: saa7146: fix regression of the av7110/budget-av driver 2010-05-06 19:20:50 -03:00
saa7146.h V4L/DVB (11377): v4l: increase version numbers of drivers converted to v4l2_subdev. 2009-04-06 21:44:26 -03:00
sh_mobile_ceu.h V4L/DVB: V4L2: sh_mobile_camera_ceu: add support for CSI2 2010-08-02 16:43:40 -03:00
sh_mobile_csi2.h V4L/DVB: V4L2: soc-camera: add a MIPI CSI-2 driver for SH-Mobile platforms 2010-08-02 16:43:39 -03:00
sh_vou.h V4L/DVB: V4L: SuperH Video Output Unit (VOU) driver 2010-05-19 12:58:01 -03:00
si4713.h V4L/DVB (12552): FM TX: si4713: Add files to handle si4713 i2c device 2009-09-12 12:19:20 -03:00
soc_camera_platform.h V4L/DVB (13659): soc-camera: convert to the new mediabus API 2009-12-16 09:27:29 -02:00
soc_camera.h V4L/DVB: V4L2: soc-camera: export soc-camera bus type for notifications 2010-08-02 16:43:38 -03:00
soc_mediabus.h V4L/DVB (13658): v4l: add a media-bus API for configuring v4l2 subdev pixel and frame formats 2009-12-16 09:27:27 -02:00
timb_radio.h V4L/DVB: radio: Add radio-timb 2010-02-26 15:10:56 -03:00
tuner-types.h V4L/DVB (7352): tuner-simple: enable digital tuning support for Philips FMD1216ME 2008-04-24 14:07:50 -03:00
tuner.h V4L/DVB: tuner: Add a definition for the Philips FQ1236 MK5 NTSC tuner 2010-07-08 16:49:53 -03:00
tvaudio.h V4L/DVB (11376): tvaudio.h: add static inline to retrieve the list of possible i2c addrs. 2009-04-06 21:44:25 -03:00
tveeprom.h V4L/DVB (8479): tveeprom/ivtv: fix usage of has_ir field 2008-07-26 12:54:42 -03:00
tvp514x.h V4L/DVB (12246): tvp514x: Migration to sub-device framework 2009-09-19 00:18:09 -03:00
tvp5150.h V4L/DVB (3712): Fix video input setting of em28xx, use _INT_S_VIDEO_ROUTING in tvp5150 2006-06-25 01:57:38 -03:00
tvp7002.h V4L/DVB: Definitions for TVP7002 in DM365 2010-02-26 15:11:01 -03:00
tw9910.h tw9910: use TABs for indentation 2010-02-26 15:10:59 -03:00
upd64031a.h V4L/DVB (3666): Remove trailing newlines 2006-04-02 04:55:52 -03:00
upd64083.h V4L/DVB (3666): Remove trailing newlines 2006-04-02 04:55:52 -03:00
v4l2-chip-ident.h V4L/DVB: V4L: v4l2-subdev driver for AK8813 and AK8814 TV-encoders from AKM 2010-05-19 12:58:02 -03:00
v4l2-common.h V4L/DVB: v4l2-common: simplify prio utility functions 2010-05-19 12:58:54 -03:00
v4l2-ctrls.h V4L/DVB: v4l2: Add new control handling framework 2010-08-08 23:43:03 -03:00
v4l2-dev.h V4L/DVB: v4l2: Add new control handling framework 2010-08-08 23:43:03 -03:00
v4l2-device.h V4L/DVB: v4l2: Add new control handling framework 2010-08-08 23:43:03 -03:00
v4l2-event.h V4L/DVB: V4L: Events: Add backend 2010-05-19 12:58:06 -03:00
v4l2-fh.h V4L/DVB: V4L: Events: Add backend 2010-05-19 12:58:06 -03:00
v4l2-i2c-drv.h V4L/DVB (12108): v4l2-i2c-drv.h: add comment describing when not to use this header. 2009-06-23 03:14:39 -03:00
v4l2-int-device.h V4L/DVB (10141): v4l2: debugging API changed to match against driver name instead of ID. 2009-01-02 17:11:52 -02:00
v4l2-ioctl.h V4L/DVB: V4L: Events: Support event handling in do_ioctl 2010-05-19 12:58:07 -03:00
v4l2-mediabus.h V4L/DVB: v4l: add RGB444 mediabus formats 2010-10-21 01:04:41 -02:00
v4l2-mem2mem.h V4L/DVB: add memory-to-memory device helper framework for videobuf 2010-05-19 12:58:03 -03:00
v4l2-subdev.h V4L/DVB: v4l2-subdev: remove obsolete enum/try/s/g_fmt 2010-10-21 01:04:42 -02:00
videobuf-core.h V4L/DVB: videobuf: Remove videobuf_mapping start and end fields 2010-08-02 15:23:09 -03:00
videobuf-dma-contig.h V4L/DVB (13377): make struct videobuf_queue_ops constant 2009-12-05 18:41:35 -02:00
videobuf-dma-sg.h V4L/DVB: videobuf-dma-sg: set correct size in last sg element 2010-09-27 22:22:01 -03:00
videobuf-dvb.h V4L/DVB (13103): create a standard method for dvb adapter drivers to override frontend ioctls 2009-12-05 18:40:21 -02:00
videobuf-vmalloc.h V4L/DVB: videobuf: Rename vmalloc fields to vaddr 2010-08-02 15:25:57 -03:00
wm8775.h V4L/DVB (3599): Implement new routing commands for wm8775 and cs53l32a. 2006-03-24 16:27:00 -03:00