Hi, I have two Compro VideoMate DVB-T300 cards installed in my computer. The saa7134 drivers do not recognize them correctly. I have had to make code modifications to get the drivers to recognize them, as shown below. Has anyone else experienced this? If you look closely, you will see that the PCI ID of both cards is identical: 1850:0000. This is odd - Compro's subvendor ID is 185B not 1850 and 0000 is a strange subdevice ID. My computer configuration is: AMD64 CPU Gigabyte GA-K8NSC-939 motherboard with NFORCE3 chipset Gentoo Linux with 2.6.15r5 kernel - I got the same result previously when trying with 64 bit SuSE OSS 10.0 with a 2.6.13 kernel and drivers compiled from the v4l-dvb repository. If I use sudo modprobe saa7134 card=70 then I get the following result in dmesg: saa7130/34: v4l2 driver version 0.2.14 loaded ACPI: PCI Interrupt 0000:02:07.0[A] -> Link [APC4] -> GSI 19 (level, low) -> IRQ 177 saa7134[0]: found at 0000:02:07.0, rev: 1, irq: 177, latency: 32, mmio: 0xf6004000 saa7134[0]: subsystem: 1850:0000, board: Compro Videomate DVB-T300 [card=70,insmod option] saa7134[0]: board init: gpio is 940d00 input: saa7134 IR (Compro Videomate DV as /class/input/input3 saa7134[0]: i2c eeprom 00: 5a 10 00 c0 10 00 04 00 40 43 09 14 10 10 02 10 saa7134[0]: i2c eeprom 10: 00 d4 80 05 01 00 fa ff ef 58 1a 8d e0 00 00 50 saa7134[0]: i2c eeprom 20: 01 40 00 00 00 77 00 01 08 d4 00 05 04 83 fa c7 saa7134[0]: i2c eeprom 30: ff 96 bc 9b 7a 50 a0 d4 b8 14 04 77 f0 c3 1f d4 saa7134[0]: i2c eeprom 40: b8 00 00 82 82 10 ff 96 bc 9b 7d 80 bb d4 bc 14 saa7134[0]: i2c eeprom 50: 04 d4 b8 15 06 c0 01 d4 bc 15 06 d5 b8 15 06 c0 saa7134[0]: i2c eeprom 60: 30 14 0c 83 fa ff 7f 58 1a 2b 01 8d e0 00 00 50 saa7134[0]: i2c eeprom 70: 12 68 59 d4 b8 15 06 83 fa ff f7 58 1a 8d e0 00 saa7134[0]: registered device video0 [v4l2] saa7134[0]: registered device vbi0 ACPI: PCI Interrupt 0000:02:09.0[A] -> Link [APC2] -> GSI 17 (level, low) -> IRQ 209 saa7134[1]: found at 0000:02:09.0, rev: 1, irq: 209, latency: 32, mmio: 0xf6005000 saa7134[1]: subsystem: 1850:0000, board: UNKNOWN/GENERIC [card=0,autodetected] saa7134[1]: board init: gpio is 843ff7 saa7134[1]: i2c eeprom 00: 5a 10 00 c0 10 00 04 00 40 43 09 14 10 10 02 10 saa7134[1]: i2c eeprom 10: 00 d4 80 05 01 00 fa ff ef 58 1a 8d e0 00 00 50 saa7134[1]: i2c eeprom 20: 01 40 00 00 00 77 00 01 08 d4 00 05 04 83 fa c7 saa7134[1]: i2c eeprom 30: ff 96 bc 9b 7a 50 a0 d4 b8 14 04 77 f0 c3 1f d4 saa7134[1]: i2c eeprom 40: b8 00 00 82 82 10 ff 96 bc 9b 7d 80 bb d4 bc 14 saa7134[1]: i2c eeprom 50: 04 d4 b8 15 06 c0 01 d4 bc 15 06 d5 b8 15 06 c0 saa7134[1]: i2c eeprom 60: 30 14 0c 83 fa ff 7f 58 1a 2b 01 8d e0 00 00 50 saa7134[1]: i2c eeprom 70: 12 68 59 d4 b8 15 06 83 fa ff f7 58 1a 8d e0 00 saa7134[1]: registered device video1 [v4l2] saa7134[1]: registered device vbi1 Linux video capture interface: v1.00 As you can see, only one card is set up by the insmod option. The other is not recognised. To fix this, add the following lines to /usr/src/linux/drivers/media/video/saa7134/saa7134-cards.c },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7134, .subvendor = 0x1850, .subdevice = 0x0000, .driver_data = SAA7134_BOARD_VIDEOMATE_DVBT_300, and recompile: cd /usr/src/linux sudo make sudo make install_modules and then install the module sudo modprobe saa7134 and this gives the following result in dmesg: Linux video capture interface: v1.00 saa7130/34: v4l2 driver version 0.2.14 loaded ACPI: PCI Interrupt 0000:02:07.0[A] -> Link [APC4] -> GSI 19 (level, low) -> IRQ 177 saa7134[0]: found at 0000:02:07.0, rev: 1, irq: 177, latency: 32, mmio: 0xf6004000 saa7134[0]: subsystem: 1850:0000, board: Compro Videomate DVB-T300 [card=70,autodetected] saa7134[0]: board init: gpio is 950efd input: saa7134 IR (Compro Videomate DV as /class/input/input0 saa7134[0]: i2c eeprom 00: 02 10 00 01 04 00 1c 00 40 03 00 10 04 00 82 10 saa7134[0]: i2c eeprom 10: 00 e7 02 00 01 00 10 26 52 41 c0 06 f8 ed cb 00 saa7134[0]: i2c eeprom 20: 00 40 01 02 03 41 00 01 00 5e 00 06 40 e7 32 00 saa7134[0]: i2c eeprom 30: 01 5f 20 77 ac 5e 00 88 53 71 32 8c c0 01 0f 50 saa7134[0]: i2c eeprom 40: 26 02 00 00 02 00 67 00 00 50 51 2b 02 24 66 2b saa7134[0]: i2c eeprom 50: 00 24 67 50 70 e7 66 00 01 71 66 cc 03 50 26 0b saa7134[0]: i2c eeprom 60: 00 24 66 71 57 96 bc 9b 7f 38 57 05 0f 73 58 a0 saa7134[0]: i2c eeprom 70: 57 38 57 7c 58 4e 9f 83 f2 ff 80 30 58 d5 b8 14 tuner 0-0061: chip found @ 0xc2 (saa7134[0]) tuner 0-0061: type set to 67 (Philips TD1316 Hybrid Tuner) tuner 0-0061: type set to 67 (Philips TD1316 Hybrid Tuner) tuner 0-0068: chip found @ 0xd0 (saa7134[0]) tda9887 0-0043: chip found @ 0x86 (saa7134[0]) saa7134[0]: registered device video0 [v4l2] saa7134[0]: registered device vbi0 ACPI: PCI Interrupt Link [APC2] enabled at IRQ 17 GSI 20 sharing vector 0xD1 and IRQ 20 ACPI: PCI Interrupt 0000:02:09.0[A] -> Link [APC2] -> GSI 17 (level, low) -> IRQ 209 saa7134[1]: found at 0000:02:09.0, rev: 1, irq: 209, latency: 32, mmio: 0xf6005000 saa7134[1]: subsystem: 1850:0000, board: Compro Videomate DVB-T300 [card=70,autodetected] saa7134[1]: board init: gpio is 843f12 input: saa7134 IR (Compro Videomate DV as /class/input/input1 tuner 1-0061: chip found @ 0xc2 (saa7134[1]) tuner 1-0061: type set to 67 (Philips TD1316 Hybrid Tuner) tuner 1-0061: type set to 67 (Philips TD1316 Hybrid Tuner) tuner 1-0068: chip found @ 0xd0 (saa7134[1]) tda9887 1-0043: chip found @ 0x86 (saa7134[1]) saa7134[1]: i2c eeprom 00: 02 10 00 01 04 00 1c 00 40 03 00 10 04 00 82 10 saa7134[1]: i2c eeprom 10: 00 e7 02 00 01 00 10 26 52 41 c0 06 f8 ed cb 00 saa7134[1]: i2c eeprom 20: 00 40 01 02 03 41 00 01 00 5e 00 06 40 e7 32 00 saa7134[1]: i2c eeprom 30: 01 5f 20 77 ac 5e 00 88 53 71 32 8c c0 01 0f 50 saa7134[1]: i2c eeprom 40: 26 02 00 00 02 00 67 00 00 50 51 2b 02 24 66 2b saa7134[1]: i2c eeprom 50: 00 24 67 50 70 e7 66 00 01 71 66 cc 03 50 26 0b saa7134[1]: i2c eeprom 60: 00 24 66 71 57 96 bc 9b 7f 38 57 05 0f 73 58 a0 saa7134[1]: i2c eeprom 70: 57 38 57 7c 58 4e 9f 83 f2 ff 80 30 58 d5 b8 14 saa7134[1]: registered device video1 [v4l2] saa7134[1]: registered device vbi1 As you can see, the cards are now recognized correctly. |
_______________________________________________ linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb