Le Samstag, 28. Juli 2007, Hans Verkuil a écrit : > Hi all, > > A lot of progress is being made these days, thanks to the various > testers and in particular the discovery by Mark Bryars relating large > DMA tranfers with DMA timeouts. > > I've reworked the DMA handling in the driver to do the scatter/gather > inside the driver instead of relying on the DMA engine of the > cx23415/6. So the buffers are still the same size, but it still seems > to run smoothly. Note that the DMA of the ivtv-fb framebuffer has not > yet been converted. It works, but DMA timeouts might still happen > there. Although to be fair the decoder DMA engine seems to work much > better so DMA timeouts are not really an issue here. > > It is bleeding edge software which has limited testing, so be careful. > > Nevertheless, it is a major breakthrough and I'd like people to start > testing it is possible and report back with any problems (or success if > previous problems are now solved). > > For the ivtv-0.10.x series you can get the updated driver here: > > http://ivtvdriver.org/viewcvs/ivtv/branches/0.10.tar.gz?view=tar > > And for the 2.6.22 and up kernels you can get a v4l-dvb repository > containing these changes here: > > http://www.linuxtv.org/hg/~hverkuil/ivtv-dma/archive/tip.tar.bz2 > > Note that these repositories also contain the previous fixes regarding > freezes when changing channels, and in addition they contain a fix for > capturing raw video (in particular) where the driver now ensures that > you always get full frame and never a partial frame (could happen if > the application didn't read fast enough). > > Thanks, > > Hans > > _______________________________________________ > ivtv-users mailing list > [email protected] > http://ivtvdriver.org/mailman/listinfo/ivtv-users
I have been using the fixed 0.10.5 for two weeks now, and for my cards (I have two identical HP Falcon 2 cards) it is a total success. I used to see stuff like this[1] in /var/log/messages almost every day, and with the fixed driver I don't have any error messages at all from ivtv anymore. -- Gruß Andreas [1] Jul 29 21:03:48 hal9004 kernel: ivtv1 warning: ENC DMA ERROR b Jul 29 21:03:48 hal9004 kernel: ivtv1 warning: encoder MPEG: offset 0 -> 128 Jul 29 21:03:48 hal9004 kernel: ivtv1 warning: encoder VBI: offset 0 -> 128 Jul 29 21:03:48 hal9004 kernel: ivtv1 warning: encoder MPEG: offset 128 -> 64 Jul 29 21:03:48 hal9004 kernel: ivtv1 warning: encoder VBI: offset 128 -> 64 Jul 29 21:03:48 hal9004 kernel: ivtv1 warning: encoder MPEG: offset 64 -> 0 Jul 29 21:03:48 hal9004 kernel: ivtv1 warning: encoder VBI: offset 64 -> 0 Jul 29 21:50:00 hal9004 kernel: ivtv1 warning: ENC DMA ERROR b Jul 29 21:50:00 hal9004 kernel: ivtv1 warning: encoder MPEG: offset 0 -> 128 Jul 29 21:50:00 hal9004 kernel: ivtv1 warning: encoder VBI: offset 0 -> 124 Jul 29 21:50:00 hal9004 kernel: ivtv1 warning: encoder MPEG: offset 128 -> 60 Jul 29 21:50:00 hal9004 kernel: ivtv1 warning: encoder VBI: offset 124 -> 60 Jul 29 21:50:02 hal9004 kernel: ivtv1 warning: ENC DMA ERROR b Jul 29 21:50:02 hal9004 kernel: ivtv1 warning: encoder MPEG: Couldn't find start of buffer within the first 256 bytes Jul 29 21:50:02 hal9004 kernel: ivtv1 warning: encoder VBI: Couldn't find start of buffer within the first 256 bytes Jul 29 21:50:03 hal9004 kernel: ivtv1 warning: encoder MPEG: offset 60 -> 128 Jul 29 21:50:03 hal9004 kernel: ivtv1 warning: encoder VBI: Couldn't find start of buffer within the first 256 bytes _______________________________________________ ivtv-users mailing list [email protected] http://ivtvdriver.org/mailman/listinfo/ivtv-users
