On Wed, 2005-01-05 at 09:27 -0500, Alex Deucher wrote: > Ok, so last night I think I figured out why pageflipping was borked > with mergedfb. Unfortunately the fix requires changes to the drm and > sarea. I'm wondering what the best way to do this is and maintain > compatability. When crtc1 is at offset 0 pageflipping should work > with a simple patch to radeon_driver.c::RadeonDoAdjustframe(). the > backbuffer offset was being added to the base address after the > crtc2_base info was updated in the sarea. That's an easy fix.
For what? radeon_cp_dispatch_flip() adds the offset before writing the CRTC(2)_OFFSET registers? > For situations where crtc2 is at offset 0 and crtc1 is at a higher offset, > changes to the drm and sarea are required. I think the easiest > solution would be to add a crtc1_base to the sarea and update that in > RadeonDoAdjustframe() just like crtc2_base. The problem is that in > the drm in radeon_state.c::radeon_cp_dispatch_flip() the offset of > crtc1 is calculated from the sarea frame info which could be crtc1 or > crtc2 depending on their orientation. It should really be calcluated > in RadeonDoAdjustframe() just like crtc2 base. Why don't you make sure the frame info is set the way the DRM expects it instead? -- Earthling Michel DÃnzer | Debian (powerpc), X and DRI developer Libre software enthusiast | http://svcs.affero.net/rm.php?r=daenzer ------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel