|
version 3.64, 1997/07/12 11:32:31
|
version 3.64.2.37, 1998/06/11 16:01:15
|
|
|
|
| /* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86.h,v 3.63 1997/06/30 05:49:09 dawes Exp $ */ |
/* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86.h,v 3.64.2.36 1998/06/08 15:13:01 dawes Exp $ */ |
| |
|
| /* | /* |
| * Copyright 1990,91 by Thomas Roell, Dinkelscherben, Germany. |
* Copyright (c) 1997 by The XFree86 Project, Inc. |
| * |
*/ |
| * Permission to use, copy, modify, distribute, and sell this software and its |
|
| * documentation for any purpose is hereby granted without fee, provided that |
/* |
| * the above copyright notice appear in all copies and that both that |
* This file contains declarations for public XFree86 functions and variables, |
| * copyright notice and this permission notice appear in supporting |
* and definitions of public macros. |
| * documentation, and that the name of Thomas Roell not be used in |
|
| * advertising or publicity pertaining to distribution of the software without |
|
| * specific, written prior permission. Thomas Roell makes no representations |
|
| * about the suitability of this software for any purpose. It is provided |
|
| * "as is" without express or implied warranty. |
|
| * |
|
| * THOMAS ROELL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, |
|
| * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO |
|
| * EVENT SHALL THOMAS ROELL BE LIABLE FOR ANY SPECIAL, INDIRECT OR |
|
| * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, |
|
| * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER |
|
| * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR |
|
| * PERFORMANCE OF THIS SOFTWARE. |
|
| * | * |
| |
* "public" means available to video drivers. |
| */ | */ |
| /* $XConsortium: xf86.h /main/28 1996/10/23 18:43:15 kaleb $ */ |
|
| | |
| #ifndef _XF86_H | #ifndef _XF86_H |
| #define _XF86_H | #define _XF86_H |
| | |
| #include "misc.h" |
#include "xf86str.h" |
| #include "input.h" |
#include <X11/Xfuncproto.h> |
| #include "scrnintstr.h" |
#include <stdarg.h> |
| |
|
| #include "xf86_Option.h" |
/* General parameters */ |
| |
extern int xf86ScreenIndex; /* Index into pScreen.devPrivates */ |
| /* |
extern int xf86PixmapIndex; |
| * structure common for all modes |
extern ScrnInfoPtr *xf86Screens; /* List of pointers to ScrnInfoRecs */ |
| */ |
extern Bool xf86VTSema; /* Xserver VT is active */ |
| typedef struct _DispM { |
extern ColormapPtr InstalledMaps[MAXSCREENS]; |
| struct _DispM *prev,*next; |
extern const unsigned char byte_reversed[256]; |
| char *name; /* identifier of this mode */ |
|
| /* These are the values that the user sees/provides */ |
#define XF86SCRNINFO(p) ((ScrnInfoPtr)((p)->devPrivates[xf86ScreenIndex].ptr)) |
| int Clock; /* pixel clock */ |
|
| int HDisplay; /* horizontal timing */ |
#define XF86FLIP_PIXELS() \ |
| int HSyncStart; |
do { \ |
| int HSyncEnd; |
if (xf86GetFlipPixels()) { \ |
| int HTotal; |
pScreen->whitePixel = (pScreen->whitePixel) ? 0 : 1; \ |
| int HSkew; |
pScreen->blackPixel = (pScreen->blackPixel) ? 0 : 1; \ |
| int VDisplay; /* vertical timing */ |
} \ |
| int VSyncStart; |
while (0) |
| int VSyncEnd; |
|
| int VTotal; |
|
| int Flags; |
|
| /* These are the values the hardware uses */ |
|
| int SynthClock; /* Actual clock freq to be programmed */ |
|
| int CrtcHDisplay; |
|
| int CrtcHSyncStart; |
|
| int CrtcHSyncEnd; |
|
| int CrtcHTotal; |
|
| int CrtcHSkew; |
|
| int CrtcVDisplay; |
|
| int CrtcVSyncStart; |
|
| int CrtcVSyncEnd; |
|
| int CrtcVTotal; |
|
| Bool CrtcHAdjusted; |
|
| Bool CrtcVAdjusted; |
|
| int PrivSize; |
|
| INT32 *Private; |
|
| } DisplayModeRec, *DisplayModePtr; |
|
| |
|
| #define V_PHSYNC 0x0001 |
|
| #define V_NHSYNC 0x0002 |
|
| #define V_PVSYNC 0x0004 |
|
| #define V_NVSYNC 0x0008 |
|
| #define V_INTERLACE 0x0010 |
|
| #define V_DBLSCAN 0x0020 |
|
| #define V_CSYNC 0x0040 |
|
| #define V_PCSYNC 0x0080 |
|
| #define V_NCSYNC 0x0100 |
|
| #define V_HSKEW 0x0200 /* hskew provided */ |
|
| #define V_PIXMUX 0x1000 |
|
| #define V_DBLCLK 0x2000 |
|
| #define V_CLKDIV2 0x4000 |
|
| |
|
| /* The monitor description */ |
|
| |
|
| #define MAX_HSYNC 8 |
|
| #define MAX_VREFRESH 8 |
|
| |
|
| typedef struct { float hi, lo; } range; |
|
| |
|
| typedef struct { |
|
| char *id; |
|
| char *vendor; |
|
| char *model; |
|
| float EMPTY; |
|
| int n_hsync; |
|
| range hsync[MAX_HSYNC]; |
|
| int n_vrefresh; |
|
| range vrefresh[MAX_VREFRESH]; |
|
| DisplayModePtr Modes, Last; /* Start and end of monitor's mode list */ |
|
| } MonRec, *MonPtr; |
|
| |
|
| #define MAXCLOCKS 128 |
|
| #define MAXDACSPEEDS 4 /* for <= 8, 16, 24, 32bpp */ |
|
| | |
| /* Set default max allowed clock to 90MHz */ |
#define BOOLTOSTRING(b) ((b) ? "TRUE" : "FALSE") |
| #define DEFAULT_MAX_CLOCK 90000 |
|
| | |
| /* |
/* Function Prototypes */ |
| * the graphic device |
#ifndef _NO_XF86_PROTOTYPES |
| */ |
|
| typedef struct { |
|
| Bool configured; |
|
| int tmpIndex; |
|
| int scrnIndex; |
|
| Bool (* Probe)( |
|
| #if NeedNestedPrototypes |
|
| void |
|
| #endif |
|
| ); |
|
| Bool (* Init)( |
|
| #if NeedNestedPrototypes |
|
| int scr_index, |
|
| ScreenPtr pScreen, |
|
| int argc, |
|
| char **argv |
|
| #endif |
|
| ); |
|
| int (* ValidMode)( |
|
| #if NeedNestedPrototypes |
|
| DisplayModePtr target, |
|
| Bool verbose, |
|
| int flag |
|
| #endif |
|
| ); |
|
| void (* EnterLeaveVT)( |
|
| #if NeedNestedPrototypes |
|
| int, |
|
| int |
|
| #endif |
|
| ); |
|
| void (* EnterLeaveMonitor)( |
|
| #if NeedNestedPrototypes |
|
| int |
|
| #endif |
|
| ); |
|
| void (* EnterLeaveCursor)( |
|
| #if NeedNestedPrototypes |
|
| int |
|
| #endif |
|
| ); |
|
| void (* AdjustFrame)( |
|
| #if NeedNestedPrototypes |
|
| int x, |
|
| int y |
|
| #endif |
|
| ); |
|
| Bool (* SwitchMode)( |
|
| #if NeedNestedPrototypes |
|
| DisplayModePtr modes |
|
| #endif |
|
| ); |
|
| void (* DPMSSet)( |
|
| #if NeedNestedPrototypes |
|
| int level |
|
| #endif |
|
| ); |
|
| void (* PrintIdent)( |
|
| #if NeedNestedPrototypes |
|
| void |
|
| #endif |
|
| ); |
|
| int depth; |
|
| xrgb weight; |
|
| int bitsPerPixel; |
|
| int defaultVisual; |
|
| int virtualX,virtualY; |
|
| int displayWidth; |
|
| int frameX0, frameY0, frameX1, frameY1; |
|
| OFlagSet options; |
|
| OFlagSet clockOptions; |
|
| OFlagSet xconfigFlag; |
|
| char *chipset; |
|
| char *ramdac; |
|
| int dacSpeeds[MAXDACSPEEDS]; |
|
| int dacSpeedBpp; |
|
| int clocks; |
|
| int clock[MAXCLOCKS]; |
|
| int maxClock; |
|
| int videoRam; |
|
| int BIOSbase; /* Base address of video BIOS */ |
|
| unsigned long MemBase; /* Frame buffer base address */ |
|
| int width, height; /* real display dimensions */ |
|
| unsigned long speedup; /* Use SpeedUp code */ |
|
| DisplayModePtr modes; |
|
| MonPtr monitor; |
|
| char *clockprog; |
|
| int textclock; |
|
| Bool bankedMono; /* display supports banking for mono server */ |
|
| char *name; |
|
| xrgb blackColour; |
|
| xrgb whiteColour; |
|
| int *validTokens; |
|
| char *patchLevel; |
|
| unsigned int IObase; /* AGX - video card I/O reg base */ |
|
| unsigned int DACbase; /* AGX - dac I/O reg base */ |
|
| unsigned long COPbase; /* AGX - coprocessor memory base */ |
|
| unsigned int POSbase; /* AGX - I/O address of POS regs */ |
|
| int instance; /* AGX - XGA video card instance number */ |
|
| int s3Madjust; |
|
| int s3Nadjust; |
|
| int s3MClk; |
|
| int chipID; |
|
| int chipRev; |
|
| unsigned long VGAbase; /* AGX - 64K aperture memory address */ |
|
| int s3RefClk; |
|
| int s3BlankDelay; |
|
| int textClockFreq; |
|
| char *DCConfig; |
|
| char *DCOptions; |
|
| int MemClk; /* General flag used for memory clocking */ |
|
| #ifdef XFreeXDGA |
|
| int directMode; |
|
| void (*setBank)( |
|
| #if NeedNestedPrototypes |
|
| int |
|
| #endif |
|
| ); |
|
| unsigned long physBase; |
|
| int physSize; |
|
| #endif |
|
| #ifdef XF86SETUP |
|
| void *device; /* This should be GDevPtr, but it causes |
|
| problems with include file order */ |
|
| #endif |
|
| } ScrnInfoRec, *ScrnInfoPtr; |
|
| |
|
| typedef struct { |
|
| int token; /* id of the token */ |
|
| char *name; /* pointer to the LOWERCASED name */ |
|
| } SymTabRec, *SymTabPtr; |
|
| |
|
| #define VGA_DRIVER 1 |
|
| #define V256_DRIVER 2 |
|
| #define WGA_DRIVER 3 |
|
| #define XGA_DRIVER 4 |
|
| |
|
| #define ENTER 1 |
|
| #define LEAVE 0 |
|
| |
|
| /* These are possible return values for xf86CheckMode() and ValidMode() */ |
|
| #define MODE_OK 0 |
|
| #define MODE_HSYNC 1 /* hsync out of range */ |
|
| #define MODE_VSYNC 2 /* vsync out of range */ |
|
| #define MODE_BAD 255 /* unspecified reason */ |
|
| |
|
| /* These are the possible flags for ValidMode */ |
|
| #define MODE_USED 1 /* this mode is really being used in the */ |
|
| /* modes line of the Display Subsection */ |
|
| #define MODE_SUGGESTED 2 /* this mode is included in the available*/ |
|
| /* modes in the Monitor Section */ |
|
| #define MODE_VID 3 /* this is called from the VidMode extension */ |
|
| |
|
| /* Indicates the level of DPMS support */ |
|
| typedef enum { |
|
| DPMSSupportUnknown, |
|
| DPMSNotSupported, |
|
| DPMSFullSupport |
|
| } DPMSSupportStatus; |
|
| |
|
| /* These are the magic numbers that ModuleInit functions can return */ |
|
| #define MAGIC_DONE 0 /* no more init stuff */ |
|
| #define MAGIC_LOAD 1 /* load that module */ |
|
| #define MAGIC_ADD_VIDEO_CHIP_REC 2 /* add this as vgaVideoChipPtr*/ |
|
| #define MAGIC_CCD_DO_BITBLT 3 /* cur.col.depth specific blit*/ |
|
| #define MAGIC_CCD_SCREEN_PRIV_IDX 4 /* cur.col.depth specific idx*/ |
|
| #define MAGIC_CCD_XAA_SCREEN_INIT 5 /* cur.col.depth specific init*/ |
|
| | |
| /* |
/* xf86Bus.c */ |
| * don't use these, use MAGIC_LOAD_EXTENSION instead |
|
| */ |
|
| #define MAGIC_PEX_INIT 6 /* PEX init function */ |
|
| #define MAGIC_XIE_INIT 7 /* XIE init function */ |
|
| | |
| #define MAGIC_LOAD_EXTENSION 8 |
Bool xf86CheckPciSlot(int bus, int device, int func, PciBusType type); |
| |
Bool xf86ClaimPciSlot(int bus, int device, int func, PciBusType type, |
| |
int scrnIndex); |
| |
void xf86ReleasePciSlot(int bus, int device, int func); |
| |
pciVideoPtr *xf86GetPciVideoInfo(void); |
| |
int xf86GetPciInfoForScreen(int scrnIndex, pciVideoPtr **pPciList); |
| |
Bool xf86CheckIsaSlot(IsaBusType type); |
| |
Bool xf86ClaimIsaSlot(IsaBusType type, int scrnIndex); |
| |
void xf86ReleaseIsaSlot(IsaBusType type); |
| |
void xf86FreeBusSlots(int scrnIndex); |
| |
Bool xf86ParsePciBusString(const char *busID, int *bus, int *device, |
| |
int *func); |
| |
Bool xf86ComparePciBusString(const char *busID, int bus, int device, int func); |
| | |
| #define MAGIC_VERSION 9 /* retrieve version info */ |
/* xf86Config.c */ |
| /* must be returned as */ |
|
| /* first item from ModuleInit */ |
|
| #define MAGIC_DONT_CHECK_UNRESOLVED 10 /* delay checking */ |
|
| |
|
| #define MAGIC_GLX_VISUALS_INIT 11 /* GLX visuals init function */ |
|
| #define MAGIC_ADD_XINPUT_DEVICE 12 /* register xinput device */ |
|
| |
|
| #define LD_RESOLV_IFDONE 0 /* only check if no more |
|
| delays pending */ |
|
| #define LD_RESOLV_NOW 1 /* finish one delay step */ |
|
| #define LD_RESOLV_FORCE 2 /* force checking... */ |
|
| |
|
| #define MODINFOSTRING1 0xef23fdc5 |
|
| #define MODINFOSTRING2 0x10dc023a |
|
| |
|
| #ifndef MODULEVENDORSTRING |
|
| #define MODULEVENDORSTRING "The XFree86 Project" |
|
| #endif |
|
| |
|
| /* this structure is expected to be returned by initfunc by MAGIC_VERSION */ |
|
| typedef struct { |
|
| char *modname; /* name of module, e.g. "foo_drv.o" */ |
|
| char *vendor; /* vendor specific string */ |
|
| CARD32 _modinfo1_; /* constanta MODINFOSTRING1/2 to find */ |
|
| CARD32 _modinfo2_; /* infoarea with a binary editor or sign tool */ |
|
| CARD32 xf86version; /* contains XF86_VERSION_CURRENT */ |
|
| CARD32 modversion; /* contains a module specific version id */ |
|
| CARD32 checksum[4]; /* contains a digital signature of the */ |
|
| /* version info structure */ |
|
| } XF86ModuleVersionInfo; |
|
| |
|
| extern int *xf86ccdScreenPrivateIndex; |
|
| extern void (*xf86ccdDoBitblt)(); |
|
| extern int (*xf86ccdXAAScreenInit)(); |
|
| extern int xf86xaaloaded; |
|
| extern int xf86issvgatype; |
|
| extern int xf86ismonotype; |
|
| |
|
| /* flags for xf86LookupMode */ |
|
| #define LOOKUP_DEFAULT 0 /* Use default mode lookup method */ |
|
| #define LOOKUP_BEST_REFRESH 1 /* Pick modes with best refresh */ |
|
| #define LOOKUP_NO_INTERLACED 2 /* Ignore interlaced modes */ |
|
| #define LOOKUP_FORCE_DEFAULT 4 /* Force default lookup method */ |
|
| |
|
| #define INTERLACE_REFRESH_WEIGHT 1.5 |
|
| |
|
| /* SpeedUp options */ |
|
| |
|
| #define SPEEDUP_FILLBOX 1 |
|
| #define SPEEDUP_FILLRECT 2 |
|
| #define SPEEDUP_BITBLT 4 |
|
| #define SPEEDUP_LINE 8 |
|
| #define SPEEDUP_TEGBLT8 0x10 |
|
| #define SPEEDUP_RECTSTIP 0x20 |
|
| | |
| /* |
|
| * This is the routines where SpeedUp is quicker than fXF86. The problem is |
|
| * that the SpeedUp fillbox is better for drawing vertical and horizontal |
|
| * line segments, and the fXF86 version is significantly better for |
|
| * more general lines |
|
| */ |
|
| #define SPEEDUP_BEST (SPEEDUP_FILLRECT | SPEEDUP_BITBLT | \ |
|
| SPEEDUP_LINE | SPEEDUP_TEGBLT8 | \ |
|
| SPEEDUP_RECTSTIP) |
|
| /* |
|
| #define SPEEDUP_BEST (SPEEDUP_FILLBOX | SPEEDUP_FILLRECT | \ |
|
| SPEEDUP_BITBLT | SPEEDUP_LINE | \ |
|
| SPEEDUP_TEGBLT8 | SPEEDUP_RECTSTIP) |
|
| */ |
|
| | |
| /* |
/* xf86Cursor.c */ |
| * SpeedUp routines which are not dependent on the screen virtual resolution |
|
| */ |
|
| #ifndef SPEEDUP_ANYWIDTH |
|
| #define SPEEDUP_ANYWIDTH (SPEEDUP_FILLRECT | SPEEDUP_BITBLT | \ |
|
| SPEEDUP_LINE | SPEEDUP_FILLBOX) |
|
| #endif |
|
| | |
| /* |
void xf86LockZoom(ScreenPtr pScreen, int lock); |
| * SpeedUp routines which are not dependent on ET4000 |
void xf86SetScreenLayout(int scrnIndex, int left, int right, int up, int down); |
| */ |
void xf86SetViewport(ScreenPtr pScreen, int x, int y); |
| #ifndef SPEEDUP_ANYCHIPSET |
Bool xf86ZoomLocked(ScreenPtr pScreen); |
| #define SPEEDUP_ANYCHIPSET (SPEEDUP_TEGBLT8 | SPEEDUP_RECTSTIP) |
void xf86ZoomViewport(ScreenPtr pScreen, int zoom); |
| #endif |
void *xf86GetPointerScreenFuncs(void); |
| |
|
| /* All SpeedUps */ |
/* xf86DPMS.c */ |
| #define SPEEDUP_ALL (SPEEDUP_FILLBOX | SPEEDUP_FILLRECT | \ |
|
| SPEEDUP_BITBLT | SPEEDUP_LINE | \ |
Bool xf86DPMSInit(ScrnInfoPtr pScrn, DPMSSetProcPtr set, int flags); |
| SPEEDUP_TEGBLT8 | SPEEDUP_RECTSTIP) |
|
| |
/* xf86DGA.c */ |
| /* SpeedUp flags used if SpeedUp is not in XF86Config */ |
|
| #define SPEEDUP_DEFAULT SPEEDUP_ALL |
DGAInfoPtr DGACreateInfoRec(void); |
| |
void DGADestroyInfoRec(DGAInfoPtr pDGAInfo); |
| extern Bool xf86VTSema; |
Bool DGAInit(ScrnInfoPtr pScrn, DGAInfoPtr pDGAInfo, int flags); |
| |
|
| /* Mouse device private record */ |
|
| |
|
| typedef struct _MouseDevRec { |
|
| DeviceProc mseProc; /* procedure for initializing */ |
|
| void (* mseEvents)( |
|
| #if NeedNestedPrototypes |
|
| struct _MouseDevRec * |
|
| #endif |
|
| ); /* proc for processing events */ |
|
| DeviceIntPtr device; |
|
| int mseFd; |
|
| char *mseDevice; |
|
| int mseType; |
|
| int baudRate; |
|
| int oldBaudRate; |
|
| int sampleRate; |
|
| int lastButtons; |
|
| int threshold, num, den; /* acceleration */ |
|
| int emulateState; /* automata state for 2 button mode */ |
|
| Bool emulate3Buttons; |
|
| int emulate3Timeout; /* Timeout for 3 button emulation */ |
|
| Bool chordMiddle; |
|
| int mouseFlags; /* Flags to Clear after opening mouse dev */ |
|
| int truebuttons; /* Arg to maintain before emulate3buttons timer callback */ |
|
| |
|
| #ifndef CSRG_BASED |
|
| /* xque part */ |
|
| int xquePending; /* was xqueFd, but nothing uses that */ |
|
| int xqueSema; |
|
| #endif |
|
| #ifdef XINPUT |
|
| struct _LocalDeviceRec *local; |
|
| #endif |
|
| } MouseDevRec, *MouseDevPtr; |
|
| |
|
| #ifdef XINPUT |
|
| #define MOUSE_DEV(dev) (MouseDevPtr) PRIVATE(dev) |
|
| #else |
|
| #define MOUSE_DEV(dev) (MouseDevPtr) (dev)->public.devicePrivate |
|
| #endif |
|
| |
|
| /* Global data */ |
|
| /* xf86Init.c */ |
|
| extern double xf86rGamma, xf86gGamma, xf86bGamma; |
|
| |
|
| #ifdef XF86VIDMODE |
|
| extern Bool xf86VidModeEnabled; |
|
| extern Bool xf86VidModeAllowNonLocal; |
|
| #endif |
|
| #ifdef XF86MISC |
|
| extern Bool xf86MiscModInDevEnabled; |
|
| extern Bool xf86MiscModInDevAllowNonLocal; |
|
| #endif |
|
| |
|
| /* PCI probe flags */ |
|
| |
|
| |
|
| typedef enum { |
|
| PCIProbe1 = 0, |
|
| PCIProbe2, |
|
| PCIForceConfig1, |
|
| PCIForceConfig2 |
|
| } PciProbeType; |
|
| | |
| extern PciProbeType xf86PCIFlags; |
/* xf86Events.c */ |
| | |
| /* Function Prototypes */ |
void SetTimeSinceLastInputEvent(void); |
| #ifndef _NO_XF86_PROTOTYPES |
|
| | |
| /* xf86Init.c */ |
/* xf86Helper.c */ |
| void InitOutput( |
|
| #if NeedFunctionPrototypes |
|
| ScreenInfo *pScreenInfo, |
|
| int argc, |
|
| char **argv |
|
| #endif |
|
| ); |
|
| |
|
| void InitInput( |
|
| #if NeedFunctionPrototypes |
|
| int argc, |
|
| char **argv |
|
| #endif |
|
| ); |
|
| |
|
| void ddxGiveUp( |
|
| #if NeedFunctionPrototypes |
|
| void |
|
| #endif |
|
| ); |
|
| |
|
| void AbortDDX( |
|
| #if NeedFunctionPrototypes |
|
| void |
|
| #endif |
|
| ); |
|
| |
|
| int ddxProcessArgument( |
|
| #if NeedFunctionPrototypes |
|
| int argc, |
|
| char *argv[], |
|
| int i |
|
| #endif |
|
| ); |
|
| |
|
| void ddxUseMsg( |
|
| #if NeedFunctionPrototypes |
|
| void |
|
| #endif |
|
| ); |
|
| | |
| /* xf86Config.c */ |
void xf86AddDriver(DriverPtr driver, int flags); |
| unsigned int StrToUL( |
ScrnInfoPtr xf86AllocateScreen(int flags); |
| #if NeedFunctionPrototypes |
void xf86DeleteScreen(int scrnIndex, int flags); |
| char *str |
int xf86AllocateScrnInfoPrivateIndex(void); |
| #endif |
void xf86ResetScrnInfoPrivates(void); |
| ); |
Bool xf86SetDepthBpp(ScrnInfoPtr scrp, int depth, int bpp, int bppFor24); |
| |
Bool xf86SetWeight(ScrnInfoPtr scrp, rgb weight, rgb mask); |
| #ifndef CONFIG_RETURN_TYPE |
Bool xf86SetDefaultVisual(ScrnInfoPtr scrp, int visual); |
| #ifdef XF86SETUP |
Bool xf86SetGamma(ScrnInfoPtr scrp, Gamma gamma); |
| #define CONFIG_RETURN_TYPE int |
Bool xf86SaveRestoreImage(int scrnIndex, SaveRestoreFlags what); |
| #else |
void xf86VDrvMsgVerb(int scrnIndex, MessageType type, int verb, |
| #define CONFIG_RETURN_TYPE void |
const char *format, va_list args); |
| #endif |
void xf86DrvMsgVerb(int scrnIndex, MessageType type, int verb, |
| #endif |
const char *format, ...); |
| |
void xf86DrvMsg(int scrnIndex, MessageType type, const char *format, ...); |
| CONFIG_RETURN_TYPE xf86Config( |
void xf86MsgVerb(MessageType type, int verb, const char *format, ...); |
| #if NeedFunctionPrototypes |
void xf86Msg(MessageType type, const char *format, ...); |
| int vtopen |
void xf86ErrorFVerb(int verb, const char *format, ...); |
| #endif |
void xf86ErrorF(const char *format, ...); |
| ); |
const char *xf86TokenToString(SymTabPtr table, int token); |
| |
int xf86StringToToken(SymTabPtr table, const char *string); |
| CONFIG_RETURN_TYPE configPointerSection( |
void xf86ShowClocks(ScrnInfoPtr); |
| #if NeedFunctionPrototypes |
int xf86MatchDevice(const char *drivername, GDevPtr **driversectlist); |
| MouseDevPtr /*mouse_dev*/, |
int xf86MatchPciInstances(const char *driverName, int vendorID, int *devIDs, |
| int /*end_tag*/, |
char **chipsets, GDevPtr *devList, int numDevs, |
| char** /*devicename*/ |
GDevPtr **foundDevs, pciVideoPtr **foundPCI); |
| #endif |
void xf86GetClocks(ScrnInfoPtr pScrn, int num, |
| ); |
Bool (*ClockFunc)(ScrnInfoPtr, int), |
| |
void (*ProtectRegs)(ScrnInfoPtr, Bool), |
| Bool xf86LookupMode( |
SaveScreenProcPtr SaveScreen, int vertsyncreg, |
| #if NeedFunctionPrototypes |
int maskval, int knownclkindex, int knownclkvalue); |
| DisplayModePtr target, |
const char *xf86GetVisualName(int visual); |
| ScrnInfoPtr driver, |
int xf86GetVerbosity(void); |
| int flags |
int xf86GetBpp(void); |
| #endif |
int xf86GetDepth(void); |
| ); |
rgb xf86GetWeight(void); |
| |
Gamma xf86GetGamma(void); |
| void xf86VerifyOptions( |
Bool xf86GetFlipPixels(void); |
| #if NeedFunctionPrototypes |
const char *xf86GetServerName(void); |
| OFlagSet *allowedOptions, |
void xf86SetDefaultColorVisualClass(int class); |
| ScrnInfoPtr driver |
int xf86GetDefaultColorVisualClass(void); |
| #endif |
Bool xf86ServerIsExiting(void); |
| ); |
Bool xf86ServerIsResetting(void); |
| |
Bool xf86CaughtSignal(void); |
| int xf86CheckMode( |
|
| #if NeedFunctionPrototypes |
/* xf86Mode.c */ |
| ScrnInfoPtr scrp, |
|
| DisplayModePtr dispmp, |
int xf86GetNearestClock(ScrnInfoPtr scrp, int freq, Bool allowDiv2, |
| MonPtr monp, |
int *divider); |
| int verbose |
const char *xf86ModeStatusToString(ModeStatus status); |
| #endif |
ModeStatus xf86LookupMode(ScrnInfoPtr scrp, DisplayModePtr modep, |
| ); |
ClockRangePtr clockRanges, LookupModeFlags strategy); |
| |
ModeStatus xf86CheckModeForMonitor(DisplayModePtr mode, MonPtr monitor); |
| int xf86GetNearestClock( |
ModeStatus xf86InitialCheckModeForDriver(ScrnInfoPtr scrp, DisplayModePtr mode, |
| #if NeedFunctionPrototypes |
int maxPitch, int virtualX, |
| ScrnInfoPtr Screen, |
int virtualY); |
| int Frequency |
ModeStatus xf86CheckModeForDriver(ScrnInfoPtr scrp, DisplayModePtr mode, |
| #endif |
int flags); |
| ); |
int xf86ValidateModes(ScrnInfoPtr scrp, DisplayModePtr availModes, |
| |
char **modeNames, ClockRangePtr clockRanges, |
| |
int *linePitches, int minPitch, int maxPitch, |
| |
int minHeight, int maxHeight, int pitchInc, |
| |
int virtualX, int virtualY, int apertureSize, |
| |
LookupModeFlags strategy); |
| |
void xf86DeleteMode(DisplayModePtr *modeList, DisplayModePtr mode); |
| |
void xf86PruneDriverModes(ScrnInfoPtr scrp); |
| |
void xf86PruneMonitorModes(MonPtr monp); |
| |
void xf86SetCrtcForModes(ScrnInfoPtr scrp, int adjustFlags); |
| |
void xf86PrintModes(ScrnInfoPtr scrp); |
| |
|
| |
/* xf86Option.c */ |
| |
|
| |
void xf86CollectOptions(ScrnInfoPtr pScrn, pointer extraOpts); |
| |
pointer xf86FindOption(pointer options, const char *name); |
| |
char *xf86FindOptionValue(pointer options, const char *name); |
| |
void xf86MarkOptionUsed(pointer option); |
| |
void xf86MarkOptionUsedByName(pointer options, const char *name); |
| |
void xf86ShowUnusedOptions(int scrnIndex, pointer options); |
| |
void xf86ProcessOptions(int scrnIndex, pointer options, OptionInfoPtr optinfo); |
| |
OptionInfoPtr xf86TokenToOptinfo(OptionInfoPtr table, int token); |
| |
Bool xf86IsOptionSet(OptionInfoPtr table, int token); |
| |
char *xf86GetOptValString(OptionInfoPtr table, int token); |
| |
Bool xf86GetOptValInteger(OptionInfoPtr table, int token, int *value); |
| |
Bool xf86GetOptValULong(OptionInfoPtr table, int token, unsigned long *value); |
| |
Bool xf86GetOptValReal(OptionInfoPtr table, int token, double *value); |
| |
int xf86NameCmp(const char *s1, const char *s2); |
| | |
| /* xf86Cursor.c */ |
|
| void xf86InitViewport( |
|
| #if NeedFunctionPrototypes |
|
| ScrnInfoPtr pScr |
|
| #endif |
|
| ); |
|
| |
|
| void xf86SetViewport( |
|
| #if NeedFunctionPrototypes |
|
| ScreenPtr pScreen, |
|
| int x, |
|
| int y |
|
| #endif |
|
| ); |
|
| |
|
| void xf86LockZoom( |
|
| #if NeedFunctionPrototypes |
|
| ScreenPtr pScreen, |
|
| int lock |
|
| #endif |
|
| ); |
|
| |
|
| void xf86ZoomViewport( |
|
| #if NeedFunctionPrototypes |
|
| ScreenPtr pScreen, |
|
| int zoom |
|
| #endif |
|
| ); |
|
| |
|
| /* xf86Dl.c */ |
|
| void* |
|
| xf86LoadModule( |
|
| #if NeedFunctionPrototypes |
|
| const char * file, |
|
| const char * path |
|
| #endif |
|
| ); |
|
| | |
| /* xf86Events.c */ |
|
| int TimeSinceLastInputEvent( |
|
| #if NeedFunctionPrototypes |
|
| void |
|
| #endif |
|
| ); |
|
| |
|
| void SetTimeSinceLastInputEvent( |
|
| #if NeedFunctionPrototypes |
|
| void |
|
| #endif |
|
| ); |
|
| |
|
| void ProcessInputEvents( |
|
| #if NeedFunctionPrototypes |
|
| void |
|
| #endif |
|
| ); |
|
| |
|
| void xf86PostKbdEvent( |
|
| #if NeedFunctionPrototypes |
|
| unsigned key |
|
| #endif |
|
| ); |
|
| |
|
| void xf86PostMseEvent( |
|
| #if NeedFunctionPrototypes |
|
| DeviceIntPtr device, |
|
| int buttons, |
|
| int dx, |
|
| int dy |
|
| #endif |
|
| ); |
|
| |
|
| void xf86Block( |
|
| #if NeedFunctionPrototypes |
|
| pointer blockData, |
|
| OSTimePtr pTimeout, |
|
| pointer pReadmask |
|
| #endif |
|
| ); |
|
| |
|
| void xf86Wakeup( |
|
| #if NeedFunctionPrototypes |
|
| pointer blockData, |
|
| int err, |
|
| pointer pReadmask |
|
| #endif |
|
| ); |
|
| |
|
| void xf86SigHandler( |
|
| #if NeedFunctionPrototypes |
|
| int signo |
|
| #endif |
|
| ); |
|
| |
|
| /* xf86Io.c */ |
|
| void xf86KbdBell( |
|
| #if NeedFunctionPrototypes |
|
| int percent, |
|
| DeviceIntPtr pKeyboard, |
|
| pointer ctrl, |
|
| int unused |
|
| #endif |
|
| ); |
|
| |
|
| void xf86KbdLeds( |
|
| #if NeedFunctionPrototypes |
|
| void |
|
| #endif |
|
| ); |
|
| |
|
| void xf86KbdCtrl( |
|
| #if NeedFunctionPrototypes |
|
| DevicePtr pKeyboard, |
|
| KeybdCtrl *ctrl |
|
| #endif |
|
| ); |
|
| |
|
| void xf86InitKBD( |
|
| #if NeedFunctionPrototypes |
|
| Bool init |
|
| #endif |
|
| ); |
|
| |
|
| int xf86KbdProc( |
|
| #if NeedFunctionPrototypes |
|
| DeviceIntPtr pKeyboard, |
|
| int what |
|
| #endif |
|
| ); |
|
| |
|
| void xf86MseCtrl( |
|
| #if NeedFunctionPrototypes |
|
| DevicePtr pPointer, |
|
| PtrCtrl *ctrl |
|
| #endif |
|
| ); |
|
| |
|
| int GetMotionEvents( |
|
| #if NeedFunctionPrototypes |
|
| DeviceIntPtr, |
|
| xTimecoord *, |
|
| unsigned long, |
|
| unsigned long, |
|
| ScreenPtr |
|
| #endif |
|
| ); |
|
| |
|
| int xf86MseProc( |
|
| #if NeedFunctionPrototypes |
|
| DeviceIntPtr pPointer, |
|
| int what |
|
| #endif |
|
| ); |
|
| |
|
| void xf86MseEvents( |
|
| #if NeedFunctionPrototypes |
|
| MouseDevPtr mouse |
|
| #endif |
|
| ); |
|
| |
|
| CARD32 GetTimeInMillis( |
|
| #if NeedFunctionPrototypes |
|
| void |
|
| #endif |
|
| ); |
|
| |
|
| void OsVendorInit( |
|
| #if NeedFunctionPrototypes |
|
| void |
|
| #endif |
|
| ); |
|
| |
|
| /* xf86_Mouse.c */ |
|
| Bool xf86MouseSupported( |
|
| #if NeedFunctionPrototypes |
|
| int mousetype |
|
| #endif |
|
| ); |
|
| |
|
| void xf86SetupMouse( |
|
| #if NeedFunctionPrototypes |
|
| MouseDevPtr mouse |
|
| #endif |
|
| ); |
|
| |
|
| void xf86MouseProtocol( |
|
| #if NeedFunctionPrototypes |
|
| DeviceIntPtr device, |
|
| unsigned char *rBuf, |
|
| int nBytes |
|
| #endif |
|
| ); |
|
| |
|
| #ifdef XINPUT |
|
| void xf86MouseCtrl( |
|
| #if NeedFunctionPrototypes |
|
| DeviceIntPtr device, |
|
| PtrCtrl *ctrl |
|
| #endif |
|
| ); |
|
| #endif |
|
| |
|
| /* xf86Kbd.c */ |
|
| Bool LegalModifier( |
|
| #if NeedFunctionPrototypes |
|
| unsigned int key, |
|
| DevicePtr pDev |
|
| #endif |
|
| ); |
|
| |
|
| void xf86KbdGetMapping( |
|
| #if NeedFunctionPrototypes |
|
| KeySymsPtr pKeySyms, |
|
| CARD8 *pModMap |
|
| #endif |
|
| ); |
|
| #endif /* _NO_XF86_PROTOTYPES */ | #endif /* _NO_XF86_PROTOTYPES */ |
| | |
| /* End of Prototypes */ |
|
| |
|
| #endif /* _XF86_H */ | #endif /* _XF86_H */ |
| |
|
| |
|