[Mesa-stable] [Mesa-dev] [PATCH] gallium/radeon: Correctly translate colorswaps for big endian

Marek Olšák maraeo at gmail.com
Tue Feb 23 15:45:49 UTC 2016


On Tue, Feb 23, 2016 at 4:41 PM, Oded Gabbay <oded.gabbay at gmail.com> wrote:
> The current code in r600_translate_colorswap uses the swizzle information
> to determine which colorswap to use.
>
> This works for BE & LE when the nr_channels is <4, but when nr_channels==4
> (e.g. PIPE_FORMAT_A8R8G8B8_UNORM), this method can not be used for both BE
> and LE, because the swizzle info is the same for both of them.
>
> As a result, r600g doesn't support 24bit color formats, only 16bit, which
> forces the user to choose 16bit color in X server.
>
> This patch fixes this bug by separating the checks for LE and BE and
> adapting the swizzle conditions in the BE part of the checks.
>
> Signed-off-by: Oded Gabbay <oded.gabbay at gmail.com>
> CC: "11.1" <mesa-stable at lists.freedesktop.org>

Also 11.2.

What about formats with 16 and 32 bits per channel?

What is the tested hardware?

Marek


More information about the mesa-stable mailing list