xserver-xorg-video-tdfx: Changes to 'upstream-unstable'
configure.ac | 2 +-
src/tdfx_driver.c | 1 +
src/tdfx_priv.c | 36 +++++++++++++++++++-----------------
3 files changed, 21 insertions(+), 18 deletions(-)
New commits:
commit e30873010523a8cde8d23ed473343b2c60794cb6
Author: Dave Airlie <airlied@redhat.com>
Date: Mon Dec 22 15:20:26 2008 +1000
tdfx 1.4.1
diff --git a/configure.ac b/configure.ac
index 6177e06..6df2ebc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
AC_PREREQ(2.57)
AC_INIT([xf86-video-tdfx],
- 1.4.0,
+ 1.4.1,
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
xf86-video-tdfx)
commit 6379b129119ed77b9a45cb0207dedd68c32f73a1
Author: Jakub Bogusz <qboosh@pld-linux.org>
Date: Fri Oct 17 17:25:39 2008 -0400
Bug #17557: Fix device initialization.
diff --git a/src/tdfx_driver.c b/src/tdfx_driver.c
index 83f147a..ee4b919 100644
--- a/src/tdfx_driver.c
+++ b/src/tdfx_driver.c
@@ -956,6 +956,7 @@ TDFXPreInit(ScrnInfoPtr pScrn, int flags)
#ifdef XSERVER_LIBPCIACCESS
match = pTDFX->PciInfo[0];
+ pTDFX->ChipType = DEVICE_ID(match);
#else
match=pTDFX->PciInfo=xf86GetPciInfoForEntity(pTDFX->pEnt->index);
TDFXFindChips(pScrn, match);
commit fe77fea533068f5698cf4d8e9bc076a6e06d2cd2
Author: Tiago Vignatti <vignatti@c3sl.ufpr.br>
Date: Mon Jul 7 14:31:32 2008 -0300
Fix my bad typo in last commit.
Switch inexistent getsecs() function to gettimeofday().
diff --git a/src/tdfx_priv.c b/src/tdfx_priv.c
index 0063c20..3f3228b 100644
--- a/src/tdfx_priv.c
+++ b/src/tdfx_priv.c
@@ -104,7 +104,7 @@ static void TDFXResetFifo(ScrnInfoPtr pScrn)
{
TDFXPtr pTDFX;
int oldValue;
- long start_sec, end_sec, dummy;
+ struct timeval start, stop;
pTDFX=TDFXPTR(pScrn);
ErrorF("Resetting FIFO\n");
@@ -113,17 +113,17 @@ static void TDFXResetFifo(ScrnInfoPtr pScrn)
/* Toggle the reset bits */
oldValue=TDFXReadLongMMIO(pTDFX, MISCINIT0);
TDFXWriteLongMMIO(pTDFX, MISCINIT0, oldValue|0x23);
- getsecs(&start_sec, &dummy);
+ gettimeofday(&start, NULL);
do {
- getsecs(&end_sec, &dummy);
- } while (end_sec-start_sec<2);
+ gettimeofday(&stop, NULL);
+ } while (stop.tv_sec - start.tv_sec < 2);
TDFXWriteLongMMIO(pTDFX, MISCINIT0, oldValue);
oldValue=TDFXReadLongMMIO(pTDFX, MISCINIT1);
TDFXWriteLongMMIO(pTDFX, MISCINIT1, oldValue|BIT(19));
- getsecs(&start_sec, &dummy);
+ gettimeofday(&start, NULL);
do {
- getsecs(&end_sec, &dummy);
- } while (end_sec-start_sec<2);
+ gettimeofday(&stop, NULL);
+ } while (stop.tv_sec - start.tv_sec < 2);
TDFXWriteLongMMIO(pTDFX, MISCINIT1, oldValue);
InstallFifo(pScrn);
}
@@ -141,14 +141,16 @@ static void TDFXSyncFifo(ScrnInfoPtr pScrn)
TDFXPtr pTDFX;
int i, cnt, resets=0;
int stat;
- long start_sec, end_sec, dummy, readptr;
+ long tmp, readptr;
+ struct timeval start, stop;
TDFXTRACEACCEL("TDFXSyncFifo start\n");
pTDFX=TDFXPTR(pScrn);
TDFXSendNOPFifo(pScrn);
i=0;
cnt=0;
- start_sec=0;
+ start.tv_sec=0;
+
readptr=TDFXReadLongMMIO(pTDFX, SST_FIFO_RDPTRL0);
do {
readptr=TDFXReadLongMMIO(pTDFX, SST_FIFO_RDPTRL0);
@@ -156,15 +158,15 @@ static void TDFXSyncFifo(ScrnInfoPtr pScrn)
if (stat&SST_BUSY) i=0; else i++;
cnt++;
if (cnt==1000) {
- if (!start_sec) {
- getsecs(&start_sec, &dummy);
+ if (!start.tv_sec) {
+ gettimeofday(&start, NULL);
} else {
- getsecs(&end_sec, &dummy);
- if (end_sec-start_sec>3) {
- dummy=TDFXReadLongMMIO(pTDFX, SST_FIFO_RDPTRL0);
- if (dummy==readptr) {
+ gettimeofday(&stop, NULL);
+ if (stop.tv_sec - start.tv_sec > 3) {
+ tmp = TDFXReadLongMMIO(pTDFX, SST_FIFO_RDPTRL0);
+ if (tmp == readptr) {
TDFXResetFifo(pScrn);
- readptr=dummy;
+ readptr = tmp;
resets++;
if (resets==3) {
xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
@@ -172,7 +174,7 @@ static void TDFXSyncFifo(ScrnInfoPtr pScrn)
return;
}
}
- start_sec=0;
+ start.tv_sec=0;
}
}
cnt=0;
commit 2de0dcfff822e2a8e5b993936bbad771bf9420b1
Author: Tiago Vignatti <vignatti@c3sl.ufpr.br>
Date: Fri Jul 4 04:13:05 2008 -0300
Remove libc wrapper functions.
diff --git a/src/tdfx_priv.c b/src/tdfx_priv.c
index bffb20f..0063c20 100644
--- a/src/tdfx_priv.c
+++ b/src/tdfx_priv.c
@@ -113,16 +113,16 @@ static void TDFXResetFifo(ScrnInfoPtr pScrn)
/* Toggle the reset bits */
oldValue=TDFXReadLongMMIO(pTDFX, MISCINIT0);
TDFXWriteLongMMIO(pTDFX, MISCINIT0, oldValue|0x23);
- xf86getsecs(&start_sec, &dummy);
+ getsecs(&start_sec, &dummy);
do {
- xf86getsecs(&end_sec, &dummy);
+ getsecs(&end_sec, &dummy);
} while (end_sec-start_sec<2);
TDFXWriteLongMMIO(pTDFX, MISCINIT0, oldValue);
oldValue=TDFXReadLongMMIO(pTDFX, MISCINIT1);
TDFXWriteLongMMIO(pTDFX, MISCINIT1, oldValue|BIT(19));
- xf86getsecs(&start_sec, &dummy);
+ getsecs(&start_sec, &dummy);
do {
- xf86getsecs(&end_sec, &dummy);
+ getsecs(&end_sec, &dummy);
} while (end_sec-start_sec<2);
TDFXWriteLongMMIO(pTDFX, MISCINIT1, oldValue);
InstallFifo(pScrn);
@@ -157,9 +157,9 @@ static void TDFXSyncFifo(ScrnInfoPtr pScrn)
cnt++;
if (cnt==1000) {
if (!start_sec) {
- xf86getsecs(&start_sec, &dummy);
+ getsecs(&start_sec, &dummy);
} else {
- xf86getsecs(&end_sec, &dummy);
+ getsecs(&end_sec, &dummy);
if (end_sec-start_sec>3) {
dummy=TDFXReadLongMMIO(pTDFX, SST_FIFO_RDPTRL0);
if (dummy==readptr) {
Reply to: