Hans, Thanks for the help! If you're ever in Victoria Canada drop me a line and I'll buy you a beer(or two..).
Michael Quoting Hans Verkuil <[EMAIL PROTECTED]>: > It might be the kernel itself: that too has a memcpy function. Oh, never > mind. It works :-) > > Hans > > On Monday 02 January 2006 22:35, Hans Verkuil wrote: > > On Monday 02 January 2006 22:11, [EMAIL PROTECTED] wrote: > > > Hans, > > > > > > That did it - can you explain the difference between the two > > > functions? The function prototype is not easily found on google. I > > > would like to know the cause. > > > > memcpy_toio is a kernel function which copies memory to so-called I/O > > memory, which is memory from another board (such as the PVR card) > > mapped through the PCI bus. I bet that the new gcc compiler inlines > > memcpy to use 64-bit memory copies for the amd64, but the PCI-bus > > cannot handle 64-bit memory transfers. memcpy_toio behaves well in > > this case. > > > > I never saw it because I'm still using gcc-3.4 on my amd64 box. My > > 32-bit environment has been updated to gcc-4, but that's 32-bit so it > > works there as well. > > > > > How do we go about filing a bug report? > > > > Nothing. I've fixed it in the ivtv-0.4 branch and in ivtv-0.5 head. > > It will be in the next release. > > > > Thanks for testing! > > > > Hans > > > > > Michael > > > > > > Quoting Hans Verkuil <[EMAIL PROTECTED]>: > > > > OK, I thought so. > > > > > > > > Now for the interesting part: > > > > > > > > In ivtv-firmware.c, in the load_fw_direct inside > > > > CONFIG_FW_LOADER, replace the two memcpy statements by > > > > memcpy_toio and let me know if it now works. If my guess is > > > > correct it will work now. You can put back the audio firmware, by > > > > the way. > > > > > > > > Hans > > > > > > > > On Monday 02 January 2006 21:44, [EMAIL PROTECTED] wrote: > > > > > Hans, > > > > > > > > > > I'm afraid that renaming the audio firmware doesn't make any > > > > > difference. Is there someway of ensuring that it is being > > > > > loaded? The debug messages in dmesg do not explicitly state > > > > > that the audio firmware is loaded in either 0.4.0/0.4.1/0.4.2. > > > > > > > > > > Cheers, > > > > > > > > > > Michael > > > > > > > > > > Quoting Hans Verkuil <[EMAIL PROTECTED]>: > > > > > > On Monday 02 January 2006 20:17, [EMAIL PROTECTED] wrote: > > > > > > > Hans, > > > > > > > > > > > > > > I wasn't able to apply the patch ( I'm a newbie w/ linux ) > > > > > > > so I just modified the source with the information > > > > > > > contained in your file. > > > > > > > > > > > > > > no hotplug gives: > > > > > > > > > > > > > > [ 1348.171567] ivtv0: loaded > > > > > > > /lib/modules/v4l-cx2341x-enc.fw firmware (262144 bytes) [ > > > > > > > 1348.423225] ivtv0: firmware sum = 0084a9cb > > > > > > > > > > > > > > > > > > > > > hotplug gives: > > > > > > > > > > > > > > [ 1865.847204] ivtv0: loaded v4l-cx2341x-enc.fw firmware > > > > > > > (262144 bytes, sum = 0084a9cb) > > > > > > > [ 1866.098870] ivtv0: firmware sum = 00206879 > > > > > > > > > > > > > > This is very interesting, it loads the firmware in > > > > > > > load_fw_direct and then has the incorrect firmware in > > > > > > > ivtv_enc_firmware_copy. The memcpy was successful, it did > > > > > > > not return NULL(I checked). > > > > > > > > > > > > > > Could something else be overwriting this variable? Another > > > > > > > thread perhaps? > > > > > > > > > > > > > > I'm willing to continue debugging but need a little help. > > > > > > > > > > > > Can you move the v4l-cx25840.fw to another name? The only > > > > > > thing I can think of right now is that the load of that > > > > > > firmware disturbs the load of this firmware. So by moving > > > > > > v4l-cx25840.fw out of the way the cx25840 no longer can > > > > > > interfere. If that makes no difference, then try to rmmod > > > > > > ivtv followed by modprobe ivtv (since cx25840 was already > > > > > > loaded that too excludes any interference of cx25840). > > > > > > > > > > > > Hans > > > > > > > > > > > > > Thanks, > > > > > > > > > > > > > > Michael > > > > > > > > > > > > > > Quoting Hans Verkuil <[EMAIL PROTECTED]>: > > > > > > > > Michael, > > > > > > > > > > > > > > > > I've attached a patch for ivtv-firmware.c. I'm curious > > > > > > > > what the results will be. To be continued tomorrow... > > > > > > > > > > > > > > > > Hans > > > > > > > > > > > > > > > > On Monday 02 January 2006 01:15, [EMAIL PROTECTED] wrote: > > > > > > > > > Hans, > > > > > > > > > > > > > > > > > > Your guess was bang on - reverting to the "old way" of > > > > > > > > > loading the firmware results in success. Something in > > > > > > > > > the hotplug is causing grief. > > > > > > > > > > > > > > > > > > If you can give me a hand with the C, I can attempt the > > > > > > > > > summations that you have requested. It would be nice to > > > > > > > > > get to the bottom of this one.. I'm probably not the > > > > > > > > > only one that has run into this problem. > > > > > > > > > > > > > > > > > > Cheers, > > > > > > > > > > > > > > > > > > Michael > > > > > > > > > > > > > > > > > > Quoting Hans Verkuil <[EMAIL PROTECTED]>: > > > > > > > > > > On Monday 02 January 2006 00:27, [EMAIL PROTECTED] > > > > wrote: > > > > > > > > > > > Hans, > > > > > > > > > > > > > > > > > > > > > > I've performed the operations as requested, and > > > > > > > > > > > achieve the same result - I assume this removes > > > > > > > > > > > zero padding on the firmware file? > > > > > > > > > > > > > > > > > > > > correct > > > > > > > > > > > > > > > > > > > > > [ 307.521854] ivtv0: loaded v4l-cx2341x-enc.fw > > > > > > > > > > > firmware (262144 bytes) [ 307.753271] ivtv0 > > > > > > > > > > > warning: Encoder mailbox not found [ 307.784732] > > > > > > > > > > > ivtv0 warning: Decoder mailbox not found [ > > > > > > > > > > > 307.784735] ivtv0: Error locating firmware. [ > > > > > > > > > > > 307.791075] ivtv0: Error -12 on initialization [ > > > > > > > > > > > 307.791084] ivtv: probe of 0000:02:06.0 failed with > > > > > > > > > > > error -12 [ 307.791090] ivtv: > > > > > > > > > > > ==================== END INIT IVTV > > > > > > > > > > > ==================== > > > > > > > > > > > > > > > > > > > > > > To be certain that the firmware was correct, I > > > > > > > > > > > reloaded 0.4.0 using the shortened firmware file > > > > > > > > > > > and was able to watch tv once again. > > > > > > > > > > > > > > > > > > > > > > I believe we have ruled out the firmware.. could > > > > > > > > > > > there be something in ivtv 0.4.1/2 that is causing > > > > > > > > > > > the grief? Is there some means of enabling more > > > > > > > > > > > verbose debug messages? I don't mind recompiling... > > > > > > > > > > > > > > > > > > > > Well, ivtv-0.4.1 switched to the hotplug mechanism. > > > > > > > > > > My guess the problem is with that. > > > > > > > > > > > > > > > > > > > > Edit ivtv-firmware.c, look for CONFIG_FW_LOADER and > > > > > > > > > > replace that #if with #if 0. Do the same in > > > > > > > > > > ivtv-driver.h and cx25840.h. > > > > > > > > > > > > > > > > > > > > Recompile, install and test. If it now works again, > > > > > > > > > > then it is the new hotplug stuff that breaks things. > > > > > > > > > > But why don't I get the same problems? Weird. > > > > > > > > > > > > > > > > > > > > If it is hotplug related and if you are handy with C, > > > > > > > > > > then can you perhaps do some tests? I was thinking of > > > > > > > > > > hacking ivtv-firmware.c so that the firmware load > > > > > > > > > > routines so a simple sum of all the bytes in the > > > > > > > > > > firmware and then show the grand total when done. I'd > > > > > > > > > > be very interested to see if there are any difference > > > > > > > > > > between the hotplug and non-hotplug cases. > > > > > > > > > > > > > > _______________________________________________ > > > > > > > ivtv-users mailing list > > > > > > > [email protected] > > > > > > > http://ivtvdriver.org/mailman/listinfo/ivtv-users > > > > > > > > > > > > _______________________________________________ > > > > > > ivtv-users mailing list > > > > > > [email protected] > > > > > > http://ivtvdriver.org/mailman/listinfo/ivtv-users > > > > > > > > > > _______________________________________________ > > > > > ivtv-users mailing list > > > > > [email protected] > > > > > http://ivtvdriver.org/mailman/listinfo/ivtv-users > > > > > > > > _______________________________________________ > > > > ivtv-users mailing list > > > > [email protected] > > > > http://ivtvdriver.org/mailman/listinfo/ivtv-users > > > > > > _______________________________________________ > > > ivtv-users mailing list > > > [email protected] > > > http://ivtvdriver.org/mailman/listinfo/ivtv-users > > > > _______________________________________________ > > ivtv-users mailing list > > [email protected] > > http://ivtvdriver.org/mailman/listinfo/ivtv-users > > _______________________________________________ > ivtv-users mailing list > [email protected] > http://ivtvdriver.org/mailman/listinfo/ivtv-users > _______________________________________________ ivtv-users mailing list [email protected] http://ivtvdriver.org/mailman/listinfo/ivtv-users
