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
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.  So how to I do it in a
compatible way?

Thanks,

Alex


-------------------------------------------------------
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

Reply via email to