Skip to contentSkip to conversation

saa7134: Add support for Compro VideoMate Vista M1F

PATCH In review Ramiro Morales 2 participants 5 messages Jun 12, 2010 – Dec 26, 2010 1 message not in the archive

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 saa7134: Add support for Compro VideoMate Vista M1F

Hi all,

(I've just subscribed myself to the list so I can't easily reply to the original "[PATCH for 2.6.34] saa7134: add support for Compro VideoMate M1F" thread from May 25 started by Pavel Osnova.)

I've just bought this card. I'm in Argentina so if there are several models it should be the appropriate one for this market (PAL-NC?).

Find below Pavel's latest patch adapted/updated to v4l-dvb Mercurial repository status as of today (Hg revision 023a0048e6a8).

For a start, the PCI ID is different from the Pavel's one (185b:c900):

  $ lspci |grep -i philips
  01:07.0 Multimedia controller: Philips Semiconductors SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (rev d1)
  $ lspci -n |grep 01\:07\.0
  01:07.0 0480: 1131:7133 (rev d1)

(btw, it's the same PCI ID as card #17: AOPEN VA1000 POWER)

I've decided to maintain Pavel's name, email address and "Signed-off-by:" header, hopefully he will be able to review the patch and give his opinion.

Will reply to this message with another one containing a full description of the card components hermann-pitton had asked for.

Regards,

linux/Documentation/video4linux/CARDLIST.saa7134 +1 -0
@@ -179,3 +179,4 @@
 178 -> Beholder BeholdTV H7                     [5ace:7190]
 179 -> Beholder BeholdTV A7                     [5ace:7090]
 180 -> Avermedia PCI M733A                      [1461:4155,1461:4255]
+181 -> Compro VideoMate Vista M1F               [185b:c900,1131:7133]
linux/drivers/media/IR/keymaps/Makefile +1 -0
@@ -62,6 +62,7 @@
 			rc-terratec-cinergy-xs.o \
 			rc-tevii-nec.o \
 			rc-tt-1500.o \
+			rc-videomate-m1f.o \
 			rc-videomate-s350.o \
 			rc-videomate-tv-pvr.o \
 			rc-winfast.o \
linux/drivers/media/IR/keymaps/rc-videomate-m1f.c new file +92 -0

92 lines not on this page · raw message

linux/drivers/media/video/saa7134/saa7134-cards.c +28 -0
@@ -5501,6 +5501,33 @@
 			.amux = TV,
 		},
 	},
+	[SAA7134_BOARD_VIDEOMATE_M1F] = {
+		/* Pavel Osnova <pvosnova <at> gmail.com> */
+		.name           = "Compro VideoMate Vista M1F",
+		.audio_clock    = 0x00187de7,
+		.tuner_type     = TUNER_LG_PAL_NEW_TAPC,
+		.radio_type     = TUNER_TEA5767,
+		.tuner_addr     = ADDR_UNSET,
+		.radio_addr     = 0x60,
+		.inputs         = { {
+			.name = name_tv,
+			.vmux = 1,
+			.amux = TV,
+			.tv   = 1,
+		}, {
+			.name = name_comp1,
+			.vmux = 3,
+			.amux = LINE2,
+		}, {
+			.name = name_svideo,
+			.vmux = 8,
+			.amux = LINE2,
+		} },
+		.radio = {
+			.name = name_radio,
+			.amux = LINE2,
+		},
+	},
 
 };
 
@@ -7017,6 +7044,7 @@
 	case SAA7134_BOARD_VIDEOMATE_TV_PVR:
 	case SAA7134_BOARD_VIDEOMATE_GOLD_PLUS:
 	case SAA7134_BOARD_VIDEOMATE_TV_GOLD_PLUSII:
+	case SAA7134_BOARD_VIDEOMATE_M1F:
 	case SAA7134_BOARD_VIDEOMATE_DVBT_300:
 	case SAA7134_BOARD_VIDEOMATE_DVBT_200:
 	case SAA7134_BOARD_VIDEOMATE_DVBT_200A:
linux/drivers/media/video/saa7134/saa7134-input.c +5 -0
@@ -879,6 +879,11 @@
 		mask_keyup   = 0x020000;
 		polling      = 50; /* ms */
 		break;
+	case SAA7134_BOARD_VIDEOMATE_M1F:
+		ir_codes     = RC_MAP_VIDEOMATE_M1F;
+		mask_keycode = 0x0ff00;
+		mask_keyup   = 0x040000;
+		break;
 	break;
 	}
 	if (NULL == ir_codes) {
linux/drivers/media/video/saa7134/saa7134.h +1 -0
@@ -305,6 +305,7 @@
 #define SAA7134_BOARD_BEHOLD_H7             178
 #define SAA7134_BOARD_BEHOLD_A7             179
 #define SAA7134_BOARD_AVERMEDIA_M733A       180
+#define SAA7134_BOARD_VIDEOMATE_M1F         181
 
 #define SAA7134_MAXBOARDS 32
 #define SAA7134_INPUT_MAX 8
linux/include/media/rc-map.h +1 -0
@@ -112,6 +112,7 @@
 #define RC_MAP_TERRATEC_CINERGY_XS       "rc-terratec-cinergy-xs"
 #define RC_MAP_TEVII_NEC                 "rc-tevii-nec"
 #define RC_MAP_TT_1500                   "rc-tt-1500"
+#define RC_MAP_VIDEOMATE_M1F             "rc-videomate-m1f"
 #define RC_MAP_VIDEOMATE_S350            "rc-videomate-s350"
 #define RC_MAP_VIDEOMATE_TV_PVR          "rc-videomate-tv-pvr"
 #define RC_MAP_WINFAST                   "rc-winfast"
Signed-off-by Pavel Osnova <pvosnova <at> gmail.com>
Signature · 1 line
Ramiro Morales
#1 lore raw
Quoted 4 lines · Ramiro Morales

Will reply to this message with another one containing a full description of the card components hermann-pitton had asked for.

These are the labels of the different components (see attached PNG diagram):

SINT: Tvision TVF85P4-AF-XG-M (smaller sticker behind the big one)
IC1: SAA 7135HS/203
IC2: (DIP18) EM78P156LMJ (very hard to read, possibly inaccurate)
IC3: (DIP20) TDA 9801T
IC4: TEA 5767

XT1: 4.0F8E
XT2: NSX 8C

     32 110 BLX

FLT1: X4.58

So far, I've been unable to get either sound (it appears as an ALSA device but can't unmute) or the RC working but I suspect this is some kind of fault on my side.

Signature · 1 line
Ramiro Morales
#2 lore raw
Quoted 9 lines · Ramiro Morales
Quoted 8 lines · Ramiro Morales

For a start, the PCI ID is different from the Pavel's one (185b:c900):
[...]

  $ lspci -n |grep 01\:07\.0                                                                                                                 
  01:07.0 0480: 1131:7133 (rev d1)                                                                                                           

(btw, it's the same PCI ID as card #17: AOPEN VA1000 POWER)

Since then I've learned that the IDs in CARDLIST.saa7134 aren't PCI IDs but subsystem IDs.

Quoted 4 lines

These are the labels of the different components (see attached PNG diagram):

I've created a wiki page for this card containing this and more information:

http://linuxtv.org/wiki/index.php/Compro_VideoMate_Vista_M1F

Quoted 4 lines

So far, I've been unable to get either sound (it appears as an ALSA device but can't unmute) or the RC working but I suspect this is some kind of fault on my side.

Sound isn't workking yet. Remote control is working without having to run LIRC nor inpurtlirc.

Signature · 1 line
 Ramiro Morales
#3 lore raw
In reply to Ramiro Morales

Em 12-06-2010 18:57, Ramiro Morales escreveu:

Quoted 19 lines

Hi all,

(I've just subscribed myself to the list so I can't easily reply to the original "[PATCH for 2.6.34] saa7134: add support for Compro VideoMate M1F" thread from May 25 started by Pavel Osnova.)

I've just bought this card. I'm in Argentina so if there are several models it should be the appropriate one for this market (PAL-NC?).

Find below Pavel's latest patch adapted/updated to v4l-dvb Mercurial repository status as of today (Hg revision 023a0048e6a8).

For a start, the PCI ID is different from the Pavel's one (185b:c900):

  $ lspci |grep -i philips
  01:07.0 Multimedia controller: Philips Semiconductors SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (rev d1)
  $ lspci -n |grep 01\:07\.0
  01:07.0 0480: 1131:7133 (rev d1)
Quoted 8 lines

(btw, it's the same PCI ID as card #17: AOPEN VA1000 POWER)

I've decided to maintain Pavel's name, email address and "Signed-off-by:" header, hopefully he will be able to review the patch and give his opinion.

Will reply to this message with another one containing a full description of the card components hermann-pitton had asked for.

I need the patch author Signed-off-by, in order to be able to apply it. As you're sending me the patches, I need your SOB also. Please c/c the author's email on the email you send me submitting his patches.

Cheers,
Mauro

A message that is not in the archive (sent off-list or not yet received): 20101226210011.GA3849@fao

#5 lore raw
Quoted 4 lines · Mauro Carvalho Chehab

I need the patch author Signed-off-by, in order to be able to apply it. As you're sending me the patches, I need your SOB also. Please c/c the author's email on the email you send me submitting his patches.

Hi again,

Find attached the patch upated to remotes/linuxtv/staging/for_v2.6.38 as of now.

The card ID is 183 now.

I'm c/c'ing Pavel Osnova and I've added my SOB as requested.

Regards,

Documentation/video4linux/CARDLIST.saa7134 +1 -0
index 8d9afc7..8db1a94 100644
@@ -180,3 +180,4 @@
 179 -> Beholder BeholdTV A7                     [5ace:7090]
 180 -> Avermedia PCI M733A                      [1461:4155,1461:4255]
 181 -> TechoTrend TT-budget T-3000              [13c2:2804]
+183 -> Compro VideoMate Vista M1F               [185b:c900]
drivers/media/rc/keymaps/Makefile +1 -0
index 148900f..0659e9f 100644
@@ -81,6 +81,7 @@ obj-$(CONFIG_RC_MAP) += rc-adstech-dvb-t-pci.o \
 			rc-trekstor.o \
 			rc-tt-1500.o \
 			rc-twinhan1027.o \
+			rc-videomate-m1f.o \
 			rc-videomate-s350.o \
 			rc-videomate-tv-pvr.o \
 			rc-winfast.o \
drivers/media/rc/keymaps/rc-videomate-m1f.c new file +92 -0

92 lines not on this page · raw message

drivers/media/video/saa7134/saa7134-cards.c +38 -0
index ff23e6e..e7aa588 100644
@@ -5538,6 +5538,37 @@ struct saa7134_board saa7134_boards[] = {
 			.amux   = LINE2,
 		} },
 	},
+	[SAA7134_BOARD_VIDEOMATE_M1F] = {
+		/* Pavel Osnova <[email protected]> */
+		.name           = "Compro VideoMate Vista M1F",
+		.audio_clock    = 0x00187de7,
+		.tuner_type     = TUNER_LG_PAL_NEW_TAPC,
+		.radio_type     = TUNER_TEA5767,
+		.tuner_addr     = ADDR_UNSET,
+		.radio_addr     = 0x60,
+		.inputs         = { {
+			.name = name_tv,
+			.vmux = 1,
+			.amux = TV,
+			.tv   = 1,
+		}, {
+			.name = name_comp1,
+			.vmux = 3,
+			.amux = LINE2,
+		}, {
+			.name = name_svideo,
+			.vmux = 8,
+			.amux = LINE2,
+		} },
+		.radio = {
+			.name = name_radio,
+			.amux = LINE1,
+		},
+		.mute = {
+			.name = name_mute,
+			.amux = TV,
+		},
+	},
 
 };
 
@@ -6731,6 +6762,12 @@ struct pci_device_id saa7134_pci_tbl[] = {
 		.subdevice    = 0x7090,
 		.driver_data  = SAA7134_BOARD_BEHOLD_A7,
 	}, {
+		.vendor       = PCI_VENDOR_ID_PHILIPS,
+		.device       = PCI_DEVICE_ID_PHILIPS_SAA7135,
+		.subvendor    = 0x185b,
+		.subdevice    = 0xc900,
+		.driver_data  = SAA7134_BOARD_VIDEOMATE_M1F,
+	}, {
 		/* --- boards without eeprom + subsystem ID --- */
 		.vendor       = PCI_VENDOR_ID_PHILIPS,
 		.device       = PCI_DEVICE_ID_PHILIPS_SAA7134,
@@ -7046,6 +7083,7 @@ int saa7134_board_init1(struct saa7134_dev *dev)
 	case SAA7134_BOARD_VIDEOMATE_TV_PVR:
 	case SAA7134_BOARD_VIDEOMATE_GOLD_PLUS:
 	case SAA7134_BOARD_VIDEOMATE_TV_GOLD_PLUSII:
+	case SAA7134_BOARD_VIDEOMATE_M1F:
 	case SAA7134_BOARD_VIDEOMATE_DVBT_300:
 	case SAA7134_BOARD_VIDEOMATE_DVBT_200:
 	case SAA7134_BOARD_VIDEOMATE_DVBT_200A:
drivers/media/video/saa7134/saa7134-input.c +5 -0
index 98678d9..dc646e6 100644
@@ -721,6 +721,11 @@ int saa7134_input_init1(struct saa7134_dev *dev)
 		mask_keyup   = 0x020000;
 		polling      = 50; /* ms */
 		break;
+	case SAA7134_BOARD_VIDEOMATE_M1F:
+		ir_codes     = RC_MAP_VIDEOMATE_M1F;
+		mask_keycode = 0x0ff00;
+		mask_keyup   = 0x040000;
+		break;
 	}
 	if (NULL == ir_codes) {
 		printk("%s: Oops: IR config error [card=%d]\n",
drivers/media/video/saa7134/saa7134.h +1 -0
index babfbe7..5b0a347 100644
@@ -326,6 +326,7 @@ struct saa7134_card_ir {
 #define SAA7134_BOARD_AVERMEDIA_M733A       180
 #define SAA7134_BOARD_TECHNOTREND_BUDGET_T3000 181
 #define SAA7134_BOARD_KWORLD_PCI_SBTVD_FULLSEG 182
+#define SAA7134_BOARD_VIDEOMATE_M1F         183
 
 #define SAA7134_MAXBOARDS 32
 #define SAA7134_INPUT_MAX 8
include/media/rc-map.h +1 -0
index 5d3a457..ee9e2f7 100644
@@ -138,6 +138,7 @@ void rc_map_init(void);
 #define RC_MAP_TREKSTOR                  "rc-trekstor"
 #define RC_MAP_TT_1500                   "rc-tt-1500"
 #define RC_MAP_TWINHAN_VP1027_DVBS       "rc-twinhan1027"
+#define RC_MAP_VIDEOMATE_M1F             "rc-videomate-m1f"
 #define RC_MAP_VIDEOMATE_S350            "rc-videomate-s350"
 #define RC_MAP_VIDEOMATE_TV_PVR          "rc-videomate-tv-pvr"
 #define RC_MAP_WINFAST                   "rc-winfast"
Signature · 1 line
Ramiro Morales