diff options
author | Thomas Winischhofer <thomas@winischhofer.net> | 2005-09-09 16:04:45 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-09 16:58:01 -0400 |
commit | 544393fe584d333480659a4bed30f5295355df11 (patch) | |
tree | 873b30c67cdbb5cb93e6fd816692db312ed6ddd6 /drivers/video/sis/osdef.h | |
parent | 5c06e2aa6339112befdc87b350b8bf712890d7a7 (diff) |
[PATCH] sisfb update
This lifts sisfb from version 1.7.17 to version 1.8.9. Changes include:
- Added support for XGI V3XT, V5, V8, Z7 chipsets, including POSTing of
all of these chipsets.
- Added support for latest SiS chipsets (761).
- Added support for SiS76x memory "hybrid" mode.
- Added support for new LCD resolutions (eg 1280x854, 856x480).
- Fixed support for 320x240 STN panels (for embedded devices).
- Fixed many HDTV modes (525p, 750p, 1080i).
- Fixed PCI config register reading/writing to use proper kernel
functions for this purpose.
- Fixed PCI ROM handling to use the kernel's proper functions.
- Removed lots of "typedef"s.
- Removed lots of code which was for X.org/XFree86 only.
- Fixed coding style in many places.
- Removed lots of 2.4 cruft.
- Reduced stack size by unifying two previously separate structs into
one.
- Added new hooks for memory allocation (for DRM). Now the driver can
truly handle multiple cards, including memory management.
- Fixed numerous minor bugs.
Signed-off-by: Thomas Winischhofer <thomas@winischhofer.net>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/video/sis/osdef.h')
-rw-r--r-- | drivers/video/sis/osdef.h | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/drivers/video/sis/osdef.h b/drivers/video/sis/osdef.h index 15939b057713..841ca3190cd4 100644 --- a/drivers/video/sis/osdef.h +++ b/drivers/video/sis/osdef.h | |||
@@ -3,7 +3,7 @@ | |||
3 | /* | 3 | /* |
4 | * OS depending defines | 4 | * OS depending defines |
5 | * | 5 | * |
6 | * Copyright (C) 2001-2004 by Thomas Winischhofer, Vienna, Austria | 6 | * Copyright (C) 2001-2005 by Thomas Winischhofer, Vienna, Austria |
7 | * | 7 | * |
8 | * If distributed as part of the Linux kernel, the following license terms | 8 | * If distributed as part of the Linux kernel, the following license terms |
9 | * apply: | 9 | * apply: |
@@ -55,8 +55,11 @@ | |||
55 | #define _SIS_OSDEF_H_ | 55 | #define _SIS_OSDEF_H_ |
56 | 56 | ||
57 | /* The choices are: */ | 57 | /* The choices are: */ |
58 | #define LINUX_KERNEL /* Linux kernel framebuffer */ | 58 | #define SIS_LINUX_KERNEL /* Linux kernel framebuffer */ |
59 | /* #define LINUX_XF86 */ /* XFree86/X.org */ | 59 | #undef SIS_XORG_XF86 /* XFree86/X.org */ |
60 | |||
61 | #undef SIS_LINUX_KERNEL_24 | ||
62 | #undef SIS_LINUX_KERNEL_26 | ||
60 | 63 | ||
61 | #ifdef OutPortByte | 64 | #ifdef OutPortByte |
62 | #undef OutPortByte | 65 | #undef OutPortByte |
@@ -86,8 +89,9 @@ | |||
86 | /* LINUX KERNEL */ | 89 | /* LINUX KERNEL */ |
87 | /**********************************************************************/ | 90 | /**********************************************************************/ |
88 | 91 | ||
89 | #ifdef LINUX_KERNEL | 92 | #ifdef SIS_LINUX_KERNEL |
90 | #include <linux/config.h> | 93 | #include <linux/config.h> |
94 | #include <linux/version.h> | ||
91 | 95 | ||
92 | #ifdef CONFIG_FB_SIS_300 | 96 | #ifdef CONFIG_FB_SIS_300 |
93 | #define SIS300 | 97 | #define SIS300 |
@@ -97,6 +101,12 @@ | |||
97 | #define SIS315H | 101 | #define SIS315H |
98 | #endif | 102 | #endif |
99 | 103 | ||
104 | #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0) | ||
105 | #define SIS_LINUX_KERNEL_26 | ||
106 | #else | ||
107 | #define SIS_LINUX_KERNEL_24 | ||
108 | #endif | ||
109 | |||
100 | #if !defined(SIS300) && !defined(SIS315H) | 110 | #if !defined(SIS300) && !defined(SIS315H) |
101 | #warning Neither CONFIG_FB_SIS_300 nor CONFIG_FB_SIS_315 is set | 111 | #warning Neither CONFIG_FB_SIS_300 nor CONFIG_FB_SIS_315 is set |
102 | #warning sisfb will not work! | 112 | #warning sisfb will not work! |
@@ -109,13 +119,15 @@ | |||
109 | #define InPortWord(p) inw((SISIOADDRESS)(p)) | 119 | #define InPortWord(p) inw((SISIOADDRESS)(p)) |
110 | #define InPortLong(p) inl((SISIOADDRESS)(p)) | 120 | #define InPortLong(p) inl((SISIOADDRESS)(p)) |
111 | #define SiS_SetMemory(MemoryAddress,MemorySize,value) memset_io(MemoryAddress, value, MemorySize) | 121 | #define SiS_SetMemory(MemoryAddress,MemorySize,value) memset_io(MemoryAddress, value, MemorySize) |
112 | #endif | 122 | |
123 | #endif /* LINUX_KERNEL */ | ||
113 | 124 | ||
114 | /**********************************************************************/ | 125 | /**********************************************************************/ |
115 | /* XFree86/X.org */ | 126 | /* XFree86/X.org */ |
116 | /**********************************************************************/ | 127 | /**********************************************************************/ |
117 | 128 | ||
118 | #ifdef LINUX_XF86 | 129 | #ifdef SIS_XORG_XF86 |
130 | |||
119 | #define SIS300 | 131 | #define SIS300 |
120 | #define SIS315H | 132 | #define SIS315H |
121 | 133 | ||
@@ -126,6 +138,7 @@ | |||
126 | #define InPortWord(p) inSISREGW((IOADDRESS)(p)) | 138 | #define InPortWord(p) inSISREGW((IOADDRESS)(p)) |
127 | #define InPortLong(p) inSISREGL((IOADDRESS)(p)) | 139 | #define InPortLong(p) inSISREGL((IOADDRESS)(p)) |
128 | #define SiS_SetMemory(MemoryAddress,MemorySize,value) memset(MemoryAddress, value, MemorySize) | 140 | #define SiS_SetMemory(MemoryAddress,MemorySize,value) memset(MemoryAddress, value, MemorySize) |
129 | #endif | 141 | |
142 | #endif /* XF86 */ | ||
130 | 143 | ||
131 | #endif /* _OSDEF_H_ */ | 144 | #endif /* _OSDEF_H_ */ |