Home Home > GIT Browse
diff options
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2014-06-16 19:40:20 +1000
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2014-06-16 19:45:45 +1000
commit68986c9f0f4552c34c248501eb0c690553866d6e (patch)
parent7171511eaec5bf23fb06078f59784a3a0626b38f (diff)
Revert "offb: Add palette hack for little endian"
This reverts commit e1edf18b20076da83dd231dbd2146cbbc31c0b14. This patch was a misguided attempt at fixing offb for LE ppc64 kernels on BE qemu but is just wrong ... it breaks real LE/LE setups, LE with real HW, and existing mixed endian systems that did the fight thing with the appropriate device-tree property. Bad reviewing on my part, sorry. The right fix is to either make qemu change its endian when the guest changes endian (working on that) or to use the existing foreign endian support. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> CC: <stable@vger.kernel.org> [v3.13+] ---
1 files changed, 1 insertions, 10 deletions
diff --git a/drivers/video/fbdev/offb.c b/drivers/video/fbdev/offb.c
index 7d44d669d5b6..43a0a52fc527 100644
--- a/drivers/video/fbdev/offb.c
+++ b/drivers/video/fbdev/offb.c
@@ -91,15 +91,6 @@ extern boot_infos_t *boot_infos;
-#define FB_RIGHT_POS(p, bpp) (fb_be_math(p) ? 0 : (32 - (bpp)))
-static inline u32 offb_cmap_byteswap(struct fb_info *info, u32 value)
- u32 bpp = info->var.bits_per_pixel;
- return cpu_to_be32(value) >> FB_RIGHT_POS(info, bpp);
* Set a single color register. The values supplied are already
* rounded down to the hardware's capabilities (according to the
@@ -129,7 +120,7 @@ static int offb_setcolreg(u_int regno, u_int red, u_int green, u_int blue,
mask <<= info->var.transp.offset;
value |= mask;
- pal[regno] = offb_cmap_byteswap(info, value);
+ pal[regno] = value;
return 0;