diff --git a/src/scfb_driver.c b/src/scfb_driver.c index d37e01a..4d505c3 100644 --- a/src/scfb_driver.c +++ b/src/scfb_driver.c @@ -437,6 +437,26 @@ ScfbPreInit(ScrnInfoPtr pScrn, int flags) if (pScrn->depth > 8) { rgb zeros = { 0, 0, 0 }, masks = { 0, 0, 0 }; + /* endian flip, bgra */ + masks[0] = 0x0000ff00; + masks[1] = 0x00ff0000; + masks[2] = 0xff000000; + + /* endian flip, rgba */ + masks[0] = 0xff000000; + masks[1] = 0x00ff0000; + masks[2] = 0x0000ff00; + + /* native, bgra */ + masks[0] = 0x00ff0000; + masks[1] = 0x0000ff00; + masks[2] = 0x000000ff; + + /* native, rgba */ + masks[0] = 0x000000ff; + masks[1] = 0x0000ff00; + masks[2] = 0x00ff0000; + if (!xf86SetWeight(pScrn, zeros, masks)) return FALSE; }