On Mon, 2014-07-07 at 06:56 +1000, Benjamin Herrenschmidt wrote: > If we do it in the cirrus model itself, then we basically have to > use the shadow pixmap always (can't ever share) and that means bringing > back a pile of conversion functions to the VGA model that we were > getting rid of (not hard ones but still, ie, 15, 16, 24 and 32bpp > non-swapped to 32bpp) which is somewhat sad.
I've decided to go down that path. The added conversion functions aren't big, it remains pretty clean and in fact it allows me to neatly separate the functions between BE and LE framebuffers instead of "swap" and "non-swap" which avoids one of the macro tricks I had to do before. Additionally, we are missing some pixel formats in some of the UIs for my extended cases of surface sharing so I'll work on that too. (I wonder if we should add a UI callback to verify if a pixel format is supports for sharing ... for now I'll just add all the missing ones to SDL 1 & 2, but somebody will have to look at spice). Cheers, Ben.