summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/ggi/default
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/drivers/ggi/default')
-rw-r--r--src/mesa/drivers/ggi/default/genkgi_visual.c21
-rw-r--r--src/mesa/drivers/ggi/default/linear.c20
-rw-r--r--src/mesa/drivers/ggi/default/linear_15.c1
-rw-r--r--src/mesa/drivers/ggi/default/linear_16.c1
-rw-r--r--src/mesa/drivers/ggi/default/linear_24.c1
-rw-r--r--src/mesa/drivers/ggi/default/linear_32.c1
-rw-r--r--src/mesa/drivers/ggi/default/linear_8.c1
-rw-r--r--src/mesa/drivers/ggi/default/stubs.c19
8 files changed, 55 insertions, 10 deletions
diff --git a/src/mesa/drivers/ggi/default/genkgi_visual.c b/src/mesa/drivers/ggi/default/genkgi_visual.c
index c30f15fdb09..17ef9679bb8 100644
--- a/src/mesa/drivers/ggi/default/genkgi_visual.c
+++ b/src/mesa/drivers/ggi/default/genkgi_visual.c
@@ -1,4 +1,4 @@
-/* $Id: genkgi_visual.c,v 1.6 2000/01/07 08:34:44 jtaylor Exp $
+/* $Id: genkgi_visual.c,v 1.7 2000/06/11 20:11:55 jtaylor Exp $
******************************************************************************
genkgi_visual.c: visual handling for the generic KGI helper
@@ -106,7 +106,8 @@ static int changed(ggi_visual_t vis, int whatchanged)
return 0;
}
-int GGIdlinit(ggi_visual *vis, const char *args, void *argptr)
+static int GGIdlinit(ggi_visual *vis, struct ggi_dlhandle *dlh,
+ const char *args, void *argptr, uint32 *dlret)
{
struct genkgi_priv_mesa *priv;
char libname[256], libargs[256];
@@ -166,12 +167,24 @@ int GGIdlinit(ggi_visual *vis, const char *args, void *argptr)
#endif
GGIMESADPRINT_CORE("display-fbdev-kgicon-mesa: GGIdlinit finished\n");
+ *dlret = GGI_DL_OPDRAW;
return 0;
}
-int GGIdlcleanup(ggi_visual *vis)
+int MesaGGIdl_fbdev(int func, void **funcptr)
{
- return 0;
+ switch (func) {
+ case GGIFUNC_open:
+ *funcptr = GGIopen;
+ return 0;
+ case GGIFUNC_exit:
+ case GGIFUNC_close:
+ *funcptr = NULL;
+ return 0;
+ default:
+ *funcptr = NULL;
+ }
+ return GGI_ENOTFOUND;
}
#include <ggi/internal/ggidlinit.h>
diff --git a/src/mesa/drivers/ggi/default/linear.c b/src/mesa/drivers/ggi/default/linear.c
index 6acdf4d8012..e15a0db0508 100644
--- a/src/mesa/drivers/ggi/default/linear.c
+++ b/src/mesa/drivers/ggi/default/linear.c
@@ -320,14 +320,28 @@ int GGIsetup_driver(GGIMesaContext ggictx,struct ggi_mesa_info *info)
return 0;
}
-int GGIdlinit(ggi_visual_t vis,const char *version,void *argptr)
+static int GGIopen(ggi_visual_t vis,struct ggi_dlhandle *dlh,
+ const char *args,void *argptr, uint32 *dlret)
{
LIBGGI_MESAEXT(vis)->setup_driver=GGIsetup_driver;
+ *dlret = GGI_DL_OPDRAW;
return 0;
}
-int GGIdlcleanup(ggi_visual_t vis)
+int DLOPENFUNC(int func, void **funcptr)
{
- return 0;
+ switch (func) {
+ case GGIFUNC_open:
+ *funcptr = GGIopen;
+ return 0;
+ case GGIFUNC_exit:
+ case GGIFUNC_close:
+ *funcptr = NULL;
+ return 0;
+ default:
+ *funcptr = NULL;
+ }
+ return GGI_ENOTFOUND;
}
+
diff --git a/src/mesa/drivers/ggi/default/linear_15.c b/src/mesa/drivers/ggi/default/linear_15.c
index 05879d10a98..ead7cc58475 100644
--- a/src/mesa/drivers/ggi/default/linear_15.c
+++ b/src/mesa/drivers/ggi/default/linear_15.c
@@ -30,6 +30,7 @@
#define FB_TYPE uint16
#define FB_BITS 15
+#define DLOPENFUNC MesaGGIdl_linear_15
#include "linear.c"
diff --git a/src/mesa/drivers/ggi/default/linear_16.c b/src/mesa/drivers/ggi/default/linear_16.c
index 221891bf20f..6028699bbc9 100644
--- a/src/mesa/drivers/ggi/default/linear_16.c
+++ b/src/mesa/drivers/ggi/default/linear_16.c
@@ -30,6 +30,7 @@
#define FB_TYPE uint16
#define FB_BITS 16
+#define DLOPENFUNC MesaGGIdl_linear_16
#include "linear.c"
diff --git a/src/mesa/drivers/ggi/default/linear_24.c b/src/mesa/drivers/ggi/default/linear_24.c
index 0d315321f02..7a2236f1241 100644
--- a/src/mesa/drivers/ggi/default/linear_24.c
+++ b/src/mesa/drivers/ggi/default/linear_24.c
@@ -30,6 +30,7 @@
#define FB_TYPE uint32
#define FB_BITS 24
+#define DLOPENFUNC MesaGGIdl_linear_24
#include "linear.c"
diff --git a/src/mesa/drivers/ggi/default/linear_32.c b/src/mesa/drivers/ggi/default/linear_32.c
index d16a923b359..7cbf945f359 100644
--- a/src/mesa/drivers/ggi/default/linear_32.c
+++ b/src/mesa/drivers/ggi/default/linear_32.c
@@ -30,6 +30,7 @@
#define FB_TYPE uint32
#define FB_BITS 32
+#define DLOPENFUNC MesaGGIdl_linear_32
#include "linear.c"
diff --git a/src/mesa/drivers/ggi/default/linear_8.c b/src/mesa/drivers/ggi/default/linear_8.c
index 19a3ee27e46..9c7b5d712f0 100644
--- a/src/mesa/drivers/ggi/default/linear_8.c
+++ b/src/mesa/drivers/ggi/default/linear_8.c
@@ -30,6 +30,7 @@
#define FB_TYPE uint8
#define FB_BITS 8
+#define DLOPENFUNC MesaGGIdl_linear_8
#include "linear.c"
diff --git a/src/mesa/drivers/ggi/default/stubs.c b/src/mesa/drivers/ggi/default/stubs.c
index df9efb5c40c..f377532efd7 100644
--- a/src/mesa/drivers/ggi/default/stubs.c
+++ b/src/mesa/drivers/ggi/default/stubs.c
@@ -399,15 +399,28 @@ triangle_func ggiGetTriangleFunc(GLcontext *ctx)
return GGItriangle_flat;
}
-int GGIdlinit(ggi_visual_t vis, const char *version, void *argptr)
+static int GGIopen(ggi_visual_t vis, struct ggi_dlhandle *dlh,
+ const char *args, void *argptr, uint32 *dlret)
{
LIBGGI_MESAEXT(vis)->update_state = GGIupdate_state;
LIBGGI_MESAEXT(vis)->setup_driver = GGIsetup_driver;
+ *dlret = GGI_DL_OPDRAW;
return 0;
}
-int GGIdlcleanup(ggi_visual_t vis)
+int MesaGGIdl_stubs(int func, void **funcptr)
{
- return 0;
+ switch (func) {
+ case GGIFUNC_open:
+ *funcptr = GGIopen;
+ return 0;
+ case GGIFUNC_exit:
+ case GGIFUNC_close:
+ *funcptr = NULL;
+ return 0;
+ default:
+ *funcptr = NULL;
+ }
+ return GGI_ENOTFOUND;
}