annotate vidix/drivers/cyberblade_regs.h @ 8771:06dd080d5362

MOBILITY_M63 (aka M6 LY) doesn't needs the rage ckey fix too - notified by Jorg Hansel <joerg.haensel@web.de>
author alex
date Sat, 04 Jan 2003 15:43:07 +0000
parents 478561617705
children 36a5cdca733b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8505
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
1 /*
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
2 * Copyright 1992-2000 by Alan Hourihane, Wigan, England.
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
3 *
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
4 * Permission to use, copy, modify, distribute, and sell this software and its
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
5 * documentation for any purpose is hereby granted without fee, provided that
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
6 * the above copyright notice appear in all copies and that both that
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
7 * copyright notice and this permission notice appear in supporting
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
8 * documentation, and that the name of Alan Hourihane not be used in
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
9 * advertising or publicity pertaining to distribution of the software without
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
10 * specific, written prior permission. Alan Hourihane makes no representations
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
11 * about the suitability of this software for any purpose. It is provided
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
12 * "as is" without express or implied warranty.
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
13 *
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
14 * ALAN HOURIHANE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
15 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
16 * EVENT SHALL ALAN HOURIHANE BE LIABLE FOR ANY SPECIAL, INDIRECT OR
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
17 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
18 * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
19 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
20 * PERFORMANCE OF THIS SOFTWARE.
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
21 *
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
22 * Author: Alan Hourihane, alanh@fairlite.demon.co.uk
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
23 */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
24 /* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/trident/trident_regs.h,v 1.22 2002/01/11 13:06:30 alanh Exp $ */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
25
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
26 #define DEBUG 1
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
27
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
28 #define NTSC 14.31818
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
29 #define PAL 17.73448
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
30
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
31 /* General Registers */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
32 #define SPR 0x1F /* Software Programming Register (videoram) */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
33
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
34 /* 3C4 */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
35 #define RevisionID 0x09
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
36 #define ConfPort1 0x0C
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
37 #define ConfPort2 0x0C
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
38 #define NewMode2 0x0D
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
39 #define OldMode2 0x00 /* Should be 0x0D - dealt with in trident_dac.c */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
40 #define OldMode1 0x0E
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
41 #define NewMode1 0x0E
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
42 #define Protection 0x11
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
43 #define MCLKLow 0x16
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
44 #define MCLKHigh 0x17
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
45 #define ClockLow 0x18
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
46 #define ClockHigh 0x19
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
47 #define SSetup 0x20
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
48 #define SKey 0x37
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
49 #define SPKey 0x57
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
50
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
51 /* 3x4 */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
52 #define Offset 0x13
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
53 #define Underline 0x14
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
54 #define CRTCMode 0x17
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
55 #define CRTCModuleTest 0x1E
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
56 #define FIFOControl 0x20
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
57 #define LinearAddReg 0x21
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
58 #define DRAMTiming 0x23
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
59 #define New32 0x23
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
60 #define RAMDACTiming 0x25
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
61 #define CRTHiOrd 0x27
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
62 #define AddColReg 0x29
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
63 #define InterfaceSel 0x2A
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
64 #define HorizOverflow 0x2B
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
65 #define GETest 0x2D
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
66 #define Performance 0x2F
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
67 #define GraphEngReg 0x36
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
68 #define I2C 0x37
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
69 #define PixelBusReg 0x38
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
70 #define PCIReg 0x39
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
71 #define DRAMControl 0x3A
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
72 #define MiscContReg 0x3C
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
73 #define CursorXLow 0x40
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
74 #define CursorXHigh 0x41
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
75 #define CursorYLow 0x42
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
76 #define CursorYHigh 0x43
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
77 #define CursorLocLow 0x44
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
78 #define CursorLocHigh 0x45
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
79 #define CursorXOffset 0x46
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
80 #define CursorYOffset 0x47
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
81 #define CursorFG1 0x48
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
82 #define CursorFG2 0x49
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
83 #define CursorFG3 0x4A
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
84 #define CursorFG4 0x4B
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
85 #define CursorBG1 0x4C
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
86 #define CursorBG2 0x4D
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
87 #define CursorBG3 0x4E
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
88 #define CursorBG4 0x4F
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
89 #define CursorControl 0x50
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
90 #define PCIRetry 0x55
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
91 #define PreEndControl 0x56
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
92 #define PreEndFetch 0x57
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
93 #define PCIMaster 0x60
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
94 #define Enhancement0 0x62
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
95 #define NewEDO 0x64
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
96
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
97 /* --- Additions by AMR for Vidix support --- */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
98 #define VideoWin1_HScale 0x80
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
99 #define VideoWin1_VScale 0x82
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
100 #define VideoWin1_Start 0x86
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
101 #define VideoWin1_Stop 0x8a
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
102 #define Video_Flags 0x8e
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
103 #define VideoWin1_Y_BPR 0x90
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
104 #define VideoWin1_Y_Offset 0x92
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
105 #define Video_LineBufferThreshold 0x95
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
106 #define Video_LineBufferLevel 0x96
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
107 #define Video_Flags2 0x97
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
108 /* --- */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
109
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
110 #define TVinterface 0xC0
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
111 #define TVMode 0xC1
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
112 #define ClockControl 0xCF
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
113
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
114
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
115 /* 3CE */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
116 #define MiscExtFunc 0x0F
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
117 #define MiscIntContReg 0x2F
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
118 #define CyberControl 0x30
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
119 #define CyberEnhance 0x31
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
120 #define FPConfig 0x33
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
121 #define VertStretch 0x52
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
122 #define HorStretch 0x53
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
123 #define BiosMode 0x5c
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
124 #define BiosNewMode1 0x5a
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
125 #define BiosNewMode2 0x5c
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
126 #define BiosReg 0x5d
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
127
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
128 /* --- MMIO Macros by AMR --- */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
129
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
130 int HACKBUCKET12345678; /* Horrible hack to work around cache/speed issue */
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
131
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
132 #define INB(addr) (HACKBUCKET12345678=*(cyberblade_reg_base+addr))
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
133 #define INW(addr) (HACKBUCKET12345678=*(unsigned short *)(cyberblade_reg_base+addr))
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
134 #define OUTB(addr,val) (*(cyberblade_reg_base+addr)=(val))
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
135 #define OUTW(addr,val) (*(unsigned short *)(cyberblade_reg_base+addr)=(val))
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
136
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
137 #define SRINB(reg) (OUTB(0x3c4,reg), INB(0x3c5))
8733
478561617705 compiler warning fixes by Dominik Mierzejewski <dominik@rangers.eu.org>
arpi
parents: 8505
diff changeset
138 #define SROUTB(reg,val) (OUTW(0x3c4,((val)<<8)|(reg)))
8505
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
139
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
140 #define CRINB(reg) \
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
141 (OUTB(cyberblade_crtc+4,reg), INB(cyberblade_crtc+5))
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
142
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
143 #define CROUTB(reg,val) \
8733
478561617705 compiler warning fixes by Dominik Mierzejewski <dominik@rangers.eu.org>
arpi
parents: 8505
diff changeset
144 (OUTW(cyberblade_crtc+4,((val)<<8)|(reg)))
8505
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
145
d794e866cf5f EPIA (CyberBlade/i1) driver by Alastair M. Robinson
alex
parents:
diff changeset
146 /* --- */