2
* Generic card driving functions.
3
* Essentially, cascades calls to fbdev and vesa to initialize cards that
4
* do not have hardware-specific routines yet. Copied from the ati driver.
6
* Copyright (c) 2004 Brent Cook <busterb@mail.utexas.edu>
8
* This code is licensed under the GPL. See the file COPYING in the root
9
* directory of the sources for details.
23
typedef enum _BackendType {VESA, FBDEV} BackendType;
25
typedef struct _BackendInfo {
29
// backend internal structures
39
// pointers to helper functions for this backend
40
void (*cardfini)(KdCardInfo *);
41
void (*scrfini)(KdScreenInfo *);
42
Bool (*initScreen)(ScreenPtr);
43
Bool (*finishInitScreen)(ScreenPtr pScreen);
44
Bool (*createRes)(ScreenPtr);
45
void (*preserve)(KdCardInfo *);
46
void (*restore)(KdCardInfo *);
47
Bool (*dpms)(ScreenPtr, int);
48
Bool (*enable)(ScreenPtr);
49
void (*disable)(ScreenPtr);
50
void (*getColors)(ScreenPtr, int, int, xColorItem *);
51
void (*putColors)(ScreenPtr, int, int, xColorItem *);
54
typedef union _BackendScreen {
59
VesaScreenPrivRec vesa;
64
backendInitialize(KdCardInfo *card, BackendInfo *backend);
67
backendScreenInitialize(KdScreenInfo *screen, BackendScreen *backendScreen,
68
BackendInfo *backendCard);