annotate drivers/radeon/radeon.h @ 1967:4e3e03effdac

Radeon2 support
author nick
date Wed, 26 Sep 2001 08:14:37 +0000
parents 0f204bd39635
children 25461be8d234
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
1 #ifndef _RADEON_H
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
2 #define _RADEON_H
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
3
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
5 /* radeon PCI ids */
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
6 #define PCI_DEVICE_ID_RADEON_QD 0x5144
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
7 #define PCI_DEVICE_ID_RADEON_QE 0x5145
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
8 #define PCI_DEVICE_ID_RADEON_QF 0x5146
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
9 #define PCI_DEVICE_ID_RADEON_QG 0x5147
1913
717f46012fce Radeon VE QZ support
nick
parents: 1912
diff changeset
10 #define PCI_DEVICE_ID_RADEON_QY 0x5159
717f46012fce Radeon VE QZ support
nick
parents: 1912
diff changeset
11 #define PCI_DEVICE_ID_RADEON_QZ 0x515A
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
12 #define PCI_DEVICE_ID_RADEON_LY 0x4C59
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
13 #define PCI_DEVICE_ID_RADEON_LZ 0x4C5A
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
14 #define PCI_DEVICE_ID_RADEON_LW 0x4C57
1967
4e3e03effdac Radeon2 support
nick
parents: 1945
diff changeset
15 #define PCI_DEVICE_ID_R200_QL 0x514C
4e3e03effdac Radeon2 support
nick
parents: 1945
diff changeset
16 #define PCI_DEVICE_ID_RV200_QW 0x5157
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
17
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
18 #define RADEON_REGSIZE 0x4000
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
19
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
20
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
21 #define MM_INDEX 0x0000
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
22 /* MM_INDEX bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
23 # define MM_APER 0x80000000
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
24 #define MM_DATA 0x0004
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
25 #define BUS_CNTL 0x0030
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
26 /* BUS_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
27 # define BUS_DBL_RESYNC 0x00000001
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
28 # define BUS_MSTR_RESET 0x00000002
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
29 # define BUS_FLUSH_BUF 0x00000004
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
30 # define BUS_STOP_REQ_DIS 0x00000008
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
31 # define BUS_ROTATION_DIS 0x00000010
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
32 # define BUS_MASTER_DIS 0x00000040
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
33 # define BUS_ROM_WRT_EN 0x00000080
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
34 # define BUS_DIS_ROM 0x00001000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
35 # define BUS_PCI_READ_RETRY_EN 0x00002000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
36 # define BUS_AGP_AD_STEPPING_EN 0x00004000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
37 # define BUS_PCI_WRT_RETRY_EN 0x00008000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
38 # define BUS_MSTR_RD_MULT 0x00100000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
39 # define BUS_MSTR_RD_LINE 0x00200000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
40 # define BUS_SUSPEND 0x00400000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
41 # define LAT_16X 0x00800000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
42 # define BUS_RD_DISCARD_EN 0x01000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
43 # define BUS_RD_ABORT_EN 0x02000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
44 # define BUS_MSTR_WS 0x04000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
45 # define BUS_PARKING_DIS 0x08000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
46 # define BUS_MSTR_DISCONNECT_EN 0x10000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
47 # define BUS_WRT_BURST 0x20000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
48 # define BUS_READ_BURST 0x40000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
49 # define BUS_RDY_READ_DLY 0x80000000
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
50 #define HI_STAT 0x004C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
51 #define BUS_CNTL1 0x0034
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
52 # define BUS_WAIT_ON_LOCK_EN (1 << 4)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
53 #define I2C_CNTL_1 0x0094
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
54 #define CONFIG_CNTL 0x00E0
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
55 /* CONFIG_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
56 # define CFG_VGA_RAM_EN 0x00000100
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
57 #define CONFIG_MEMSIZE 0x00F8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
58 #define CONFIG_APER_0_BASE 0x0100
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
59 #define CONFIG_APER_1_BASE 0x0104
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
60 #define CONFIG_APER_SIZE 0x0108
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
61 #define CONFIG_REG_1_BASE 0x010C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
62 #define CONFIG_REG_APER_SIZE 0x0110
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
63 #define PAD_AGPINPUT_DELAY 0x0164
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
64 #define PAD_CTLR_STRENGTH 0x0168
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
65 #define PAD_CTLR_UPDATE 0x016C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
66 #define AGP_CNTL 0x0174
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
67 # define AGP_APER_SIZE_256MB (0x00 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
68 # define AGP_APER_SIZE_128MB (0x20 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
69 # define AGP_APER_SIZE_64MB (0x30 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
70 # define AGP_APER_SIZE_32MB (0x38 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
71 # define AGP_APER_SIZE_16MB (0x3c << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
72 # define AGP_APER_SIZE_8MB (0x3e << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
73 # define AGP_APER_SIZE_4MB (0x3f << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
74 # define AGP_APER_SIZE_MASK (0x3f << 0)
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
75 #define AMCGPIO_A_REG 0x01a0
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
76 #define AMCGPIO_EN_REG 0x01a8
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
77 #define AMCGPIO_MASK 0x0194
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
78 #define AMCGPIO_Y_REG 0x01a4
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
79 #define BM_STATUS 0x0160
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
80 #define MPP_TB_CONFIG 0x01c0 /* ? */
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
81 #define MPP_GP_CONFIG 0x01c8 /* ? */
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
82 #define CAP0_TRIG_CNTL 0x0950
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
83 #define CAP1_TRIG_CNTL 0x09c0 /* ? */
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
84 #define VIPH_CONTROL 0x0C40
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
85 #define VENDOR_ID 0x0F00
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
86 #define DEVICE_ID 0x0F02
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
87 #define COMMAND 0x0F04
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
88 #define STATUS 0x0F06
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
89 #define REVISION_ID 0x0F08
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
90 #define REGPROG_INF 0x0F09
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
91 #define SUB_CLASS 0x0F0A
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
92 #define BASE_CODE 0x0F0B
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
93 #define CACHE_LINE 0x0F0C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
94 #define LATENCY 0x0F0D
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
95 #define HEADER 0x0F0E
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
96 #define BIST 0x0F0F
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
97 #define REG_MEM_BASE 0x0F10
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
98 #define REG_IO_BASE 0x0F14
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
99 #define REG_REG_BASE 0x0F18
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
100 #define ADAPTER_ID 0x0F2C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
101 #define BIOS_ROM 0x0F30
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
102 #define CAPABILITIES_PTR 0x0F34
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
103 #define INTERRUPT_LINE 0x0F3C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
104 #define INTERRUPT_PIN 0x0F3D
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
105 #define MIN_GRANT 0x0F3E
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
106 #define MAX_LATENCY 0x0F3F
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
107 #define ADAPTER_ID_W 0x0F4C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
108 #define PMI_CAP_ID 0x0F50
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
109 #define PMI_NXT_CAP_PTR 0x0F51
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
110 #define PMI_PMC_REG 0x0F52
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
111 #define PM_STATUS 0x0F54
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
112 #define PMI_DATA 0x0F57
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
113 #define AGP_CAP_ID 0x0F58
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
114 #define AGP_STATUS 0x0F5C
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
115 # define AGP_1X_MODE 0x01
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
116 # define AGP_2X_MODE 0x02
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
117 # define AGP_4X_MODE 0x04
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
118 # define AGP_MODE_MASK 0x07
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
119 #define AGP_COMMAND 0x0F60
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
120 #define AIC_CTRL 0x01D0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
121 #define AIC_STAT 0x01D4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
122 #define AIC_PT_BASE 0x01D8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
123 #define AIC_LO_ADDR 0x01DC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
124 #define AIC_HI_ADDR 0x01E0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
125 #define AIC_TLB_ADDR 0x01E4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
126 #define AIC_TLB_DATA 0x01E8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
127 #define DAC_CNTL 0x0058
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
128 /* DAC_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
129 # define DAC_8BIT_EN 0x00000100
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
130 # define DAC_4BPP_PIX_ORDER 0x00000200
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
131 # define DAC_CRC_EN 0x00080000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
132 # define DAC_MASK_ALL (0xff << 24)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
133 # define DAC_VGA_ADR_EN (1 << 13)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
134 # define DAC_RANGE_CNTL (3 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
135 # define DAC_BLANKING (1 << 2)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
136 #define DAC_CNTL2 0x007c
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
137 /* DAC_CNTL2 bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
138 # define DAC2_DAC_CLK_SEL (1 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
139 # define DAC2_DAC2_CLK_SEL (1 << 1)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
140 # define DAC2_PALETTE_ACC_CTL (1 << 5)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
141 #define TV_DAC_CNTL 0x088c
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
142 /* TV_DAC_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
143 # define TV_DAC_STD_MASK 0x0300
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
144 # define TV_DAC_RDACPD (1 << 24)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
145 # define TV_DAC_GDACPD (1 << 25)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
146 # define TV_DAC_BDACPD (1 << 26)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
147 #define CRTC_GEN_CNTL 0x0050
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
148 /* CRTC_GEN_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
149 # define CRTC_DBL_SCAN_EN 0x00000001
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
150 # define CRTC_INTERLACE_EN (1 << 1)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
151 # define CRTC_CSYNC_EN (1 << 4)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
152 # define CRTC_CUR_EN 0x00010000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
153 # define CRTC_CUR_MODE_MASK (7 << 17)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
154 # define CRTC_ICON_EN (1 << 20)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
155 # define CRTC_EXT_DISP_EN (1 << 24)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
156 # define CRTC_EN (1 << 25)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
157 # define CRTC_DISP_REQ_EN_B (1 << 26)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
158 #define CRTC2_GEN_CNTL 0x03f8
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
159 /* CRTC2_GEN_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
160 # define CRTC2_DBL_SCAN_EN (1 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
161 # define CRTC2_INTERLACE_EN (1 << 1)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
162 # define CRTC2_SYNC_TRISTAT (1 << 4)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
163 # define CRTC2_HSYNC_TRISTAT (1 << 5)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
164 # define CRTC2_VSYNC_TRISTAT (1 << 6)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
165 # define CRTC2_CRT2_ON (1 << 7)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
166 # define CRTC2_ICON_EN (1 << 15)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
167 # define CRTC2_CUR_EN (1 << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
168 # define CRTC2_CUR_MODE_MASK (7 << 20)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
169 # define CRTC2_DISP_DIS (1 << 23)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
170 # define CRTC2_EN (1 << 25)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
171 # define CRTC2_DISP_REQ_EN_B (1 << 26)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
172 # define CRTC2_HSYNC_DIS (1 << 28)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
173 # define CRTC2_VSYNC_DIS (1 << 29)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
174 #define MEM_CNTL 0x0140
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
175 /* MEM_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
176 # define MEM_CTLR_STATUS_IDLE 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
177 # define MEM_CTLR_STATUS_BUSY 0x00100000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
178 # define MEM_SEQNCR_STATUS_IDLE 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
179 # define MEM_SEQNCR_STATUS_BUSY 0x00200000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
180 # define MEM_ARBITER_STATUS_IDLE 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
181 # define MEM_ARBITER_STATUS_BUSY 0x00400000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
182 # define MEM_REQ_UNLOCK 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
183 # define MEM_REQ_LOCK 0x00800000
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
184 #define EXT_MEM_CNTL 0x0144
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
185 #define MC_AGP_LOCATION 0x014C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
186 #define MEM_IO_CNTL_A0 0x0178
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
187 #define MEM_INIT_LATENCY_TIMER 0x0154
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
188 #define MEM_SDRAM_MODE_REG 0x0158
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
189 #define AGP_BASE 0x0170
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
190 #define MEM_IO_CNTL_A1 0x017C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
191 #define MEM_IO_CNTL_B0 0x0180
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
192 #define MEM_IO_CNTL_B1 0x0184
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
193 #define MC_DEBUG 0x0188
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
194 #define MC_STATUS 0x0150
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
195 #define MEM_IO_OE_CNTL 0x018C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
196 #define MC_FB_LOCATION 0x0148
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
197 #define HOST_PATH_CNTL 0x0130
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
198 #define MEM_VGA_WP_SEL 0x0038
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
199 #define MEM_VGA_RP_SEL 0x003C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
200 #define HDP_DEBUG 0x0138
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
201 #define SW_SEMAPHORE 0x013C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
202 #define SURFACE_CNTL 0x0B00
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
203 /* SURFACE_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
204 # define SURF_TRANSLATION_DIS (1 << 8)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
205 # define NONSURF_AP0_SWP_16BPP (1 << 20)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
206 # define NONSURF_AP0_SWP_32BPP (2 << 20)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
207 #define SURFACE0_LOWER_BOUND 0x0B04
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
208 #define SURFACE1_LOWER_BOUND 0x0B14
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
209 #define SURFACE2_LOWER_BOUND 0x0B24
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
210 #define SURFACE3_LOWER_BOUND 0x0B34
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
211 #define SURFACE4_LOWER_BOUND 0x0B44
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
212 #define SURFACE5_LOWER_BOUND 0x0B54
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
213 #define SURFACE6_LOWER_BOUND 0x0B64
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
214 #define SURFACE7_LOWER_BOUND 0x0B74
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
215 #define SURFACE0_UPPER_BOUND 0x0B08
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
216 #define SURFACE1_UPPER_BOUND 0x0B18
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
217 #define SURFACE2_UPPER_BOUND 0x0B28
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
218 #define SURFACE3_UPPER_BOUND 0x0B38
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
219 #define SURFACE4_UPPER_BOUND 0x0B48
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
220 #define SURFACE5_UPPER_BOUND 0x0B58
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
221 #define SURFACE6_UPPER_BOUND 0x0B68
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
222 #define SURFACE7_UPPER_BOUND 0x0B78
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
223 #define SURFACE0_INFO 0x0B0C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
224 #define SURFACE1_INFO 0x0B1C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
225 #define SURFACE2_INFO 0x0B2C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
226 #define SURFACE3_INFO 0x0B3C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
227 #define SURFACE4_INFO 0x0B4C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
228 #define SURFACE5_INFO 0x0B5C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
229 #define SURFACE6_INFO 0x0B6C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
230 #define SURFACE7_INFO 0x0B7C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
231 #define SURFACE_ACCESS_FLAGS 0x0BF8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
232 #define SURFACE_ACCESS_CLR 0x0BFC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
233 #define GEN_INT_CNTL 0x0040
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
234 #define GEN_INT_STATUS 0x0044
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
235 # define VSYNC_INT_AK (1 << 2)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
236 # define VSYNC_INT (1 << 2)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
237 #define CRTC_EXT_CNTL 0x0054
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
238 /* CRTC_EXT_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
239 # define CRTC_VGA_XOVERSCAN (1 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
240 # define VGA_ATI_LINEAR 0x00000008
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
241 # define VGA_128KAP_PAGING 0x00000010
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
242 # define XCRT_CNT_EN (1 << 6)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
243 # define CRTC_HSYNC_DIS (1 << 8)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
244 # define CRTC_VSYNC_DIS (1 << 9)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
245 # define CRTC_DISPLAY_DIS (1 << 10)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
246 # define CRTC_SYNC_TRISTAT (1 << 11)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
247 # define CRTC_CRT_ON (1 << 15)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
248 #define CRTC_EXT_CNTL_DPMS_BYTE 0x0055
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
249 # define CRTC_HSYNC_DIS_BYTE (1 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
250 # define CRTC_VSYNC_DIS_BYTE (1 << 1)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
251 # define CRTC_DISPLAY_DIS_BYTE (1 << 2)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
252 #define RB3D_CNTL 0x1C3C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
253 #define WAIT_UNTIL 0x1720
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
254 #define ISYNC_CNTL 0x1724
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
255 #define RBBM_GUICNTL 0x172C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
256 #define RBBM_STATUS 0x0E40
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
257 #define RBBM_STATUS_alt_1 0x1740
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
258 #define RBBM_CNTL 0x00EC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
259 #define RBBM_CNTL_alt_1 0x0E44
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
260 #define RBBM_SOFT_RESET 0x00F0
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
261 /* RBBM_SOFT_RESET bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
262 # define SOFT_RESET_CP (1 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
263 # define SOFT_RESET_HI (1 << 1)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
264 # define SOFT_RESET_SE (1 << 2)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
265 # define SOFT_RESET_RE (1 << 3)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
266 # define SOFT_RESET_PP (1 << 4)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
267 # define SOFT_RESET_E2 (1 << 5)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
268 # define SOFT_RESET_RB (1 << 6)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
269 # define SOFT_RESET_HDP (1 << 7)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
270 #define RBBM_SOFT_RESET_alt_1 0x0E48
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
271 #define NQWAIT_UNTIL 0x0E50
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
272 #define RBBM_DEBUG 0x0E6C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
273 #define RBBM_CMDFIFO_ADDR 0x0E70
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
274 #define RBBM_CMDFIFO_DATAL 0x0E74
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
275 #define RBBM_CMDFIFO_DATAH 0x0E78
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
276 #define RBBM_CMDFIFO_STAT 0x0E7C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
277 #define CRTC_STATUS 0x005C
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
278 /* CRTC_STATUS bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
279 # define CRTC_VBLANK 0x00000001
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
280 # define CRTC_VBLANK_SAVE (1 << 1)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
281 #define GPIO_VGA_DDC 0x0060
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
282 #define GPIO_DVI_DDC 0x0064
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
283 #define GPIO_MONID 0x0068
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
284 #define PALETTE_INDEX 0x00B0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
285 #define PALETTE_DATA 0x00B4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
286 #define PALETTE_30_DATA 0x00B8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
287 #define CRTC_H_TOTAL_DISP 0x0200
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
288 # define CRTC_H_TOTAL (0x03ff << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
289 # define CRTC_H_TOTAL_SHIFT 0
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
290 # define CRTC_H_DISP (0x01ff << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
291 # define CRTC_H_DISP_SHIFT 16
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
292 #define CRTC2_H_TOTAL_DISP 0x0300
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
293 # define CRTC2_H_TOTAL (0x03ff << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
294 # define CRTC2_H_TOTAL_SHIFT 0
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
295 # define CRTC2_H_DISP (0x01ff << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
296 # define CRTC2_H_DISP_SHIFT 16
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
297 #define CRTC_H_SYNC_STRT_WID 0x0204
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
298 # define CRTC_H_SYNC_STRT_PIX (0x07 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
299 # define CRTC_H_SYNC_STRT_CHAR (0x3ff << 3)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
300 # define CRTC_H_SYNC_STRT_CHAR_SHIFT 3
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
301 # define CRTC_H_SYNC_WID (0x3f << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
302 # define CRTC_H_SYNC_WID_SHIFT 16
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
303 # define CRTC_H_SYNC_POL (1 << 23)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
304 #define CRTC2_H_SYNC_STRT_WID 0x0304
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
305 # define CRTC2_H_SYNC_STRT_PIX (0x07 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
306 # define CRTC2_H_SYNC_STRT_CHAR (0x3ff << 3)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
307 # define CRTC2_H_SYNC_STRT_CHAR_SHIFT 3
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
308 # define CRTC2_H_SYNC_WID (0x3f << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
309 # define CRTC2_H_SYNC_WID_SHIFT 16
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
310 # define CRTC2_H_SYNC_POL (1 << 23)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
311 #define CRTC_V_TOTAL_DISP 0x0208
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
312 # define CRTC_V_TOTAL (0x07ff << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
313 # define CRTC_V_TOTAL_SHIFT 0
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
314 # define CRTC_V_DISP (0x07ff << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
315 # define CRTC_V_DISP_SHIFT 16
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
316 #define CRTC2_V_TOTAL_DISP 0x0308
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
317 # define CRTC2_V_TOTAL (0x07ff << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
318 # define CRTC2_V_TOTAL_SHIFT 0
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
319 # define CRTC2_V_DISP (0x07ff << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
320 # define CRTC2_V_DISP_SHIFT 16
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
321 #define CRTC_V_SYNC_STRT_WID 0x020C
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
322 # define CRTC_V_SYNC_STRT (0x7ff << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
323 # define CRTC_V_SYNC_STRT_SHIFT 0
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
324 # define CRTC_V_SYNC_WID (0x1f << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
325 # define CRTC_V_SYNC_WID_SHIFT 16
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
326 # define CRTC_V_SYNC_POL (1 << 23)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
327 #define CRTC2_V_SYNC_STRT_WID 0x030C
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
328 # define CRTC2_V_SYNC_STRT (0x7ff << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
329 # define CRTC2_V_SYNC_STRT_SHIFT 0
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
330 # define CRTC2_V_SYNC_WID (0x1f << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
331 # define CRTC2_V_SYNC_WID_SHIFT 16
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
332 # define CRTC2_V_SYNC_POL (1 << 23)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
333 #define CRTC_VLINE_CRNT_VLINE 0x0210
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
334 # define CRTC_CRNT_VLINE_MASK (0x7ff << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
335 #define CRTC2_VLINE_CRNT_VLINE 0x0310
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
336 #define CRTC_CRNT_FRAME 0x0214
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
337 #define CRTC2_CRNT_FRAME 0x0314
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
338 #define CRTC_GUI_TRIG_VLINE 0x0218
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
339 #define CRTC2_GUI_TRIG_VLINE 0x0318
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
340 #define CRTC_DEBUG 0x021C
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
341 #define CRTC2_DEBUG 0x031C
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
342 #define CRTC_OFFSET_RIGHT 0x0220
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
343 #define CRTC_OFFSET 0x0224
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
344 #define CRTC2_OFFSET 0x0324
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
345 #define CRTC_OFFSET_CNTL 0x0228
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
346 # define CRTC_TILE_EN (1 << 15)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
347 #define CRTC2_OFFSET_CNTL 0x0328
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
348 # define CRTC2_TILE_EN (1 << 15)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
349 #define CRTC_PITCH 0x022C
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
350 #define CRTC2_PITCH 0x032C
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
351 #define TMDS_CRC 0x02a0
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
352 #define OVR_CLR 0x0230
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
353 #define OVR_WID_LEFT_RIGHT 0x0234
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
354 #define OVR_WID_TOP_BOTTOM 0x0238
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
355 #define DISPLAY_BASE_ADDR 0x023C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
356 #define SNAPSHOT_VH_COUNTS 0x0240
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
357 #define SNAPSHOT_F_COUNT 0x0244
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
358 #define N_VIF_COUNT 0x0248
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
359 #define SNAPSHOT_VIF_COUNT 0x024C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
360 #define FP_CRTC_H_TOTAL_DISP 0x0250
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
361 #define FP_CRTC2_H_TOTAL_DISP 0x0350
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
362 #define FP_CRTC_V_TOTAL_DISP 0x0254
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
363 #define FP_CRTC2_V_TOTAL_DISP 0x0354
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
364 # define FP_CRTC_H_TOTAL_MASK 0x000003ff
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
365 # define FP_CRTC_H_DISP_MASK 0x01ff0000
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
366 # define FP_CRTC_V_TOTAL_MASK 0x00000fff
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
367 # define FP_CRTC_V_DISP_MASK 0x0fff0000
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
368 # define FP_H_SYNC_STRT_CHAR_MASK 0x00001ff8
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
369 # define FP_H_SYNC_WID_MASK 0x003f0000
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
370 # define FP_V_SYNC_STRT_MASK 0x00000fff
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
371 # define FP_V_SYNC_WID_MASK 0x001f0000
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
372 # define FP_CRTC_H_TOTAL_SHIFT 0x00000000
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
373 # define FP_CRTC_H_DISP_SHIFT 0x00000010
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
374 # define FP_CRTC_V_TOTAL_SHIFT 0x00000000
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
375 # define FP_CRTC_V_DISP_SHIFT 0x00000010
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
376 # define FP_H_SYNC_STRT_CHAR_SHIFT 0x00000003
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
377 # define FP_H_SYNC_WID_SHIFT 0x00000010
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
378 # define FP_V_SYNC_STRT_SHIFT 0x00000000
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
379 # define FP_V_SYNC_WID_SHIFT 0x00000010
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
380 #define CRT_CRTC_H_SYNC_STRT_WID 0x0258
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
381 #define CRT_CRTC_V_SYNC_STRT_WID 0x025C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
382 #define CUR_OFFSET 0x0260
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
383 #define CUR_HORZ_VERT_POSN 0x0264
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
384 #define CUR_HORZ_VERT_OFF 0x0268
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
385 /* CUR_OFFSET, CUR_HORZ_VERT_POSN, CUR_HORZ_VERT_OFF bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
386 # define CUR_LOCK 0x80000000
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
387 #define CUR_CLR0 0x026C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
388 #define CUR_CLR1 0x0270
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
389 #define CUR2_OFFSET 0x0360
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
390 #define CUR2_HORZ_VERT_POSN 0x0364
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
391 #define CUR2_HORZ_VERT_OFF 0x0368
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
392 # define CUR2_LOCK (1 << 31)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
393 #define CUR2_CLR0 0x036c
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
394 #define CUR2_CLR1 0x0370
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
395 #define FP_HORZ_VERT_ACTIVE 0x0278
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
396 #define CRTC_MORE_CNTL 0x027C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
397 #define DAC_EXT_CNTL 0x0280
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
398 #define FP_GEN_CNTL 0x0284
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
399 /* FP_GEN_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
400 # define FP_FPON (1 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
401 # define FP_TMDS_EN (1 << 2)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
402 # define FP_EN_TMDS (1 << 7)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
403 # define FP_DETECT_SENSE (1 << 8)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
404 # define FP_SEL_CRTC2 (1 << 13)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
405 # define FP_CRTC_DONT_SHADOW_HPAR (1 << 15)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
406 # define FP_CRTC_DONT_SHADOW_VPAR (1 << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
407 # define FP_CRTC_DONT_SHADOW_HEND (1 << 17)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
408 # define FP_CRTC_USE_SHADOW_VEND (1 << 18)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
409 # define FP_RMX_HVSYNC_CONTROL_EN (1 << 20)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
410 # define FP_DFP_SYNC_SEL (1 << 21)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
411 # define FP_CRTC_LOCK_8DOT (1 << 22)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
412 # define FP_CRT_SYNC_SEL (1 << 23)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
413 # define FP_USE_SHADOW_EN (1 << 24)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
414 # define FP_CRT_SYNC_ALT (1 << 26)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
415 #define FP2_GEN_CNTL 0x0288
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
416 /* FP2_GEN_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
417 # define FP2_FPON (1 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
418 # define FP2_TMDS_EN (1 << 2)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
419 # define FP2_EN_TMDS (1 << 7)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
420 # define FP2_DETECT_SENSE (1 << 8)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
421 # define FP2_SEL_CRTC2 (1 << 13)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
422 # define FP2_FP_POL (1 << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
423 # define FP2_LP_POL (1 << 17)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
424 # define FP2_SCK_POL (1 << 18)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
425 # define FP2_LCD_CNTL_MASK (7 << 19)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
426 # define FP2_PAD_FLOP_EN (1 << 22)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
427 # define FP2_CRC_EN (1 << 23)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
428 # define FP2_CRC_READ_EN (1 << 24)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
429 #define FP_HORZ_STRETCH 0x028C
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
430 #define FP_HORZ2_STRETCH 0x038C
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
431 # define HORZ_STRETCH_RATIO_MASK 0xffff
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
432 # define HORZ_STRETCH_RATIO_MAX 4096
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
433 # define HORZ_PANEL_SIZE (0x1ff << 16)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
434 # define HORZ_PANEL_SHIFT 16
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
435 # define HORZ_STRETCH_PIXREP (0 << 25)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
436 # define HORZ_STRETCH_BLEND (1 << 26)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
437 # define HORZ_STRETCH_ENABLE (1 << 25)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
438 # define HORZ_AUTO_RATIO (1 << 27)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
439 # define HORZ_FP_LOOP_STRETCH (0x7 << 28)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
440 # define HORZ_AUTO_RATIO_INC (1 << 31)
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
441 #define FP_VERT_STRETCH 0x0290
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
442 #define FP_VERT2_STRETCH 0x0390
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
443 # define VERT_PANEL_SIZE (0xfff << 12)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
444 # define VERT_PANEL_SHIFT 12
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
445 # define VERT_STRETCH_RATIO_MASK 0xfff
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
446 # define VERT_STRETCH_RATIO_SHIFT 0
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
447 # define VERT_STRETCH_RATIO_MAX 4096
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
448 # define VERT_STRETCH_ENABLE (1 << 25)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
449 # define VERT_STRETCH_LINEREP (0 << 26)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
450 # define VERT_STRETCH_BLEND (1 << 26)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
451 # define VERT_AUTO_RATIO_EN (1 << 27)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
452 # define VERT_STRETCH_RESERVED 0xf1000000
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
453 #define FP_H_SYNC_STRT_WID 0x02C4
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
454 #define FP_H2_SYNC_STRT_WID 0x03C4
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
455 #define FP_V_SYNC_STRT_WID 0x02C8
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
456 #define FP_V2_SYNC_STRT_WID 0x03C8
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
457 #define LVDS_GEN_CNTL 0x02d0
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
458 # define LVDS_ON (1 << 0)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
459 # define LVDS_DISPLAY_DIS (1 << 1)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
460 # define LVDS_PANEL_TYPE (1 << 2)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
461 # define LVDS_PANEL_FORMAT (1 << 3)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
462 # define LVDS_EN (1 << 7)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
463 # define LVDS_DIGON (1 << 18)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
464 # define LVDS_BLON (1 << 19)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
465 # define LVDS_SEL_CRTC2 (1 << 23)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
466 #define LVDS_PLL_CNTL 0x02d4
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
467 # define HSYNC_DELAY_SHIFT 28
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
468 # define HSYNC_DELAY_MASK (0xf << 28)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
469 #define AUX_WINDOW_HORZ_CNTL 0x02D8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
470 #define AUX_WINDOW_VERT_CNTL 0x02DC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
471 #define DDA_CONFIG 0x02e0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
472 #define DDA_ON_OFF 0x02e4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
473 #define GRPH_BUFFER_CNTL 0x02F0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
474 #define VGA_BUFFER_CNTL 0x02F4
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
475 /* first overlay unit (there is only one) */
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
476 #define OV0_Y_X_START 0x0400
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
477 #define OV0_Y_X_END 0x0404
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
478 #define OV0_PIPELINE_CNTL 0x0408
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
479 #define OV0_EXCLUSIVE_HORZ 0x0408
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
480 # define EXCL_HORZ_START_MASK 0x000000ff
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
481 # define EXCL_HORZ_END_MASK 0x0000ff00
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
482 # define EXCL_HORZ_BACK_PORCH_MASK 0x00ff0000
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
483 # define EXCL_HORZ_EXCLUSIVE_EN 0x80000000
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
484 #define OV0_EXCLUSIVE_VERT 0x040C
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
485 # define EXCL_VERT_START_MASK 0x000003ff
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
486 # define EXCL_VERT_END_MASK 0x03ff0000
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
487 #define OV0_REG_LOAD_CNTL 0x0410
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
488 # define REG_LD_CTL_LOCK 0x00000001L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
489 # define REG_LD_CTL_VBLANK_DURING_LOCK 0x00000002L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
490 # define REG_LD_CTL_STALL_GUI_UNTIL_FLIP 0x00000004L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
491 # define REG_LD_CTL_LOCK_READBACK 0x00000008L
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
492 #define OV0_SCALE_CNTL 0x0420
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
493 # define SCALER_PIX_EXPAND 0x00000001L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
494 # define SCALER_Y2R_TEMP 0x00000002L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
495 # define SCALER_HORZ_PICK_NEAREST 0x00000003L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
496 # define SCALER_VERT_PICK_NEAREST 0x00000004L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
497 # define SCALER_SIGNED_UV 0x00000010L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
498 # define SCALER_GAMMA_SEL_MASK 0x00000060L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
499 # define SCALER_GAMMA_SEL_BRIGHT 0x00000000L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
500 # define SCALER_GAMMA_SEL_G22 0x00000020L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
501 # define SCALER_GAMMA_SEL_G18 0x00000040L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
502 # define SCALER_GAMMA_SEL_G14 0x00000060L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
503 # define SCALER_COMCORE_SHIFT_UP_ONE 0x00000080L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
504 # define SCALER_SURFAC_FORMAT 0x00000f00L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
505 # define SCALER_SOURCE_15BPP 0x00000300L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
506 # define SCALER_SOURCE_16BPP 0x00000400L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
507 # define SCALER_SOURCE_32BPP 0x00000600L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
508 # define SCALER_SOURCE_YUV9 0x00000900L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
509 # define SCALER_SOURCE_YUV12 0x00000A00L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
510 # define SCALER_SOURCE_VYUY422 0x00000B00L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
511 # define SCALER_SOURCE_YVYU422 0x00000C00L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
512 # define SCALER_SMART_SWITCH 0x00008000L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
513 # define SCALER_BURST_PER_PLANE 0x00ff0000L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
514 # define SCALER_DOUBLE_BUFFER 0x01000000L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
515 # define SCALER_DIS_LIMIT 0x08000000L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
516 # define SCALER_PRG_LOAD_START 0x10000000L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
517 # define SCALER_INT_EMU 0x20000000L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
518 # define SCALER_ENABLE 0x40000000L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
519 # define SCALER_SOFT_RESET 0x80000000L
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
520 #define OV0_V_INC 0x0424
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
521 #define OV0_P1_V_ACCUM_INIT 0x0428
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
522 # define OV0_P1_MAX_LN_IN_PER_LN_OUT 0x00000003L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
523 # define OV0_P1_V_ACCUM_INIT_MASK 0x01ff8000L
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
524 #define OV0_P23_V_ACCUM_INIT 0x042C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
525 #define OV0_P1_BLANK_LINES_AT_TOP 0x0430
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
526 # define P1_BLNK_LN_AT_TOP_M1_MASK 0x00000fffL
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
527 # define P1_ACTIVE_LINES_M1 0x0fff0000L
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
528 #define OV0_P23_BLANK_LINES_AT_TOP 0x0434
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
529 # define P23_BLNK_LN_AT_TOP_M1_MASK 0x000007ffL
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
530 # define P23_ACTIVE_LINES_M1 0x07ff0000L
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
531 #define OV0_BASE_ADDR 0x043C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
532 #define OV0_VID_BUF0_BASE_ADRS 0x0440
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
533 # define VIF_BUF0_PITCH_SEL 0x00000001L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
534 # define VIF_BUF0_TILE_ADRS 0x00000002L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
535 # define VIF_BUF0_BASE_ADRS_MASK 0x03fffff0L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
536 # define VIF_BUF0_1ST_LINE_LSBS_MASK 0x48000000L
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
537 #define OV0_VID_BUF1_BASE_ADRS 0x0444
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
538 # define VIF_BUF1_PITCH_SEL 0x00000001L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
539 # define VIF_BUF1_TILE_ADRS 0x00000002L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
540 # define VIF_BUF1_BASE_ADRS_MASK 0x03fffff0L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
541 # define VIF_BUF1_1ST_LINE_LSBS_MASK 0x48000000L
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
542 #define OV0_VID_BUF2_BASE_ADRS 0x0448
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
543 # define VIF_BUF2_PITCH_SEL 0x00000001L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
544 # define VIF_BUF2_TILE_ADRS 0x00000002L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
545 # define VIF_BUF2_BASE_ADRS_MASK 0x03fffff0L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
546 # define VIF_BUF2_1ST_LINE_LSBS_MASK 0x48000000L
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
547 #define OV0_VID_BUF3_BASE_ADRS 0x044C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
548 #define OV0_VID_BUF4_BASE_ADRS 0x0450
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
549 #define OV0_VID_BUF5_BASE_ADRS 0x0454
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
550 #define OV0_VID_BUF_PITCH0_VALUE 0x0460
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
551 #define OV0_VID_BUF_PITCH1_VALUE 0x0464
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
552 #define OV0_AUTO_FLIP_CNTRL 0x0470
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
553 #define OV0_DEINTERLACE_PATTERN 0x0474
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
554 #define OV0_SUBMIT_HISTORY 0x0478
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
555 #define OV0_H_INC 0x0480
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
556 #define OV0_STEP_BY 0x0484
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
557 #define OV0_P1_H_ACCUM_INIT 0x0488
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
558 #define OV0_P23_H_ACCUM_INIT 0x048C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
559 #define OV0_P1_X_START_END 0x0494
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
560 #define OV0_P2_X_START_END 0x0498
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
561 #define OV0_P3_X_START_END 0x049C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
562 #define OV0_FILTER_CNTL 0x04A0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
563 #define OV0_FOUR_TAP_COEF_0 0x04B0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
564 #define OV0_FOUR_TAP_COEF_1 0x04B4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
565 #define OV0_FOUR_TAP_COEF_2 0x04B8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
566 #define OV0_FOUR_TAP_COEF_3 0x04BC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
567 #define OV0_FOUR_TAP_COEF_4 0x04C0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
568 #define OV0_FLAG_CNTRL 0x04DC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
569 #define OV0_SLICE_CNTL 0x04E0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
570 #define OV0_VID_KEY_CLR_LOW 0x04E4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
571 #define OV0_VID_KEY_CLR_HIGH 0x04E8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
572 #define OV0_GRPH_KEY_CLR_LOW 0x04EC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
573 #define OV0_GRPH_KEY_CLR_HIGH 0x04F0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
574 #define OV0_KEY_CNTL 0x04F4
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
575 # define VIDEO_KEY_FN_MASK 0x00000007L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
576 # define VIDEO_KEY_FN_FALSE 0x00000000L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
577 # define VIDEO_KEY_FN_TRUE 0x00000001L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
578 # define VIDEO_KEY_FN_EQ 0x00000004L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
579 # define VIDEO_KEY_FN_NE 0x00000005L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
580 # define GRAPHIC_KEY_FN_MASK 0x00000070L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
581 # define GRAPHIC_KEY_FN_FALSE 0x00000000L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
582 # define GRAPHIC_KEY_FN_TRUE 0x00000010L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
583 # define GRAPHIC_KEY_FN_EQ 0x00000040L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
584 # define GRAPHIC_KEY_FN_NE 0x00000050L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
585 # define CMP_MIX_MASK 0x00000100L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
586 # define CMP_MIX_OR 0x00000000L
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
587 # define CMP_MIX_AND 0x00000100L
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
588 #define OV0_TEST 0x04F8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
589 #define SUBPIC_CNTL 0x0540
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
590 #define SUBPIC_DEFCOLCON 0x0544
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
591 #define SUBPIC_Y_X_START 0x054C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
592 #define SUBPIC_Y_X_END 0x0550
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
593 #define SUBPIC_V_INC 0x0554
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
594 #define SUBPIC_H_INC 0x0558
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
595 #define SUBPIC_BUF0_OFFSET 0x055C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
596 #define SUBPIC_BUF1_OFFSET 0x0560
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
597 #define SUBPIC_LC0_OFFSET 0x0564
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
598 #define SUBPIC_LC1_OFFSET 0x0568
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
599 #define SUBPIC_PITCH 0x056C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
600 #define SUBPIC_BTN_HLI_COLCON 0x0570
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
601 #define SUBPIC_BTN_HLI_Y_X_START 0x0574
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
602 #define SUBPIC_BTN_HLI_Y_X_END 0x0578
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
603 #define SUBPIC_PALETTE_INDEX 0x057C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
604 #define SUBPIC_PALETTE_DATA 0x0580
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
605 #define SUBPIC_H_ACCUM_INIT 0x0584
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
606 #define SUBPIC_V_ACCUM_INIT 0x0588
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
607 #define DISP_MISC_CNTL 0x0D00
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
608 # define SOFT_RESET_GRPH_PP (1 << 0)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
609 #define DAC_MACRO_CNTL 0x0D04
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
610 #define DISP_PWR_MAN 0x0D08
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
611 #define DISP_TEST_DEBUG_CNTL 0x0D10
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
612 #define DISP_HW_DEBUG 0x0D14
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
613 #define DAC_CRC_SIG1 0x0D18
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
614 #define DAC_CRC_SIG2 0x0D1C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
615 #define OV0_LIN_TRANS_A 0x0D20
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
616 #define OV0_LIN_TRANS_B 0x0D24
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
617 #define OV0_LIN_TRANS_C 0x0D28
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
618 #define OV0_LIN_TRANS_D 0x0D2C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
619 #define OV0_LIN_TRANS_E 0x0D30
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
620 #define OV0_LIN_TRANS_F 0x0D34
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
621 #define OV0_GAMMA_0_F 0x0D40
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
622 #define OV0_GAMMA_10_1F 0x0D44
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
623 #define OV0_GAMMA_20_3F 0x0D48
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
624 #define OV0_GAMMA_40_7F 0x0D4C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
625 #define OV0_GAMMA_380_3BF 0x0D50
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
626 #define OV0_GAMMA_3C0_3FF 0x0D54
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
627 #define DISP_MERGE_CNTL 0x0D60
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
628 #define DISP_OUTPUT_CNTL 0x0D64
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
629 # define DISP_DAC_SOURCE_MASK 0x03
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
630 # define DISP_DAC_SOURCE_CRTC2 0x01
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
631 #define DISP_LIN_TRANS_GRPH_A 0x0D80
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
632 #define DISP_LIN_TRANS_GRPH_B 0x0D84
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
633 #define DISP_LIN_TRANS_GRPH_C 0x0D88
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
634 #define DISP_LIN_TRANS_GRPH_D 0x0D8C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
635 #define DISP_LIN_TRANS_GRPH_E 0x0D90
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
636 #define DISP_LIN_TRANS_GRPH_F 0x0D94
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
637 #define DISP_LIN_TRANS_VID_A 0x0D98
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
638 #define DISP_LIN_TRANS_VID_B 0x0D9C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
639 #define DISP_LIN_TRANS_VID_C 0x0DA0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
640 #define DISP_LIN_TRANS_VID_D 0x0DA4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
641 #define DISP_LIN_TRANS_VID_E 0x0DA8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
642 #define DISP_LIN_TRANS_VID_F 0x0DAC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
643 #define RMX_HORZ_FILTER_0TAP_COEF 0x0DB0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
644 #define RMX_HORZ_FILTER_1TAP_COEF 0x0DB4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
645 #define RMX_HORZ_FILTER_2TAP_COEF 0x0DB8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
646 #define RMX_HORZ_PHASE 0x0DBC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
647 #define DAC_EMBEDDED_SYNC_CNTL 0x0DC0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
648 #define DAC_BROAD_PULSE 0x0DC4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
649 #define DAC_SKEW_CLKS 0x0DC8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
650 #define DAC_INCR 0x0DCC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
651 #define DAC_NEG_SYNC_LEVEL 0x0DD0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
652 #define DAC_POS_SYNC_LEVEL 0x0DD4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
653 #define DAC_BLANK_LEVEL 0x0DD8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
654 #define CLOCK_CNTL_INDEX 0x0008
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
655 /* CLOCK_CNTL_INDEX bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
656 # define PLL_WR_EN 0x00000080
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
657 # define PLL_DIV_SEL (3 << 8)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
658 # define PLL2_DIV_SEL_MASK ~(3 << 8)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
659 #define CLOCK_CNTL_DATA 0x000C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
660 #define CP_RB_CNTL 0x0704
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
661 #define CP_RB_BASE 0x0700
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
662 #define CP_RB_RPTR_ADDR 0x070C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
663 #define CP_RB_RPTR 0x0710
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
664 #define CP_RB_WPTR 0x0714
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
665 #define CP_RB_WPTR_DELAY 0x0718
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
666 #define CP_IB_BASE 0x0738
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
667 #define CP_IB_BUFSZ 0x073C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
668 #define SCRATCH_REG0 0x15E0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
669 #define GUI_SCRATCH_REG0 0x15E0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
670 #define SCRATCH_REG1 0x15E4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
671 #define GUI_SCRATCH_REG1 0x15E4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
672 #define SCRATCH_REG2 0x15E8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
673 #define GUI_SCRATCH_REG2 0x15E8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
674 #define SCRATCH_REG3 0x15EC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
675 #define GUI_SCRATCH_REG3 0x15EC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
676 #define SCRATCH_REG4 0x15F0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
677 #define GUI_SCRATCH_REG4 0x15F0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
678 #define SCRATCH_REG5 0x15F4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
679 #define GUI_SCRATCH_REG5 0x15F4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
680 #define SCRATCH_UMSK 0x0770
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
681 #define SCRATCH_ADDR 0x0774
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
682 #define DP_BRUSH_FRGD_CLR 0x147C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
683 #define DP_BRUSH_BKGD_CLR 0x1478
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
684 #define DST_LINE_START 0x1600
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
685 #define DST_LINE_END 0x1604
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
686 #define SRC_OFFSET 0x15AC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
687 #define SRC_PITCH 0x15B0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
688 #define SRC_TILE 0x1704
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
689 #define SRC_PITCH_OFFSET 0x1428
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
690 #define SRC_X 0x1414
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
691 #define SRC_Y 0x1418
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
692 #define SRC_X_Y 0x1590
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
693 #define SRC_Y_X 0x1434
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
694 #define DST_Y_X 0x1438
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
695 #define DST_WIDTH_HEIGHT 0x1598
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
696 #define DST_HEIGHT_WIDTH 0x143c
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
697 #define SRC_CLUT_ADDRESS 0x1780
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
698 #define SRC_CLUT_DATA 0x1784
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
699 #define SRC_CLUT_DATA_RD 0x1788
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
700 #define HOST_DATA0 0x17C0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
701 #define HOST_DATA1 0x17C4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
702 #define HOST_DATA2 0x17C8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
703 #define HOST_DATA3 0x17CC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
704 #define HOST_DATA4 0x17D0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
705 #define HOST_DATA5 0x17D4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
706 #define HOST_DATA6 0x17D8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
707 #define HOST_DATA7 0x17DC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
708 #define HOST_DATA_LAST 0x17E0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
709 #define DP_SRC_ENDIAN 0x15D4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
710 #define DP_SRC_FRGD_CLR 0x15D8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
711 #define DP_SRC_BKGD_CLR 0x15DC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
712 #define SC_LEFT 0x1640
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
713 #define SC_RIGHT 0x1644
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
714 #define SC_TOP 0x1648
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
715 #define SC_BOTTOM 0x164C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
716 #define SRC_SC_RIGHT 0x1654
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
717 #define SRC_SC_BOTTOM 0x165C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
718 #define DP_CNTL 0x16C0
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
719 /* DP_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
720 # define DST_X_RIGHT_TO_LEFT 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
721 # define DST_X_LEFT_TO_RIGHT 0x00000001
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
722 # define DST_Y_BOTTOM_TO_TOP 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
723 # define DST_Y_TOP_TO_BOTTOM 0x00000002
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
724 # define DST_X_MAJOR 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
725 # define DST_Y_MAJOR 0x00000004
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
726 # define DST_X_TILE 0x00000008
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
727 # define DST_Y_TILE 0x00000010
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
728 # define DST_LAST_PEL 0x00000020
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
729 # define DST_TRAIL_X_RIGHT_TO_LEFT 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
730 # define DST_TRAIL_X_LEFT_TO_RIGHT 0x00000040
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
731 # define DST_TRAP_FILL_RIGHT_TO_LEFT 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
732 # define DST_TRAP_FILL_LEFT_TO_RIGHT 0x00000080
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
733 # define DST_BRES_SIGN 0x00000100
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
734 # define DST_HOST_BIG_ENDIAN_EN 0x00000200
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
735 # define DST_POLYLINE_NONLAST 0x00008000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
736 # define DST_RASTER_STALL 0x00010000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
737 # define DST_POLY_EDGE 0x00040000
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
738 #define DP_CNTL_XDIR_YDIR_YMAJOR 0x16D0
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
739 /* DP_CNTL_XDIR_YDIR_YMAJOR bit constants (short version of DP_CNTL) */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
740 # define DST_X_MAJOR_S 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
741 # define DST_Y_MAJOR_S 0x00000001
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
742 # define DST_Y_BOTTOM_TO_TOP_S 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
743 # define DST_Y_TOP_TO_BOTTOM_S 0x00008000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
744 # define DST_X_RIGHT_TO_LEFT_S 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
745 # define DST_X_LEFT_TO_RIGHT_S 0x80000000
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
746 #define DP_DATATYPE 0x16C4
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
747 /* DP_DATATYPE bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
748 # define DST_8BPP 0x00000002
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
749 # define DST_15BPP 0x00000003
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
750 # define DST_16BPP 0x00000004
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
751 # define DST_24BPP 0x00000005
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
752 # define DST_32BPP 0x00000006
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
753 # define DST_8BPP_RGB332 0x00000007
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
754 # define DST_8BPP_Y8 0x00000008
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
755 # define DST_8BPP_RGB8 0x00000009
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
756 # define DST_16BPP_VYUY422 0x0000000b
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
757 # define DST_16BPP_YVYU422 0x0000000c
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
758 # define DST_32BPP_AYUV444 0x0000000e
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
759 # define DST_16BPP_ARGB4444 0x0000000f
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
760 # define BRUSH_SOLIDCOLOR 0x00000d00
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
761 # define SRC_MONO 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
762 # define SRC_MONO_LBKGD 0x00010000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
763 # define SRC_DSTCOLOR 0x00030000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
764 # define BYTE_ORDER_MSB_TO_LSB 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
765 # define BYTE_ORDER_LSB_TO_MSB 0x40000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
766 # define DP_CONVERSION_TEMP 0x80000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
767 # define HOST_BIG_ENDIAN_EN (1 << 29)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
768 #define DP_MIX 0x16C8
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
769 /* DP_MIX bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
770 # define DP_SRC_RECT 0x00000200
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
771 # define DP_SRC_HOST 0x00000300
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
772 # define DP_SRC_HOST_BYTEALIGN 0x00000400
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
773 #define DP_WRITE_MSK 0x16CC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
774 #define DP_XOP 0x17F8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
775 #define CLR_CMP_CLR_SRC 0x15C4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
776 #define CLR_CMP_CLR_DST 0x15C8
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
777 #define CLR_CMP_CNTL 0x15C0
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
778 /* CLR_CMP_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
779 # define COMPARE_SRC_FALSE 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
780 # define COMPARE_SRC_TRUE 0x00000001
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
781 # define COMPARE_SRC_NOT_EQUAL 0x00000004
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
782 # define COMPARE_SRC_EQUAL 0x00000005
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
783 # define COMPARE_SRC_EQUAL_FLIP 0x00000007
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
784 # define COMPARE_DST_FALSE 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
785 # define COMPARE_DST_TRUE 0x00000100
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
786 # define COMPARE_DST_NOT_EQUAL 0x00000400
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
787 # define COMPARE_DST_EQUAL 0x00000500
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
788 # define COMPARE_DESTINATION 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
789 # define COMPARE_SOURCE 0x01000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
790 # define COMPARE_SRC_AND_DST 0x02000000
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
791 #define CLR_CMP_MSK 0x15CC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
792 #define DSTCACHE_MODE 0x1710
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
793 #define DSTCACHE_CTLSTAT 0x1714
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
794 /* DSTCACHE_CTLSTAT bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
795 # define RB2D_DC_FLUSH (3 << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
796 # define RB2D_DC_FLUSH_ALL 0xf
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
797 # define RB2D_DC_BUSY (1 << 31)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
798 #define DEFAULT_PITCH_OFFSET 0x16E0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
799 #define DEFAULT_SC_BOTTOM_RIGHT 0x16E8
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
800 /* DEFAULT_SC_BOTTOM_RIGHT bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
801 # define DEFAULT_SC_RIGHT_MAX (0x1fff << 0)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
802 # define DEFAULT_SC_BOTTOM_MAX (0x1fff << 16)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
803 #define DP_GUI_MASTER_CNTL 0x146C
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
804 /* DP_GUI_MASTER_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
805 # define GMC_SRC_PITCH_OFFSET_DEFAULT 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
806 # define GMC_SRC_PITCH_OFFSET_LEAVE 0x00000001
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
807 # define GMC_DST_PITCH_OFFSET_DEFAULT 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
808 # define GMC_DST_PITCH_OFFSET_LEAVE 0x00000002
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
809 # define GMC_SRC_CLIP_DEFAULT 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
810 # define GMC_SRC_CLIP_LEAVE 0x00000004
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
811 # define GMC_DST_CLIP_DEFAULT 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
812 # define GMC_DST_CLIP_LEAVE 0x00000008
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
813 # define GMC_BRUSH_8x8MONO 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
814 # define GMC_BRUSH_8x8MONO_LBKGD 0x00000010
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
815 # define GMC_BRUSH_8x1MONO 0x00000020
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
816 # define GMC_BRUSH_8x1MONO_LBKGD 0x00000030
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
817 # define GMC_BRUSH_1x8MONO 0x00000040
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
818 # define GMC_BRUSH_1x8MONO_LBKGD 0x00000050
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
819 # define GMC_BRUSH_32x1MONO 0x00000060
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
820 # define GMC_BRUSH_32x1MONO_LBKGD 0x00000070
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
821 # define GMC_BRUSH_32x32MONO 0x00000080
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
822 # define GMC_BRUSH_32x32MONO_LBKGD 0x00000090
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
823 # define GMC_BRUSH_8x8COLOR 0x000000a0
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
824 # define GMC_BRUSH_8x1COLOR 0x000000b0
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
825 # define GMC_BRUSH_1x8COLOR 0x000000c0
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
826 # define GMC_BRUSH_SOLID_COLOR 0x000000d0
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
827 # define GMC_DST_8BPP 0x00000200
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
828 # define GMC_DST_15BPP 0x00000300
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
829 # define GMC_DST_16BPP 0x00000400
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
830 # define GMC_DST_24BPP 0x00000500
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
831 # define GMC_DST_32BPP 0x00000600
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
832 # define GMC_DST_8BPP_RGB332 0x00000700
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
833 # define GMC_DST_8BPP_Y8 0x00000800
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
834 # define GMC_DST_8BPP_RGB8 0x00000900
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
835 # define GMC_DST_16BPP_VYUY422 0x00000b00
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
836 # define GMC_DST_16BPP_YVYU422 0x00000c00
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
837 # define GMC_DST_32BPP_AYUV444 0x00000e00
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
838 # define GMC_DST_16BPP_ARGB4444 0x00000f00
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
839 # define GMC_SRC_MONO 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
840 # define GMC_SRC_MONO_LBKGD 0x00001000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
841 # define GMC_SRC_DSTCOLOR 0x00003000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
842 # define GMC_BYTE_ORDER_MSB_TO_LSB 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
843 # define GMC_BYTE_ORDER_LSB_TO_MSB 0x00004000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
844 # define GMC_DP_CONVERSION_TEMP_9300 0x00008000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
845 # define GMC_DP_CONVERSION_TEMP_6500 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
846 # define GMC_DP_SRC_RECT 0x02000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
847 # define GMC_DP_SRC_HOST 0x03000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
848 # define GMC_DP_SRC_HOST_BYTEALIGN 0x04000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
849 # define GMC_3D_FCN_EN_CLR 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
850 # define GMC_3D_FCN_EN_SET 0x08000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
851 # define GMC_DST_CLR_CMP_FCN_LEAVE 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
852 # define GMC_DST_CLR_CMP_FCN_CLEAR 0x10000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
853 # define GMC_AUX_CLIP_LEAVE 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
854 # define GMC_AUX_CLIP_CLEAR 0x20000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
855 # define GMC_WRITE_MASK_LEAVE 0x00000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
856 # define GMC_WRITE_MASK_SET 0x40000000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
857 # define GMC_CLR_CMP_CNTL_DIS (1 << 28)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
858 # define GMC_SRC_DATATYPE_COLOR (3 << 12)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
859 # define ROP3_S 0x00cc0000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
860 # define ROP3_SRCCOPY 0x00cc0000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
861 # define ROP3_P 0x00f00000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
862 # define ROP3_PATCOPY 0x00f00000
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
863 # define DP_SRC_SOURCE_MASK (7 << 24)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
864 # define GMC_BRUSH_NONE (15 << 4)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
865 # define DP_SRC_SOURCE_MEMORY (2 << 24)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
866 # define GMC_BRUSH_SOLIDCOLOR 0x000000d0
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
867 #define SC_TOP_LEFT 0x16EC
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
868 #define SC_BOTTOM_RIGHT 0x16F0
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
869 #define SRC_SC_BOTTOM_RIGHT 0x16F4
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
870 #define RB2D_DSTCACHE_CTLSTAT 0x342C
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
871
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
872 #define RADEON_BASE_CODE 0x0f0b
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
873 #define RADEON_BIOS_0_SCRATCH 0x0010
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
874 #define RADEON_BIOS_1_SCRATCH 0x0014
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
875 #define RADEON_BIOS_2_SCRATCH 0x0018
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
876 #define RADEON_BIOS_3_SCRATCH 0x001c
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
877 #define RADEON_BIOS_4_SCRATCH 0x0020
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
878 #define RADEON_BIOS_5_SCRATCH 0x0024
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
879 #define RADEON_BIOS_6_SCRATCH 0x0028
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
880 #define RADEON_BIOS_7_SCRATCH 0x002c
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
881
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
882
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
883 #define CLK_PIN_CNTL 0x0001
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
884 #define PPLL_CNTL 0x0002
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
885 # define PPLL_RESET (1 << 0)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
886 # define PPLL_SLEEP (1 << 1)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
887 # define PPLL_ATOMIC_UPDATE_EN (1 << 16)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
888 # define PPLL_VGA_ATOMIC_UPDATE_EN (1 << 17)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
889 # define PPLL_ATOMIC_UPDATE_VSYNC (1 << 18)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
890 #define PPLL_REF_DIV 0x0003
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
891 # define PPLL_REF_DIV_MASK 0x03ff
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
892 # define PPLL_ATOMIC_UPDATE_R (1 << 15) /* same as _W */
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
893 # define PPLL_ATOMIC_UPDATE_W (1 << 15) /* same as _R */
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
894 #define PPLL_DIV_0 0x0004
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
895 #define PPLL_DIV_1 0x0005
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
896 #define PPLL_DIV_2 0x0006
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
897 #define PPLL_DIV_3 0x0007
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
898 #define VCLK_ECP_CNTL 0x0008
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
899 #define HTOTAL_CNTL 0x0009
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
900 #define HTOTAL2_CNTL 0x002e /* PLL */
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
901 #define M_SPLL_REF_FB_DIV 0x000a
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
902 #define AGP_PLL_CNTL 0x000b
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
903 #define SPLL_CNTL 0x000c
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
904 #define SCLK_CNTL 0x000d
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
905 #define MPLL_CNTL 0x000e
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
906 #define MCLK_CNTL 0x0012
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
907 /* MCLK_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
908 # define FORCEON_MCLKA (1 << 16)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
909 # define FORCEON_MCLKB (1 << 17)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
910 # define FORCEON_YCLKA (1 << 18)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
911 # define FORCEON_YCLKB (1 << 19)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
912 # define FORCEON_MC (1 << 20)
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
913 # define FORCEON_AIC (1 << 21)
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
914 #define PLL_TEST_CNTL 0x0013
1945
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
915 #define P2PLL_CNTL 0x002a /* P2PLL */
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
916 # define P2PLL_RESET (1 << 0)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
917 # define P2PLL_SLEEP (1 << 1)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
918 # define P2PLL_ATOMIC_UPDATE_EN (1 << 16)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
919 # define P2PLL_VGA_ATOMIC_UPDATE_EN (1 << 17)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
920 # define P2PLL_ATOMIC_UPDATE_VSYNC (1 << 18)
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
921 #define P2PLL_DIV_0 0x002c
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
922 # define P2PLL_FB0_DIV_MASK 0x07ff
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
923 # define P2PLL_POST0_DIV_MASK 0x00070000
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
924 #define P2PLL_REF_DIV 0x002B /* PLL */
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
925 # define P2PLL_REF_DIV_MASK 0x03ff
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
926 # define P2PLL_ATOMIC_UPDATE_R (1 << 15) /* same as _W */
0f204bd39635 More known registers and their bit-constants
nick
parents: 1915
diff changeset
927 # define P2PLL_ATOMIC_UPDATE_W (1 << 15) /* same as _R */
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
928
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
929 /* masks */
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
930
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
931 #define CONFIG_MEMSIZE_MASK 0x1f000000
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
932 #define MEM_CFG_TYPE 0x40000000
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
933 #define DST_OFFSET_MASK 0x003fffff
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
934 #define DST_PITCH_MASK 0x3fc00000
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
935 #define DEFAULT_TILE_MASK 0xc0000000
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
936 #define PPLL_DIV_SEL_MASK 0x00000300
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
937 #define PPLL_FB3_DIV_MASK 0x000007ff
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
938 #define PPLL_POST3_DIV_MASK 0x00070000
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
939
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
940 #define GUI_ACTIVE 0x80000000
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
941
1915
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
942 /* GEN_RESET_CNTL bit constants */
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
943 #define SOFT_RESET_GUI 0x00000001
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
944 #define SOFT_RESET_VCLK 0x00000100
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
945 #define SOFT_RESET_PCLK 0x00000200
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
946 #define SOFT_RESET_ECP 0x00000400
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
947 #define SOFT_RESET_DISPENG_XCLK 0x00000800
31fdf7bb1a8e A lot of VE related improvements and code cleanup
nick
parents: 1914
diff changeset
948
1911
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
949 #endif /* _RADEON_H */
89313cfc8fec Initial import of Ani Joshi's radeonfb-0.0.9
nick
parents:
diff changeset
950