Both little-endian and big-endian flavors are supported.

Signed-off-by: Alexey Brodkin <[email protected]>

Cc: Vineet Gupta <[email protected]>
Cc: Andreas Schwab <[email protected]>
Cc: Mark Kettenis <[email protected]>
Cc: Adam Jackson <[email protected]>
Cc: Egbert Eich <[email protected]>
---
 hw/xfree86/common/compiler.h            |  4 ++--
 hw/xfree86/os-support/linux/lnx_video.c |  3 ++-
 include/servermd.h                      | 13 +++++++++++++
 3 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/hw/xfree86/common/compiler.h b/hw/xfree86/common/compiler.h
index 3a57186..6eeb56c 100644
--- a/hw/xfree86/common/compiler.h
+++ b/hw/xfree86/common/compiler.h
@@ -1351,7 +1351,7 @@ stl_u(unsigned long val, unsigned int *p)
 #else                           /* ix86 */
 
 #if !defined(__SUNPRO_C)
-#if !defined(FAKEIT) && !defined(__mc68000__) && !defined(__arm__) && 
!defined(__sh__) && !defined(__hppa__) && !defined(__s390__) && 
!defined(__m32r__) && !defined(__aarch64__)
+#if !defined(FAKEIT) && !defined(__mc68000__) && !defined(__arm__) && 
!defined(__sh__) && !defined(__hppa__) && !defined(__s390__) && 
!defined(__m32r__) && !defined(__aarch64__) && !defined(__arc__)
 #ifdef GCCUSESGAS
 
 /*
@@ -1453,7 +1453,7 @@ inl(unsigned short port)
 
 #endif                          /* GCCUSESGAS */
 
-#else                           /* !defined(FAKEIT) && !defined(__mc68000__)  
&& !defined(__arm__) && !defined(__sh__) && !defined(__hppa__) && 
!defined(__m32r__) */
+#else                           /* !defined(FAKEIT) && !defined(__mc68000__)  
&& !defined(__arm__) && !defined(__sh__) && !defined(__hppa__) && 
!defined(__m32r__) && !defined(__arc__) */
 
 static __inline__ void
 outb(unsigned short port, unsigned char val)
diff --git a/hw/xfree86/os-support/linux/lnx_video.c 
b/hw/xfree86/os-support/linux/lnx_video.c
index 47f5abc..bd3f1d3 100644
--- a/hw/xfree86/os-support/linux/lnx_video.c
+++ b/hw/xfree86/os-support/linux/lnx_video.c
@@ -59,7 +59,8 @@ static Bool ExtendedEnabled = FALSE;
       !defined(__mips__) && \
       !defined(__nds32__) && \
       !defined(__arm__) && \
-      !defined(__aarch64__)
+      !defined(__aarch64__) \
+      !defined(__arc__)
 
 /*
  * Due to conflicts with "compiler.h", don't rely on <sys/io.h> to declare
diff --git a/include/servermd.h b/include/servermd.h
index 11f6c10..2d1ccb1 100644
--- a/include/servermd.h
+++ b/include/servermd.h
@@ -300,6 +300,19 @@ SOFTWARE.
 
 #endif                          /* __aarch64__ */
 
+#if defined(__arc__)
+
+#if defined(__BIG_ENDIAN__)
+#define IMAGE_BYTE_ORDER       MSBFirst
+#define BITMAP_BIT_ORDER       MSBFirst
+#else
+#define IMAGE_BYTE_ORDER       LSBFirst
+#define BITMAP_BIT_ORDER       LSBFirst
+#endif
+#define GLYPHPADBYTES          4
+
+#endif                          /* ARC */
+
 /* size of buffer to use with GetImage, measured in bytes. There's obviously
  * a trade-off between the amount of heap used and the number of times the
  * ddx routine has to be called.
-- 
1.9.0

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to