File xf86-video-chips-git-fixes.patch of Package xf86-video-chips
From 5f8a7320123255408b393eab9ecfae783920622a Mon Sep 17 00:00:00 2001
From: Mark Kettenis <kettenis@openbsd.org>
Date: Mon, 26 Sep 2011 19:26:26 +0000
Subject: PciTag is unused when using libpciaccess
Signed-off-by: Mark Kettenis <kettenis@openbsd.org>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
---
diff --git a/src/ct_driver.h b/src/ct_driver.h
index 10a24d4..39eeb6e 100644
--- a/src/ct_driver.h
+++ b/src/ct_driver.h
@@ -271,7 +271,9 @@ typedef struct {
typedef struct _CHIPSRec {
pciVideoPtr PciInfo;
+#ifndef XSERVER_LIBPCIACCESS
PCITAG PciTag;
+#endif
int Chipset;
EntityInfoPtr pEnt;
IOADDRESS PIOBase;
--
cgit v0.9.0.2-2-gbebe
From 94a8b34528b42a4fe6f81c8b8bd1ddb6bebaeea9 Mon Sep 17 00:00:00 2001
From: Jeremy Huddleston <jeremyhu@apple.com>
Date: Wed, 19 Oct 2011 06:04:32 +0000
Subject: util: Consolidate common macros
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
---
diff --git a/util/dRegs.c b/util/dRegs.c
index b7edc8f..0d2f0cb 100644
--- a/util/dRegs.c
+++ b/util/dRegs.c
@@ -1,63 +1,8 @@
-
-
-
-
-
-
-#ifdef __NetBSD__
-# include <sys/types.h>
-# include <machine/pio.h>
-# include <machine/sysarch.h>
-#else
-# if defined(SVR4) && defined(i386)
-# include <sys/types.h>
-# ifdef NCR
- /* broken NCR <sys/sysi86.h> */
-# define __STDC
-# include <sys/sysi86.h>
-# undef __STDC
-# else
-# include <sys/sysi86.h>
-# endif
-# ifdef SVR4
-# if !defined(sun)
-# include <sys/seg.h>
-# endif
-# endif
-# include <sys/v86.h>
-# if defined(sun)
-# include <sys/psw.h>
-# endif
-# endif
-# include "AsmMacros.h"
-#endif /* NetBSD */
-
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
-#ifdef __NetBSD__
-# define SET_IOPL() i386_iopl(3)
-# define RESET_IOPL() i386_iopl(0)
-#else
-# if defined(SVR4) && defined(i386)
-# ifndef SI86IOPL
-# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL)
-# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0)
-# else
-# define SET_IOPL() sysi86(SI86IOPL,3)
-# define RESET_IOPL() sysi86(SI86IOPL,0)
-# endif
-# else
-# ifdef linux
-# define SET_IOPL() iopl(3)
-# define RESET_IOPL() iopl(0)
-# else
-# define SET_IOPL() (void)0
-# define RESET_IOPL() (void)0
-# endif
-# endif
-#endif
+#include "iopl.h"
int main(void)
{
diff --git a/util/iopl.h b/util/iopl.h
new file mode 100644
index 0000000..d7890b3
--- a/dev/null
+++ b/util/iopl.h
@@ -0,0 +1,54 @@
+#ifdef __NetBSD__
+# include <sys/types.h>
+# include <machine/pio.h>
+# include <machine/sysarch.h>
+#else
+# if defined(SVR4) && defined(i386)
+# include <sys/types.h>
+# ifdef NCR
+ /* broken NCR <sys/sysi86.h> */
+# define __STDC
+# include <sys/sysi86.h>
+# undef __STDC
+# else
+# include <sys/sysi86.h>
+# endif
+# ifdef SVR4
+# if !defined(sun)
+# include <sys/seg.h>
+# endif
+# endif
+# include <sys/v86.h>
+# if defined(sun)
+# include <sys/psw.h>
+# endif
+# endif
+# include "AsmMacros.h"
+#endif /* NetBSD */
+
+#include <unistd.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#ifdef __NetBSD__
+# define SET_IOPL() i386_iopl(3)
+# define RESET_IOPL() i386_iopl(0)
+#else
+# if defined(SVR4) && defined(i386)
+# ifndef SI86IOPL
+# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL)
+# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0)
+# else
+# define SET_IOPL() sysi86(SI86IOPL,3)
+# define RESET_IOPL() sysi86(SI86IOPL,0)
+# endif
+# else
+# ifdef linux
+# define SET_IOPL() iopl(3)
+# define RESET_IOPL() iopl(0)
+# else
+# define SET_IOPL() (void)0
+# define RESET_IOPL() (void)0
+# endif
+# endif
+#endif
diff --git a/util/mRegs.c b/util/mRegs.c
index f359738..843d01d 100644
--- a/util/mRegs.c
+++ b/util/mRegs.c
@@ -1,63 +1,8 @@
-
-
-
-
-
-
-#ifdef __NetBSD__
-# include <sys/types.h>
-# include <machine/pio.h>
-# include <machine/sysarch.h>
-#else
-# if defined(SVR4) && defined(i386)
-# include <sys/types.h>
-# ifdef NCR
- /* broken NCR <sys/sysi86.h> */
-# define __STDC
-# include <sys/sysi86.h>
-# undef __STDC
-# else
-# include <sys/sysi86.h>
-# endif
-# ifdef SVR4
-# if !defined(sun)
-# include <sys/seg.h>
-# endif
-# endif
-# include <sys/v86.h>
-# if defined(sun)
-# include <sys/psw.h>
-# endif
-# endif
-# include "AsmMacros.h"
-#endif /* NetBSD */
-
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
-#ifdef __NetBSD__
-# define SET_IOPL() i386_iopl(3)
-# define RESET_IOPL() i386_iopl(0)
-#else
-# if defined(SVR4) && defined(i386)
-# ifndef SI86IOPL
-# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL)
-# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0)
-# else
-# define SET_IOPL() sysi86(SI86IOPL,3)
-# define RESET_IOPL() sysi86(SI86IOPL,0)
-# endif
-# else
-# ifdef linux
-# define SET_IOPL() iopl(3)
-# define RESET_IOPL() iopl(0)
-# else
-# define SET_IOPL() (void)0
-# define RESET_IOPL() (void)0
-# endif
-# endif
-#endif
+#include "iopl.h"
int hex2int(char* str);
diff --git a/util/modClock.c b/util/modClock.c
index 89a291a..45af19b 100644
--- a/util/modClock.c
+++ b/util/modClock.c
@@ -1,61 +1,12 @@
-
-#ifdef __NetBSD__
-# include <sys/types.h>
-# include <machine/pio.h>
-# include <machine/sysarch.h>
-#else
-# if defined(SVR4) && defined(i386)
-# include <sys/types.h>
-# ifdef NCR
- /* broken NCR <sys/sysi86.h> */
-# define __STDC
-# include <sys/sysi86.h>
-# undef __STDC
-# else
-# include <sys/sysi86.h>
-# endif
-# ifdef SVR4
-# if !defined(sun)
-# include <sys/seg.h>
-# endif
-# endif
-# include <sys/v86.h>
-# if defined(sun)
-# include <sys/psw.h>
-# endif
-# endif
-# include "AsmMacros.h"
-#endif /* NetBSD */
-
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
+
#ifndef Lynx
#include <fnmatch.h>
#endif
-#ifdef __NetBSD__
-# define SET_IOPL() i386_iopl(3)
-# define RESET_IOPL() i386_iopl(0)
-#else
-# if defined(SVR4) && defined(i386)
-# ifndef SI86IOPL
-# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL)
-# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0)
-# else
-# define SET_IOPL() sysi86(SI86IOPL,3)
-# define RESET_IOPL() sysi86(SI86IOPL,0)
-# endif
-# else
-# ifdef linux
-# define SET_IOPL() iopl(3)
-# define RESET_IOPL() iopl(0)
-# else
-# define SET_IOPL() (void)0
-# define RESET_IOPL() (void)0
-# endif
-# endif
-#endif
+#include "iopl.h"
#define tolerance 0.01 /* +/- 1% */
--
cgit v0.9.0.2-2-gbebe
From c421f2477c99990d0dc712d6aece981fa6c961e5 Mon Sep 17 00:00:00 2001
From: Jeremy Huddleston <jeremyhu@apple.com>
Date: Wed, 19 Oct 2011 06:09:09 +0000
Subject: Fix implicit declaration of iopl
warning: implicit declaration of function ‘iopl’ [-Wimplicit-function-declaration]
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
---
diff --git a/util/iopl.h b/util/iopl.h
index d7890b3..e08207c 100644
--- a/util/iopl.h
+++ b/util/iopl.h
@@ -3,6 +3,12 @@
# include <machine/pio.h>
# include <machine/sysarch.h>
#else
+# if defined(__linux__)
+/* Can't because <sys/iopl.h> provides conflicting inb, outb, etc
+ * # include <sys/io.h>
+ */
+int iopl(int level);
+# endif
# if defined(SVR4) && defined(i386)
# include <sys/types.h>
# ifdef NCR
--
cgit v0.9.0.2-2-gbebe
From 8a5ea07f30cc71ecc413fad0713facff72f77472 Mon Sep 17 00:00:00 2001
From: Jeremy Huddleston <jeremyhu@apple.com>
Date: Wed, 19 Oct 2011 06:21:33 +0000
Subject: Build fix for ABI Version 12
ABI Version 12 removes support for multiple PCI domains. If you need to
use this driver on a system with more than one PCI domain, you should
either port this driver to using libpciaccess directly or stick with an
older server.
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
---
diff --git a/src/ct_driver.c b/src/ct_driver.c
index e6538c6..a2e5c94 100644
--- a/src/ct_driver.c
+++ b/src/ct_driver.c
@@ -1446,7 +1446,12 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags)
hwp = VGAHWPTR(pScrn);
vgaHWGetIOBase(hwp);
+#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12
cPtr->PIOBase = hwp->PIOOffset;
+#else
+ cPtr->PIOBase = 0;
+#endif
+
/*
* Must allow ensure that storage for the 2nd set of vga registers is
* allocated for dual channel cards
diff --git a/src/ct_driver.h b/src/ct_driver.h
index 39eeb6e..9033867 100644
--- a/src/ct_driver.h
+++ b/src/ct_driver.h
@@ -276,8 +276,8 @@ typedef struct _CHIPSRec {
#endif
int Chipset;
EntityInfoPtr pEnt;
- IOADDRESS PIOBase;
- CARD32 IOAddress;
+ unsigned long PIOBase;
+ unsigned long IOAddress;
unsigned long FbAddress;
unsigned int IOBase;
unsigned char * FbBase;
--
cgit v0.9.0.2-2-gbebe
From 989cf4f1fb2ac57f38d363734b71a5cf749db146 Mon Sep 17 00:00:00 2001
From: Adam Jackson <ajax@redhat.com>
Date: Mon, 19 Dec 2011 22:45:41 +0000
Subject: Fix for new vgaHW ABI
Signed-off-by: Adam Jackson <ajax@redhat.com>
---
diff --git a/src/ct_driver.c b/src/ct_driver.c
index 95092a2..08ccd72 100644
--- a/src/ct_driver.c
+++ b/src/ct_driver.c
@@ -1444,6 +1444,7 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags)
return FALSE;
hwp = VGAHWPTR(pScrn);
+ vgaHWSetStdFuncs(hwp);
vgaHWGetIOBase(hwp);
#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12
cPtr->PIOBase = hwp->PIOOffset;
--
cgit v0.9.0.2-2-gbebe