61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync/* Prototypes for DGA functions that the DDX must provide */
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#ifdef HAVE_DIX_CONFIG_H
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#include <dix-config.h>
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#endif
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#ifndef _VIDMODEPROC_H_
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#define _VIDMODEPROC_H_
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsynctypedef enum {
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_H_DISPLAY,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_H_SYNCSTART,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_H_SYNCEND,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_H_TOTAL,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_H_SKEW,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_V_DISPLAY,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_V_SYNCSTART,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_V_SYNCEND,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_V_TOTAL,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_FLAGS,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_CLOCK
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync} VidModeSelectMode;
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsynctypedef enum {
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_MON_VENDOR,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_MON_MODEL,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_MON_NHSYNC,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_MON_NVREFRESH,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_MON_HSYNC_LO,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_MON_HSYNC_HI,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_MON_VREFRESH_LO,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VIDMODE_MON_VREFRESH_HI
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync} VidModeSelectMonitor;
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsynctypedef union {
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync const void *ptr;
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int i;
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync float f;
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync} vidMonitorValue;
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern Bool VidModeExtensionInit(ScreenPtr pScreen);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeAvailable(int scrnIndex);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeGetCurrentModeline(int scrnIndex, void **mode,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int *dotClock);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeGetFirstModeline(int scrnIndex, void **mode,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int *dotClock);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeGetNextModeline(int scrnIndex, void **mode,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int *dotClock);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeDeleteModeline(int scrnIndex, void *mode);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeZoomViewport(int scrnIndex, int zoom);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeGetViewPort(int scrnIndex, int *x, int *y);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeSetViewPort(int scrnIndex, int x, int y);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeSwitchMode(int scrnIndex, void *mode);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeLockZoom(int scrnIndex, Bool lock);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeGetMonitor(int scrnIndex, void **monitor);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int VidModeGetNumOfClocks(int scrnIndex, Bool *progClock);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeGetClocks(int scrnIndex, int *Clocks);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT ModeStatus VidModeCheckModeForMonitor(int scrnIndex,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync void *mode);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT ModeStatus VidModeCheckModeForDriver(int scrnIndex,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync void *mode);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void VidModeSetCrtcForMode(int scrnIndex, void *mode);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeAddModeline(int scrnIndex, void *mode);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int VidModeGetDotClock(int scrnIndex, int Clock);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int VidModeGetNumOfModes(int scrnIndex);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeSetGamma(int scrnIndex, float red, float green,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync float blue);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeGetGamma(int scrnIndex, float *red, float *green,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync float *blue);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void *VidModeCreateMode(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void VidModeCopyMode(void *modefrom, void *modeto);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int VidModeGetModeValue(void *mode, int valtyp);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void VidModeSetModeValue(void *mode, int valtyp, int val);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT vidMonitorValue VidModeGetMonitorValue(void *monitor,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int valtyp, int indx);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeSetGammaRamp(int, int, CARD16 *, CARD16 *,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync CARD16 *);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool VidModeGetGammaRamp(int, int, CARD16 *, CARD16 *,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync CARD16 *);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int VidModeGetGammaRampSize(int scrnIndex);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#endif