In case anyone is interested, I have some small proof that a PVR-500 can
work in a PCI-X slot.

Hans and I worked on this most of the day until he had to go.  I was able to
get a little further and found a small, temporary workaround.

I don't know the real cause, or the best fix yet, but by putting

msleep(10); 

right before

retval = client->driver->command(client, cmd, arg);

in ivtv-i2c.c

I was able to get the driver to load without crashing the system (something
I was not able to do heretofore) and I was able to use the driver
successfully to change the channel (ivtv-tune), and to capture closed
captioning data using zvbi's capture and decode programs.  The closed
captioning comes out clean.

Note that this sleep gets called a lot, so it may not be acceptable for
actual video capture, and I'm not testing that right now.  My main goal was
to get the driver to load, but of course, I hope someone can figure out what
the right solution is.

I think I'm having one other problem.  I will need to try it again to be
sure.  But I believe the driver won't load at boot time.  It crashes the
system during initialization at boot.  That's bad because if I have to
reboot, I have to take all of the PVR-500 cards out to get it to boot up,
then remove the drivers, then put the cards back in, boot up, and load the
drivers from the command line (which does work).  

Does anyone know the difference between loading drivers during boot vs.
loading them from the command line?  I'm using CentOS 4.3 (basically RHEL
4.3).

Also, does anyone know where the kernel logs get written during the early
boot stage?

--

Rich Kadel
Know'bout, Inc.
(858) 433-1747
www.knowbout.com

Do you know about Know'bout?


-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Hans Verkuil
Sent: Monday, June 26, 2006 1:48 AM
To: Discussion list for development of the IVTV driver
Subject: Re: [ivtv-devel] System hangs loading driver modules for PVR-500

Hi Rich,

Try adding 'ivtv_debug=511' to the ivtv module options. This should
provide (much) more debug info and hopefully help in giving me a better
idea where the problem is.

Thanks,

       Hans

> Hans,
>
> I messed around with this a little more.  I've run out of time now and
> unless someone has a quick fix (I realize that's not likely), I'm going to
> have to stick with the PVR-250 cards and be limited to 3 tuners on this
> server.
>
> But here's a little bit more information...
>
> FIRST:  I realized why it was hanging during the boot phase, and it was
> the
> ivtv driver after all.  Once I removed the driver and all of the files, it
> booted up fine WITH the PVR-500 (but with no drivers).
>
> Here is part of lspci -v showing the 250 and the 500 (2 units):
>
> 09:04.0 Multimedia video controller: Internext Compression Inc iTVC16
> (CX23416) MPEG-2 Encoder (rev 01)
>         Subsystem: Hauppauge computer works Inc. WinTV PVR 250
>         Flags: bus master, medium devsel, latency 32, IRQ 225
>         Memory at d8000000 (32-bit, prefetchable) [size=64M]
>         Capabilities: [44] Power Management version 2
>
> 0a:02.0 PCI bridge: Hint Corp HB6 Universal PCI-PCI bridge
> (non-transparent
> mode) (rev 11) (prog-if 00 [Normal decode])
>         Flags: bus master, medium devsel, latency 32
>         Bus: primary=0a, secondary=0b, subordinate=0b, sec-latency=32
>         Memory behind bridge: fe100000-fe1fffff
>         Prefetchable memory behind bridge: d0000000-d7ffffff
>         Capabilities: [80] Power Management version 2
>         Capabilities: [90] #06 [0000]
>
> 0b:08.0 Multimedia video controller: Internext Compression Inc iTVC16
> (CX23416) MPEG-2 Encoder (rev 01)
>         Subsystem: Hauppauge computer works Inc. WinTV PVR 500 (1st unit)
>         Flags: bus master, medium devsel, latency 32, IRQ 233
>         Memory at d4000000 (32-bit, prefetchable) [size=64M]
>         Capabilities: [44] Power Management version 2
>
> 0b:09.0 Multimedia video controller: Internext Compression Inc iTVC16
> (CX23416) MPEG-2 Encoder (rev 01)
>         Subsystem: Hauppauge computer works Inc. WinTV PVR 500 (2nd unit)
>         Flags: bus master, medium devsel, latency 32, IRQ 50
>         Memory at d0000000 (32-bit, prefetchable) [size=64M]
>         Capabilities: [44] Power Management version 2
>
> SECOND: I put some debug lines in the driver to see how far it gets after
> loading the firmware.  If you see my earlier message (6/23/06, 10:39PM US
> Pacific Time), the driver dies sometime after loading the firmware:
>
> Jun 23 21:32:20 server1 kernel: ivtv1: loaded v4l-cx2341x-enc.fw firmware
> (262144 bytes)
>
> Now, however, with the debug lines in, it gets a little further.  I'm
> denoting my additional lines with ">" here:
>
> Jun 25 23:06:18 server1 kernel: ivtv1: 2. loaded v4l-cx2341x-enc.fw
> firmware
> (262144 bytes)
>> Jun 25 23:06:18 server1 kernel: ivtv1: Done with ivtv_firmware_copy
>> Jun 25 23:06:18 server1 kernel: ivtv1: Out of ivtv_firmware_init
>> Jun 25 23:06:18 server1 kernel: ivtv1: Out of find_firmware_mailbox
>> Jun 25 23:06:18 server1 kernel: ivtv1: Out of check_firmware
> Jun 25 23:06:18 server1 kernel: ivtv1: Encoder revision: 0x02050032
> Jun 25 23:06:18 server1 kernel: ivtv1: Allocate DMA encoder MPEG stream:
> 128
> x 32768 buffers (4096KB total)
> Jun 25 23:12:21 server1 syslogd 1.4.1: restart.
>
> So it appears to me that the server death is not directly related to
> executing a specific line of code in the main thread of the driver
> initialization, which means I've exhausted my ability to provide useful
> information to you.  I don't know how to debug write or drivers.
>
> Hopefully this is of some help to you, and if you have a chance to fix
> this
> someday, please let me know.  I appreciate the help.
>
> If there's anything else you want me to check, I have about 24 hours
> before
> this server is a going to be closed up and deployed.  I can't do much
> after
> that.
>
> Thanks,
> Rich
>
> --
>
> Rich Kadel
> Know'bout, Inc.
> (858) 433-1747
> www.knowbout.com
>
> Do you know about Know'bout?
>
>
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] On Behalf Of Hans Verkuil
> Sent: Sunday, June 25, 2006 9:16 AM
> To: Discussion list for development of the IVTV driver
> Subject: Re: [ivtv-devel] System hangs loading driver modules for PVR-500
>
> On Sunday 25 June 2006 18:00, Tyler Trafford wrote:
>> On Jun 25, 2006, at 10:13 AM, Hans Verkuil wrote:
>> > I really first need proof that it works under Windows before I'm
>> > going to spend time on this. And the first step would be to put
>> > printk's in the driver (ivtv-driver.c) and see where it breaks
>> > down. Also note that
>> > I expect to have little time for this anyway in the next two weeks.
>>
>> A thread from last year suggests that this does work under Windows.
>>
>> http://www.gossamer-threads.com/lists/ivtv/devel/18662#18662
>
> Interesting. Although the code location mentioned in this thread is with
> 99.99% certainty not the place where it is hanging.
>
>       Hans
>
> _______________________________________________
> ivtv-devel mailing list
> [email protected]
> http://ivtvdriver.org/mailman/listinfo/ivtv-devel
>
>
>
> _______________________________________________
> ivtv-devel mailing list
> [email protected]
> http://ivtvdriver.org/mailman/listinfo/ivtv-devel
>



_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel



_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel

Reply via email to