summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortsi <tsi>2008-05-15 18:04:24 +0000
committertsi <tsi>2008-05-15 18:04:24 +0000
commit11ec9deb960062d3e80267195f9b6d52102e104b (patch)
treed5ff4e9573d6ddd933e989c2712522e8f979555a
parent42c1127afed8c8a8206d5b7817351b6ae09f0677 (diff)
51. Change atimisc to not disable the MMIO area at the tail end of the linear
aperture if it is found to be enabled on entry. Fixes a hang on Solaris/sparc upon /dev/console or /dev/wscons output while the server is running (Marc La France).
-rw-r--r--programs/Xserver/hw/xfree86/CHANGELOG6
-rw-r--r--programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c15
-rw-r--r--programs/Xserver/hw/xfree86/drivers/ati/ativersion.h4
3 files changed, 21 insertions, 4 deletions
diff --git a/programs/Xserver/hw/xfree86/CHANGELOG b/programs/Xserver/hw/xfree86/CHANGELOG
index 689777edb..cb4edf152 100644
--- a/programs/Xserver/hw/xfree86/CHANGELOG
+++ b/programs/Xserver/hw/xfree86/CHANGELOG
@@ -1,4 +1,8 @@
XFree86 4.7.99.18 (xx May 2008)
+ 51. Change atimisc to not disable the MMIO area at the tail end of the linear
+ aperture if it is found to be enabled on entry. Fixes a hang on
+ Solaris/sparc upon /dev/console or /dev/wscons output while the server is
+ running (Marc La France).
50. Change the aperture driver for Solaris to makr its mappings as non-
cacheable and as having sideeffects (Marc La France).
49. Avoid unpredictable behaviour on PCI-X and/or PCI Express capable ix86,
@@ -20750,4 +20754,4 @@ XFree86 3.0a (28 April 1994)
XFree86 3.0 (26 April 1994)
-$XFree86: xc/programs/Xserver/hw/xfree86/CHANGELOG,v 3.3960 2008/05/14 15:40:46 tsi Exp $
+$XFree86: xc/programs/Xserver/hw/xfree86/CHANGELOG,v 3.3961 2008/05/15 17:25:39 tsi Exp $
diff --git a/programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c b/programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c
index 0477b21bc..6353356a2 100644
--- a/programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c
+++ b/programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c
@@ -1,4 +1,4 @@
-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c,v 1.96tsi Exp $ */
+/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c,v 1.97tsi Exp $ */
/*
* Copyright 1999 through 2008 by Marc Aurele La France (TSI @ UQV), tsi@xfree86.org
*
@@ -2320,6 +2320,19 @@ ATIPreInit
else if ((pATI->NewHW.crtc == ATI_CRTC_MACH64) ||
(pATI->Chip >= ATI_CHIP_264CT))
{
+ if (pATI->Chip >= ATI_CHIP_264VTB)
+ {
+ pATIHW->bus_cntl = inr(BUS_CNTL);
+
+ /*
+ * If the MMIO area at the end of the linear aperture is found
+ * enabled on entry, keep it enabled, on the premise that something
+ * other than the server is referencing it.
+ */
+ if (!(pATIHW->bus_cntl & BUS_APER_REG_DIS))
+ pATI->MMIOInLinear = TRUE;
+ }
+
if (pATI->depth >= 8)
{
/* Get adapter's linear aperture configuration */
diff --git a/programs/Xserver/hw/xfree86/drivers/ati/ativersion.h b/programs/Xserver/hw/xfree86/drivers/ati/ativersion.h
index 24cb5e4e2..56cab88aa 100644
--- a/programs/Xserver/hw/xfree86/drivers/ati/ativersion.h
+++ b/programs/Xserver/hw/xfree86/drivers/ati/ativersion.h
@@ -1,4 +1,4 @@
-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/ati/ativersion.h,v 1.93tsi Exp $ */
+/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/ati/ativersion.h,v 1.94 2008/04/02 21:02:31 tsi Exp $ */
/*
* Copyright 1997 through 2008 by Marc Aurele La France (TSI @ UQV), tsi@xfree86.org
*
@@ -39,7 +39,7 @@
#define ATI_VERSION_MAJOR 7
#define ATI_VERSION_MINOR 0
-#define ATI_VERSION_PATCH 17
+#define ATI_VERSION_PATCH 18
#ifndef ATI_VERSION_EXTRA
#define ATI_VERSION_EXTRA ""