summaryrefslogtreecommitdiff
path: root/hw/kdrive/nvidia
diff options
context:
space:
mode:
Diffstat (limited to 'hw/kdrive/nvidia')
-rw-r--r--hw/kdrive/nvidia/Makefile.am30
-rw-r--r--hw/kdrive/nvidia/nvidia.c30
-rw-r--r--hw/kdrive/nvidia/nvidia.h1
-rw-r--r--hw/kdrive/nvidia/nvidiadraw.c38
4 files changed, 35 insertions, 64 deletions
diff --git a/hw/kdrive/nvidia/Makefile.am b/hw/kdrive/nvidia/Makefile.am
index 324595e8c..41ad93691 100644
--- a/hw/kdrive/nvidia/Makefile.am
+++ b/hw/kdrive/nvidia/Makefile.am
@@ -1,13 +1,7 @@
INCLUDES = \
- -I$(top_srcdir)/fb \
- -I$(top_srcdir)/hw/kdrive/src \
+ @KDRIVE_INCS@ \
-I$(top_srcdir)/hw/kdrive/vesa \
- -I$(top_srcdir)/mi \
- -I$(top_srcdir)/miext/layer \
- -I$(top_srcdir)/miext/shadow \
- -I$(top_srcdir)/randr \
- -I$(top_srcdir)/render \
- $(XSERVER_CFLAGS)
+ @XSERVER_CFLAGS@
bin_PROGRAMS = Xnvidia
@@ -29,21 +23,5 @@ Xnvidia_SOURCES = \
Xnvidia_LDADD = \
libnvidia.a \
$(top_builddir)/hw/kdrive/vesa/libvesa.a \
- $(top_builddir)/dix/libdix.a \
- $(top_builddir)/os/libos.a \
- $(top_builddir)/miext/layer/liblayer.a \
- $(top_builddir)/hw/kdrive/src/libkdrive.a \
- $(top_builddir)/hw/kdrive/linux/liblinux.a \
- $(top_builddir)/miext/shadow/libshadow.a \
- $(top_builddir)/randr/librandr.a \
- $(top_builddir)/render/librender.a \
- $(top_builddir)/xfixes/libxfixes.a \
- $(top_builddir)/fb/libfb.a \
- $(top_builddir)/mi/libmi.a \
- $(top_builddir)/Xext/libXext.a \
- $(top_builddir)/randr/librandr.a \
- $(top_builddir)/render/librender.a \
- $(top_builddir)/xfixes/libxfixes.a \
- $(top_builddir)/dix/libxpstubs.a \
- $(XSERVER_LIBS) \
- -lm -lz
+ @KDRIVE_LIBS@ \
+ @XSERVER_LIBS@
diff --git a/hw/kdrive/nvidia/nvidia.c b/hw/kdrive/nvidia/nvidia.c
index c74daf7a0..fa53476b1 100644
--- a/hw/kdrive/nvidia/nvidia.c
+++ b/hw/kdrive/nvidia/nvidia.c
@@ -28,7 +28,7 @@
#include "nvidia.h"
#include <sys/io.h>
-Bool
+static Bool
nvidiaCardInit (KdCardInfo *card)
{
NvidiaCardInfo *nvidiac;
@@ -50,7 +50,7 @@ nvidiaCardInit (KdCardInfo *card)
return TRUE;
}
-Bool
+static Bool
nvidiaScreenInit (KdScreenInfo *screen)
{
NvidiaCardInfo *nvidiac = screen->card->driver;
@@ -96,7 +96,7 @@ nvidiaScreenInit (KdScreenInfo *screen)
return TRUE;
}
-Bool
+static Bool
nvidiaInitScreen (ScreenPtr pScreen)
{
#if 0
@@ -111,13 +111,12 @@ nvidiaInitScreen (ScreenPtr pScreen)
}
#ifdef RANDR
+static Bool
nvidiaRandRSetConfig (ScreenPtr pScreen,
Rotation rotation,
int rate,
RRScreenSizePtr pSize)
{
- KdScreenPriv(pScreen);
-
KdCheckSync (pScreen);
if (!vesaRandRSetConfig (pScreen, rotation, rate, pSize))
@@ -126,7 +125,7 @@ nvidiaRandRSetConfig (ScreenPtr pScreen,
return TRUE;
}
-void
+static void
nvidiaRandRInit (ScreenPtr pScreen)
{
rrScrPriv(pScreen);
@@ -135,7 +134,7 @@ nvidiaRandRInit (ScreenPtr pScreen)
}
#endif
-Bool
+static Bool
nvidiaFinishInitScreen (ScreenPtr pScreen)
{
Bool ret;
@@ -149,8 +148,6 @@ nvidiaFinishInitScreen (ScreenPtr pScreen)
void
nvidiaPreserve (KdCardInfo *card)
{
- NvidiaCardInfo *nvidiac = card->driver;
-
vesaPreserve(card);
}
@@ -198,7 +195,7 @@ static void vgaLockUnlock (NvidiaCardInfo *nvidiac, Bool lock)
LEAVE ();
}
-void nvidiaLockUnlock (NvidiaCardInfo *nvidiac, Bool lock)
+static void nvidiaLockUnlock (NvidiaCardInfo *nvidiac, Bool lock)
{
if (NVIDIA_IS_3(nvidiac))
nvidiaSetIndex (nvidiac, 0x3c4, 0x3c5, 0x06, lock ? 0x99 : 0x57);
@@ -276,7 +273,6 @@ nvidiaEnable (ScreenPtr pScreen)
return FALSE;
nvidiaSetMMIO (pScreenPriv->card, nvidiac);
- nvidiaDPMS (pScreen, KD_DPMS_NORMAL);
#ifdef XV
KdXVEnable (pScreen);
#endif
@@ -296,13 +292,13 @@ nvidiaDisable (ScreenPtr pScreen)
vesaDisable (pScreen);
}
-Bool
+static Bool
nvidiaDPMS (ScreenPtr pScreen, int mode)
{
return vesaDPMS (pScreen, mode);
}
-void
+static void
nvidiaRestore (KdCardInfo *card)
{
NvidiaCardInfo *nvidiac = card->driver;
@@ -311,7 +307,7 @@ nvidiaRestore (KdCardInfo *card)
vesaRestore (card);
}
-void
+static void
nvidiaScreenFini (KdScreenInfo *screen)
{
NvidiaScreenInfo *nvidias = (NvidiaScreenInfo *) screen->driver;
@@ -321,7 +317,7 @@ nvidiaScreenFini (KdScreenInfo *screen)
screen->driver = 0;
}
-void
+static void
nvidiaCardFini (KdCardInfo *card)
{
NvidiaCardInfo *nvidiac = card->driver;
@@ -340,6 +336,8 @@ KdCardFuncs nvidiaFuncs = {
nvidiaCardInit, /* cardinit */
nvidiaScreenInit, /* scrinit */
nvidiaInitScreen, /* initScreen */
+ nvidiaFinishInitScreen, /* finishInitScreen */
+ vesaCreateResources, /* createRes */
nvidiaPreserve, /* preserve */
nvidiaEnable, /* enable */
nvidiaDPMS, /* dpms */
@@ -362,6 +360,4 @@ KdCardFuncs nvidiaFuncs = {
vesaGetColors, /* getColors */
vesaPutColors, /* putColors */
-
- nvidiaFinishInitScreen, /* finishInitScreen */
};
diff --git a/hw/kdrive/nvidia/nvidia.h b/hw/kdrive/nvidia/nvidia.h
index b1ba3b3ad..083ffc0ea 100644
--- a/hw/kdrive/nvidia/nvidia.h
+++ b/hw/kdrive/nvidia/nvidia.h
@@ -26,6 +26,7 @@
#define _NVIDIA_H_
#include <vesa.h>
#include "kxv.h"
+#include "klinux.h"
/*
* offset from ioport beginning
diff --git a/hw/kdrive/nvidia/nvidiadraw.c b/hw/kdrive/nvidia/nvidiadraw.c
index 840b0752c..b49ed7805 100644
--- a/hw/kdrive/nvidia/nvidiadraw.c
+++ b/hw/kdrive/nvidia/nvidiadraw.c
@@ -81,19 +81,18 @@ nvidiaWaitIdle (NvidiaCardInfo *card)
}
}
-Bool
-nvidiaPrepareSolid (DrawablePtr pDrawable,
- int alu,
- Pixel pm,
- Pixel fg)
+static Bool
+nvidiaPrepareSolid (PixmapPtr pPixmap,
+ int alu,
+ Pixel pm,
+ Pixel fg)
{
- ScreenPtr pScreen = pDrawable->pScreen;
+ ScreenPtr pScreen = pPixmap->drawable.pScreen;
KdScreenPriv(pScreen);
- nvidiaScreenInfo(pScreenPriv);
nvidiaCardInfo(pScreenPriv);
card = nvidiac;
- if (~pm & FbFullMask(pDrawable->depth))
+ if (~pm & FbFullMask(pPixmap->drawable.depth))
return FALSE;
nvidiaWait (nvidiac, &nvidiac->rop->FifoFree, 1);
nvidiac->rop->Rop3 = nvidiaRop[alu];
@@ -102,7 +101,7 @@ nvidiaPrepareSolid (DrawablePtr pDrawable,
return TRUE;
}
-void
+static void
nvidiaSolid (int x1, int y1, int x2, int y2)
{
nvidiaWait (card, &card->rect->FifoFree, 2);
@@ -110,34 +109,33 @@ nvidiaSolid (int x1, int y1, int x2, int y2)
card->rect->WidthHeight = NVIDIA_XY(x2-x1,y2-y1);
}
-void
+static void
nvidiaDoneSolid (void)
{
}
-Bool
-nvidiaPrepareCopy (DrawablePtr pSrcDrawable,
- DrawablePtr pDstDrawable,
+static Bool
+nvidiaPrepareCopy (PixmapPtr pSrcPixmap,
+ PixmapPtr pDstPixmap,
int dx,
int dy,
int alu,
Pixel pm)
{
- ScreenPtr pScreen = pDstDrawable->pScreen;
+ ScreenPtr pScreen = pDstPixmap->drawable.pScreen;
KdScreenPriv(pScreen);
- nvidiaScreenInfo(pScreenPriv);
nvidiaCardInfo(pScreenPriv);
card = nvidiac;
- if (~pm & FbFullMask(pDstDrawable->depth))
+ if (~pm & FbFullMask(pDstPixmap->drawable.depth))
return FALSE;
nvidiaWait (nvidiac, &card->rop->FifoFree, 1);
nvidiac->rop->Rop3 = nvidiaRop[alu];
return TRUE;
}
-void
+static void
nvidiaCopy (int srcX,
int srcY,
int dstX,
@@ -151,7 +149,7 @@ nvidiaCopy (int srcX,
card->blt->WidthHeight = NVIDIA_XY(w, h);
}
-void
+static void
nvidiaDoneCopy (void)
{
}
@@ -170,9 +168,8 @@ Bool
nvidiaDrawInit (ScreenPtr pScreen)
{
KdScreenPriv(pScreen);
- nvidiaScreenInfo(pScreenPriv);
nvidiaCardInfo(pScreenPriv);
- Bool ret;
+ Bool ret = TRUE;
ENTER ();
if (pScreenPriv->screen->fb[0].depth == 4)
@@ -213,7 +210,6 @@ void
nvidiaDrawEnable (ScreenPtr pScreen)
{
KdScreenPriv(pScreen);
- nvidiaScreenInfo(pScreenPriv);
nvidiaCardInfo(pScreenPriv);
ENTER ();