61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#ifndef _FBDEVHW_H_
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#define _FBDEVHW_H_
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#include "xf86str.h"
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#include "colormapst.h"
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#define FBDEVHW_PACKED_PIXELS 0 /* Packed Pixels */
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#define FBDEVHW_PLANES 1 /* Non interleaved planes */
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#define FBDEVHW_INTERLEAVED_PLANES 2 /* Interleaved planes */
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#define FBDEVHW_TEXT 3 /* Text/attributes */
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#define FBDEVHW_VGA_PLANES 4 /* EGA/VGA planes */
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool fbdevHWGetRec(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void fbdevHWFreeRec(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int fbdevHWGetFD(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool fbdevHWProbe(struct pci_device *pPci, char *device,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync char **namep);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool fbdevHWInit(ScrnInfoPtr pScrn, struct pci_device *pPci,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync char *device);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT char *fbdevHWGetName(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int fbdevHWGetDepth(ScrnInfoPtr pScrn, int *fbbpp);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int fbdevHWGetLineLength(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int fbdevHWGetType(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int fbdevHWGetVidmem(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void *fbdevHWMapVidmem(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT int fbdevHWLinearOffset(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool fbdevHWUnmapVidmem(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void *fbdevHWMapMMIO(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool fbdevHWUnmapMMIO(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void fbdevHWSetVideoModes(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT DisplayModePtr fbdevHWGetBuildinMode(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void fbdevHWUseBuildinMode(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool fbdevHWModeInit(ScrnInfoPtr pScrn, DisplayModePtr mode);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void fbdevHWSave(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void fbdevHWRestore(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void fbdevHWLoadPalette(ScrnInfoPtr pScrn, int numColors,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync int *indices, LOCO * colors,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync VisualPtr pVisual);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT ModeStatus fbdevHWValidMode(ScrnInfoPtr pScrn, DisplayModePtr mode,
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync Bool verbose, int flags);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool fbdevHWSwitchMode(ScrnInfoPtr pScrn, DisplayModePtr mode);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void fbdevHWAdjustFrame(ScrnInfoPtr pScrn, int x, int y);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool fbdevHWEnterVT(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void fbdevHWLeaveVT(ScrnInfoPtr pScrn);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT void fbdevHWDPMSSet(ScrnInfoPtr pScrn, int mode, int flags);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT Bool fbdevHWSaveScreen(ScreenPtr pScreen, int mode);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT xf86SwitchModeProc *fbdevHWSwitchModeWeak(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT xf86AdjustFrameProc *fbdevHWAdjustFrameWeak(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT xf86EnterVTProc *fbdevHWEnterVTWeak(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT xf86LeaveVTProc *fbdevHWLeaveVTWeak(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT xf86ValidModeProc *fbdevHWValidModeWeak(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT xf86DPMSSetProc *fbdevHWDPMSSetWeak(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT xf86LoadPaletteProc *fbdevHWLoadPaletteWeak(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsyncextern _X_EXPORT SaveScreenProcPtr fbdevHWSaveScreenWeak(void);
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync
61cb83a8ccd1dd7f671f31fa93c9d8b7be09b4ccvboxsync#endif