[1] Add i810 driver to AMD64 package.

[2] Put the manpages from section 4 under 4x.  For example, you can do
    "man 4x vga" to get the X vga(4x) manpage, still do man 4 cirrus to get
    cirrus(4x), and man -a vga to get both vga manpages.
[3] Apply several important-looking fixes to ATI drivers from the stable branch:
    - Fix mode setting with Mach64 on some laptops.
    - Don't crash with mach64 for some PCI configurations
    - Improve hang detection on r128s. (may improve speed in DRI, too)
    - Avoid a hang on server regen on r128 with DRI.
    - Fix the DynamicClocks support, which could have caused hangs with DRI on
      original Radeons.

PR:		[2] ports/25576
Submitted by:	[2] fanf
Requested by:	[1] peter
Obtained from:	[3] XORG-6_8-branch
This commit is contained in:
Eric Anholt 2005-01-13 22:52:24 +00:00
parent 603a6bcc57
commit 31179eebc6
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=126370
20 changed files with 438 additions and 104 deletions

View File

@ -7,7 +7,7 @@
PORTNAME= xorg-server
PORTVERSION= 6.8.1
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= x11-servers
MASTER_SITES= ${MASTER_SITE_XORG}
MASTER_SITE_SUBDIR= X11R6.8.1/tars
@ -39,29 +39,29 @@ MAN1= Xorg.1 \
pcitweak.1 \
xorgcfg.1 \
xorgconfig.1
MAN4= citron.4 \
dmc.4 \
dynapro.4 \
elographics.4 \
fbdevhw.4 \
fpit.4 \
glint.4 \
js_x.4 \
kbd.4 \
keyboard.4 \
mga.4 \
microtouch.4 \
mouse.4 \
mutouch.4 \
palmax.4 \
penmount.4 \
r128.4 \
radeon.4 \
tdfx.4 \
tek4957.4 \
vga.4 \
void.4 \
wacom.4
MAN4= citron.4x \
dmc.4x \
dynapro.4x \
elographics.4x \
fbdevhw.4x \
fpit.4x \
glint.4x \
js_x.4x \
kbd.4x \
keyboard.4x \
mga.4x \
microtouch.4x \
mouse.4x \
mutouch.4x \
palmax.4x \
penmount.4x \
r128.4x \
radeon.4x \
tdfx.4x \
tek4957.4x \
vga.4x \
void.4x \
wacom.4x
MAN5= getconfig.5 \
xorg.conf.5
@ -81,7 +81,7 @@ IGNORE= is part of X.Org. For switching to X.Org, read UPDATING entry 20040723
PLIST_SUB+= ALPHA_NA="@comment "
.else
PLIST_SUB+= ALPHA_NA=""
MAN4+= vesa.4
MAN4+= vesa.4x
.endif
.if ${ARCH} == ia64
@ -93,46 +93,46 @@ PLIST_SUB+= IA64_NA=""
.if ${ARCH} == sparc64
PLIST_SUB+= SPARC64=""
PLIST_SUB+= SPARC64_NA="@comment "
MAN4+= sunbw2.4 \
suncg14.4 \
suncg3.4 \
suncg6.4 \
sunffb.4 \
sunleo.4 \
suntcx.4
MAN4+= sunbw2.4x \
suncg14.4x \
suncg3.4x \
suncg6.4x \
sunffb.4x \
sunleo.4x \
suntcx.4x
.else
PLIST_SUB+= SPARC64="@comment "
PLIST_SUB+= SPARC64_NA=""
MAN4+= cirrus.4 \
nv.4 \
rendition.4 \
s3virge.4 \
savage.4 \
siliconmotion.4
MAN4+= cirrus.4x \
nv.4x \
rendition.4x \
s3virge.4x \
savage.4x \
siliconmotion.4x
.endif
.if ${ARCH} == i386
PLIST_SUB+= I386=""
MAN1+= scanpci.1
MAN4+= i740.4 \
i810.4 \
nsc.4 \
via.4 \
vmware.4
MAN4+= i740.4x \
nsc.4x \
via.4x \
vmware.4x
.else
PLIST_SUB+= I386="@comment "
.endif
.if ${ARCH} == amd64 || ${ARCH} == i386
PLIST_SUB+= AMD64_I386=""
MAN4+= apm.4 \
chips.4 \
cyrix.4 \
i128.4 \
neomagic.4 \
sis.4 \
trident.4 \
tseng.4
MAN4+= apm.4x \
chips.4x \
cyrix.4x \
i128.4x \
i810.4x \
neomagic.4x \
sis.4x \
trident.4x \
tseng.4x
.else
PLIST_SUB+= AMD64_I386="@comment "
.endif

View File

@ -0,0 +1,54 @@
Index: programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c,v
retrieving revision 1.3
retrieving revision 1.3.4.1
diff -u -u -r1.3 -r1.3.4.1
--- programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c 26 Jul 2004 19:14:58 -0000 1.3
+++ programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c 15 Dec 2004 07:58:15 -0000 1.3.4.1
@@ -1918,11 +1918,11 @@
VBlankEnd += 0x0100U;
pATI->LCDHBlankWidth = HBlankEnd - HBlankStart;
- pATI->LCDHSyncStart = HSyncStart - HBlankStart - 1;
+ pATI->LCDHSyncStart = HSyncStart - HBlankStart;
pATI->LCDHSyncWidth = HSyncEnd - HSyncStart;
pATI->LCDVBlankWidth = VBlankEnd - VBlankStart;
- pATI->LCDVSyncStart = VSyncStart - VBlankStart - 1;
+ pATI->LCDVSyncStart = VSyncStart - VBlankStart;
pATI->LCDVSyncWidth = VSyncEnd - VSyncStart;
HDisplay = HTotal + 5 - pATI->LCDHBlankWidth;
Index: programs/Xserver/hw/xfree86/drivers/ati/ativga.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/ati/ativga.c,v
retrieving revision 1.2
retrieving revision 1.2.4.1
diff -u -u -r1.2 -r1.2.4.1
--- programs/Xserver/hw/xfree86/drivers/ati/ativga.c 23 Apr 2004 19:26:46 -0000 1.2
+++ programs/Xserver/hw/xfree86/drivers/ati/ativga.c 15 Dec 2004 07:58:15 -0000 1.2.4.1
@@ -185,7 +185,11 @@
(pATI->Chip >= ATI_CHIP_264CT))
pMode->CrtcHBlankStart--;
pMode->CrtcHSyncStart = pMode->HSyncStart >> 3;
+ if (pATI->LCDPanelID >= 0)
+ pMode->CrtcHSyncStart--;
pMode->CrtcHSyncEnd = pMode->HSyncEnd >> 3;
+ if (pATI->LCDPanelID >= 0)
+ pMode->CrtcHSyncEnd--;
pMode->CrtcHBlankEnd = (pMode->HTotal >> 3) - 1;
pMode->CrtcHTotal = (pMode->HTotal >> 3) - 5;
pMode->CrtcHSkew = pMode->HSkew;
@@ -327,6 +331,11 @@
pMode->CrtcVBlankStart++;
else
pMode->CrtcVBlankStart--;
+ if (pATI->LCDPanelID >= 0)
+ {
+ pMode->CrtcVSyncStart--;
+ pMode->CrtcVSyncEnd--;
+ }
pMode->CrtcVBlankEnd--;
if (pATI->Chip < ATI_CHIP_264CT)
pMode->CrtcVBlankEnd--;

View File

@ -0,0 +1,18 @@
Index: programs/Xserver/hw/xfree86/drivers/ati/atiprobe.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/ati/atiprobe.c,v
retrieving revision 1.3
retrieving revision 1.3.2.2
diff -u -u -r1.3 -r1.3.2.2
--- programs/Xserver/hw/xfree86/drivers/ati/atiprobe.c 30 Jul 2004 20:30:51 -0000 1.3
+++ programs/Xserver/hw/xfree86/drivers/ati/atiprobe.c 15 Dec 2004 08:47:20 -0000 1.3.2.2
@@ -1554,6 +1560,9 @@
continue;
pPCI = pVideo->thisCard;
+ if (pPCI == NULL)
+ continue;
+
PciReg = pciReadLong(pPCI->tag, PCI_REG_USERCONFIG);
j = PciReg & 0x03U;
if (j == 0x03U)

View File

@ -0,0 +1,33 @@
Index: programs/Xserver/hw/xfree86/drivers/ati/r128_accel.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/ati/r128_accel.c,v
retrieving revision 1.3
retrieving revision 1.3.4.1
diff -u -u -r1.3 -r1.3.4.1
--- programs/Xserver/hw/xfree86/drivers/ati/r128_accel.c 16 Jun 2004 09:43:58 -0000 1.3
+++ programs/Xserver/hw/xfree86/drivers/ati/r128_accel.c 15 Dec 2004 09:22:02 -0000 1.3.4.1
@@ -237,17 +237,23 @@
i = 0;
do {
ret = drmCommandNone(info->drmFD, DRM_R128_CCE_IDLE);
- } while ( ret && errno == EBUSY && i++ < R128_IDLE_RETRY );
+ } while ( ret && errno == EBUSY && i++ < (R128_IDLE_RETRY * R128_IDLE_RETRY) );
if (ret && ret != -EBUSY) {
xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
"%s: CCE idle %d\n", __FUNCTION__, ret);
}
+ if (i > R128_IDLE_RETRY) {
+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+ "%s: (DEBUG) CCE idle took i = %d\n", __FUNCTION__, i);
+ }
+
if (ret == 0) return;
xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
"Idle timed out, resetting engine...\n");
+ R128CCE_STOP(pScrn, info);
R128EngineReset(pScrn);
/* Always restart the engine when doing CCE 2D acceleration */

View File

@ -0,0 +1,16 @@
Index: programs/Xserver/hw/xfree86/drivers/ati/r128_dri.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/ati/r128_dri.c,v
retrieving revision 1.4
retrieving revision 1.4.4.1
diff -u -u -r1.4 -r1.4.4.1
--- programs/Xserver/hw/xfree86/drivers/ati/r128_dri.c 10 Jul 2004 14:22:35 -0000 1.4
+++ programs/Xserver/hw/xfree86/drivers/ati/r128_dri.c 15 Dec 2004 08:53:01 -0000 1.4.4.1
@@ -1297,6 +1297,7 @@
if (info->irq) {
drmCtlUninstHandler(info->drmFD);
info->irq = 0;
+ info->gen_int_cntl = 0;
}
/* De-allocate vertex buffers */

View File

@ -0,0 +1,19 @@
--- programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c.orig Tue Aug 24 17:30:41 2004
+++ programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c Thu Jan 13 14:34:17 2005
@@ -4471,10 +4471,12 @@
RADEONSave(pScrn);
- if (xf86ReturnOptValBool(info->Options, OPTION_DYNAMIC_CLOCKS, FALSE)) {
- RADEONSetDynamicClock(pScrn, 1);
- } else {
- RADEONSetDynamicClock(pScrn, 0);
+ if ((!info->IsSecondary) && info->IsMobility) {
+ if (xf86ReturnOptValBool(info->Options, OPTION_DYNAMIC_CLOCKS, FALSE)) {
+ RADEONSetDynamicClock(pScrn, 1);
+ } else {
+ RADEONSetDynamicClock(pScrn, 0);
+ }
}
if (info->FBDev) {

View File

@ -0,0 +1,11 @@
--- programs/Xserver/hw/xfree86/drivers/ati/radeon_reg.h.orig Mon Aug 9 15:37:22 2004
+++ programs/Xserver/hw/xfree86/drivers/ati/radeon_reg.h Thu Jan 13 14:34:17 2005
@@ -803,7 +803,7 @@
# define RADEON_MC_MCLK_MAX_DYN_STOP_LAT (1<<12)
# define RADEON_IO_MCLK_MAX_DYN_STOP_LAT (1<<13)
# define RADEON_MC_MCLK_DYN_ENABLE (1 << 14)
-# define RADEON_IO_MCLK_DYN_ENABLE (1 << 14)
+# define RADEON_IO_MCLK_DYN_ENABLE (1 << 15)
#define RADEON_MDGPIO_A_REG 0x01ac
#define RADEON_MDGPIO_EN_REG 0x01b0
#define RADEON_MDGPIO_MASK 0x0198

View File

@ -0,0 +1,11 @@
--- config/cf/xorg.cf.orig Sat Jan 1 16:41:46 2005
+++ config/cf/xorg.cf Sat Jan 1 16:42:18 2005
@@ -446,7 +446,7 @@
# ifndef XF86CardDrivers
# define XF86CardDrivers mga glint nv tga s3 s3virge sis rendition \
neomagic tdfx savage cirrus tseng trident \
- chips apm i128 ati ark cyrix siliconmotion \
+ chips apm i128 ati i810 ark cyrix siliconmotion \
vga dummy vesa \
XF86OSCardDrivers XF86ExtraCardDrivers
# endif

View File

@ -91,7 +91,7 @@ lib/modules/drivers/atimisc_drv.o
lib/modules/drivers/glint_drv.o
%%AMD64_I386%%lib/modules/drivers/i128_drv.o
%%I386%%lib/modules/drivers/i740_drv.o
%%I386%%lib/modules/drivers/i810_drv.o
%%AMD64_I386%%lib/modules/drivers/i810_drv.o
lib/modules/drivers/mga_drv.o
%%AMD64_I386%%lib/modules/drivers/neomagic_drv.o
%%I386%%lib/modules/drivers/nsc_drv.o

View File

@ -24,6 +24,11 @@ echo "#define BuildGLXLibrary YES" >> $LOCALDEF
echo "#define UseInstalledPrograms YES" >> $LOCALDEF
echo "#define StandardIncludes -I${PREFIX}/include" >> $LOCALDEF
echo "#define BuildXFree86ConfigTools YES" >> $LOCALDEF
echo "#define BuildXFree86ConfigTools YES" >> $LOCALDEF
echo "#define DriverManDir \$(MANSOURCEPATH)4" >> $LOCALDEF
echo "#define DriverManSuffix 4x" >> $LOCALDEF
echo "#define MiscManDir \$(MANSOURCEPATH)7" >> $LOCALDEF
echo "#define MiscManSuffix 7x" >> $LOCALDEF
if [ X$WITH_DEBUG != X ]; then
export CFLAGS="-g $CFLAGS"

View File

@ -7,7 +7,7 @@
PORTNAME= xorg-server
PORTVERSION= 6.8.1
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= x11-servers
MASTER_SITES= ${MASTER_SITE_XORG}
MASTER_SITE_SUBDIR= X11R6.8.1/tars
@ -39,29 +39,29 @@ MAN1= Xorg.1 \
pcitweak.1 \
xorgcfg.1 \
xorgconfig.1
MAN4= citron.4 \
dmc.4 \
dynapro.4 \
elographics.4 \
fbdevhw.4 \
fpit.4 \
glint.4 \
js_x.4 \
kbd.4 \
keyboard.4 \
mga.4 \
microtouch.4 \
mouse.4 \
mutouch.4 \
palmax.4 \
penmount.4 \
r128.4 \
radeon.4 \
tdfx.4 \
tek4957.4 \
vga.4 \
void.4 \
wacom.4
MAN4= citron.4x \
dmc.4x \
dynapro.4x \
elographics.4x \
fbdevhw.4x \
fpit.4x \
glint.4x \
js_x.4x \
kbd.4x \
keyboard.4x \
mga.4x \
microtouch.4x \
mouse.4x \
mutouch.4x \
palmax.4x \
penmount.4x \
r128.4x \
radeon.4x \
tdfx.4x \
tek4957.4x \
vga.4x \
void.4x \
wacom.4x
MAN5= getconfig.5 \
xorg.conf.5
@ -81,7 +81,7 @@ IGNORE= is part of X.Org. For switching to X.Org, read UPDATING entry 20040723
PLIST_SUB+= ALPHA_NA="@comment "
.else
PLIST_SUB+= ALPHA_NA=""
MAN4+= vesa.4
MAN4+= vesa.4x
.endif
.if ${ARCH} == ia64
@ -93,46 +93,46 @@ PLIST_SUB+= IA64_NA=""
.if ${ARCH} == sparc64
PLIST_SUB+= SPARC64=""
PLIST_SUB+= SPARC64_NA="@comment "
MAN4+= sunbw2.4 \
suncg14.4 \
suncg3.4 \
suncg6.4 \
sunffb.4 \
sunleo.4 \
suntcx.4
MAN4+= sunbw2.4x \
suncg14.4x \
suncg3.4x \
suncg6.4x \
sunffb.4x \
sunleo.4x \
suntcx.4x
.else
PLIST_SUB+= SPARC64="@comment "
PLIST_SUB+= SPARC64_NA=""
MAN4+= cirrus.4 \
nv.4 \
rendition.4 \
s3virge.4 \
savage.4 \
siliconmotion.4
MAN4+= cirrus.4x \
nv.4x \
rendition.4x \
s3virge.4x \
savage.4x \
siliconmotion.4x
.endif
.if ${ARCH} == i386
PLIST_SUB+= I386=""
MAN1+= scanpci.1
MAN4+= i740.4 \
i810.4 \
nsc.4 \
via.4 \
vmware.4
MAN4+= i740.4x \
nsc.4x \
via.4x \
vmware.4x
.else
PLIST_SUB+= I386="@comment "
.endif
.if ${ARCH} == amd64 || ${ARCH} == i386
PLIST_SUB+= AMD64_I386=""
MAN4+= apm.4 \
chips.4 \
cyrix.4 \
i128.4 \
neomagic.4 \
sis.4 \
trident.4 \
tseng.4
MAN4+= apm.4x \
chips.4x \
cyrix.4x \
i128.4x \
i810.4x \
neomagic.4x \
sis.4x \
trident.4x \
tseng.4x
.else
PLIST_SUB+= AMD64_I386="@comment "
.endif

View File

@ -0,0 +1,54 @@
Index: programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c,v
retrieving revision 1.3
retrieving revision 1.3.4.1
diff -u -u -r1.3 -r1.3.4.1
--- programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c 26 Jul 2004 19:14:58 -0000 1.3
+++ programs/Xserver/hw/xfree86/drivers/ati/atipreinit.c 15 Dec 2004 07:58:15 -0000 1.3.4.1
@@ -1918,11 +1918,11 @@
VBlankEnd += 0x0100U;
pATI->LCDHBlankWidth = HBlankEnd - HBlankStart;
- pATI->LCDHSyncStart = HSyncStart - HBlankStart - 1;
+ pATI->LCDHSyncStart = HSyncStart - HBlankStart;
pATI->LCDHSyncWidth = HSyncEnd - HSyncStart;
pATI->LCDVBlankWidth = VBlankEnd - VBlankStart;
- pATI->LCDVSyncStart = VSyncStart - VBlankStart - 1;
+ pATI->LCDVSyncStart = VSyncStart - VBlankStart;
pATI->LCDVSyncWidth = VSyncEnd - VSyncStart;
HDisplay = HTotal + 5 - pATI->LCDHBlankWidth;
Index: programs/Xserver/hw/xfree86/drivers/ati/ativga.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/ati/ativga.c,v
retrieving revision 1.2
retrieving revision 1.2.4.1
diff -u -u -r1.2 -r1.2.4.1
--- programs/Xserver/hw/xfree86/drivers/ati/ativga.c 23 Apr 2004 19:26:46 -0000 1.2
+++ programs/Xserver/hw/xfree86/drivers/ati/ativga.c 15 Dec 2004 07:58:15 -0000 1.2.4.1
@@ -185,7 +185,11 @@
(pATI->Chip >= ATI_CHIP_264CT))
pMode->CrtcHBlankStart--;
pMode->CrtcHSyncStart = pMode->HSyncStart >> 3;
+ if (pATI->LCDPanelID >= 0)
+ pMode->CrtcHSyncStart--;
pMode->CrtcHSyncEnd = pMode->HSyncEnd >> 3;
+ if (pATI->LCDPanelID >= 0)
+ pMode->CrtcHSyncEnd--;
pMode->CrtcHBlankEnd = (pMode->HTotal >> 3) - 1;
pMode->CrtcHTotal = (pMode->HTotal >> 3) - 5;
pMode->CrtcHSkew = pMode->HSkew;
@@ -327,6 +331,11 @@
pMode->CrtcVBlankStart++;
else
pMode->CrtcVBlankStart--;
+ if (pATI->LCDPanelID >= 0)
+ {
+ pMode->CrtcVSyncStart--;
+ pMode->CrtcVSyncEnd--;
+ }
pMode->CrtcVBlankEnd--;
if (pATI->Chip < ATI_CHIP_264CT)
pMode->CrtcVBlankEnd--;

View File

@ -0,0 +1,18 @@
Index: programs/Xserver/hw/xfree86/drivers/ati/atiprobe.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/ati/atiprobe.c,v
retrieving revision 1.3
retrieving revision 1.3.2.2
diff -u -u -r1.3 -r1.3.2.2
--- programs/Xserver/hw/xfree86/drivers/ati/atiprobe.c 30 Jul 2004 20:30:51 -0000 1.3
+++ programs/Xserver/hw/xfree86/drivers/ati/atiprobe.c 15 Dec 2004 08:47:20 -0000 1.3.2.2
@@ -1554,6 +1560,9 @@
continue;
pPCI = pVideo->thisCard;
+ if (pPCI == NULL)
+ continue;
+
PciReg = pciReadLong(pPCI->tag, PCI_REG_USERCONFIG);
j = PciReg & 0x03U;
if (j == 0x03U)

View File

@ -0,0 +1,33 @@
Index: programs/Xserver/hw/xfree86/drivers/ati/r128_accel.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/ati/r128_accel.c,v
retrieving revision 1.3
retrieving revision 1.3.4.1
diff -u -u -r1.3 -r1.3.4.1
--- programs/Xserver/hw/xfree86/drivers/ati/r128_accel.c 16 Jun 2004 09:43:58 -0000 1.3
+++ programs/Xserver/hw/xfree86/drivers/ati/r128_accel.c 15 Dec 2004 09:22:02 -0000 1.3.4.1
@@ -237,17 +237,23 @@
i = 0;
do {
ret = drmCommandNone(info->drmFD, DRM_R128_CCE_IDLE);
- } while ( ret && errno == EBUSY && i++ < R128_IDLE_RETRY );
+ } while ( ret && errno == EBUSY && i++ < (R128_IDLE_RETRY * R128_IDLE_RETRY) );
if (ret && ret != -EBUSY) {
xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
"%s: CCE idle %d\n", __FUNCTION__, ret);
}
+ if (i > R128_IDLE_RETRY) {
+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+ "%s: (DEBUG) CCE idle took i = %d\n", __FUNCTION__, i);
+ }
+
if (ret == 0) return;
xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
"Idle timed out, resetting engine...\n");
+ R128CCE_STOP(pScrn, info);
R128EngineReset(pScrn);
/* Always restart the engine when doing CCE 2D acceleration */

View File

@ -0,0 +1,16 @@
Index: programs/Xserver/hw/xfree86/drivers/ati/r128_dri.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/ati/r128_dri.c,v
retrieving revision 1.4
retrieving revision 1.4.4.1
diff -u -u -r1.4 -r1.4.4.1
--- programs/Xserver/hw/xfree86/drivers/ati/r128_dri.c 10 Jul 2004 14:22:35 -0000 1.4
+++ programs/Xserver/hw/xfree86/drivers/ati/r128_dri.c 15 Dec 2004 08:53:01 -0000 1.4.4.1
@@ -1297,6 +1297,7 @@
if (info->irq) {
drmCtlUninstHandler(info->drmFD);
info->irq = 0;
+ info->gen_int_cntl = 0;
}
/* De-allocate vertex buffers */

View File

@ -0,0 +1,19 @@
--- programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c.orig Tue Aug 24 17:30:41 2004
+++ programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c Thu Jan 13 14:34:17 2005
@@ -4471,10 +4471,12 @@
RADEONSave(pScrn);
- if (xf86ReturnOptValBool(info->Options, OPTION_DYNAMIC_CLOCKS, FALSE)) {
- RADEONSetDynamicClock(pScrn, 1);
- } else {
- RADEONSetDynamicClock(pScrn, 0);
+ if ((!info->IsSecondary) && info->IsMobility) {
+ if (xf86ReturnOptValBool(info->Options, OPTION_DYNAMIC_CLOCKS, FALSE)) {
+ RADEONSetDynamicClock(pScrn, 1);
+ } else {
+ RADEONSetDynamicClock(pScrn, 0);
+ }
}
if (info->FBDev) {

View File

@ -0,0 +1,11 @@
--- programs/Xserver/hw/xfree86/drivers/ati/radeon_reg.h.orig Mon Aug 9 15:37:22 2004
+++ programs/Xserver/hw/xfree86/drivers/ati/radeon_reg.h Thu Jan 13 14:34:17 2005
@@ -803,7 +803,7 @@
# define RADEON_MC_MCLK_MAX_DYN_STOP_LAT (1<<12)
# define RADEON_IO_MCLK_MAX_DYN_STOP_LAT (1<<13)
# define RADEON_MC_MCLK_DYN_ENABLE (1 << 14)
-# define RADEON_IO_MCLK_DYN_ENABLE (1 << 14)
+# define RADEON_IO_MCLK_DYN_ENABLE (1 << 15)
#define RADEON_MDGPIO_A_REG 0x01ac
#define RADEON_MDGPIO_EN_REG 0x01b0
#define RADEON_MDGPIO_MASK 0x0198

View File

@ -0,0 +1,11 @@
--- config/cf/xorg.cf.orig Sat Jan 1 16:41:46 2005
+++ config/cf/xorg.cf Sat Jan 1 16:42:18 2005
@@ -446,7 +446,7 @@
# ifndef XF86CardDrivers
# define XF86CardDrivers mga glint nv tga s3 s3virge sis rendition \
neomagic tdfx savage cirrus tseng trident \
- chips apm i128 ati ark cyrix siliconmotion \
+ chips apm i128 ati i810 ark cyrix siliconmotion \
vga dummy vesa \
XF86OSCardDrivers XF86ExtraCardDrivers
# endif

View File

@ -91,7 +91,7 @@ lib/modules/drivers/atimisc_drv.o
lib/modules/drivers/glint_drv.o
%%AMD64_I386%%lib/modules/drivers/i128_drv.o
%%I386%%lib/modules/drivers/i740_drv.o
%%I386%%lib/modules/drivers/i810_drv.o
%%AMD64_I386%%lib/modules/drivers/i810_drv.o
lib/modules/drivers/mga_drv.o
%%AMD64_I386%%lib/modules/drivers/neomagic_drv.o
%%I386%%lib/modules/drivers/nsc_drv.o

View File

@ -24,6 +24,11 @@ echo "#define BuildGLXLibrary YES" >> $LOCALDEF
echo "#define UseInstalledPrograms YES" >> $LOCALDEF
echo "#define StandardIncludes -I${PREFIX}/include" >> $LOCALDEF
echo "#define BuildXFree86ConfigTools YES" >> $LOCALDEF
echo "#define BuildXFree86ConfigTools YES" >> $LOCALDEF
echo "#define DriverManDir \$(MANSOURCEPATH)4" >> $LOCALDEF
echo "#define DriverManSuffix 4x" >> $LOCALDEF
echo "#define MiscManDir \$(MANSOURCEPATH)7" >> $LOCALDEF
echo "#define MiscManSuffix 7x" >> $LOCALDEF
if [ X$WITH_DEBUG != X ]; then
export CFLAGS="-g $CFLAGS"