From: "Antonino A. Daplas" nvidiafb_imageblit converts the bitdata stream from big_endian to little endian. This produces mirrored characters when machine is big_endian. Do not endian convert on big endian machines. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton --- drivers/video/nvidia/nv_local.h | 4 ++++ 1 files changed, 4 insertions(+) diff -puN drivers/video/nvidia/nv_local.h~nvidiafb-fixed-mirrored-characters-in-big-endian-machines drivers/video/nvidia/nv_local.h --- 25/drivers/video/nvidia/nv_local.h~nvidiafb-fixed-mirrored-characters-in-big-endian-machines Thu Sep 1 17:04:50 2005 +++ 25-akpm/drivers/video/nvidia/nv_local.h Thu Sep 1 17:04:50 2005 @@ -95,6 +95,7 @@ #define READ_GET(par) (NV_RD32(&(par)->FIFO[0x0011], 0) >> 2) +#ifdef __LITTLE_ENDIAN #define reverse_order(l) \ do { \ u8 *a = (u8 *)(l); \ @@ -103,5 +104,8 @@ do { \ *a = byte_rev[*a], a++; \ *a = byte_rev[*a]; \ } while(0) +#else +#define reverse_order(l) +#endif /* __LITTLE_ENDIAN */ #endif /* __NV_LOCAL_H__ */ _