diff options
-rw-r--r-- | linux/drivers/media/common/Makefile | 1 | ||||
-rw-r--r-- | linux/drivers/media/common/ir-functions.c (renamed from linux/drivers/media/common/ir-common.c) | 3 | ||||
-rw-r--r-- | linux/drivers/media/common/ir-keymaps.c (renamed from linux/include/media/ir-keymaps.h) | 136 | ||||
-rw-r--r-- | linux/drivers/media/video/bttv-input.c | 3 | ||||
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-input.c | 3 | ||||
-rw-r--r-- | linux/drivers/media/video/em28xx/em28xx-input.c | 1 | ||||
-rw-r--r-- | linux/drivers/media/video/ir-kbd-i2c.c | 3 | ||||
-rw-r--r-- | linux/drivers/media/video/saa7134/saa7134-input.c | 3 | ||||
-rw-r--r-- | linux/include/media/ir-common.h | 38 | ||||
-rw-r--r-- | v4l/ChangeLog | 23 | ||||
-rw-r--r-- | v4l/Makefile | 5 |
11 files changed, 171 insertions, 48 deletions
diff --git a/linux/drivers/media/common/Makefile b/linux/drivers/media/common/Makefile index bd458cb9b..61b89617a 100644 --- a/linux/drivers/media/common/Makefile +++ b/linux/drivers/media/common/Makefile @@ -1,5 +1,6 @@ saa7146-objs := saa7146_i2c.o saa7146_core.o saa7146_vv-objs := saa7146_vv_ksyms.o saa7146_fops.o saa7146_video.o saa7146_hlp.o saa7146_vbi.o +ir-common-objs := ir-functions.o ir-keymaps.o obj-$(CONFIG_VIDEO_SAA7146) += saa7146.o obj-$(CONFIG_VIDEO_SAA7146_VV) += saa7146_vv.o diff --git a/linux/drivers/media/common/ir-common.c b/linux/drivers/media/common/ir-functions.c index 1dbd6fa4b..8b7dd6e3e 100644 --- a/linux/drivers/media/common/ir-common.c +++ b/linux/drivers/media/common/ir-functions.c @@ -1,5 +1,5 @@ /* - * $Id: ir-common.c,v 1.19 2006/01/17 16:18:40 rmcc Exp $ + * $Id: ir-functions.c,v 1.1 2006/01/17 20:05:21 rmcc Exp $ * * some common structs and functions to handle infrared remotes via * input layer ... @@ -26,7 +26,6 @@ #include <linux/moduleparam.h> #include <linux/string.h> #include <media/ir-common.h> -#include <media/ir-keymaps.h> /* -------------------------------------------------------------------------- */ diff --git a/linux/include/media/ir-keymaps.h b/linux/drivers/media/common/ir-keymaps.c index a3f134d91..b86454642 100644 --- a/linux/include/media/ir-keymaps.h +++ b/linux/drivers/media/common/ir-keymaps.c @@ -1,6 +1,6 @@ /* - $Id: ir-keymaps.h,v 1.2 2006/01/17 16:31:19 rmcc Exp $ + $Id: ir-keymaps.c,v 1.1 2006/01/17 20:05:21 rmcc Exp $ Keytables for supported remote controls. This file is part of video4linux. @@ -20,13 +20,20 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +#include <linux/module.h> +#include <linux/moduleparam.h> + +#include <linux/input.h> +#include <media/ir-common.h> /* empty keytable, can be used as placeholder for not-yet created keytables */ -IR_KEYTAB_TYPE ir_codes_empty[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_empty[IR_KEYTAB_SIZE] = { [ 42 ] = KEY_COFFEE, }; -IR_KEYTAB_TYPE ir_codes_avermedia[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(ir_codes_empty); + +static IR_KEYTAB_TYPE ir_codes_avermedia[IR_KEYTAB_SIZE] = { [ 34 ] = KEY_0, [ 40 ] = KEY_1, [ 24 ] = KEY_2, @@ -68,8 +75,10 @@ IR_KEYTAB_TYPE ir_codes_avermedia[IR_KEYTAB_SIZE] = { [ 1 ] = KEY_BLUE, // unmarked }; +EXPORT_SYMBOL_GPL(ir_codes_avermedia); + /* Matt Jesson <dvb@jesson.eclipse.co.uk */ -IR_KEYTAB_TYPE ir_codes_avermedia_dvbt[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_avermedia_dvbt[IR_KEYTAB_SIZE] = { [ 0x28 ] = KEY_0, //'0' / 'enter' [ 0x22 ] = KEY_1, //'1' [ 0x12 ] = KEY_2, //'2' / 'up arrow' @@ -107,8 +116,10 @@ IR_KEYTAB_TYPE ir_codes_avermedia_dvbt[IR_KEYTAB_SIZE] = { [ 0x3e ] = KEY_VOLUMEUP, // 'volume +' }; +EXPORT_SYMBOL_GPL(ir_codes_avermedia_dvbt); + /* Attila Kondoros <attila.kondoros@chello.hu> */ -IR_KEYTAB_TYPE ir_codes_apac_viewcomp[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_apac_viewcomp[IR_KEYTAB_SIZE] = { [ 1 ] = KEY_1, [ 2 ] = KEY_2, @@ -148,9 +159,11 @@ IR_KEYTAB_TYPE ir_codes_apac_viewcomp[IR_KEYTAB_SIZE] = { [ 24 ] = KEY_KPMINUS // fine tune <<<< }; +EXPORT_SYMBOL_GPL(ir_codes_apac_viewcomp); + /* ---------------------------------------------------------------------- */ -IR_KEYTAB_TYPE ir_codes_conceptronic[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_conceptronic[IR_KEYTAB_SIZE] = { [ 30 ] = KEY_POWER, // power [ 7 ] = KEY_MEDIA, // source @@ -212,7 +225,9 @@ IR_KEYTAB_TYPE ir_codes_conceptronic[IR_KEYTAB_SIZE] = { [ 24 ] = KEY_MUTE // mute/unmute }; -IR_KEYTAB_TYPE ir_codes_nebula[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(ir_codes_conceptronic); + +static IR_KEYTAB_TYPE ir_codes_nebula[IR_KEYTAB_SIZE] = { [0x00] = KEY_0, [0x01] = KEY_1, [0x02] = KEY_2, @@ -270,8 +285,10 @@ IR_KEYTAB_TYPE ir_codes_nebula[IR_KEYTAB_SIZE] = { [0x36] = KEY_PC }; +EXPORT_SYMBOL_GPL(ir_codes_nebula); + /* DigitalNow DNTV Live DVB-T Remote */ -IR_KEYTAB_TYPE ir_codes_dntv_live_dvb_t[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_dntv_live_dvb_t[IR_KEYTAB_SIZE] = { [0x00] = KEY_ESC, /* 'go up a level?' */ /* Keys 0 to 9 */ [0x0a] = KEY_0, @@ -309,10 +326,12 @@ IR_KEYTAB_TYPE ir_codes_dntv_live_dvb_t[IR_KEYTAB_SIZE] = { [0x1f] = KEY_VOLUMEDOWN, }; +EXPORT_SYMBOL_GPL(ir_codes_dntv_live_dvb_t); + /* ---------------------------------------------------------------------- */ /* IO-DATA BCTV7E Remote */ -IR_KEYTAB_TYPE ir_codes_iodata_bctv7e[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_iodata_bctv7e[IR_KEYTAB_SIZE] = { [0x40] = KEY_TV, [0x20] = KEY_RADIO, /* FM */ [0x60] = KEY_EPG, @@ -360,10 +379,12 @@ IR_KEYTAB_TYPE ir_codes_iodata_bctv7e[IR_KEYTAB_SIZE] = { [0x01] = KEY_NEXT, /* skip >| */ }; +EXPORT_SYMBOL_GPL(ir_codes_iodata_bctv7e); + /* ---------------------------------------------------------------------- */ /* ADS Tech Instant TV DVB-T PCI Remote */ -IR_KEYTAB_TYPE ir_codes_adstech_dvb_t_pci[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_adstech_dvb_t_pci[IR_KEYTAB_SIZE] = { /* Keys 0 to 9 */ [0x4d] = KEY_0, [0x57] = KEY_1, @@ -412,10 +433,12 @@ IR_KEYTAB_TYPE ir_codes_adstech_dvb_t_pci[IR_KEYTAB_SIZE] = { [0x1c] = KEY_VOLUMEDOWN, }; +EXPORT_SYMBOL_GPL(ir_codes_adstech_dvb_t_pci); + /* ---------------------------------------------------------------------- */ /* MSI TV@nywhere remote */ -IR_KEYTAB_TYPE ir_codes_msi_tvanywhere[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_msi_tvanywhere[IR_KEYTAB_SIZE] = { /* Keys 0 to 9 */ [0x00] = KEY_0, [0x01] = KEY_1, @@ -444,10 +467,12 @@ IR_KEYTAB_TYPE ir_codes_msi_tvanywhere[IR_KEYTAB_SIZE] = { [0x1f] = KEY_VOLUMEDOWN, }; +EXPORT_SYMBOL_GPL(ir_codes_msi_tvanywhere); + /* ---------------------------------------------------------------------- */ /* Cinergy 1400 DVB-T */ -IR_KEYTAB_TYPE ir_codes_cinergy_1400[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_cinergy_1400[IR_KEYTAB_SIZE] = { [0x01] = KEY_POWER, [0x02] = KEY_1, [0x03] = KEY_2, @@ -491,10 +516,12 @@ IR_KEYTAB_TYPE ir_codes_cinergy_1400[IR_KEYTAB_SIZE] = { [0x5c] = KEY_NEXT, }; +EXPORT_SYMBOL_GPL(ir_codes_cinergy_1400); + /* ---------------------------------------------------------------------- */ /* AVERTV STUDIO 303 Remote */ -IR_KEYTAB_TYPE ir_codes_avertv_303[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_avertv_303[IR_KEYTAB_SIZE] = { [ 0x2a ] = KEY_1, [ 0x32 ] = KEY_2, [ 0x3a ] = KEY_3, @@ -539,10 +566,12 @@ IR_KEYTAB_TYPE ir_codes_avertv_303[IR_KEYTAB_SIZE] = { [ 0x1b ] = KEY_UP, }; +EXPORT_SYMBOL_GPL(ir_codes_avertv_303); + /* ---------------------------------------------------------------------- */ /* DigitalNow DNTV Live! DVB-T Pro Remote */ -IR_KEYTAB_TYPE ir_codes_dntv_live_dvbt_pro[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_dntv_live_dvbt_pro[IR_KEYTAB_SIZE] = { [ 0x16 ] = KEY_POWER, [ 0x5b ] = KEY_HOME, @@ -599,7 +628,9 @@ IR_KEYTAB_TYPE ir_codes_dntv_live_dvbt_pro[IR_KEYTAB_SIZE] = { [ 0x5d ] = KEY_BLUE, }; -IR_KEYTAB_TYPE ir_codes_em_terratec[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(ir_codes_dntv_live_dvbt_pro); + +static IR_KEYTAB_TYPE ir_codes_em_terratec[IR_KEYTAB_SIZE] = { [ 0x01 ] = KEY_CHANNEL, [ 0x02 ] = KEY_SELECT, [ 0x03 ] = KEY_MUTE, @@ -630,7 +661,9 @@ IR_KEYTAB_TYPE ir_codes_em_terratec[IR_KEYTAB_SIZE] = { [ 0x40 ] = KEY_ZOOM, }; -IR_KEYTAB_TYPE ir_codes_em_pinnacle_usb[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(ir_codes_em_terratec); + +static IR_KEYTAB_TYPE ir_codes_em_pinnacle_usb[IR_KEYTAB_SIZE] = { [ 0x3a ] = KEY_0, [ 0x31 ] = KEY_1, [ 0x32 ] = KEY_2, @@ -682,7 +715,9 @@ IR_KEYTAB_TYPE ir_codes_em_pinnacle_usb[IR_KEYTAB_SIZE] = { [ 0x27 ] = KEY_RECORD, }; -IR_KEYTAB_TYPE flyvideo_codes[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(ir_codes_em_pinnacle_usb); + +static IR_KEYTAB_TYPE flyvideo_codes[IR_KEYTAB_SIZE] = { [ 15 ] = KEY_0, [ 3 ] = KEY_1, [ 4 ] = KEY_2, @@ -710,7 +745,9 @@ IR_KEYTAB_TYPE flyvideo_codes[IR_KEYTAB_SIZE] = { [ 16 ] = KEY_ENTER, // Enter }; -IR_KEYTAB_TYPE flydvb_codes[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(flyvideo_codes); + +static IR_KEYTAB_TYPE flydvb_codes[IR_KEYTAB_SIZE] = { [ 1 ] = KEY_ZOOM, // Full Screen [ 0 ] = KEY_POWER, // Power @@ -749,7 +786,9 @@ IR_KEYTAB_TYPE flydvb_codes[IR_KEYTAB_SIZE] = { [ 14 ] = KEY_NEXT, // End >>| }; -IR_KEYTAB_TYPE cinergy_codes[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(flydvb_codes); + +static IR_KEYTAB_TYPE cinergy_codes[IR_KEYTAB_SIZE] = { [ 0 ] = KEY_0, [ 1 ] = KEY_1, [ 2 ] = KEY_2, @@ -789,9 +828,11 @@ IR_KEYTAB_TYPE cinergy_codes[IR_KEYTAB_SIZE] = { [ 0x23 ] = KEY_STOP, }; +EXPORT_SYMBOL_GPL(cinergy_codes); + /* Alfons Geser <a.geser@cox.net> * updates from Job D. R. Borges <jobdrb@ig.com.br> */ -IR_KEYTAB_TYPE eztv_codes[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE eztv_codes[IR_KEYTAB_SIZE] = { [ 18 ] = KEY_POWER, [ 1 ] = KEY_TV, // DVR [ 21 ] = KEY_DVD, // DVD @@ -846,7 +887,9 @@ IR_KEYTAB_TYPE eztv_codes[IR_KEYTAB_SIZE] = { [ 33 ] = KEY_DOT, // . (decimal dot) }; -IR_KEYTAB_TYPE avacssmart_codes[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(eztv_codes); + +static IR_KEYTAB_TYPE avacssmart_codes[IR_KEYTAB_SIZE] = { [ 30 ] = KEY_POWER, // power [ 28 ] = KEY_SEARCH, // scan [ 7 ] = KEY_SELECT, // source @@ -888,8 +931,10 @@ IR_KEYTAB_TYPE avacssmart_codes[IR_KEYTAB_SIZE] = { [ 15 ] = KEY_F22, // min }; +EXPORT_SYMBOL_GPL(avacssmart_codes); + /* Alex Hermann <gaaf@gmx.net> */ -IR_KEYTAB_TYPE md2819_codes[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE md2819_codes[IR_KEYTAB_SIZE] = { [ 40 ] = KEY_1, [ 24 ] = KEY_2, [ 56 ] = KEY_3, @@ -935,7 +980,9 @@ IR_KEYTAB_TYPE md2819_codes[IR_KEYTAB_SIZE] = { [ 49 ] = KEY_CHANNELUP // CHANNEL/PAGE+ }; -IR_KEYTAB_TYPE videomate_tv_pvr_codes[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(md2819_codes); + +static IR_KEYTAB_TYPE videomate_tv_pvr_codes[IR_KEYTAB_SIZE] = { [ 20 ] = KEY_MUTE, [ 36 ] = KEY_ZOOM, @@ -984,6 +1031,8 @@ IR_KEYTAB_TYPE videomate_tv_pvr_codes[IR_KEYTAB_SIZE] = { [ 33 ] = KEY_SLEEP, }; +EXPORT_SYMBOL_GPL(videomate_tv_pvr_codes); + /* Michael Tokarev <mjt@tls.msk.ru> http://www.corpit.ru/mjt/beholdTV/remote_control.jpg keytable is used by MANLI MTV00[12] and BeholdTV 40[13] at @@ -993,7 +1042,7 @@ IR_KEYTAB_TYPE videomate_tv_pvr_codes[IR_KEYTAB_SIZE] = { the button labels (several variants when appropriate) helps to descide which keycodes to assign to the buttons. */ -IR_KEYTAB_TYPE manli_codes[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE manli_codes[IR_KEYTAB_SIZE] = { /* 0x1c 0x12 * * FUNCTION POWER * @@ -1080,9 +1129,10 @@ IR_KEYTAB_TYPE manli_codes[IR_KEYTAB_SIZE] = { // 0x1d unused ? }; +EXPORT_SYMBOL_GPL(manli_codes); /* Mike Baikov <mike@baikov.com> */ -IR_KEYTAB_TYPE gotview7135_codes[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE gotview7135_codes[IR_KEYTAB_SIZE] = { [ 33 ] = KEY_POWER, [ 105] = KEY_TV, @@ -1121,7 +1171,9 @@ IR_KEYTAB_TYPE gotview7135_codes[IR_KEYTAB_SIZE] = { [ 112] = KEY_F24, /* NORMAL TIMESHIFT */ }; -IR_KEYTAB_TYPE ir_codes_purpletv[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(gotview7135_codes); + +static IR_KEYTAB_TYPE ir_codes_purpletv[IR_KEYTAB_SIZE] = { [ 0x3 ] = KEY_POWER, [ 0x6f ] = KEY_MUTE, [ 0x10 ] = KEY_BACKSPACE, /* Recall */ @@ -1170,10 +1222,12 @@ IR_KEYTAB_TYPE ir_codes_purpletv[IR_KEYTAB_SIZE] = { }; +EXPORT_SYMBOL_GPL(ir_codes_purpletv); + /* Mapping for the 28 key remote control as seen at http://www.sednacomputer.com/photo/cardbus-tv.jpg Pavel Mihaylov <bin@bash.info> */ -IR_KEYTAB_TYPE pctv_sedna_codes[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE pctv_sedna_codes[IR_KEYTAB_SIZE] = { [ 0 ] = KEY_0, [ 1 ] = KEY_1, [ 2 ] = KEY_2, @@ -1205,8 +1259,10 @@ IR_KEYTAB_TYPE pctv_sedna_codes[IR_KEYTAB_SIZE] = { [ 0x1e ] = KEY_PAUSE, }; +EXPORT_SYMBOL_GPL(pctv_sedna_codes); + /* Mark Phalan <phalanm@o2.ie> */ -IR_KEYTAB_TYPE ir_codes_pv951[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_pv951[IR_KEYTAB_SIZE] = { [ 0 ] = KEY_0, [ 1 ] = KEY_1, [ 2 ] = KEY_2, @@ -1244,10 +1300,12 @@ IR_KEYTAB_TYPE ir_codes_pv951[IR_KEYTAB_SIZE] = { [ 28 ] = KEY_MEDIA, /* PC/TV */ }; +EXPORT_SYMBOL_GPL(ir_codes_pv951); + /* generic RC5 keytable */ /* see http://users.pandora.be/nenya/electronics/rc5/codes00.htm */ /* used by old (black) Hauppauge remotes */ -IR_KEYTAB_TYPE ir_codes_rc5_tv[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_rc5_tv[IR_KEYTAB_SIZE] = { /* Keys 0 to 9 */ [ 0x00 ] = KEY_0, [ 0x01 ] = KEY_1, @@ -1319,8 +1377,10 @@ IR_KEYTAB_TYPE ir_codes_rc5_tv[IR_KEYTAB_SIZE] = { #endif }; +EXPORT_SYMBOL_GPL(ir_codes_rc5_tv); + /* Table for Leadtek Winfast Remote Controls - used by both bttv and cx88 */ -IR_KEYTAB_TYPE ir_codes_winfast[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_winfast[IR_KEYTAB_SIZE] = { /* Keys 0 to 9 */ [ 18 ] = KEY_0, [ 5 ] = KEY_1, @@ -1380,7 +1440,9 @@ IR_KEYTAB_TYPE ir_codes_winfast[IR_KEYTAB_SIZE] = { #endif }; -IR_KEYTAB_TYPE ir_codes_pinnacle[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(ir_codes_winfast); + +static IR_KEYTAB_TYPE ir_codes_pinnacle[IR_KEYTAB_SIZE] = { [ 0x59 ] = KEY_MUTE, [ 0x4a ] = KEY_POWER, @@ -1438,11 +1500,12 @@ IR_KEYTAB_TYPE ir_codes_pinnacle[IR_KEYTAB_SIZE] = { [ 0x0a ] = KEY_BACKSPACE, }; +EXPORT_SYMBOL_GPL(ir_codes_pinnacle); /* Hauppauge: the newer, gray remotes (seems there are multiple * slightly different versions), shipped with cx88+ivtv cards. * almost rc5 coding, but some non-standard keys */ -IR_KEYTAB_TYPE ir_codes_hauppauge_new[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_hauppauge_new[IR_KEYTAB_SIZE] = { /* Keys 0 to 9 */ [ 0x00 ] = KEY_0, [ 0x01 ] = KEY_1, @@ -1500,7 +1563,9 @@ IR_KEYTAB_TYPE ir_codes_hauppauge_new[IR_KEYTAB_SIZE] = { [ 0x3d ] = KEY_POWER, /* system power (green button) */ }; -IR_KEYTAB_TYPE ir_codes_pixelview[IR_KEYTAB_SIZE] = { +EXPORT_SYMBOL_GPL(ir_codes_hauppauge_new); + +static IR_KEYTAB_TYPE ir_codes_pixelview[IR_KEYTAB_SIZE] = { [ 2 ] = KEY_0, [ 1 ] = KEY_1, [ 11 ] = KEY_2, @@ -1532,6 +1597,8 @@ IR_KEYTAB_TYPE ir_codes_pixelview[IR_KEYTAB_SIZE] = { [ 15 ] = KEY_STOP, /* freeze */ }; +EXPORT_SYMBOL_GPL(ir_codes_pixelview); + /* generic RC5 keytable */ /* Used by the Grey/Black Hauppauge remotes */ /* Key data has been compared with the ATi usb remote */ @@ -1539,7 +1606,7 @@ IR_KEYTAB_TYPE ir_codes_pixelview[IR_KEYTAB_SIZE] = { /* disables half of the keys */ /* J.O. Aho <trizt at iname.com> */ -IR_KEYTAB_TYPE ir_codes_rc5_tv_grey[IR_KEYTAB_SIZE] = { +static IR_KEYTAB_TYPE ir_codes_rc5_tv_grey[IR_KEYTAB_SIZE] = { [ 0x00 ] = KEY_0, // 0 [ 0x01 ] = KEY_1, // 1 [ 0x02 ] = KEY_2, // 2 @@ -1577,3 +1644,4 @@ IR_KEYTAB_TYPE ir_codes_rc5_tv_grey[IR_KEYTAB_SIZE] = { [ 0x3d ] = KEY_ESC, // power (green, left upper corner) }; +EXPORT_SYMBOL_GPL(ir_codes_rc5_tv_grey); diff --git a/linux/drivers/media/video/bttv-input.c b/linux/drivers/media/video/bttv-input.c index c1c641b9a..54e67f5df 100644 --- a/linux/drivers/media/video/bttv-input.c +++ b/linux/drivers/media/video/bttv-input.c @@ -1,5 +1,5 @@ /* - * $Id: bttv-input.c,v 1.5 2006/01/17 16:18:41 rmcc Exp $ + * $Id: bttv-input.c,v 1.6 2006/01/17 20:05:21 rmcc Exp $ * * Copyright (c) 2003 Gerd Knorr * Copyright (c) 2003 Pavel Machek @@ -29,7 +29,6 @@ #include "compat.h" #include "bttv.h" #include "bttvp.h" -#include <media/ir-keymaps.h> static int debug; diff --git a/linux/drivers/media/video/cx88/cx88-input.c b/linux/drivers/media/video/cx88/cx88-input.c index 8d843d1ca..912a9f009 100644 --- a/linux/drivers/media/video/cx88/cx88-input.c +++ b/linux/drivers/media/video/cx88/cx88-input.c @@ -1,5 +1,5 @@ /* - * $Id: cx88-input.c,v 1.30 2006/01/17 16:18:41 rmcc Exp $ + * $Id: cx88-input.c,v 1.31 2006/01/17 20:05:21 rmcc Exp $ * * Device driver for GPIO attached remote control interfaces * on Conexant 2388x based TV/DVB cards. @@ -33,7 +33,6 @@ #include "compat.h" #include "cx88.h" #include <media/ir-common.h> -#include <media/ir-keymaps.h> /* ---------------------------------------------------------------------- */ diff --git a/linux/drivers/media/video/em28xx/em28xx-input.c b/linux/drivers/media/video/em28xx/em28xx-input.c index 82e216983..a8d3cd4b0 100644 --- a/linux/drivers/media/video/em28xx/em28xx-input.c +++ b/linux/drivers/media/video/em28xx/em28xx-input.c @@ -32,7 +32,6 @@ #include "compat.h" #include "em28xx.h" -#include <media/ir-keymaps.h> static unsigned int disable_ir = 0; module_param(disable_ir, int, 0444); diff --git a/linux/drivers/media/video/ir-kbd-i2c.c b/linux/drivers/media/video/ir-kbd-i2c.c index 92d3c192d..60095ed86 100644 --- a/linux/drivers/media/video/ir-kbd-i2c.c +++ b/linux/drivers/media/video/ir-kbd-i2c.c @@ -1,5 +1,5 @@ /* - * $Id: ir-kbd-i2c.c,v 1.34 2006/01/17 16:43:41 rmcc Exp $ + * $Id: ir-kbd-i2c.c,v 1.35 2006/01/17 20:05:21 rmcc Exp $ * * keyboard input driver for i2c IR remote controls * @@ -44,7 +44,6 @@ #include "compat.h" #include <media/ir-common.h> -#include <media/ir-keymaps.h> #include <media/ir-kbd-i2c.h> /* ----------------------------------------------------------------------- */ diff --git a/linux/drivers/media/video/saa7134/saa7134-input.c b/linux/drivers/media/video/saa7134/saa7134-input.c index a69656133..c6a53fb0d 100644 --- a/linux/drivers/media/video/saa7134/saa7134-input.c +++ b/linux/drivers/media/video/saa7134/saa7134-input.c @@ -1,5 +1,5 @@ /* - * $Id: saa7134-input.c,v 1.50 2006/01/17 16:18:41 rmcc Exp $ + * $Id: saa7134-input.c,v 1.51 2006/01/17 20:05:21 rmcc Exp $ * * handle saa7134 IR remotes via linux kernel input layer. * @@ -30,7 +30,6 @@ #include "compat.h" #include "saa7134-reg.h" #include "saa7134.h" -#include <media/ir-keymaps.h> static unsigned int disable_ir = 0; module_param(disable_ir, int, 0444); diff --git a/linux/include/media/ir-common.h b/linux/include/media/ir-common.h index 7caf007b4..2a5f6e73c 100644 --- a/linux/include/media/ir-common.h +++ b/linux/include/media/ir-common.h @@ -1,5 +1,5 @@ /* - * $Id: ir-common.h,v 1.14 2005/11/08 16:37:02 rmcc Exp $ + * $Id: ir-common.h,v 1.15 2006/01/17 20:05:21 rmcc Exp $ * * some common structs and functions to handle infrared remotes via * input layer ... @@ -65,6 +65,42 @@ int ir_dump_samples(u32 *samples, int count); int ir_decode_biphase(u32 *samples, int count, int low, int high); int ir_decode_pulsedistance(u32 *samples, int count, int low, int high); +/* Keymaps to be used by other modules */ + +extern IR_KEYTAB_TYPE ir_codes_empty[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_avermedia[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_avermedia_dvbt[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_apac_viewcomp[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_conceptronic[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_nebula[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_dntv_live_dvb_t[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_iodata_bctv7e[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_adstech_dvb_t_pci[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_msi_tvanywhere[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_cinergy_1400[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_avertv_303[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_dntv_live_dvbt_pro[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_em_terratec[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_em_pinnacle_usb[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE flyvideo_codes[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE flydvb_codes[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE cinergy_codes[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE eztv_codes[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE avacssmart_codes[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE md2819_codes[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE videomate_tv_pvr_codes[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE manli_codes[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE gotview7135_codes[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_purpletv[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE pctv_sedna_codes[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_pv951[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_rc5_tv[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_winfast[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_pinnacle[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_hauppauge_new[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_pixelview[IR_KEYTAB_SIZE]; +extern IR_KEYTAB_TYPE ir_codes_rc5_tv_grey[IR_KEYTAB_SIZE]; + #endif /* diff --git a/v4l/ChangeLog b/v4l/ChangeLog index 525eea6a1..6d0b28ba9 100644 --- a/v4l/ChangeLog +++ b/v4l/ChangeLog @@ -1,3 +1,26 @@ +2006-01-17 20:06 rmcc + + * linux/drivers/media/common/Makefile: + * linux/drivers/media/common/ir-common.c: + * linux/drivers/media/common/ir-functions.c: (ir_input_key_event), + (ir_input_init), (ir_input_nokey), (ir_input_keydown), + (ir_extract_bits), (getbit), (ir_dump_samples), + (ir_decode_pulsedistance), (ir_decode_biphase): + * linux/drivers/media/common/ir-keymaps.c: + * linux/drivers/media/video/bttv-input.c: + * linux/drivers/media/video/cx88/cx88-input.c: + * linux/drivers/media/video/em28xx/em28xx-input.c: + * linux/drivers/media/video/ir-kbd-i2c.c: + * linux/drivers/media/video/saa7134/saa7134-input.c: + * linux/include/media/ir-common.h: + * linux/include/media/ir-keymaps.h: + * v4l/Makefile: + + - Keymaps are exported by ir-common instead of being included by + each and every module + + Signed-off-by: Ricardo Cerqueira <v4l@cerqueira.org> + 2006-01-17 16:40 rmcc * linux/drivers/media/video/ir-kbd-i2c.c: (ir_attach): diff --git a/v4l/Makefile b/v4l/Makefile index 329fbc0a3..b073227f1 100644 --- a/v4l/Makefile +++ b/v4l/Makefile @@ -9,7 +9,7 @@ include $(obj)/Make.config # symbol exports export-objs := video-buf.o v4l1-compat.o v4l2-common.o -export-objs += ir-common.o +export-objs += ir-common.o ifeq ($(CONFIG_VIDEO_DEV),m) export-objs += videodev.o endif @@ -18,6 +18,7 @@ export-objs += cx88-cards.o cx88-core.o export-objs += saa7134-core.o saa7134-tvaudio.o # drivers objects +ir-common-objs := ir-keymaps.o ir-functions.o bttv-objs := bttv-driver.o bttv-cards.o bttv-risc.o bttv-if.o \ bttv-vbi.o bttv-i2c.o bttv-input.o saa7134-objs := saa7134-core.o saa7134-i2c.o saa7134-video.o \ @@ -94,7 +95,7 @@ endif obj-$(CONFIG_VIDEO_SAA7134) += saa7134.o saa7134-empress.o saa6752hs.o obj-$(CONFIG_VIDEO_SAA7134) += saa7134-oss.o -obj-$(CONFIG_VIDEO_IR) += ir-common.o +obj-$(CONFIG_VIDEO_IR) += ir-common.o obj-$(CONFIG_VIDEO_TUNER) += tuner.o tda9887.o saa6588.o obj-$(CONFIG_VIDEO_TVAUDIO) += msp3400.o tvaudio.o tvmixer.o wm8775.o \ cs53l32a.o tda7432.o tda9875.o |