Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
xserver
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Marco Trevisan
xserver
Commits
346aff7e
Commit
346aff7e
authored
Oct 09, 2003
by
Keith Packard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Use either vesa or fbdev, selectable at compile time
parent
adc5b806
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
68 additions
and
18 deletions
+68
-18
hw/kdrive/smi/Makefile.am
hw/kdrive/smi/Makefile.am
+4
-0
hw/kdrive/smi/smi.c
hw/kdrive/smi/smi.c
+19
-15
hw/kdrive/smi/smi.h
hw/kdrive/smi/smi.h
+44
-2
hw/kdrive/smi/smistub.c
hw/kdrive/smi/smistub.c
+1
-1
No files found.
hw/kdrive/smi/Makefile.am
View file @
346aff7e
...
...
@@ -2,6 +2,7 @@ INCLUDES = \
-I
$(top_srcdir)
/fb
\
-I
$(top_srcdir)
/hw/kdrive/src
\
-I
$(top_srcdir)
/hw/kdrive/fbdev
\
-I
$(top_srcdir)
/hw/kdrive/vesa
\
-I
$(top_srcdir)
/mi
\
-I
$(top_srcdir)
/miext/layer
\
-I
$(top_srcdir)
/miext/shadow
\
...
...
@@ -25,6 +26,7 @@ Xsmi_SOURCES = \
Xsmi_LDADD
=
\
$(top_builddir)
/hw/kdrive/smi/libsmi.a
\
$(top_builddir)
/hw/kdrive/fbdev/libfbdev.a
\
$(top_builddir)
/hw/kdrive/vesa/libvesa.a
\
$(top_builddir)
/dix/libdix.a
\
$(top_builddir)
/os/libos.a
\
$(top_builddir)
/miext/layer/liblayer.a
\
...
...
@@ -33,11 +35,13 @@ Xsmi_LDADD = \
$(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
hw/kdrive/smi/smi.c
View file @
346aff7e
...
...
@@ -40,7 +40,7 @@ smiCardInit (KdCardInfo *card)
(
void
)
smiMapReg
(
card
,
smic
);
if
(
!
fbdevInitialize
(
card
,
&
smic
->
fbdev
))
if
(
!
subInitialize
(
card
,
&
smic
->
sub
))
{
xfree
(
smic
);
return
FALSE
;
...
...
@@ -62,7 +62,7 @@ smiScreenInit (KdScreenInfo *screen)
if
(
!
smis
)
return
FALSE
;
memset
(
smis
,
'\0'
,
sizeof
(
SmiScreenInfo
));
if
(
!
fbdevScreenInitialize
(
screen
,
&
smis
->
fbdev
))
if
(
!
subScreenInitialize
(
screen
,
&
smis
->
sub
))
{
xfree
(
smis
);
return
FALSE
;
...
...
@@ -70,7 +70,11 @@ smiScreenInit (KdScreenInfo *screen)
if
(
!
smic
->
reg_base
)
screen
->
dumb
=
TRUE
;
screen
->
softCursor
=
TRUE
;
smis
->
screen
=
smic
->
fbdev
.
fb
;
#ifdef SMI_VESA
smis
->
screen
=
smis
->
sub
.
fb
;
#else
smis
->
screen
=
smic
->
sub
.
fb
;
#endif
screen
->
driver
=
smis
;
LEAVE
();
return
TRUE
;
...
...
@@ -89,7 +93,7 @@ smiInitScreen (ScreenPtr pScreen)
smiInitVideo(pScreen);
#endif
#endif
ret
=
fbdev
InitScreen
(
pScreen
);
ret
=
sub
InitScreen
(
pScreen
);
LEAVE
();
return
ret
;
}
...
...
@@ -106,7 +110,7 @@ smiRandRSetConfig (ScreenPtr pScreen,
ENTER
();
KdCheckSync
(
pScreen
);
ret
=
fbdev
RandRSetConfig
(
pScreen
,
randr
,
rate
,
pSize
);
ret
=
sub
RandRSetConfig
(
pScreen
,
randr
,
rate
,
pSize
);
LEAVE
();
return
ret
;
}
...
...
@@ -127,7 +131,7 @@ Bool
smiFinishInitScreen
(
ScreenPtr
pScreen
)
{
Bool
ret
;
ret
=
fbdev
FinishInitScreen
(
pScreen
);
ret
=
sub
FinishInitScreen
(
pScreen
);
#ifdef RANDR
smiRandRInit
(
pScreen
);
#endif
...
...
@@ -140,7 +144,7 @@ smiPreserve (KdCardInfo *card)
SmiCardInfo
*
smic
=
card
->
driver
;
ENTER
();
fbdev
Preserve
(
card
);
sub
Preserve
(
card
);
LEAVE
();
}
...
...
@@ -232,7 +236,7 @@ smiEnable (ScreenPtr pScreen)
SmiCardInfo
*
smic
=
pScreenPriv
->
card
->
driver
;
ENTER
();
if
(
!
fbdev
Enable
(
pScreen
))
if
(
!
sub
Enable
(
pScreen
))
return
FALSE
;
smiSetMMIO
(
pScreenPriv
->
card
,
smic
);
...
...
@@ -257,7 +261,7 @@ smiDisable (ScreenPtr pScreen)
KdXVDisable
(
pScreen
);
#endif
smiResetMMIO
(
pScreenPriv
->
card
,
smic
);
fbdev
Disable
(
pScreen
);
sub
Disable
(
pScreen
);
LEAVE
();
}
...
...
@@ -266,7 +270,7 @@ smiDPMS (ScreenPtr pScreen, int mode)
{
Bool
ret
;
ENTER
();
ret
=
fbdev
DPMS
(
pScreen
,
mode
);
ret
=
sub
DPMS
(
pScreen
,
mode
);
LEAVE
();
return
ret
;
}
...
...
@@ -277,7 +281,7 @@ smiRestore (KdCardInfo *card)
SmiCardInfo
*
smic
=
card
->
driver
;
ENTER
();
fbdev
Restore
(
card
);
sub
Restore
(
card
);
LEAVE
();
}
...
...
@@ -287,7 +291,7 @@ smiScreenFini (KdScreenInfo *screen)
SmiScreenInfo
*
smis
=
(
SmiScreenInfo
*
)
screen
->
driver
;
ENTER
();
fbdev
ScreenFini
(
screen
);
sub
ScreenFini
(
screen
);
xfree
(
smis
);
screen
->
driver
=
0
;
LEAVE
();
...
...
@@ -300,7 +304,7 @@ smiCardFini (KdCardInfo *card)
ENTER
();
smiUnmapReg
(
card
,
smic
);
fbdev
CardFini
(
card
);
sub
CardFini
(
card
);
LEAVE
();
}
...
...
@@ -334,8 +338,8 @@ KdCardFuncs smiFuncs = {
smiDrawDisable
,
/* disableAccel */
smiDrawFini
,
/* finiAccel */
fbdev
GetColors
,
/* getColors */
fbdev
PutColors
,
/* putColors */
sub
GetColors
,
/* getColors */
sub
PutColors
,
/* putColors */
smiFinishInitScreen
,
/* finishInitScreen */
};
hw/kdrive/smi/smi.h
View file @
346aff7e
...
...
@@ -25,7 +25,49 @@
#ifndef _SMI_H_
#define _SMI_H_
#define SMI_VESA 1
#ifdef SMI_VESA
#include <vesa.h>
#define subGetColors vesaGetColors
#define subPutColors vesaPutColors
#define subInitialize vesaInitialize
#define subScreenInitialize vesaScreenInitialize
#define subInitScreen vesaInitScreen
#define subRandRSetConfig vesaRandRSetConfig
#define subFinishInitScreen vesaFinishInitScreen
#define subPreserve vesaPreserve
#define subEnable vesaEnable
#define subDPMS vesaDPMS
#define subRestore vesaRestore
#define subScreenFini vesaScreenFini
#define subCardFini vesaCardFini
#define subDisable vesaDisable
#define SubCardPrivRec VesaCardPrivRec
#define SubScreenPrivRec VesaScreenPrivRec
#define subProcessArgument(c,v,i) vesaProcessArgument(c,v,i)
#else
#include <fbdev.h>
#define subGetColors fbdevGetColors
#define subPutColors fbdevPutColors
#define subInitialize fbdevInitialize
#define subScreenInitialize fbdevScreenInitialize
#define subInitScreen fbdevInitScreen
#define subRandRSetConfig fbdevRandRSetConfig
#define subFinishInitScreen fbdevFinishInitScreen
#define subPreserve fbdevPreserve
#define subEnable fbdevEnable
#define subDPMS fbdevDPMS
#define subRestore fbdevRestore
#define subScreenFini fbdevScreenFini
#define subCardFini fbdevCardFini
#define subDisable fbdevDisable
#define SubCardPrivRec FbdevPriv
#define SubScreenPrivRec FbdevScrPriv
#define subProcessArgument(c,v,i) 0
#endif
#include "kxv.h"
#define DEBUG
...
...
@@ -124,7 +166,7 @@ typedef struct _DPR {
#define VGA_SEQ_DATA 0x3C5
typedef
struct
_smiCardInfo
{
FbdevPriv
fbdev
;
SubCardPrivRec
sub
;
CARD16
io_base
;
CARD8
*
reg_base
;
DPR
*
dpr
;
...
...
@@ -135,7 +177,7 @@ typedef struct _smiCardInfo {
#define smiCardInfo(kd) SmiCardInfo *smic = getSmiCardInfo(kd)
typedef
struct
_smiScreenInfo
{
FbdevScrPriv
fbdev
;
SubScreenPrivRec
sub
;
CARD8
*
screen
;
CARD32
stride
;
CARD32
data_format
;
...
...
hw/kdrive/smi/smistub.c
View file @
346aff7e
...
...
@@ -55,7 +55,7 @@ ddxProcessArgument (int argc, char **argv, int i)
{
int
ret
;
/* if (!(ret = vesaProcessArgument (argc, argv, i))) */
if
(
!
(
ret
=
subProcessArgument
(
argc
,
argv
,
i
)))
ret
=
KdProcessArgument
(
argc
,
argv
,
i
);
return
ret
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment