On Mon, 2007-06-25 at 20:19 -0700, Jesse Barnes wrote:
> On Monday, June 25, 2007 12:44:16 pm Jesse Barnes wrote:
> >
> > IIRC my test app hung indefinitely.  Main loop was something like:
> >
> >         while (i++) {
> >                 /* Wait for vsync */
> >                 if (waitforsync)
> >                         video_sync(2, (count + 1) % 2, &count);
> >
> >                 /* Alternate colors to make tearing obvious */
> >                 if (i & 1)
> >                         glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
> >                 else
> >                         glClearColor(1.0f, 0.0f, 0.0f, 0.0f);
> >                 glClear(GL_COLOR_BUFFER_BIT);
> >                 glFlush();
> >         }
> >
> > If waitforsync == 0, I get obvious tearing (a kind of "rain" effect of
> > the two colors I painted), while if waitforsync != 0, the app either
> > hangs or alternates at the refresh rate, making kind of an orange
> > color.  But I'll retest (though I don't see how it could have worked
> > for you unless 915 has these registers too in the same location).
> >
> > Does vblank_mode= work with the Intel driver too?  

Yes.

> > The docs I found only mentioned radeon and mga...

AFAIK all the Mesa drivers that support sync-to-vblank use the same
driconf option to control it.

> Ok, I retested without the if (!IS_965) ... code in place, which was working 
> for you.  On my box, I get a hard hang when I run the attached test program, 
> or any other gl program.

I tried the clutter examples (clutter also uses the GLX_SGI_video_sync
extension) and they work fine, although unsurprisingly, they exhibit
tearing - the driconf option vblank_mode or the GLX_SGI_swap_control
extension are more effective at avoiding tearing.

If you're testing on a laptop with only the LVDS output enabled, you're
probably hitting http://bugs.freedesktop.org/show_bug.cgi?id=10542 . If
so, the symptoms should be the same with the drm master branch.

I think this last change is definitely broken and should be reverted or
at least amended to reflect the actual hardware capabilities and to obey
the vblank interrupt enable/disable state for hardware that truly
doesn't have frame counters.


-- 
Earthling Michel Dänzer           |          http://tungstengraphics.com
Libre software enthusiast         |          Debian, X and DRI developer


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to