The patch number 9061 was added via Mauro Carvalho Chehab <[EMAIL PROTECTED]>
to http://linuxtv.org/hg/v4l-dvb master development tree.

Kernel patches in this development tree may be modified to be backward
compatible with older kernels. Compatibility modifications will be
removed before inclusion into the mainstream Kernel

If anyone has any objections, please let us know by sending a message to:
        [EMAIL PROTECTED]

------

From: Mauro Carvalho Chehab  <[EMAIL PROTECTED]>
saa7134: Add support for Real Audio 220


Thanks to Sistema Fenix (http://www.sistemafenix.com.br/) for sponsoring
this development.

Signed-off-by: Gilberto <[EMAIL PROTECTED]>
Signed-off-by: Mauro Carvalho Chehab <[EMAIL PROTECTED]>


---

 linux/Documentation/video4linux/CARDLIST.saa7134  |    1 
 linux/drivers/media/common/ir-keymaps.c           |   40 ++++++++++++++
 linux/drivers/media/video/saa7134/saa7134-cards.c |   36 ++++++++++++
 linux/drivers/media/video/saa7134/saa7134-input.c |    6 ++
 linux/drivers/media/video/saa7134/saa7134.h       |    1 
 linux/include/media/ir-common.h                   |    2 
 6 files changed, 85 insertions(+), 1 deletion(-)

diff -r fa0de4f2637a -r fcd3cebe7d42 
linux/Documentation/video4linux/CARDLIST.saa7134
--- a/linux/Documentation/video4linux/CARDLIST.saa7134  Thu Jun 26 17:03:00 
2008 -0300
+++ b/linux/Documentation/video4linux/CARDLIST.saa7134  Thu Jun 26 17:03:00 
2008 -0300
@@ -146,5 +146,6 @@ 145 -> AVerMedia MiniPCI DVB-T Hybrid M1
 145 -> AVerMedia MiniPCI DVB-T Hybrid M103      [1461:f636]
 146 -> ASUSTeK P7131 Analog
 147 -> Asus Tiger 3in1                          [1043:4878]
+147 -> Zogis Real Angel 220
 148 -> Encore ENLTV-FM v5.3                     [1a7f:2008]
 149 -> Avermedia PCI pure analog (M135A)        [1461:f11d]
diff -r fa0de4f2637a -r fcd3cebe7d42 linux/drivers/media/common/ir-keymaps.c
--- a/linux/drivers/media/common/ir-keymaps.c   Thu Jun 26 17:03:00 2008 -0300
+++ b/linux/drivers/media/common/ir-keymaps.c   Thu Jun 26 17:03:00 2008 -0300
@@ -2431,3 +2431,43 @@ IR_KEYTAB_TYPE ir_codes_encore_enltv_fm5
        [0x47] = KEY_SLEEP,             /* shutdown */
 };
 EXPORT_SYMBOL_GPL(ir_codes_encore_enltv_fm53);
+
+/* Zogis Real Audio 220 - 32 keys IR */
+IR_KEYTAB_TYPE ir_codes_real_audio_220_32_keys[IR_KEYTAB_SIZE] = {
+       [0x1c] = KEY_RADIO,
+       [0x12] = KEY_POWER2,
+
+       [0x01] = KEY_1,
+       [0x02] = KEY_2,
+       [0x03] = KEY_3,
+       [0x04] = KEY_4,
+       [0x05] = KEY_5,
+       [0x06] = KEY_6,
+       [0x07] = KEY_7,
+       [0x08] = KEY_8,
+       [0x09] = KEY_9,
+       [0x00] = KEY_0,
+
+       [0x0c] = KEY_VOLUMEUP,
+       [0x18] = KEY_VOLUMEDOWN,
+       [0x0b] = KEY_CHANNELUP,
+       [0x15] = KEY_CHANNELDOWN,
+       [0x16] = KEY_ENTER,
+
+       [0x11] = KEY_LIST,              /* Source */
+       [0x0d] = KEY_AUDIO,             /* stereo */
+
+       [0x0f] = KEY_PREVIOUS,          /* Prev */
+       [0x1b] = KEY_PAUSE,             /* Timeshift */
+       [0x1a] = KEY_NEXT,              /* Next */
+
+       [0x0e] = KEY_STOP,
+       [0x1f] = KEY_PLAY,
+       [0x1e] = KEY_PLAYPAUSE,         /* Pause */
+
+       [0x1d] = KEY_RECORD,
+       [0x13] = KEY_MUTE,
+       [0x19] = KEY_SHUFFLE,           /* Snapshot */
+
+};
+EXPORT_SYMBOL_GPL(ir_codes_real_audio_220_32_keys);
diff -r fa0de4f2637a -r fcd3cebe7d42 
linux/drivers/media/video/saa7134/saa7134-cards.c
--- a/linux/drivers/media/video/saa7134/saa7134-cards.c Thu Jun 26 17:03:00 
2008 -0300
+++ b/linux/drivers/media/video/saa7134/saa7134-cards.c Thu Jun 26 17:03:00 
2008 -0300
@@ -4550,6 +4550,41 @@ struct saa7134_board saa7134_boards[] = 
                        .name = name_radio,
                        .amux = TV,
                        .gpio = 0x0200000,
+               },
+       },
+       [SAA7134_BOARD_REAL_ANGEL_220] = {
+               .name           = "Zogis Real Angel 220",
+               .audio_clock    = 0x00187de7,
+               .tuner_type     = TUNER_TNF_5335MF,
+               .radio_type     = UNSET,
+               .tuner_addr     = ADDR_UNSET,
+               .radio_addr     = ADDR_UNSET,
+               .gpiomask       = 0x801a8087,
+               .inputs = { {
+                       .name   = name_tv,
+                       .vmux   = 3,
+                       .amux   = LINE2,
+                       .tv     = 1,
+                       .gpio   = 0x624000,
+       }, {
+                       .name   = name_comp1,
+                       .vmux   = 1,
+                       .amux   = LINE1,
+                       .gpio   = 0x624000,
+               }, {
+                       .name   = name_svideo,
+                       .vmux   = 1,
+                       .amux   = LINE1,
+                       .gpio   = 0x624000,
+               } },
+               .radio = {
+                       .name   = name_radio,
+                       .amux   = LINE2,
+                       .gpio   = 0x624001,
+               },
+               .mute = {
+                       .name = name_mute,
+                       .amux = TV,
                },
        },
 };
@@ -5879,6 +5914,7 @@ int saa7134_board_init1(struct saa7134_d
        case SAA7134_BOARD_BEHOLD_505FM:
        case SAA7134_BOARD_BEHOLD_507_9FM:
        case SAA7134_BOARD_GENIUS_TVGO_A11MCE:
+       case SAA7134_BOARD_REAL_ANGEL_220:
                dev->has_remote = SAA7134_REMOTE_GPIO;
                break;
        case SAA7134_BOARD_FLYDVBS_LR300:
diff -r fa0de4f2637a -r fcd3cebe7d42 
linux/drivers/media/video/saa7134/saa7134-input.c
--- a/linux/drivers/media/video/saa7134/saa7134-input.c Thu Jun 26 17:03:00 
2008 -0300
+++ b/linux/drivers/media/video/saa7134/saa7134-input.c Thu Jun 26 17:03:00 
2008 -0300
@@ -533,6 +533,12 @@ int saa7134_input_init1(struct saa7134_d
                mask_keydown = 0xf00000;
                polling = 50; /* ms */
                break;
+       case SAA7134_BOARD_REAL_ANGEL_220:
+               ir_codes     = ir_codes_real_audio_220_32_keys;
+               mask_keycode = 0x3f00;
+               mask_keyup   = 0x4000;
+               polling = 50; /* ms */
+               break;
        }
        if (NULL == ir_codes) {
                printk("%s: Oops: IR config error [card=%d]\n",
diff -r fa0de4f2637a -r fcd3cebe7d42 linux/drivers/media/video/saa7134/saa7134.h
--- a/linux/drivers/media/video/saa7134/saa7134.h       Thu Jun 26 17:03:00 
2008 -0300
+++ b/linux/drivers/media/video/saa7134/saa7134.h       Thu Jun 26 17:03:00 
2008 -0300
@@ -273,6 +273,7 @@ struct saa7134_format {
 #define SAA7134_BOARD_ASUSTeK_TIGER_3IN1   147
 #define SAA7134_BOARD_ENCORE_ENLTV_FM53 148
 #define SAA7134_BOARD_AVERMEDIA_M135A    149
+#define SAA7134_BOARD_REAL_ANGEL_220     147
 
 #define SAA7134_MAXBOARDS 8
 #define SAA7134_INPUT_MAX 8
diff -r fa0de4f2637a -r fcd3cebe7d42 linux/include/media/ir-common.h
--- a/linux/include/media/ir-common.h   Thu Jun 26 17:03:00 2008 -0300
+++ b/linux/include/media/ir-common.h   Thu Jun 26 17:03:00 2008 -0300
@@ -155,7 +155,7 @@ extern IR_KEYTAB_TYPE ir_codes_powercolo
 extern IR_KEYTAB_TYPE ir_codes_powercolor_real_angel[IR_KEYTAB_SIZE];
 extern IR_KEYTAB_TYPE ir_codes_avermedia_a16d[IR_KEYTAB_SIZE];
 extern IR_KEYTAB_TYPE ir_codes_encore_enltv_fm53[IR_KEYTAB_SIZE];
-
+extern IR_KEYTAB_TYPE ir_codes_real_audio_220_32_keys[IR_KEYTAB_SIZE];
 #endif
 
 /*


---

Patch is available at: 
http://linuxtv.org/hg/v4l-dvb/rev/fcd3cebe7d42ad78cd77a0455202bd81ecf49161

_______________________________________________
linuxtv-commits mailing list
linuxtv-commits@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to