[pvrusb2] PVRUSB2 on Feisty Fawn resetting continuously

Mike Isely isely at isely.net
Sat Jan 27 00:44:11 CST 2007

Sorry about the reply delay; I've been inundated with work here.  I'm 
trying to climb back on top of the e-mail pile now.  Read on...

On Wed, 24 Jan 2007, Matt Nyerges wrote:

> I am attempting to see if my peripherals will work with Ubuntu before I wipe
> windows clean out of my life, one of which is a pvrusb2.
> My setup is Windows XP with VM Ware workstation 5.0 and an Ubuntu Feisty
> Fawn installation on a virtual machine.  My laptop is a Sony GRV680.
> When I run lsusb I see one entry for the device:
> Bus 001 Device 092: ID 2040:2900 Hauppauge
> My kernel version is 2.6.20-5-generic.
> When I run cat /proc/bus/usb/devices I see:
> ...
> P:  Vendor=2040 ProdID=2900 Rev=4.00
> S:  Manufacturer=Hauppauge
> ...
> The device resets continuously, leaving similar messages in dmesg
> continuously:
> ...
> USB disconnect, address 113
> new ful sped USB device using uhci_hcd and address 114
> configuraiton #1 chosen from 1 choice
> Device microcontroller firmware (re)loaded; it should now reset and
> reconnect.
> USB disconnect, address 114

What's happening here sounds like a peculiar type of initialization 
failure.  Basically in order for the pvrusb2 driver to initialize the 
device it has to download two separate firmware images.  The first image 
loads the FX2 microcontroller in the device, while the second image 
loads the cx23416 mpeg encoder chip.  The issue here is likely with the 
first image:  What happens is that the driver has to detect if the FX2 
firmware already present by testing the hardware (there's no other way 
to tell unfortunately).  The test is a command sent to the device that 
should "never" fail.  If it fails, then the driver presumes that the 
firmware is missing and so it puts the FX2 into reset, sends the 
firmware, and then releases it.  Once released the FX2 will disconnect 
from the host and then reconnect.  This is logically identical to the 
cable being yanked and re-plugged in.  When this happens the pvrusb2 
driver loses any memory of what it did across that replug action (this 
is a feature not a bug - long story).  So when the device reappears, the 
pvrusb2 driver again notices it and begins the initialization process 
again.  Only this time since the firmware was loaded, the detection will 
pass and then the driver will complete its initialization.

However in your case the test is probably failing again, so the driver 
once again attempts to load the firmware, and then we just keep 
repeating forever.

My first guess is that there's something wrong with the firmware file.  
Where did you get it from?  Did you use the extraction process?  For 
your device, the FX2 firmware will be v4l-pvrusb2-24xxx-01.fw.  If the 
extraction worked you should have gotten a file with that name.  If on 
the other hand you renamed something else to that name (like maybe you 
downloaded a v4l-pvrusb2-29xxx-01.fw file from somewhere and renamed 
it), then that DEFINITELY will not work.  Loading 29xxx firmware on a 
24xxx device fails.  I'm not saying you did that of course :-)  But if 
the firmware file is somehow "wrong", then I could see this behavior be 
the result.  Usually this sort of mistake never happens.

> There is also no /dev/video0 available.

Right.  That would make sense.  If the driver can't get past loading the 
FX2 firmware correctly, then the rest of the driver won't initialize 
thus no /dev/video0 file.

> This may have to do with how windows, the USB bus, the VMWare virtual
> machine and Ubuntu communicate, but I wanted to check here first.

Well definitely running under vmware might be an issue.  A while back I 
used to test the Windows driver by running it under Win2K under vmware 
under Linux.  Several versions of vmware ago this stopped working 
correctly.  No idea why, but I consider myself lucky that it ever worked 
at all.

I don't imagine that vmware could be corrupting the packet data (though 
that would explain the firmware loading issue).  But it can't be ruled 
out.  I've seen other USB strangeness in the past with vmware.

> Has anyone tried this setup, or ran into similar problems?  Any information
> is much appreciated.

I think you're the first one to run the pvrusb2 driver in a vmware 

> I know the hardware is working too, I just taped something in Windows.
> Thanks in advance for your help!

Sorry for the delay in replying.


                        |         Mike Isely          |     PGP fingerprint
     Spammers Die!!     |                             | 03 54 43 4D 75 E5 CC 92
                        |   isely @ pobox (dot) com   | 71 16 01 E2 B5 F5 C1 E8
                        |                             |

More information about the pvrusb2 mailing list