1706f2543Smrg 2706f2543Smrg/* Prototypes for DGA functions that the DDX must provide */ 3706f2543Smrg 4706f2543Smrg#ifdef HAVE_DIX_CONFIG_H 5706f2543Smrg#include <dix-config.h> 6706f2543Smrg#endif 7706f2543Smrg 8706f2543Smrg#ifndef _VIDMODEPROC_H_ 9706f2543Smrg#define _VIDMODEPROC_H_ 10706f2543Smrg 11706f2543Smrg 12706f2543Smrgtypedef enum { 13706f2543Smrg VIDMODE_H_DISPLAY, 14706f2543Smrg VIDMODE_H_SYNCSTART, 15706f2543Smrg VIDMODE_H_SYNCEND, 16706f2543Smrg VIDMODE_H_TOTAL, 17706f2543Smrg VIDMODE_H_SKEW, 18706f2543Smrg VIDMODE_V_DISPLAY, 19706f2543Smrg VIDMODE_V_SYNCSTART, 20706f2543Smrg VIDMODE_V_SYNCEND, 21706f2543Smrg VIDMODE_V_TOTAL, 22706f2543Smrg VIDMODE_FLAGS, 23706f2543Smrg VIDMODE_CLOCK 24706f2543Smrg} VidModeSelectMode; 25706f2543Smrg 26706f2543Smrgtypedef enum { 27706f2543Smrg VIDMODE_MON_VENDOR, 28706f2543Smrg VIDMODE_MON_MODEL, 29706f2543Smrg VIDMODE_MON_NHSYNC, 30706f2543Smrg VIDMODE_MON_NVREFRESH, 31706f2543Smrg VIDMODE_MON_HSYNC_LO, 32706f2543Smrg VIDMODE_MON_HSYNC_HI, 33706f2543Smrg VIDMODE_MON_VREFRESH_LO, 34706f2543Smrg VIDMODE_MON_VREFRESH_HI 35706f2543Smrg} VidModeSelectMonitor; 36706f2543Smrg 37706f2543Smrgtypedef union { 38706f2543Smrg pointer ptr; 39706f2543Smrg int i; 40706f2543Smrg float f; 41706f2543Smrg} vidMonitorValue; 42706f2543Smrg 43706f2543Smrgextern _X_EXPORT void XFree86VidModeExtensionInit(void); 44706f2543Smrg 45706f2543Smrgextern _X_EXPORT Bool VidModeAvailable(int scrnIndex); 46706f2543Smrgextern _X_EXPORT Bool VidModeGetCurrentModeline(int scrnIndex, pointer *mode, int *dotClock); 47706f2543Smrgextern _X_EXPORT Bool VidModeGetFirstModeline(int scrnIndex, pointer *mode, int *dotClock); 48706f2543Smrgextern _X_EXPORT Bool VidModeGetNextModeline(int scrnIndex, pointer *mode, int *dotClock); 49706f2543Smrgextern _X_EXPORT Bool VidModeDeleteModeline(int scrnIndex, pointer mode); 50706f2543Smrgextern _X_EXPORT Bool VidModeZoomViewport(int scrnIndex, int zoom); 51706f2543Smrgextern _X_EXPORT Bool VidModeGetViewPort(int scrnIndex, int *x, int *y); 52706f2543Smrgextern _X_EXPORT Bool VidModeSetViewPort(int scrnIndex, int x, int y); 53706f2543Smrgextern _X_EXPORT Bool VidModeSwitchMode(int scrnIndex, pointer mode); 54706f2543Smrgextern _X_EXPORT Bool VidModeLockZoom(int scrnIndex, Bool lock); 55706f2543Smrgextern _X_EXPORT Bool VidModeGetMonitor(int scrnIndex, pointer *monitor); 56706f2543Smrgextern _X_EXPORT int VidModeGetNumOfClocks(int scrnIndex, Bool *progClock); 57706f2543Smrgextern _X_EXPORT Bool VidModeGetClocks(int scrnIndex, int *Clocks); 58706f2543Smrgextern _X_EXPORT ModeStatus VidModeCheckModeForMonitor(int scrnIndex, pointer mode); 59706f2543Smrgextern _X_EXPORT ModeStatus VidModeCheckModeForDriver(int scrnIndex, pointer mode); 60706f2543Smrgextern _X_EXPORT void VidModeSetCrtcForMode(int scrnIndex, pointer mode); 61706f2543Smrgextern _X_EXPORT Bool VidModeAddModeline(int scrnIndex, pointer mode); 62706f2543Smrgextern _X_EXPORT int VidModeGetDotClock(int scrnIndex, int Clock); 63706f2543Smrgextern _X_EXPORT int VidModeGetNumOfModes(int scrnIndex); 64706f2543Smrgextern _X_EXPORT Bool VidModeSetGamma(int scrnIndex, float red, float green, float blue); 65706f2543Smrgextern _X_EXPORT Bool VidModeGetGamma(int scrnIndex, float *red, float *green, float *blue); 66706f2543Smrgextern _X_EXPORT pointer VidModeCreateMode(void); 67706f2543Smrgextern _X_EXPORT void VidModeCopyMode(pointer modefrom, pointer modeto); 68706f2543Smrgextern _X_EXPORT int VidModeGetModeValue(pointer mode, int valtyp); 69706f2543Smrgextern _X_EXPORT void VidModeSetModeValue(pointer mode, int valtyp, int val); 70706f2543Smrgextern _X_EXPORT vidMonitorValue VidModeGetMonitorValue(pointer monitor, int valtyp, int indx); 71706f2543Smrgextern _X_EXPORT Bool VidModeSetGammaRamp(int, int, CARD16 *, CARD16 *, CARD16 *); 72706f2543Smrgextern _X_EXPORT Bool VidModeGetGammaRamp(int, int, CARD16 *, CARD16 *, CARD16 *); 73706f2543Smrgextern _X_EXPORT int VidModeGetGammaRampSize(int scrnIndex); 74706f2543Smrg 75706f2543Smrg#endif 76706f2543Smrg 77706f2543Smrg 78