diff -r --context xorg-server-1.12.3/hw/xfree86/common/compiler.h xorg-server-1.12.3-fix/hw/xfree86/common/compiler.h *** xorg-server-1.12.3/hw/xfree86/common/compiler.h 2012-07-06 07:17:19.000000000 +0200 --- xorg-server-1.12.3-fix/hw/xfree86/common/compiler.h 2012-08-29 00:14:39.000000000 +0200 *************** *** 421,426 **** --- 421,474 ---- #include #endif /* __NetBSD__ */ + #elif defined(linux) && defined(__ia64__) + /* for Linux on ia64, we use the LIBC _inx/_outx routines */ + /* note that the appropriate setup via "ioperm" needs to be done */ + /* *before* any inx/outx is done. */ + + extern _X_EXPORT void _outb(unsigned char val, unsigned long port); + extern _X_EXPORT void _outw(unsigned short val, unsigned long port); + extern _X_EXPORT void _outl(unsigned int val, unsigned long port); + extern _X_EXPORT unsigned int _inb(unsigned long port); + extern _X_EXPORT unsigned int _inw(unsigned long port); + extern _X_EXPORT unsigned int _inl(unsigned long port); + + static __inline__ void + outb(unsigned long port, unsigned char val) + { + _outb(val, port); + } + + static __inline__ void + outw(unsigned long port, unsigned short val) + { + _outw(val, port); + } + + static __inline__ void + outl(unsigned long port, unsigned int val) + { + _outl(val, port); + } + + static __inline__ unsigned int + inb(unsigned long port) + { + return _inb(port); + } + + static __inline__ unsigned int + inw(unsigned long port) + { + return _inw(port); + } + + static __inline__ unsigned int + inl(unsigned long port) + { + return _inl(port); + } + #elif (defined(linux) || defined(__FreeBSD__)) && defined(__amd64__) #include