On Mon, Sep 29, 2014 at 11:31:04AM +0200, Gerd Hoffmann wrote:
> From: Benjamin Herrenschmidt <b...@kernel.crashing.org>
> 
> Provide different functions for converting from an LE vs a BE
> framebuffer. We cannot rely on the simple cases always being
> shared surfaces since cirrus will need to always shadow for
> cursor emulation, so we need the full set of functions to
> be able to later handle runtime switching.
> 
> Signed-off-by: Benjamin Herrenschmidt <b...@kernel.crashing.org>\
> Signed-off-by: Gerd Hoffmann <kra...@redhat.com>

[snip]
> @@ -1572,19 +1585,19 @@ static void vga_draw_graphic(VGACommonState *s, int 
> full_update)
>              bits = 8;
>              break;
>          case 15:
> -            v = VGA_DRAW_LINE15;
> +            v = big_endian_fb ? VGA_DRAW_LINE15_BE : VGA_DRAW_LINE15_LE;
>              bits = 16;
>              break;
>          case 16:
> -            v = VGA_DRAW_LINE16;
> +            v = big_endian_fb ? VGA_DRAW_LINE16_BE : VGA_DRAW_LINE16_LE;
>              bits = 16;
>              break;

So, v1 changed both of these cases to bits = 15, which looked wrong
for case 16.  v2 changes neither, which looks wrong for case 15.  Or
is there a reason it should be 16 for case 15?

-- 
David Gibson                    | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
                                | _way_ _around_!
http://www.ozlabs.org/~dgibson

Attachment: pgpHB7m1hFohW.pgp
Description: PGP signature

Reply via email to