Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] New card: Pinnacle PCTV 300i DVB-T (saa7134,mt352) - info and questions
Hi,
another newbie with another currently unsupported card here :-)
Here are the details:
Pinnacle PCTV MediaCenter 300i (PAL)
(similar to PCTV Stereo, but has analogue-tuner and DVB-T, 1x composite,
SVHS)
PCI Vendor/Device ID 0x1131:0x7134
Subsystem ID 0x002d:11bd (the PCTV Stereo has 0x002b:11bd)
I²C bus:
AT24C02N @ 0xa0
MT2050 @ 0xc0
TDA9885 @ 0x86
MT352 (DVB-T demod) @ 0x3c
TDA9885 audio mode = intercarrier
There's also a IR remote control included, but I didn't take a look at
it yet.
I've got the analogue part running on FC2 kernel 2.6.8 with sound,
tuning, composite and S-Video inputs, so I think it's ready to be added
to saa7134-cards.c. As I'm too stupid to make a proper diff to the
newest snapshot, here's a cut & paste of the lines I added for myself...
It's basically a copy of SAA7134_BOARD_PINNACLE_PCTV_STEREO, but without
the composite input .vmux=0 as that gave me only a blank screen. The
card has no external audio-input jacks.
---- saa7134-cards.c @ about line 700 ----
[SAA7134_BOARD_PINNACLE_PCTV_300I] = {
.name = "Pinnacle PCTV MediaCenter 300i
(saa7134)",
.audio_clock = 0x00187de7,
.tuner_type = TUNER_MT2032, /* 2050, actually */
.tda9887_conf = TDA9887_PRESENT | TDA9887_INTERCARRIER,
.inputs = {{
.name = name_tv,
.vmux = 3,
.amux = TV,
.tv = 1,
},{
.name = name_comp1,
.vmux = 1,
.amux = LINE2,
},{
.name = name_svideo,
.vmux = 8,
.amux = LINE2,
}},
},
---- saa7134-cards.c @ about line 1300 ----
.vendor = PCI_VENDOR_ID_PHILIPS,
.device = PCI_DEVICE_ID_PHILIPS_SAA7134,
.subvendor = 0x11bd,
.subdevice = 0x002d,
.driver_data = SAA7134_BOARD_PINNACLE_PCTV_300I,
},{
---- saa7134.h @ line 145 ----
#define SAA7134_BOARD_PINNACLE_PCTV_300I 41
----
Now to my problem(s):
The MT352 doesn't work yet. Right after cold booting the PC, it responds
to any I²C read request with 0xFF or, randomly, with I²C protocol
errors. After I initialize the clock_ctl and config registers to any
value, the readout of all registers becomes 0x00 (no more protocol
errors, though). If I hack saa7134_board_init to set GPIO21 (which
connects to the SLEEP input) to '1', then the MT352 does not respond at all.
Clocking of the MT352 is as follows: OSCMODE is tied to Vdd (1), XTO and
/XTI follow the reference implementation of "external clocking via AC
coupling" (Design manual p. 83) and seem to be coupled to the xtal under
the metal shroud. I haven't yet opened that to read its freqency.
Another pin I was able to trace is the (obvious) connection from
/PROP_RST to /RESET. Maybe I have to hardware reset the MT352 after
initializing CLOCK_CTL? If so, how do I toggle the /PROP_RST pin of the
SAA7134?
What furthermore confuses me is that the SADD pins determining the I²C
address of the MT352 are not all tied to Vdd or Vss respectively. While
SADD1 through 4 are all tied high, SADD0 is connected to the Vss plane
via a 4k7 resistor. Might some logic be driving that line? Doesn't seem
to be one of the GPIOs, though.
By the way, if the TS mode of the SAA7134 is set, where GPIO21 is used
as TS_S_D, can I still toggle GPIO21 manually? The PCB layout suggests
that the GPIO pins are to be configured for dedicated TS capture.
The SAA7134 user manual would answer most of these questions I believe,
but as you all know there's unfortunately no mention of it on the
Philips website. The data sheet/product spec is great, but insufficient
(no info at all on registers).
So.... Any ideas?
TIA,
Lasse
Home |
Main Index |
Thread Index