[pvrusb2] HVR-1900 needs driver change to support 16K fx2 firmware.
Gary Francis
gary.francis at serverlan.plus.com
Sun Nov 22 08:06:53 CST 2009
Hi Mike,
Firstly, thanks for all the effort in maintaining drivers for the
pvrusb2.
I recently acquired an HVR-1900 and now have it working with both
Ubuntu 9.04 and Slackware64 13.0, except for the IR Blaster. Using the
extract script from the 20091031 snapshot I was able to extract the
required firmware, but had a couple of problems in using the latest FX2
firmware.
The firmware for the HVR-1900 (From 1.2a driver CD) is now 16k in size.
To use this required two changes to the driver source.
1. The addition of the 16k flag for the HVR-1900 in pvrusb2-devattr.c.
*** 393,398 ****
--- 393,399 ----
.flag_has_analogtuner = !0,
.flag_has_composite = !0,
.flag_has_svideo = !0,
+ .flag_fx2_16kb = !0,
.signal_routing_scheme = PVR2_ROUTING_SCHEME_HAUPPAUGE,
.digital_control_scheme = PVR2_DIGITAL_SCHEME_HAUPPAUGE,
.led_scheme = PVR2_LED_SCHEME_HAUPPAUGE,
2. The firmware uploader pvr2_upload_firmware1 in pvrusb2-hdw.c checks
is hardcoded to check for an 8192 byte upload, causing a 16k upload to
fail. I changed this to use the actual size of firmware expected.
*** 1890,1897 ****
trace_firmware("Upload done (%d bytes sent)",ret);
! /* We should have written 8192 bytes */
! if (ret == 8192) {
hdw->fw1_state = FW1_STATE_RELOAD;
return 0;
}
--- 1890,1897 ----
trace_firmware("Upload done (%d bytes sent)",ret);
! /* We should have written fwsize bytes */
! if (ret == fwsize) {
hdw->fw1_state = FW1_STATE_RELOAD;
return 0;
}
Keep up the good work
Gary
--
----8<----
Gary Francis. EMAIL gary.francis at orange.net
The views expressed here are the ramblings of my fingers and do
not necessarily represent those of my mind.
More information about the pvrusb2
mailing list