diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-09-16 15:57:12 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-09-16 17:03:13 +0100 |
commit | bb0cc3cfa69ce02a25e5b7b22df0e5554f6592fb (patch) | |
tree | f3f0452742e494a9d3a0442b766e5351a3abc7ae /meta/recipes-devtools/qemu/qemu-0.14.0/arm-bgr.patch | |
parent | ce2b383d045db5bbdbccdce2d9d1eae8b0d061a1 (diff) | |
download | poky-bb0cc3cfa69ce02a25e5b7b22df0e5554f6592fb.tar.gz |
qemu: Fix reversed BGR values on ARM Versatile emulation
[YOCTO #1469]
(From OE-Core rev: d06781eab16881d2206a3306c66a0c4c1e178dde)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/qemu/qemu-0.14.0/arm-bgr.patch')
-rw-r--r-- | meta/recipes-devtools/qemu/qemu-0.14.0/arm-bgr.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/meta/recipes-devtools/qemu/qemu-0.14.0/arm-bgr.patch b/meta/recipes-devtools/qemu/qemu-0.14.0/arm-bgr.patch new file mode 100644 index 0000000000..3b460d04ce --- /dev/null +++ b/meta/recipes-devtools/qemu/qemu-0.14.0/arm-bgr.patch | |||
@@ -0,0 +1,30 @@ | |||
1 | After kernel commit: | ||
2 | |||
3 | http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-3.0/commit/?h=meta&id=9728c1b6a724daefc413b44e10253cdbb5e06d08 | ||
4 | |||
5 | It appears that the emulated colours in qemu are incorrect and that | ||
6 | the red and blue channels are reversed. This patch reverses that logic | ||
7 | so the colours are correctly displayed on the versatile platform which | ||
8 | doesn't support the BGR bit. | ||
9 | |||
10 | RP 16/9/2011 | ||
11 | |||
12 | Upstream-status: Pending | ||
13 | |||
14 | Index: qemu-0.14.0/hw/pl110.c | ||
15 | =================================================================== | ||
16 | --- qemu-0.14.0.orig/hw/pl110.c 2011-09-16 14:45:34.228668514 +0100 | ||
17 | +++ qemu-0.14.0/hw/pl110.c 2011-09-16 15:17:22.458671206 +0100 | ||
18 | @@ -141,7 +141,11 @@ | ||
19 | fprintf(stderr, "pl110: Bad color depth\n"); | ||
20 | exit(1); | ||
21 | } | ||
22 | - if (s->cr & PL110_CR_BGR) | ||
23 | + | ||
24 | + if (s->versatile && s->bpp == BPP_16) | ||
25 | + /* Code assumes BPP_16 == 565 and BGR is never set on the versatile in 565 mode */ | ||
26 | + bpp_offset = 0; | ||
27 | + else if (s->cr & PL110_CR_BGR) | ||
28 | bpp_offset = 0; | ||
29 | else | ||
30 | bpp_offset = 18; | ||