diff options
Diffstat (limited to 'hw/xfree86/common/xf86.h')
-rw-r--r-- | hw/xfree86/common/xf86.h | 1080 |
1 files changed, 372 insertions, 708 deletions
diff --git a/hw/xfree86/common/xf86.h b/hw/xfree86/common/xf86.h index ba00913d8..119adc5a6 100644 --- a/hw/xfree86/common/xf86.h +++ b/hw/xfree86/common/xf86.h @@ -1,743 +1,407 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86.h,v 3.47.2.8 1998/02/24 19:05:53 hohndel Exp $ */ -/* - * Copyright 1990,91 by Thomas Roell, Dinkelscherben, Germany. - * - * 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 - * copyright notice and this permission notice appear in supporting - * 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. - * - */ -/* $Xorg: xf86.h,v 1.3 2000/08/17 19:50:28 cpqbld Exp $ */ - -#ifndef _XF86_H -#define _XF86_H - -#include "misc.h" -#include "input.h" -#include "scrnintstr.h" - -#include "xf86_Option.h" - -/* - * structure common for all modes - */ -typedef struct _DispM { - struct _DispM *prev,*next; - char *name; /* identifier of this mode */ - /* These are the values that the user sees/provides */ - int Clock; /* pixel clock */ - int HDisplay; /* horizontal timing */ - int HSyncStart; - int HSyncEnd; - int HTotal; - int HSkew; - int VDisplay; /* vertical timing */ - int VSyncStart; - 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 DEFAULT_MAX_CLOCK 90000 - -/* - * the graphic device - */ -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 */ - int LCDClk; -#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; - -/* 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) -*/ +/* $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86.h,v 3.169 2003/02/13 10:49:38 eich Exp $ */ /* - * SpeedUp routines which are not dependent on the screen virtual resolution + * Copyright (c) 1997 by The XFree86 Project, Inc. */ -#ifndef SPEEDUP_ANYWIDTH -#define SPEEDUP_ANYWIDTH (SPEEDUP_FILLRECT | SPEEDUP_BITBLT | \ - SPEEDUP_LINE | SPEEDUP_FILLBOX) -#endif /* - * SpeedUp routines which are not dependent on ET4000 + * This file contains declarations for public XFree86 functions and variables, + * and definitions of public macros. + * + * "public" means available to video drivers. */ -#ifndef SPEEDUP_ANYCHIPSET -#define SPEEDUP_ANYCHIPSET (SPEEDUP_TEGBLT8 | SPEEDUP_RECTSTIP) -#endif - -/* All SpeedUps */ -#define SPEEDUP_ALL (SPEEDUP_FILLBOX | SPEEDUP_FILLRECT | \ - SPEEDUP_BITBLT | SPEEDUP_LINE | \ - SPEEDUP_TEGBLT8 | SPEEDUP_RECTSTIP) - -/* SpeedUp flags used if SpeedUp is not in XF86Config */ -#define SPEEDUP_DEFAULT SPEEDUP_ALL - -extern Bool xf86VTSema; -/* Mouse device private record */ - -#define MSE_MAPTOX (-1) -#define MSE_MAPTOY (-2) -#define MSE_MAXBUTTONS 12 -#define MSE_DFLTBUTTONS 3 - -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 mseModel; - int baudRate; - int oldBaudRate; - int sampleRate; - int lastButtons; - int threshold, num, den; /* acceleration */ - int buttons; /* # of buttons */ - 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 */ - - int resolution; - int negativeZ; - int positiveZ; -#ifndef MOUSE_PROTOCOL_IN_KERNEL - unsigned char protoPara[7]; -#endif - -#ifndef CSRG_BASED - /* xque part */ - int xquePending; /* was xqueFd, but nothing uses that */ - int xqueSema; -#endif -#ifdef XINPUT - struct _LocalDeviceRec *local; -#endif -} MouseDevRec, *MouseDevPtr; +#ifndef _XF86_H +#define _XF86_H -#ifdef XINPUT -#define MOUSE_DEV(dev) (MouseDevPtr) PRIVATE(dev) +#include "xf86str.h" +#include "xf86Opt.h" +#include <X11/Xfuncproto.h> +#ifndef IN_MODULE +#include <stdarg.h> #else -#define MOUSE_DEV(dev) (MouseDevPtr) (dev)->public.devicePrivate +#include "xf86_ansic.h" +#endif + +#include "propertyst.h" + +/* General parameters */ +extern int xf86DoConfigure; +extern Bool xf86DoConfigurePass1; +extern int xf86ScreenIndex; /* Index into pScreen.devPrivates */ +extern int xf86CreateRootWindowIndex; /* Index into pScreen.devPrivates */ +extern int xf86PixmapIndex; +extern Bool xf86ResAccessEnter; +extern ScrnInfoPtr *xf86Screens; /* List of pointers to ScrnInfoRecs */ +extern const unsigned char byte_reversed[256]; +extern PropertyPtr *xf86RegisteredPropertiesTable; +extern ScrnInfoPtr xf86CurrentScreen; +extern Bool pciSlotClaimed; +extern Bool isaSlotClaimed; +extern Bool fbSlotClaimed; +#ifdef __sparc__ +extern Bool sbusSlotClaimed; +#endif +extern confDRIRec xf86ConfigDRI; +extern Bool xf86inSuspend; + +#define XF86SCRNINFO(p) ((ScrnInfoPtr)((p)->devPrivates[xf86ScreenIndex].ptr)) + +#define XF86FLIP_PIXELS() \ + do { \ + if (xf86GetFlipPixels()) { \ + pScreen->whitePixel = (pScreen->whitePixel) ? 0 : 1; \ + pScreen->blackPixel = (pScreen->blackPixel) ? 0 : 1; \ + } \ + while (0) + +#define BOOLTOSTRING(b) ((b) ? "TRUE" : "FALSE") + +#define PIX24TOBPP(p) (((p) == Pix24Use24) ? 24 : \ + (((p) == Pix24Use32) ? 32 : 0)) + +/* variables for debugging */ +#ifdef BUILDDEBUG +extern char* xf86p8bit[]; +extern CARD32 xf86DummyVar1; +extern CARD32 xf86DummyVar2; +extern CARD32 xf86DummyVar3; #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; - /* Function Prototypes */ #ifndef _NO_XF86_PROTOTYPES -/* xf86Init.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 */ -unsigned int StrToUL( -#if NeedFunctionPrototypes - char *str -#endif -); - -#ifndef CONFIG_RETURN_TYPE -#ifdef XF86SETUP -#define CONFIG_RETURN_TYPE int -#else -#define CONFIG_RETURN_TYPE void -#endif -#endif - -CONFIG_RETURN_TYPE xf86Config( -#if NeedFunctionPrototypes - int vtopen -#endif -); - -CONFIG_RETURN_TYPE configPointerSection( -#if NeedFunctionPrototypes - MouseDevPtr /*mouse_dev*/, - int /*end_tag*/, - char** /*devicename*/ -#endif -); - -Bool xf86LookupMode( -#if NeedFunctionPrototypes - DisplayModePtr target, - ScrnInfoPtr driver, - int flags -#endif -); - -void xf86VerifyOptions( -#if NeedFunctionPrototypes - OFlagSet *allowedOptions, - ScrnInfoPtr driver -#endif -); - -int xf86CheckMode( -#if NeedFunctionPrototypes - ScrnInfoPtr scrp, - DisplayModePtr dispmp, - MonPtr monp, - int verbose -#endif -); - -int xf86GetNearestClock( -#if NeedFunctionPrototypes - ScrnInfoPtr Screen, - int Frequency -#endif -); - +/* xf86Bus.c */ + +Bool xf86CheckPciSlot(int bus, int device, int func); +int xf86ClaimPciSlot(int bus, int device, int func, DriverPtr drvp, + int chipset, GDevPtr dev, Bool active); +Bool xf86ParsePciBusString(const char *busID, int *bus, int *device, + int *func); +Bool xf86ComparePciBusString(const char *busID, int bus, int device, int func); +void xf86FormatPciBusNumber(int busnum, char *buffer); +pciVideoPtr *xf86GetPciVideoInfo(void); +pciConfigPtr *xf86GetPciConfigInfo(void); +void xf86SetPciVideo(pciVideoPtr, resType); +void xf86PrintResList(int verb, resPtr list); +resPtr xf86AddRangesToList(resPtr list, resRange *pRange, int entityIndex); +int xf86ClaimIsaSlot(DriverPtr drvp, int chipset, GDevPtr dev, Bool active); +int xf86GetIsaInfoForScreen(int scrnIndex); +int xf86GetFbInfoForScreen(int scrnIndex); +Bool xf86ParseIsaBusString(const char *busID); +int xf86ClaimFbSlot(DriverPtr drvp, int chipset, GDevPtr dev, Bool active); +int xf86ClaimNoSlot(DriverPtr drvp, int chipset, GDevPtr dev, Bool active); +void xf86EnableAccess(ScrnInfoPtr pScrn); +void xf86SetCurrentAccess(Bool Enable, ScrnInfoPtr pScrn); +Bool xf86IsPrimaryPci(pciVideoPtr pPci); +Bool xf86IsPrimaryIsa(void); +int xf86CheckPciGAType(pciVideoPtr pPci); +/* new RAC */ +resPtr xf86AddResToList(resPtr rlist, resRange *Range, int entityIndex); +resPtr xf86JoinResLists(resPtr rlist1, resPtr rlist2); +resPtr xf86DupResList(const resPtr rlist); +void xf86FreeResList(resPtr rlist); +void xf86ClaimFixedResources(resList list, int entityIndex); +Bool xf86DriverHasEntities(DriverPtr drvp); +void xf86AddEntityToScreen(ScrnInfoPtr pScrn, int entityIndex); +void xf86SetEntityInstanceForScreen(ScrnInfoPtr pScrn, int entityIndex, + int instance); +int xf86GetNumEntityInstances(int entityIndex); +GDevPtr xf86GetDevFromEntity(int entityIndex, int instance); +void xf86RemoveEntityFromScreen(ScrnInfoPtr pScrn, int entityIndex); +EntityInfoPtr xf86GetEntityInfo(int entityIndex); +pciVideoPtr xf86GetPciInfoForEntity(int entityIndex); +int xf86GetPciEntity(int bus, int dev, int func); +Bool xf86SetEntityFuncs(int entityIndex, EntityProc init, + EntityProc enter, EntityProc leave, pointer); +void xf86DeallocateResourcesForEntity(int entityIndex, unsigned long type); +resPtr xf86RegisterResources(int entityIndex, resList list, + unsigned long Access); +Bool xf86CheckPciMemBase(pciVideoPtr pPci, memType base); +void xf86SetAccessFuncs(EntityInfoPtr pEnt, xf86SetAccessFuncPtr funcs, + xf86SetAccessFuncPtr oldFuncs); +Bool xf86IsEntityPrimary(int entityIndex); +Bool xf86FixPciResource(int entityIndex, int prt, memType alignment, + unsigned long type); +resPtr xf86ReallocatePciResources(int entityIndex, resPtr pRes); +resPtr xf86SetOperatingState(resList list, int entityIndex, int mask); +void xf86EnterServerState(xf86State state); +resRange xf86GetBlock(unsigned long type, memType size, + memType window_start, memType window_end, + memType align_mask, resPtr avoid); +resRange xf86GetSparse(unsigned long type, memType fixed_bits, + memType decode_mask, memType address_mask, + resPtr avoid); +memType xf86ChkConflict(resRange *rgp, int entityIndex); +Bool xf86IsPciDevPresent(int bus, int dev, int func); +ScrnInfoPtr xf86FindScreenForEntity(int entityIndex); +Bool xf86NoSharedResources(int screenIndex, resType res); +resPtr xf86FindIntersectOfLists(resPtr l1, resPtr l2); +pciVideoPtr xf86FindPciDeviceVendor(CARD16 vendorID, CARD16 deviceID, + char n, pciVideoPtr pvp_exclude); +pciVideoPtr xf86FindPciClass(CARD8 intf, CARD8 subClass, CARD16 class, + char n, pciVideoPtr pvp_exclude); +#ifdef INCLUDE_DEPRECATED +void xf86EnablePciBusMaster(pciVideoPtr pPci, Bool enable); +#endif +void xf86RegisterStateChangeNotificationCallback(xf86StateChangeNotificationCallbackFunc func, pointer arg); +Bool xf86DeregisterStateChangeNotificationCallback(xf86StateChangeNotificationCallbackFunc func); +#ifdef async +Bool xf86QueueAsyncEvent(void (*func)(pointer),pointer arg); +#endif + +int xf86GetLastScrnFlag(int entityIndex); +void xf86SetLastScrnFlag(int entityIndex, int scrnIndex); +Bool xf86IsEntityShared(int entityIndex); +void xf86SetEntityShared(int entityIndex); +Bool xf86IsEntitySharable(int entityIndex); +void xf86SetEntitySharable(int entityIndex); +Bool xf86IsPrimInitDone(int entityIndex); +void xf86SetPrimInitDone(int entityIndex); +void xf86ClearPrimInitDone(int entityIndex); +int xf86AllocateEntityPrivateIndex(void); +DevUnion *xf86GetEntityPrivate(int entityIndex, int privIndex); + +/* xf86Configure.c */ +GDevPtr xf86AddBusDeviceToConfigure(const char *driver, BusType bus, + void *busData, int chipset); +GDevPtr xf86AddDeviceToConfigure(const char *driver, pciVideoPtr pVideo, + int chipset); + /* 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 xf86LockZoom(ScreenPtr pScreen, int lock); +void xf86InitViewport(ScrnInfoPtr pScr); +void xf86SetViewport(ScreenPtr pScreen, int x, int y); +void xf86ZoomViewport(ScreenPtr pScreen, int zoom); +Bool xf86SwitchMode(ScreenPtr pScreen, DisplayModePtr mode); +void *xf86GetPointerScreenFuncs(void); +void xf86InitOrigins(void); +void xf86ReconfigureLayout(void); + +/* xf86DPMS.c */ -void xf86Block( -#if NeedFunctionPrototypes - pointer blockData, - OSTimePtr pTimeout, - pointer pReadmask -#endif -); +Bool xf86DPMSInit(ScreenPtr pScreen, DPMSSetProcPtr set, int flags); -void xf86Wakeup( -#if NeedFunctionPrototypes - pointer blockData, - int err, - pointer pReadmask -#endif -); +/* xf86DGA.c */ -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 -); +Bool DGAInit(ScreenPtr pScreen, DGAFunctionPtr funcs, DGAModePtr modes, + int num); +xf86SetDGAModeProc xf86SetDGAMode; -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 -); +/* xf86Events.c */ -int xf86MseProc( -#if NeedFunctionPrototypes - DeviceIntPtr pPointer, - int what -#endif -); +void SetTimeSinceLastInputEvent(void); +pointer xf86AddInputHandler(int fd, InputHandlerProc proc, pointer data); +int xf86RemoveInputHandler(pointer handler); +void xf86DisableInputHandler(pointer handler); +void xf86EnableInputHandler(pointer handler); +void xf86InterceptSignals(int *signo); +Bool xf86EnableVTSwitch(Bool new); +Bool xf86CommonSpecialKey(int key, Bool down, int modifiers); +void xf86ProcessActionEvent(ActionEvent action, void *arg); + +/* xf86Helper.c */ + +void xf86AddDriver(DriverPtr driver, pointer module, int flags); +void xf86DeleteDriver(int drvIndex); +ScrnInfoPtr xf86AllocateScreen(DriverPtr drv, int flags); +void xf86DeleteScreen(int scrnIndex, int flags); +int xf86AllocateScrnInfoPrivateIndex(void); +Bool xf86AddPixFormat(ScrnInfoPtr pScrn, int depth, int bpp, int pad); +Bool xf86SetDepthBpp(ScrnInfoPtr scrp, int depth, int bpp, int fbbpp, + int depth24flags); +void xf86PrintDepthBpp(ScrnInfoPtr scrp); +Bool xf86SetWeight(ScrnInfoPtr scrp, rgb weight, rgb mask); +Bool xf86SetDefaultVisual(ScrnInfoPtr scrp, int visual); +Bool xf86SetGamma(ScrnInfoPtr scrp, Gamma newGamma); +void xf86SetDpi(ScrnInfoPtr pScrn, int x, int y); +void xf86SetBlackWhitePixels(ScreenPtr pScreen); +void xf86EnableDisableFBAccess(int scrnIndex, Bool enable); +void xf86VDrvMsgVerb(int scrnIndex, MessageType type, int verb, + const char *format, va_list args); +void xf86DrvMsgVerb(int scrnIndex, MessageType type, int verb, + const char *format, ...); +void xf86DrvMsg(int scrnIndex, MessageType type, const char *format, ...); +void xf86MsgVerb(MessageType type, int verb, const char *format, ...); +void xf86Msg(MessageType type, const char *format, ...); +void xf86ErrorFVerb(int verb, const char *format, ...); +void xf86ErrorF(const char *format, ...); +const char *xf86TokenToString(SymTabPtr table, int token); +int xf86StringToToken(SymTabPtr table, const char *string); +void xf86ShowClocks(ScrnInfoPtr scrp, MessageType from); +void xf86PrintChipsets(const char *drvname, const char *drvmsg, + SymTabPtr chips); +int xf86MatchDevice(const char *drivername, GDevPtr **driversectlist); +int xf86MatchPciInstances(const char *driverName, int vendorID, + SymTabPtr chipsets, PciChipsets *PCIchipsets, + GDevPtr *devList, int numDevs, DriverPtr drvp, + int **foundEntities); +int xf86MatchIsaInstances(const char *driverName, SymTabPtr chipsets, + IsaChipsets *ISAchipsets, DriverPtr drvp, + FindIsaDevProc FindIsaDevice, GDevPtr *devList, + int numDevs, int **foundEntities); +void xf86GetClocks(ScrnInfoPtr pScrn, int num, + Bool (*ClockFunc)(ScrnInfoPtr, int), + void (*ProtectRegs)(ScrnInfoPtr, Bool), + void (*BlankScreen)(ScrnInfoPtr, Bool), + IOADDRESS vertsyncreg, int maskval, + int knownclkindex, int knownclkvalue); +void xf86SetPriority(Bool up); +const char *xf86GetVisualName(int visual); +int xf86GetVerbosity(void); +Pix24Flags xf86GetPix24(void); +int xf86GetDepth(void); +rgb xf86GetWeight(void); +Gamma xf86GetGamma(void); +Bool xf86GetFlipPixels(void); +const char *xf86GetServerName(void); +Bool xf86ServerIsExiting(void); +Bool xf86ServerIsResetting(void); +Bool xf86ServerIsInitialising(void); +Bool xf86ServerIsOnlyDetecting(void); +Bool xf86ServerIsOnlyProbing(void); +Bool xf86CaughtSignal(void); +Bool xf86GetVidModeAllowNonLocal(void); +Bool xf86GetVidModeEnabled(void); +Bool xf86GetModInDevAllowNonLocal(void); +Bool xf86GetModInDevEnabled(void); +Bool xf86GetAllowMouseOpenFail(void); +Bool xf86IsPc98(void); +void xf86DisableRandR(void); +CARD32 xf86GetVersion(void); +CARD32 xf86GetModuleVersion(pointer module); +pointer xf86LoadDrvSubModule(DriverPtr drv, const char *name); +pointer xf86LoadSubModule(ScrnInfoPtr pScrn, const char *name); +pointer xf86LoadOneModule(char *name, pointer optlist); +void xf86UnloadSubModule(pointer mod); +Bool xf86LoaderCheckSymbol(const char *name); +void xf86LoaderReqSymLists(const char **, ...); +void xf86LoaderReqSymbols(const char *, ...); +void xf86LoaderRefSymLists(const char **, ...); +void xf86LoaderRefSymbols(const char *, ...); +void xf86SetBackingStore(ScreenPtr pScreen); +void xf86SetSilkenMouse(ScreenPtr pScreen); +int xf86NewSerialNumber(WindowPtr p, pointer unused); +pointer xf86FindXvOptions(int scrnIndex, int adapt_index, char *port_name, + char **adaptor_name, pointer *adaptor_options); +void xf86GetOS(const char **name, int *major, int *minor, int *teeny); +ScrnInfoPtr xf86ConfigPciEntity(ScrnInfoPtr pScrn, int scrnFlag, + int entityIndex,PciChipsets *p_chip, + resList res, EntityProc init, + EntityProc enter, EntityProc leave, + pointer private); +ScrnInfoPtr xf86ConfigIsaEntity(ScrnInfoPtr pScrn, int scrnFlag, + int entityIndex, IsaChipsets *i_chip, + resList res, EntityProc init, + EntityProc enter, EntityProc leave, + pointer private); +ScrnInfoPtr xf86ConfigFbEntity(ScrnInfoPtr pScrn, int scrnFlag, + int entityIndex, EntityProc init, + EntityProc enter, EntityProc leave, + pointer private); +/* Obsolete! don't use */ +Bool xf86ConfigActivePciEntity(ScrnInfoPtr pScrn, + int entityIndex,PciChipsets *p_chip, + resList res, EntityProc init, + EntityProc enter, EntityProc leave, + pointer private); +/* Obsolete! don't use */ +Bool xf86ConfigActiveIsaEntity(ScrnInfoPtr pScrn, + int entityIndex, IsaChipsets *i_chip, + resList res, EntityProc init, + EntityProc enter, EntityProc leave, + pointer private); +void xf86ConfigPciEntityInactive(EntityInfoPtr pEnt, PciChipsets *p_chip, + resList res, EntityProc init, + EntityProc enter, EntityProc leave, + pointer private); +void xf86ConfigIsaEntityInactive(EntityInfoPtr pEnt, IsaChipsets *i_chip, + resList res, EntityProc init, + EntityProc enter, EntityProc leave, + pointer private); +void xf86ConfigFbEntityInactive(EntityInfoPtr pEnt, EntityProc init, + EntityProc enter, EntityProc leave, + pointer private); +Bool xf86IsScreenPrimary(int scrnIndex); +int xf86RegisterRootWindowProperty(int ScrnIndex, Atom property, Atom type, + int format, unsigned long len, + pointer value); +Bool xf86IsUnblank(int mode); + +#ifdef XFree86LOADER +void xf86AddModuleInfo(ModuleInfoPtr info, pointer module); +void xf86DeleteModuleInfo(int idx); +#endif + +/* xf86Debug.c */ +#ifdef BUILDDEBUG + void xf86Break1(void); +void xf86Break2(void); +void xf86Break3(void); +CARD8 xf86PeekFb8(CARD8 *p); +CARD16 xf86PeekFb16(CARD16 *p); +CARD32 xf86PeekFb32(CARD32 *p); +void xf86PokeFb8(CARD8 *p, CARD8 v); +void xf86PokeFb16(CARD16 *p, CARD16 v); +void xf86PokeFb32(CARD16 *p, CARD32 v); +CARD8 xf86PeekMmio8(pointer Base, unsigned long Offset); +CARD16 xf86PeekMmio16(pointer Base, unsigned long Offset); +CARD32 xf86PeekMmio32(pointer Base, unsigned long Offset); +void xf86PokeMmio8(pointer Base, unsigned long Offset, CARD8 v); +void xf86PokeMmio16(pointer Base, unsigned long Offset, CARD16 v); +void xf86PokeMmio32(pointer Base, unsigned long Offset, CARD32 v); +extern void xf86SPTimestamp(xf86TsPtr* timestamp, char* string); +extern void xf86STimestamp(xf86TsPtr* timestamp); +#endif + +/* xf86Init.c */ -void xf86MseEvents( -#if NeedFunctionPrototypes - MouseDevPtr mouse -#endif -); +PixmapFormatPtr xf86GetPixFormat(ScrnInfoPtr pScrn, int depth); +int xf86GetBppFromDepth(ScrnInfoPtr pScrn, int depth); -CARD32 GetTimeInMillis( -#if NeedFunctionPrototypes - void -#endif -); +/* xf86Mode.c */ -void OsVendorInit( -#if NeedFunctionPrototypes - void -#endif -); +int xf86GetNearestClock(ScrnInfoPtr scrp, int freq, Bool allowDiv2, + int DivFactor, int MulFactor, int *divider); +const char *xf86ModeStatusToString(ModeStatus status); +ModeStatus xf86LookupMode(ScrnInfoPtr scrp, DisplayModePtr modep, + ClockRangePtr clockRanges, LookupModeFlags strategy); +ModeStatus xf86CheckModeForMonitor(DisplayModePtr mode, MonPtr monitor); +ModeStatus xf86InitialCheckModeForDriver(ScrnInfoPtr scrp, DisplayModePtr mode, + ClockRangePtr clockRanges, + LookupModeFlags strategy, + int maxPitch, int virtualX, + int virtualY); +ModeStatus xf86CheckModeForDriver(ScrnInfoPtr scrp, DisplayModePtr mode, + 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 xf86SetCrtcForModes(ScrnInfoPtr scrp, int adjustFlags); +void xf86PrintModes(ScrnInfoPtr scrp); +void xf86ShowClockRanges(ScrnInfoPtr scrp, ClockRangePtr clockRanges); -/* xf86_Mouse.c */ -Bool xf86MouseSupported( -#if NeedFunctionPrototypes - int mousetype -#endif -); +/* xf86Option.c */ -void xf86SetupMouse( -#if NeedFunctionPrototypes - MouseDevPtr mouse -#endif -); +void xf86CollectOptions(ScrnInfoPtr pScrn, pointer extraOpts); -void xf86MouseProtocol( -#if NeedFunctionPrototypes - DeviceIntPtr device, - unsigned char *rBuf, - int nBytes -#endif -); -#ifdef XINPUT -void xf86MouseCtrl( -#if NeedFunctionPrototypes - DeviceIntPtr device, - PtrCtrl *ctrl -#endif -); +/* xf86RandR.c */ +#ifdef RANDR +Bool xf86RandRInit (ScreenPtr pScreen); +void xf86RandRSetInitialMode (ScreenPtr pScreen); #endif -/* xf86_PnPMouse.c */ -int xf86GetPnPMouseProtocol( -#if NeedFunctionPrototypes - MouseDevPtr mouse -#endif -); +/* xf86VidModeExtentionInit.c */ -/* xf86Kbd.c */ -Bool LegalModifier( -#if NeedFunctionPrototypes - unsigned int key, - DevicePtr pDev -#endif -); +Bool VidModeExtensionInit(ScreenPtr pScreen); -void xf86KbdGetMapping( -#if NeedFunctionPrototypes - KeySymsPtr pKeySyms, - CARD8 *pModMap -#endif -); #endif /* _NO_XF86_PROTOTYPES */ -/* End of Prototypes */ - #endif /* _XF86_H */ - - |