Merge branches 'x86/cleanups', 'x86/kexec', 'x86/mce2' and 'linus' into x86/core
[linux-2.6] / drivers / video / sis / vgatypes.h
1 /* $XFree86$ */
2 /* $XdotOrg$ */
3 /*
4  * General type definitions for universal mode switching modules
5  *
6  * Copyright (C) 2001-2005 by Thomas Winischhofer, Vienna, Austria
7  *
8  * If distributed as part of the Linux kernel, the following license terms
9  * apply:
10  *
11  * * This program is free software; you can redistribute it and/or modify
12  * * it under the terms of the GNU General Public License as published by
13  * * the Free Software Foundation; either version 2 of the named License,
14  * * or any later version.
15  * *
16  * * This program is distributed in the hope that it will be useful,
17  * * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * * GNU General Public License for more details.
20  * *
21  * * You should have received a copy of the GNU General Public License
22  * * along with this program; if not, write to the Free Software
23  * * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
24  *
25  * Otherwise, the following license terms apply:
26  *
27  * * Redistribution and use in source and binary forms, with or without
28  * * modification, are permitted provided that the following conditions
29  * * are met:
30  * * 1) Redistributions of source code must retain the above copyright
31  * *    notice, this list of conditions and the following disclaimer.
32  * * 2) Redistributions in binary form must reproduce the above copyright
33  * *    notice, this list of conditions and the following disclaimer in the
34  * *    documentation and/or other materials provided with the distribution.
35  * * 3) The name of the author may not be used to endorse or promote products
36  * *    derived from this software without specific prior written permission.
37  * *
38  * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
39  * * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
40  * * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
41  * * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
42  * * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
43  * * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
44  * * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
45  * * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
46  * * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
47  * * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
48  *
49  * Author:      Thomas Winischhofer <thomas@winischhofer.net>
50  *
51  */
52
53 #ifndef _VGATYPES_H_
54 #define _VGATYPES_H_
55
56 #define SISIOMEMTYPE
57
58 #ifdef SIS_LINUX_KERNEL
59 typedef unsigned long SISIOADDRESS;
60 #include <linux/types.h>  /* Need __iomem */
61 #undef SISIOMEMTYPE
62 #define SISIOMEMTYPE __iomem
63 #endif
64
65 #ifdef SIS_XORG_XF86
66 #if XF86_VERSION_CURRENT < XF86_VERSION_NUMERIC(4,2,0,0,0)
67 typedef unsigned long IOADDRESS;
68 typedef unsigned long SISIOADDRESS;
69 #else
70 typedef IOADDRESS SISIOADDRESS;
71 #endif
72 #endif
73
74 typedef enum _SIS_CHIP_TYPE {
75     SIS_VGALegacy = 0,
76     SIS_530,
77     SIS_OLD,
78     SIS_300,
79     SIS_630,
80     SIS_730,
81     SIS_540,
82     SIS_315H,   /* SiS 310 */
83     SIS_315,
84     SIS_315PRO, /* SiS 325 */
85     SIS_550,
86     SIS_650,
87     SIS_740,
88     SIS_330,
89     SIS_661,
90     SIS_741,
91     SIS_670,
92     SIS_660 = 35,
93     SIS_760,
94     SIS_761,
95     SIS_762,
96     SIS_770,
97     SIS_340 = 55,
98     SIS_341,
99     SIS_342,
100     XGI_20  = 75,
101     XGI_40,
102     MAX_SIS_CHIP
103 } SIS_CHIP_TYPE;
104
105
106 #endif
107