[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] gtk UI doesn't correctly byte swap 32-bit framebuffer o
From: |
Gerd Hoffmann |
Subject: |
Re: [Qemu-devel] gtk UI doesn't correctly byte swap 32-bit framebuffer on qemu-system-ppc little-endian host |
Date: |
Tue, 04 Jun 2013 09:50:13 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130513 Thunderbird/17.0.6 |
On 06/04/13 01:19, Anthony Liguori wrote:
> Mark Cave-Ayland <address@hidden> writes:
>
>> Hi all,
>>
>> I've just been testing some more OpenBIOS images with the new gtk UI and
>> found that if you specify a 32-bit depth framebuffer on qemu-system-ppc
>> running on a little-endian host then the RGB -> BGR byteswap doesn't
>> take place.
>>
>> Good:
>> ./qemu-system-ppc -g 1024x768x32 -vnc :1
>> ./qemu-system-ppc -g 1024x768x32 -sdl
>>
>> Bad:
>> ./qemu-system-ppc -g 1024x768x32
>
> cairo has a pretty limited number of modes that it supports.
>
> I guess we could use pixman to do the conversion. Gerd, is that the
> right approach?
Hmm, looks like we can't pass pixman format values to cairo, even though
cairo uses pixman under the hood. So, yes, we must convert and using
pixman is the easiest way to get the job done.
> Is there a way I can force the display API to do the
> conversion for me?
No, but asking pixman to do it is easy, see attached patch.
cheers,
Gerd
0001-gtk-add-support-for-surface-conversion.patch
Description: Text document