linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/10] rc-core: my current patchqueue
@ 2011-04-28 15:13 David Härdeman
  2011-04-28 15:13 ` [PATCH 01/10] rc-core: int to bool conversion for winbond-cir David Härdeman
                   ` (9 more replies)
  0 siblings, 10 replies; 25+ messages in thread
From: David Härdeman @ 2011-04-28 15:13 UTC (permalink / raw)
  To: linux-media; +Cc: jarod, mchehab

The following series is what's in my current patch queue for rc-core.

It only been lightly tested so far and it's based on the "for_v2.6.39" branch,
but I still wanted to send it to the list so that I can get some feedback while
I refresh the patches to "for_v2.6.40" and do more testing.

The most interesting change is that the scancode that is passed to/from
the EVIOC[GS]KEYCODE_V2 ioctl has been extended so that this struct:

        struct input_keymap_entry {
                __u8  flags;
                __u8  len;
                __u16 index;
                __u32 keycode;
                __u8  scancode[32];
        };

Is parsed like this:

        struct rc_scancode {
                __u16 protocol;
                __u16 reserved[3];
                __u64 scancode;
        }
    
        struct rc_keymap_entry {
                __u8  flags;
                __u8  len;
                __u16 index;
                __u32 keycode;
                union {
                        struct rc_scancode rc;
                        __u8 raw[32];
                };
        };

Which allows the protocol to be specified along with the scancode.

Some heuristics are in place to guess the correct protocol when it is
missing (i.e. when the legacy ioctl's are used or when the new ioctl's
are used but with a shorter len).

The advantage is that rc-core doesn't throw away its knowledge of
the protocol used to generate a given scancode. This also means that 
e.g. merging the rc5 and streamzap decoders is made easier (see one
of the last patches in this series). In addition, it makes it possible
to have mixed-protocol keytables, should anyone wish to do that.

This unfortunately means that every keymap had to be changed as well which
is the reason for the large number of lines changed in the combined diffstat
(the number of lines changed would probably be in the hundreds rather than
thousands if keymaps were excluded).

Comments?

---

David Härdeman (10):
      rc-core: int to bool conversion for winbond-cir
      rc-core: add TX support to the winbond-cir driver
      rc-core: use ir_raw_event_store_with_filter in winbond-cir
      rc-core: add trailing silence in rc-loopback tx
      rc-core: add separate defines for protocol bitmaps and numbers
      rc-core: don't throw away protocol information
      rc-core: use the full 32 bits for NEC scancodes
      rc-core: merge rc5 and streamzap decoders
      rc-core: lirc use unsigned int
      rc-core: move timeout and checks to lirc


 drivers/media/dvb/dm1105/dm1105.c                  |    3 
 drivers/media/dvb/dvb-usb/af9015.c                 |   34 +-
 drivers/media/dvb/dvb-usb/anysee.c                 |    4 
 drivers/media/dvb/dvb-usb/dib0700_core.c           |   10 
 drivers/media/dvb/dvb-usb/dib0700_devices.c        |  126 +++---
 drivers/media/dvb/dvb-usb/dvb-usb.h                |    2 
 drivers/media/dvb/dvb-usb/lmedm04.c                |    2 
 drivers/media/dvb/dvb-usb/technisat-usb2.c         |    2 
 drivers/media/dvb/dvb-usb/ttusb2.c                 |    4 
 drivers/media/dvb/mantis/mantis_input.c            |  117 +++--
 drivers/media/dvb/siano/smsir.c                    |    2 
 drivers/media/dvb/ttpci/budget-ci.c                |    7 
 drivers/media/rc/Kconfig                           |   12 -
 drivers/media/rc/Makefile                          |    1 
 drivers/media/rc/ene_ir.c                          |    6 
 drivers/media/rc/ene_ir.h                          |    2 
 drivers/media/rc/imon.c                            |   35 +-
 drivers/media/rc/ir-jvc-decoder.c                  |    6 
 drivers/media/rc/ir-lirc-codec.c                   |   46 ++
 drivers/media/rc/ir-nec-decoder.c                  |   32 -
 drivers/media/rc/ir-raw.c                          |    2 
 drivers/media/rc/ir-rc5-decoder.c                  |   62 ++-
 drivers/media/rc/ir-rc5-sz-decoder.c               |  153 -------
 drivers/media/rc/ir-rc6-decoder.c                  |    6 
 drivers/media/rc/ir-sony-decoder.c                 |   17 +
 drivers/media/rc/ite-cir.c                         |    7 
 drivers/media/rc/keymaps/rc-adstech-dvb-t-pci.c    |   89 ++--
 drivers/media/rc/keymaps/rc-alink-dtu-m.c          |   37 +-
 drivers/media/rc/keymaps/rc-anysee.c               |   89 ++--
 drivers/media/rc/keymaps/rc-apac-viewcomp.c        |   65 +--
 drivers/media/rc/keymaps/rc-asus-pc39.c            |   79 ++--
 drivers/media/rc/keymaps/rc-ati-tv-wonder-hd-600.c |   49 +-
 drivers/media/rc/keymaps/rc-avermedia-a16d.c       |   69 ++-
 drivers/media/rc/keymaps/rc-avermedia-cardbus.c    |  109 ++---
 drivers/media/rc/keymaps/rc-avermedia-dvbt.c       |   69 ++-
 drivers/media/rc/keymaps/rc-avermedia-m135a.c      |  187 ++++----
 .../media/rc/keymaps/rc-avermedia-m733a-rm-k6.c    |   89 ++--
 drivers/media/rc/keymaps/rc-avermedia-rm-ks.c      |   55 +-
 drivers/media/rc/keymaps/rc-avermedia.c            |   73 ++-
 drivers/media/rc/keymaps/rc-avertv-303.c           |   73 ++-
 drivers/media/rc/keymaps/rc-azurewave-ad-tu700.c   |  107 ++---
 drivers/media/rc/keymaps/rc-behold-columbus.c      |   73 ++-
 drivers/media/rc/keymaps/rc-behold.c               |   69 ++-
 drivers/media/rc/keymaps/rc-budget-ci-old.c        |   91 ++--
 drivers/media/rc/keymaps/rc-cinergy-1400.c         |   75 ++-
 drivers/media/rc/keymaps/rc-cinergy.c              |   73 ++-
 drivers/media/rc/keymaps/rc-dib0700-nec.c          |  141 +++---
 drivers/media/rc/keymaps/rc-dib0700-rc5.c          |  361 ++++++++--------
 drivers/media/rc/keymaps/rc-digitalnow-tinytwin.c  |   99 ++--
 drivers/media/rc/keymaps/rc-digittrade.c           |   57 +--
 drivers/media/rc/keymaps/rc-dm1105-nec.c           |   63 +--
 drivers/media/rc/keymaps/rc-dntv-live-dvb-t.c      |   65 +--
 drivers/media/rc/keymaps/rc-dntv-live-dvbt-pro.c   |  107 ++---
 drivers/media/rc/keymaps/rc-em-terratec.c          |   57 +--
 drivers/media/rc/keymaps/rc-encore-enltv-fm53.c    |   59 +--
 drivers/media/rc/keymaps/rc-encore-enltv.c         |  131 +++---
 drivers/media/rc/keymaps/rc-encore-enltv2.c        |   79 ++--
 drivers/media/rc/keymaps/rc-evga-indtube.c         |   33 +
 drivers/media/rc/keymaps/rc-eztv.c                 |   89 ++--
 drivers/media/rc/keymaps/rc-flydvb.c               |   65 +--
 drivers/media/rc/keymaps/rc-flyvideo.c             |   53 +-
 drivers/media/rc/keymaps/rc-fusionhdtv-mce.c       |  105 ++---
 drivers/media/rc/keymaps/rc-gadmei-rm008z.c        |   63 +--
 drivers/media/rc/keymaps/rc-genius-tvgo-a11mce.c   |   65 +--
 drivers/media/rc/keymaps/rc-gotview7135.c          |   69 ++-
 drivers/media/rc/keymaps/rc-hauppauge.c            |  287 ++++++-------
 drivers/media/rc/keymaps/rc-imon-mce.c             |  173 ++++----
 drivers/media/rc/keymaps/rc-imon-pad.c             |  215 +++++-----
 drivers/media/rc/keymaps/rc-iodata-bctv7e.c        |   87 ++--
 drivers/media/rc/keymaps/rc-kaiomy.c               |   65 +--
 drivers/media/rc/keymaps/rc-kworld-315u.c          |   65 +--
 .../media/rc/keymaps/rc-kworld-plus-tv-analog.c    |   71 ++-
 drivers/media/rc/keymaps/rc-leadtek-y04g0051.c     |  101 ++---
 drivers/media/rc/keymaps/rc-lirc.c                 |    1 
 drivers/media/rc/keymaps/rc-lme2510.c              |  133 +++---
 drivers/media/rc/keymaps/rc-manli.c                |   97 ++--
 drivers/media/rc/keymaps/rc-msi-digivox-ii.c       |   37 +-
 drivers/media/rc/keymaps/rc-msi-digivox-iii.c      |   65 +--
 drivers/media/rc/keymaps/rc-msi-tvanywhere-plus.c  |   89 ++--
 drivers/media/rc/keymaps/rc-msi-tvanywhere.c       |   49 +-
 drivers/media/rc/keymaps/rc-nebula.c               |  111 ++---
 .../media/rc/keymaps/rc-nec-terratec-cinergy-xs.c  |  121 +++--
 drivers/media/rc/keymaps/rc-norwood.c              |   69 +--
 drivers/media/rc/keymaps/rc-npgtech.c              |   71 ++-
 drivers/media/rc/keymaps/rc-pctv-sedna.c           |   65 +--
 drivers/media/rc/keymaps/rc-pinnacle-color.c       |  107 ++---
 drivers/media/rc/keymaps/rc-pinnacle-grey.c        |   83 ++--
 drivers/media/rc/keymaps/rc-pinnacle-pctv-hd.c     |   51 +-
 drivers/media/rc/keymaps/rc-pixelview-002t.c       |   53 +-
 drivers/media/rc/keymaps/rc-pixelview-mk12.c       |   63 +--
 drivers/media/rc/keymaps/rc-pixelview-new.c        |   63 +--
 drivers/media/rc/keymaps/rc-pixelview.c            |   77 ++-
 .../media/rc/keymaps/rc-powercolor-real-angel.c    |   71 ++-
 drivers/media/rc/keymaps/rc-proteus-2309.c         |   49 +-
 drivers/media/rc/keymaps/rc-purpletv.c             |   71 ++-
 drivers/media/rc/keymaps/rc-pv951.c                |   63 +--
 drivers/media/rc/keymaps/rc-rc6-mce.c              |  151 +++----
 .../media/rc/keymaps/rc-real-audio-220-32-keys.c   |   57 +--
 drivers/media/rc/keymaps/rc-streamzap.c            |   75 ++-
 drivers/media/rc/keymaps/rc-tbs-nec.c              |   69 ++-
 drivers/media/rc/keymaps/rc-technisat-usb2.c       |   67 +--
 drivers/media/rc/keymaps/rc-terratec-cinergy-xs.c  |   95 ++--
 drivers/media/rc/keymaps/rc-terratec-slim-2.c      |   37 +-
 drivers/media/rc/keymaps/rc-terratec-slim.c        |   57 +--
 drivers/media/rc/keymaps/rc-tevii-nec.c            |   95 ++--
 drivers/media/rc/keymaps/rc-total-media-in-hand.c  |   71 ++-
 drivers/media/rc/keymaps/rc-trekstor.c             |   57 +--
 drivers/media/rc/keymaps/rc-tt-1500.c              |   79 ++--
 drivers/media/rc/keymaps/rc-twinhan1027.c          |  107 ++---
 drivers/media/rc/keymaps/rc-videomate-m1f.c        |  103 ++---
 drivers/media/rc/keymaps/rc-videomate-s350.c       |   89 ++--
 drivers/media/rc/keymaps/rc-videomate-tv-pvr.c     |   93 ++--
 drivers/media/rc/keymaps/rc-winfast-usbii-deluxe.c |   57 +--
 drivers/media/rc/keymaps/rc-winfast.c              |  113 +++--
 drivers/media/rc/mceusb.c                          |   30 -
 drivers/media/rc/nuvoton-cir.c                     |   14 -
 drivers/media/rc/rc-core-priv.h                    |    9 
 drivers/media/rc/rc-loopback.c                     |   33 -
 drivers/media/rc/rc-main.c                         |  248 ++++++++---
 drivers/media/rc/streamzap.c                       |   12 -
 drivers/media/rc/winbond-cir.c                     |  442 ++++++++++++++++----
 drivers/media/video/bt8xx/bttv-input.c             |   10 
 drivers/media/video/cx18/cx18-i2c.c                |    2 
 drivers/media/video/cx231xx/cx231xx-input.c        |    2 
 drivers/media/video/cx23885/cx23885-input.c        |    4 
 drivers/media/video/cx88/cx88-input.c              |   18 -
 drivers/media/video/em28xx/em28xx-cards.c          |   17 +
 drivers/media/video/em28xx/em28xx-input.c          |   38 +-
 drivers/media/video/em28xx/em28xx.h                |    1 
 drivers/media/video/hdpvr/hdpvr-i2c.c              |    2 
 drivers/media/video/ir-kbd-i2c.c                   |   26 +
 drivers/media/video/ivtv/ivtv-i2c.c                |    8 
 drivers/media/video/pvrusb2/pvrusb2-i2c-core.c     |    4 
 drivers/media/video/saa7134/saa7134-input.c        |    8 
 drivers/staging/tm6000/tm6000-cards.c              |    2 
 drivers/staging/tm6000/tm6000-input.c              |   46 +-
 include/media/rc-core.h                            |   30 +
 include/media/rc-map.h                             |   62 ++-
 138 files changed, 4735 insertions(+), 4609 deletions(-)
 delete mode 100644 drivers/media/rc/ir-rc5-sz-decoder.c

-- 
David Härdeman


^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2011-09-21 17:33 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-04-28 15:13 [PATCH 00/10] rc-core: my current patchqueue David Härdeman
2011-04-28 15:13 ` [PATCH 01/10] rc-core: int to bool conversion for winbond-cir David Härdeman
2011-04-28 15:13 ` [PATCH 02/10] rc-core: add TX support to the winbond-cir driver David Härdeman
2011-04-28 15:13 ` [PATCH 03/10] rc-core: use ir_raw_event_store_with_filter in winbond-cir David Härdeman
2011-04-28 15:13 ` [PATCH 04/10] rc-core: add trailing silence in rc-loopback tx David Härdeman
2011-04-28 15:13 ` [PATCH 05/10] rc-core: add separate defines for protocol bitmaps and numbers David Härdeman
2011-05-04 14:56   ` Mauro Carvalho Chehab
2011-05-06 12:23     ` David Härdeman
2011-04-28 15:13 ` [PATCH 07/10] rc-core: use the full 32 bits for NEC scancodes David Härdeman
2011-05-04 15:16   ` Mauro Carvalho Chehab
2011-05-06  9:58     ` David Härdeman
2011-04-28 15:13 ` [PATCH 08/10] rc-core: merge rc5 and streamzap decoders David Härdeman
2011-05-04 15:19   ` Mauro Carvalho Chehab
2011-05-06 11:33     ` David Härdeman
2011-04-28 15:13 ` [PATCH 09/10] rc-core: lirc use unsigned int David Härdeman
2011-05-04 15:23   ` Mauro Carvalho Chehab
2011-05-06  9:46     ` David Härdeman
2011-06-11 12:16       ` Mauro Carvalho Chehab
2011-04-28 15:14 ` [PATCH 10/10] rc-core: move timeout and checks to lirc David Härdeman
2011-09-21 16:40   ` Mauro Carvalho Chehab
2011-04-28 20:13 ` [PATCH 00/10] rc-core: my current patchqueue Malcolm Priestley
2011-04-29  8:08   ` David Härdeman
2011-05-04 15:13     ` Mauro Carvalho Chehab
2011-05-06 10:06       ` David Härdeman
2011-05-02 17:58   ` Mauro Carvalho Chehab

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).