[pvrusb2] PVRUSB2 on Feisty Fawn resetting continuously
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
> 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
> 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
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
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