[Openchrome-users] remnants and vertical sync

Benno Schulenberg bensberg
Sat Sep 30 13:50:38 PDT 2006


Hi all,

In Mesa/src/mesa/drivers/dri/unichrome/via_screen.c there are these 
two consecutive lines (in CVS head, but have been there for ages):

    viaScreen->irqEnabled = gDRIPriv->irqEnabled;
    viaScreen->irqEnabled = 1;

Could this second line be some debugging remnant?

In Mesa/src/mesa/drivers/dri/unichrome/via_context.c there's this:

    /* I don't understand why this isn't working:
     */
    vmesa->vblank_flags =
       vmesa->viaScreen->irqEnabled ?
        driGetDefaultVBlankFlags(&vmesa->optionCache) : VBLANK_FLAG_NO_IRQ;

    /* Hack this up in its place:
     */
    vmesa->vblank_flags = (getenv("VIA_VSYNC") ?
			   VBLANK_FLAG_SYNC : VBLANK_FLAG_NO_IRQ);

Could it be that the first part didn't seem to be working as expected 
because of the earlier setting of viaScreen->irqEnabled = 1?

When I comment out the hack, things seem to be working: when setting 
with driconf the initial swapinterval to 1 (instead of the default 0), 
the framerate of glxgears goes down from the normal 790 to about 85.

Does this VIA_VSYNC seem useful in anyway, or is better to remove this 
"hack" entirely from the Mesa unichrome driver?

Benno




More information about the Openchrome-users mailing list