[pvrusb2] Problem with Hauppauge 1950 with (64 bit) Ubuntu 9.10 (Kernel 2.6.31-14-generic)

Mike Isely isely at isely.net
Sat Nov 14 17:49:29 CST 2009


John:

Comments interspersed...

On Sat, 14 Nov 2009, John Kennedy wrote:

> I just bought the above 1950.
> I initially hooked everything up and /var/log/messages reported that it could 
> not find the firmware for the device. Google lead me to fwextract.pl.
> I mounted the cdrom and ran ./fwextract.pl /media/cdrom0/Drivers/ With the 
> following output:
> 
> 
> fwextract version: fwextract.pl 2422 2009-11-12 08:01:13Z

Congratulations - you're the first person I know besides me to try the 
new rewritten fwextract.pl.  Looks like it worked perfectly.  I only put 
it up a few hours ago.

   [...]

> fw1-73xxx-01: 2 instances found, designating first instance for extraction
> fw2: 8 instances found, designating first instance for extraction
> fw3: 7 instances found, designating first instance for extraction

Holy cow - I had no idea that the new fxextract.pl would be that 
efficient in finding firmware images!  Hauppauge has them all over the 
place on that CD! :-)

   [...]

> Wrote fw1-73xxx-01 (file v4l-pvrusb2-73xxx-01.fw):
>   Intended hardware: "Hauppauge HVR-1950 / HVR-1900"
>   Component: "Cypress FX2 for Hauppauge HVR-1950 / HVR-1900"
>   Source /media/cdrom0/Drivers//Driver73/Hcw73bda.sys
>   Offset 437352 size 16384 bytes
>   MD5 verified (ac95c4c24e4edca0f2af5e44867a7204)

This shows that a 16KB sized FX2 firmware image was extracted (see 
further).

   [...]

> Nov 14 14:44:16 jkennedy-lap kernel: [ 1420.292822] usb 2-1: firmware: requesting v4l-pvrusb2-73xxx-01.fw
> Nov 14 14:44:16 jkennedy-lap kernel: [ 1420.301643] pvrusb2: wrong fx2 firmware size
> Nov 14 14:44:16 jkennedy-lap kernel: [ 1420.301655] pvrusb2: Failure uploading firmware1
> Nov 14 14:44:16 jkennedy-lap kernel: [ 1420.301659] pvrusb2: Device initialization was not successful.

This is a failure due the driver not knowing how to handle the larger 
FX2 firmware.  I expected this, unfortunately.  Read on...

   [...]

> 
> What am I missing?

This is exactly what happens when you try to load the newer 16KB-sized 
FX2 firmware using a driver version that doesn't know about the larger 
size.  The problem is that for the longest time the FX2 firmware has 
been exactly 8KB in size and the pvrusb2 driver has used that 
information as a trivial check to ensure that the right firmware is 
being loaded.  However the current FX2 firmware for the HVR-1950 is now 
16KB so the driver is getting angry when it sees the wrong size.

I fixed this issue several weeks ago, but the changes probably aren't 
going to reach the mainline kernel tree until 2.6.33.  Until then you 
can build and run a standalone driver.  Or you can find an instance of 
older 8KB firmware for the device.  There was a very recent discussion 
about this here, and I've also updated the online pvrusb2 documentation 
to cover this issue.  Take a look here:

http://www.isely.net/pvrusb2/setup.html#Firmware

  -Mike

-- 

Mike Isely
isely @ isely (dot) net
PGP: 03 54 43 4D 75 E5 CC 92 71 16 01 E2 B5 F5 C1 E8


More information about the pvrusb2 mailing list