xorg-server: Changes to 'debian-unstable'
debian/changelog | 2
debian/patches/08_xfree86_fix_ia64_inx_outx.diff | 66 +++++++++++++++++++++++
debian/patches/series | 1
3 files changed, 69 insertions(+)
New commits:
commit 1e7a009f6e957c3f34597e5f3070eeb1e3e9b0be
Author: Julien Cristau <jcristau@debian.org>
Date: Sat Oct 13 14:04:07 2012 +0200
Restore {in,out}{b,w,l} on ia64 (closes: #685750).
Thanks, Stephan Schreiber!
diff --git a/debian/changelog b/debian/changelog
index cc2706e..054673f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,8 @@ xorg-server (2:1.12.4-2) UNRELEASED; urgency=low
* Fix Xephyr command line option parsing (closes: #689246). Thanks, Andrzej
Pietrasiewicz!
+ * Restore {in,out}{b,w,l} on ia64 (closes: #685750). Thanks, Stephan
+ Schreiber!
-- Julien Cristau <jcristau@debian.org> Sun, 07 Oct 2012 18:50:40 +0200
diff --git a/debian/patches/08_xfree86_fix_ia64_inx_outx.diff b/debian/patches/08_xfree86_fix_ia64_inx_outx.diff
new file mode 100644
index 0000000..87403a1
--- /dev/null
+++ b/debian/patches/08_xfree86_fix_ia64_inx_outx.diff
@@ -0,0 +1,66 @@
+From: Stephan Schreiber <info@fs-driver.org>
+Subject: xfree86: restore {in,out}{b,w,l} on linux/ia64
+
+Call the equivalent glibc functions.
+
+Debian bug #685750
+
+Index: xorg-server/hw/xfree86/common/compiler.h
+===================================================================
+--- xorg-server.orig/hw/xfree86/common/compiler.h
++++ xorg-server/hw/xfree86/common/compiler.h
+@@ -421,6 +421,54 @@ extern _X_EXPORT unsigned int inl(unsign
+ #include <machine/pio.h>
+ #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 <inttypes.h>
diff --git a/debian/patches/series b/debian/patches/series
index c3cb0a4..be5e00e 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -8,3 +8,4 @@
05_Revert-Unload-submodules.diff
06_Revert-fb-reorder-Bresenham-error-correction-to-avoi.diff
07_Revert-kinput-allocate-enough-space-for-null-charact.diff
+08_xfree86_fix_ia64_inx_outx.diff
Reply to: