r128_probe.h revision c582b7e3
1/*
2 * Copyright 2000 ATI Technologies Inc., Markham, Ontario, and
3 *                VA Linux Systems Inc., Fremont, California.
4 *
5 * All Rights Reserved.
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining
8 * a copy of this software and associated documentation files (the
9 * "Software"), to deal in the Software without restriction, including
10 * without limitation on the rights to use, copy, modify, merge,
11 * publish, distribute, sublicense, and/or sell copies of the Software,
12 * and to permit persons to whom the Software is furnished to do so,
13 * subject to the following conditions:
14 *
15 * The above copyright notice and this permission notice (including the
16 * next paragraph) shall be included in all copies or substantial
17 * portions of the Software.
18 *
19 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
22 * NON-INFRINGEMENT.  IN NO EVENT SHALL ATI, VA LINUX SYSTEMS AND/OR
23 * THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
24 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
26 * DEALINGS IN THE SOFTWARE.
27 */
28
29/*
30 * Authors:
31 *   Kevin E. Martin <martin@valinux.com>
32 *
33 * Modified by Marc Aurele La France <tsi@xfree86.org> for ATI driver merge.
34 */
35
36#ifndef _R128_PROBE_H_
37#define _R128_PROBE_H_ 1
38
39#include "xf86str.h"
40
41extern DriverRec R128;
42
43typedef struct
44{
45    Bool IsDRIEnabled;
46
47    Bool HasSecondary;
48    Bool BypassSecondary;
49    /*These two registers are used to make sure the CRTC2 is
50      retored before CRTC_EXT, otherwise it could lead to blank screen.*/
51    Bool IsSecondaryRestored;
52    Bool RestorePrimary;
53
54    ScrnInfoPtr pSecondaryScrn;
55    ScrnInfoPtr pPrimaryScrn;
56} R128EntRec, *R128EntPtr;
57
58/* r128_probe.c */
59extern SymTabRec             R128Chipsets[];
60
61/* r128_driver.c */
62extern Bool                  R128PreInit(ScrnInfoPtr, int);
63extern Bool                  R128ScreenInit(int, ScreenPtr, int, char **);
64extern Bool                  R128SwitchMode(int, DisplayModePtr, int);
65extern void                  R128AdjustFrame(int, int, int, int);
66extern Bool                  R128EnterVT(int, int);
67extern void                  R128LeaveVT(int, int);
68extern void                  R128FreeScreen(int, int);
69extern ModeStatus            R128ValidMode(int, DisplayModePtr, Bool, int);
70
71extern const OptionInfoRec * R128OptionsWeak(void);
72
73#endif /* _R128_PROBE_H_ */
74