A bit deeper, going to i2c-level:

working:
May 16 23:43:18 [kernel] ivtv: Autodetected WinTV PVR 150 card
May 16 23:43:18 [kernel] ivtv: Found an iTVC16 based chip
May 16 23:43:18 [kernel] ACPI: PCI interrupt 0000:02:0a.0[A] -> GSI 18
(level, low) -> IRQ 18
May 16 23:43:18 [kernel] ivtv: XXX PCI device: 0x00e1 vendor: 0x10de
May 16 23:43:18 [kernel] needed 0 jiffies
May 16 23:43:18 [kernel]  i2c_outb: 0x88 , getsda() = 0
May 16 23:43:18 [kernel] i2c-algo-bit.o: wrote 0 bytes.
May 16 23:43:18 [kernel] needed 0 jiffies
May 16 23:43:18 [kernel] saa7127: detecting saa7127 client on address 0x88
May 16 23:43:18 [kernel] needed 0 jiffies
May 16 23:43:18 [kernel]  i2c_outb: 0x88 , getsda() = 1
May 16 23:43:18 [kernel] needed 0 jiffies
May 16 23:43:18 [kernel]  i2c_outb: 0x88 , getsda() = 0
May 16 23:43:18 [kernel] i2c-algo-bit.o: Used 2 tries to write client
at 0x44 : success

Not working:
May 16 23:43:20 [kernel] ivtv: Autodetected WinTV PVR 150 card
May 16 23:43:20 [kernel] ivtv: Found an iTVC16 based chip
May 16 23:43:20 [kernel] ACPI: PCI interrupt 0000:02:0b.0[A] -> GSI 19
(level, low) -> IRQ 19
May 16 23:43:20 [kernel] ivtv: XXX PCI device: 0x00e1 vendor: 0x10de
May 16 23:43:20 [kernel] ivtv: ivtv_enc_thread: pid = 26307, itv = 0xe0b4cec8
May 16 23:43:20 [kernel] ivtv: ivtv_enc_vbi_thread: pid = 26308, itv =
0xe0b4cec8
May 16 23:43:20 [kernel] needed 0 jiffies
May 16 23:43:20 [kernel]  i2c_outb: 0x88 , getsda() = 1
May 16 23:43:20 [kernel] needed 0 jiffies
May 16 23:43:20 [kernel]  i2c_outb: 0x88 , getsda() = 1
May 16 23:43:20 [kernel] needed 0 jiffies
May 16 23:43:20 [kernel]  i2c_outb: 0x88 , getsda() = 1
May 16 23:43:20 [kernel] needed 0 jiffies
May 16 23:43:20 [kernel] needed 1 jiffies
May 16 23:43:20 [kernel] needed 0 jiffies
May 16 23:43:20 [kernel]  i2c_outb: 0x88 , getsda() = 1
May 16 23:43:20 [kernel] needed 0 jiffies
May 16 23:43:20 [kernel] i2c-algo-bit.o: Used 4 tries to write client
at 0x44 : no ack

One thing that jumps out is the encoder-threads:
May 16 23:43:20 [kernel] ivtv: ivtv_enc_thread: pid = 26307, itv = 0xe0b4cec8
May 16 23:43:20 [kernel] ivtv: ivtv_enc_vbi_thread: pid = 26308, itv =
0xe0b4cec8

Could they be blocking the i2c-reads? This is driving me nuts :-)

N.

On 5/16/05, Nick Rosier <[EMAIL PROTECTED]> wrote:
> Hope this might shed some light on what's going wrong; difference
> between initialization of the 2nd and 3rd card:
> 
> 2nd card:
> 
> ivtv: Found card #1
> ivtv: Autodetected WinTV PVR 150 card
> ivtv: Found an iTVC16 based chip
> ivtv: base addr: 0xd4000000
> ivtv: Enabling pci device
> ACPI: PCI interrupt 0000:02:0a.0[A] -> GSI 18 (level, low) -> IRQ 18
> ivtv: Bus Mastering Enabled.ivtv: 22 (rev 1) at 02:0a.0, ivtv:
> irq: 18, latency: 64, memory: 0xd4000000
> ivtv: XXX PCI device: 0x00e1 vendor: 0x10de
> ivtv: attempting ioremap at 0xd4000000 len 0x00800000
> ivtv: attempting ioremap at 0xd5000000 len 0x00800000
> ivtv: attempting ioremap at 0xd6000000 len 0x00010000
> ivtv: activating i2c...
> ivtv: i2c init
> ivtv: setting scl and sda to 1
> tveeprom: Hauppauge: model = 26559, rev = C260, serial# = 7931265
> tveeprom: tuner = LG S001D MK3 (idx = 60, type = 58)
> tveeprom: tuner fmt = PAL(B/G) PAL(I) SECAM(L/L) PAL(D/K) (eeprom =
> 0x74, v4l2 = 0x00400e17)
> tveeprom: audio_processor = MSP3410D (type = 5)
> ivtv: i2c client attach
> 
> ivtv: Found card #2
> ivtv: Autodetected WinTV PVR 150 card
> ivtv: Found an iTVC16 based chip
> ivtv: base addr: 0xd8000000
> ivtv: Enabling pci device
> ACPI: PCI interrupt 0000:02:0b.0[A] -> GSI 19 (level, low) -> IRQ 19
> ivtv: Bus Mastering Enabled.ivtv: 22 (rev 1) at 02:0b.0, ivtv:
> irq: 19, latency: 64, memory: 0xd8000000
> ivtv: XXX PCI device: 0x00e1 vendor: 0x10de
> ivtv: attempting ioremap at 0xd8000000 len 0x00800000
> ivtv: attempting ioremap at 0xd9000000 len 0x00800000
> ivtv: attempting ioremap at 0xda000000 len 0x00010000
> ivtv: activating i2c...
> ivtv: i2c init
> ivtv: setting scl and sda to 1
> ivtv: ivtv_enc_thread: pid = 1281, itv = 0xe0b4cec8
> ivtv: encoder thread sleeping 1281
> ivtv: ivtv_enc_vbi_thread: pid = 1282, itv = 0xe0b4cec8
> ivtv: encoder thread sleeping 1282
> saa7115: starting probe for adapter ivtv i2c driver #2 (0x10005)
> cx25840: starting probe for adapter ivtv i2c driver #2 (0x10005)
> ivtv: Active card count: 3.
> 
> So somewhere along activating i2c (init_ivtv_i2c in the source-code)
> it goes wrong. Up until setting scl and sda to 1 everything looks the
> same. So that leads me to think somewhere in the i2c_bit_add_bus
> function in the i2c-algo-bit module something goes wrong. Going to
> play around a bit with the i2c-algo-bit module's i2c_debugging.
> Hopefully it will lead to some more information.
> 
> I don't have enough experience in driver-programming so I'm just going
> along as I see it. If someone can give me some pointers, that would be
> great.
> 
> N.
> 
> On 5/15/05, Nick Rosier <[EMAIL PROTECTED]> wrote:
> > Well I'm out of ideas, if anyone has any others I'm keen to try them.
> > No matter what I do, the 3rd PVR-card always fails to initialize. What
> > I've done so far:
> >
> > - played with the i2c_enable settings for both cx25840 and saa7127
> > - moved PVR-cards to different slots
> > - moved order of PVR-cards (no matter which order, the 3rd cards fails
> > initialization)
> > - removed all PCI-cards but the PVR-cards
> > - compiled i2c and v4l in kernel in stead of as modules
> >
> > So still stuck; got a 3rd PVR-card I know works but fails to
> > initialize. Any help is welcome.
> >
> > N.
>


-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_idt12&alloc_id344&op=click
_______________________________________________
ivtv-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ivtv-devel

Reply via email to