we have entirely too many framebuffer cores in X, 14 at last count: afb, cfb, cfb16, cfb24, cfb32, fb, lmfcfb, mfb, xf1bpp, xf24_32bpp, xf4bpp, xf8_16bpp, xf8_32bpp, and xf8_32wid. the following modules could be eliminated by converting users to fb: *cfb*, mfb, xf1bpp, xf4bpp, xf24_32bpp. there may be some value in preserving xf4bpp, as it has some code specific to old IBM 8514 adaptors. the overlay framebuffer cores - xf8* - are implemented in terms of cfb; these should be converted to fb, but this might not be trivial. afb seems to be needed for amiga framebuffers; it's not clear to me that it can be replaced with fb. i'd like to see the list shrink to afb, fb, and xf8* by 6.9.0, though i might be convinced to let xf4bpp live.
realvnc (and probably other vnc servers) still depend on cfb, a patch exists at http://www.mail-archive.com/vnc-list@realvnc.com/msg14387.html
Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future.
so where do we stand now? right now, xprint still depends on cfb, i believe, as well as sundry drivers which want xf1bpp and xf4bpp.
We've actually made a lot of progress: afb: Still has issues. mfb-infected. I think the right thing at this point is to implement this in terms of wfb, since the pixel access wrappers there should be good enough to do the planar->packed conversion cfb: Only Used by xf8_32bpp. cfb16: Deleted. cfb24: Deleted. cfb32: Only used by xf8_32bpp. fb: Exists, now also subclassed as wfb, but in a very polite way so I'm okay with it. lmfcfb: Long since deleted. mfb: Exists. Used at compile time by afb, cfb*, and xf1bpp, but not loaded directly by any driver. xf1bpp: Exists, still used by several drivers. Really ought to disinfect the accelerated drivers of this and xf4. xf24_32bpp: Deleted. xf4bpp: Still exists, see xf1bpp. xf8_16bpp: Rewritten to minimally wrap fb's overlay code. xf8_32bpp: Still exists. This is the hard one to rewrite, since it's for 8/24 packed overlays, despite the name. I believe only glint and mga use it, so in principle we could just nuke the thing and tell the users of same to cope. Would really like to have bug #4770 addressed in that scenario, since overlay emulation would be really good to have. xf8_32wid: Deleted. And all the non-loadable servers are using fb now (yes, even Xprt). So basically, if we remove the 8/32 users, cfb is dead.
I'm calling this one fixed.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.