The following reply was made to PR kern/46189; it has been noted by GNATS.
From: Michael <macallan%netbsd.org@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc:
Subject: Re: kern/46189: wsfb/genfb red adn blue colours are reversed on bit
depths 15 16 24 and 32
Date: Thu, 15 Mar 2012 10:22:00 -0400
For some reason rasops assumes BGR ordering. I noticed that myself a
while ago, wondered why it did that but never got around to actually
check or do anything about it, mostly because in the standard setup
( black/white with green kernel output ) it makes no difference.
Endianness has nothing to do with it, you'd see other corruption as
well, not just red and green swapped. That said, in 15/16 bit rasops is
pretty much always wrong, in 24 or 32 bit it's wrong even on most
hardware we support. Assuming RGB by default seems reasonable since the
vast majority of all graphics hardware ever made uses that ( as in, PC
and Mac graphics hardware is pretty much exclusively RGB ) For hardware
which use BGR ( like Sun, SGI, probably other non-x86, non-macppc ) we
can always add another flag ( RI_USE_BGR or something ) but this
hardware tends to have dedicated drivers anyway.
have fun
Michael