aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulian Calaby <julian.calaby@gmail.com>2006-01-11 19:40:09 -0200
committerMauro Carvalho Chehab <mchehab@brturbo.com.br>2006-01-11 19:40:09 -0200
commit2d05ae6b5b77f063aa0f82cf0570f3e4b80b367c (patch)
tree16c12212c57ae7def1c4b2bfe7acd4ea189b4343
parent30367bfda384ccb96c0fe35aaa001c7624e9fd01 (diff)
downloadlinux-2d05ae6b5b77f063aa0f82cf0570f3e4b80b367c.tar.gz
V4L/DVB (3340): Add bttv card MagicTV (rebranded MachTV)
- Add bttv card MagicTV (rebranded MachTV) Signed-off-by: Julian Calaby <julian.calaby@gmail.com> Signed-off-by: Michael Krufky <mkrufky@m1k.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
-rw-r--r--Documentation/video4linux/CARDLIST.bttv1
-rw-r--r--drivers/media/video/bttv-cards.c23
-rw-r--r--drivers/media/video/bttv-input.c6
-rw-r--r--drivers/media/video/bttv.h1
4 files changed, 31 insertions, 0 deletions
diff --git a/Documentation/video4linux/CARDLIST.bttv b/Documentation/video4linux/CARDLIST.bttv
index 74fb085e178b9d..b72706c58a442b 100644
--- a/Documentation/video4linux/CARDLIST.bttv
+++ b/Documentation/video4linux/CARDLIST.bttv
@@ -142,3 +142,4 @@
141 -> Asound Skyeye PCTV
142 -> Sabrent TV-FM (bttv version)
143 -> Hauppauge ImpactVCB (bt878) [0070:13eb]
+144 -> MagicTV
diff --git a/drivers/media/video/bttv-cards.c b/drivers/media/video/bttv-cards.c
index 1621ab133d232a..6c92a6f5fc107a 100644
--- a/drivers/media/video/bttv-cards.c
+++ b/drivers/media/video/bttv-cards.c
@@ -2836,6 +2836,29 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
},
+ [BTTV_BOARD_MACHTV_MAGICTV] = {
+ /* Julian Calaby <julian.calaby@gmail.com>
+ * Slightly different from original MachTV definition (0x60)
+
+ * FIXME: RegSpy says gpiomask should be "0x001c800f", but it
+ * stuffs up remote chip. Bug is a pin on the jaecs is not set
+ * properly (methinks) causing no keyup bits being set */
+
+ .name = "MagicTV", /* rebranded MachTV */
+ .video_inputs = 3,
+ .audio_inputs = 1,
+ .tuner = 0,
+ .svhs = 2,
+ .gpiomask = 7,
+ .muxsel = { 2, 3, 1, 1 },
+ .audiomux = { 0, 1, 2, 3, 4 },
+ .tuner_type = TUNER_TEMIC_4009FR5_PAL,
+ .tuner_addr = ADDR_UNSET,
+ .radio_addr = ADDR_UNSET,
+ .pll = PLL_28,
+ .has_radio = 1,
+ .has_remote = 1,
+ },
};
static const unsigned int bttv_num_tvcards = ARRAY_SIZE(bttv_tvcards);
diff --git a/drivers/media/video/bttv-input.c b/drivers/media/video/bttv-input.c
index 12197f1b27578a..221b36e7f3922d 100644
--- a/drivers/media/video/bttv-input.c
+++ b/drivers/media/video/bttv-input.c
@@ -583,6 +583,12 @@ int bttv_input_init(struct bttv *btv)
btv->custom_irq = bttv_rc5_irq;
ir->rc5_gpio = 1;
break;
+ case BTTV_BOARD_MACHTV_MAGICTV:
+ ir_codes = ir_codes_apac_viewcomp;
+ ir->mask_keycode = 0x001F00;
+ ir->mask_keyup = 0x004000;
+ ir->polling = 50; /* ms */
+ break;
}
if (NULL == ir_codes) {
dprintk(KERN_INFO "Ooops: IR config error [card=%d]\n",btv->c.type);
diff --git a/drivers/media/video/bttv.h b/drivers/media/video/bttv.h
index 9feaa6bab20749..e370d74f2a1b1f 100644
--- a/drivers/media/video/bttv.h
+++ b/drivers/media/video/bttv.h
@@ -166,6 +166,7 @@
#define BTTV_BOARD_ASOUND_SKYEYE 0x8d
#define BTTV_BOARD_SABRENT_TVFM 0x8e
#define BTTV_BOARD_HAUPPAUGE_IMPACTVCB 0x8f
+#define BTTV_BOARD_MACHTV_MAGICTV 0x90
/* i2c address list */
#define I2C_TSA5522 0xc2