|Site sponsored by IGEL|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[directfb-dev] Re: Where is FBIO_WAITFORVSYNC supposed to getdefined for matrox cards?
On Sun, 2004-01-11 at 08:14, Brian J. Murrell wrote: > Now given that I am looking at this "crtc2_wait_vsync" ... > I see the basic logic is to call the > FBIO_WAITFORVSYNC, which makes the kernel put the process to sleep until > the video card reports an irq, which is done when it has finished > "drawing" a frame (or does the irq come after drawing fields?) to the > television set and is on it's way to drawing the next frame. > Now, after being woken up from waiting for the irq, the process then > sits in a spin loop until the video card is drawing line number 242 > (NTSC here), which should be how many iterations (re: my "BTW" question > above)? A closer look at the ioctl code in the kernel and I see that the spin loop never happens if the ioctl succeeds. Indeed, the loop is a fallback in case the ioctl fails. > Can I safely remove this spin loop if I *know* that my directfb and > kernel are properly processing interrupts from the G400 card? With my new understanding, this is of course moot. > Indeed, in my local directfb installation, I am perfectly happy for an > application to _break_ if the kernel is not built to handle interrupts > and will change my source locally to do so. I think I might still do this however. > I _do_not_ want to sit in > spin loops to flip frames and would rather things broke than do that. > In this situation the kernel needs fixing, not directfb, IMHO. :-) Rather than a spin loop, I think I will error out. b. -- My other computer is your Microsoft Windows server. Brian J. Murrell