1 | /*␊ |
2 | * ATI Graphics Card Enabler, part of the Chameleon Boot Loader Project␊ |
3 | *␊ |
4 | * Copyright 2010 by Islam M. Ahmed Zaid. All rights reserved.␊ |
5 | *␊ |
6 | */␊ |
7 | ␊ |
8 | #include "ati.h"␊ |
9 | #ifndef DEBUG_ATI␊ |
10 | ␉#define DEBUG_ATI 0␊ |
11 | #endif␊ |
12 | ␊ |
13 | #if DEBUG_ATI␊ |
14 | ␉#define DBG(x...)␉printf(x)␊ |
15 | #else␊ |
16 | ␉#define DBG(x...)␉msglog(x)␊ |
17 | #endif␊ |
18 | ␊ |
19 | /* vals */␊ |
20 | static value_t aty_name;␊ |
21 | static value_t aty_nameparent;␊ |
22 | card_t *card;␊ |
23 | ␊ |
24 | static bool␉doit␉= false;␊ |
25 | ␊ |
26 | static card_config_t card_configs[] = {␊ |
27 | ␉{NULL,␉␉0},␊ |
28 | ␉/* OLDController */␊ |
29 | ␉{"Wormy",␉2},␊ |
30 | ␉{"Alopias",␉2},␊ |
31 | ␉{"Caretta",␉1},␊ |
32 | ␉{"Kakapo",␉3},␊ |
33 | ␉{"Kipunji",␉4},␊ |
34 | ␉{"Peregrine",␉2},␊ |
35 | ␉{"Raven",␉3},␊ |
36 | ␉{"Sphyrna",␉1},␊ |
37 | ␉/* AMD2400Controller */␊ |
38 | ␉{"Iago",␉2},␊ |
39 | ␉/* AMD2600Controller */␊ |
40 | ␉{"Hypoprion",␉2},␊ |
41 | ␉{"Lamna",␉2},␊ |
42 | ␉/* AMD3800Controller */␊ |
43 | ␉{"Megalodon",␉3},␊ |
44 | ␉{"Triakis",␉2},␊ |
45 | ␉/* AMD4600Controller */␊ |
46 | ␉{"Flicker",␉3},␊ |
47 | ␉{"Gliff",␉3},␊ |
48 | ␉{"Shrike",␉3},␊ |
49 | ␉/* AMD4800Controller */␊ |
50 | ␉{"Cardinal",␉2},␊ |
51 | ␉{"Motmot",␉2},␊ |
52 | ␉{"Quail",␉3},␊ |
53 | ␉/* AMD5000Controller */␊ |
54 | ␉{"Douc",␉2},␊ |
55 | ␉{"Langur",␉3},␊ |
56 | ␉{"Uakari",␉4},␊ |
57 | ␉{"Zonalis",␉6},␊ |
58 | ␉{"Alouatta",␉4},␊ |
59 | ␉{"Hoolock",␉1},␊ |
60 | ␉{"Vervet",␉4},␊ |
61 | ␉{"Baboon",␉3},␊ |
62 | ␉{"Eulemur",␉3},␊ |
63 | ␉{"Galago",␉2},␊ |
64 | ␉{"Colobus",␉2},␊ |
65 | ␉{"Mangabey",␉2},␊ |
66 | ␉{"Nomascus",␉4}, // 5␊ |
67 | ␉{"Orangutan",␉2},␊ |
68 | ␉/* AMD6000Controller */␊ |
69 | ␉{"Pithecia",␉2}, // 3␊ |
70 | ␉{"Bulrushes",␉6},␊ |
71 | ␉{"Cattail",␉4},␊ |
72 | ␉{"Hydrilla",␉5},␊ |
73 | ␉{"Duckweed",␉4},␊ |
74 | ␉{"Fanwort",␉4},␊ |
75 | ␉{"Elodea",␉5},␊ |
76 | ␉{"Kudzu",␉2},␊ |
77 | ␉{"Gibba",␉5},␊ |
78 | ␉{"Lotus",␉3},␊ |
79 | ␉{"Ipomoea",␉3},␊ |
80 | ␉{"Muskgrass",␉4},␊ |
81 | ␉{"Juncus",␉4},␊ |
82 | ␉{"Osmunda", 4},␊ |
83 | ␉{"Pondweed",␉3},␊ |
84 | ␉{"Spikerush", 4},␊ |
85 | ␉{"Typha", 5},␊ |
86 | ␉/* AMD7000Controller */␊ |
87 | ␉{"Namako",␉4},␊ |
88 | ␉{"Aji",␉␉4},␊ |
89 | ␉{"Buri",␉4},␊ |
90 | ␉{"Chutoro",␉5},␊ |
91 | ␉{"Dashimaki",␉4},␊ |
92 | ␉{"Ebi",␉␉5},␊ |
93 | ␉{"Gari",␉5},␊ |
94 | ␉{"Futomaki",␉5},␊ |
95 | ␉{"Hamachi",␉4},␊ |
96 | ␉{"OPM", 6},␊ |
97 | ␉{"Ikura",␉1},␊ |
98 | ␉{"IkuraS",␉6},␊ |
99 | ␉{"Junsai",␉6},␊ |
100 | ␉{"Kani",␉1},␊ |
101 | ␉{"KaniS",␉6},␊ |
102 | ␉{"DashimakiS",␉4},␊ |
103 | ␉{"Maguro",␉1},␊ |
104 | ␉{"MaguroS",␉6},␊ |
105 | ␉/* AMD8000Controller */␊ |
106 | ␉{"Baladi", 6},␊ |
107 | ␉/* AMD9000Controller */␊ |
108 | ␉{"Exmoor",␉4},␊ |
109 | ␉{"Basset",␉4},␊ |
110 | ␉{"Greyhound",␉6}␊ |
111 | };␊ |
112 | ␊ |
113 | static radeon_card_info_t radeon_cards[] = {␊ |
114 | ␉␊ |
115 | ␉// Earlier cards are not supported␊ |
116 | ␉//␊ |
117 | ␉// Layout is device_id, subsys_id (subsystem id plus vendor id), chip_family_name, display name, frame buffer␊ |
118 | ␉// Cards are grouped by device id and vendor id then sorted by subsystem id to make it easier to add new cards␊ |
119 | ␉//␊ |
120 | /*␊ |
121 | ␉{ 0x9400,␉0x01611043, CHIP_FAMILY_R600,␉␉"ATI Radeon HD 2900 XT", kNull␉␉},␊ |
122 | ␉{ 0x9400,␉0x021E1043, CHIP_FAMILY_R600,␉␉"ATI Radeon HD 2900 XT", kNull␉␉},␊ |
123 | ␉{ 0x9400,␉0x25521002, CHIP_FAMILY_R600,␉␉"ATI Radeon HD 2900 XT", kNull␉␉},␊ |
124 | ␉{ 0x9400,␉0x30001002, CHIP_FAMILY_R600,␉␉"ATI Radeon HD 2900 PRO", kNull␉␉},␊ |
125 | ␉{ 0x9400,␉0x31421002, CHIP_FAMILY_R600,␉␉"ATI Radeon HD 2900 XT", kNull␉␉},␊ |
126 | ␊ |
127 | ␉{ 0x9440,␉0x05021002, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4870", kMotmot␉␉},␊ |
128 | ␉{ 0x9440,␉0x0851174B, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4870", kMotmot␉␉},␊ |
129 | ␉{ 0x9440,␉0x114A174B, CHIP_FAMILY_RV770,␉␉"Sapphire Radeon HD4870 Vapor-X", kCardinal␉},␊ |
130 | ␉{ 0x9440,␉0x24401682, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4870", kMotmot␉␉},␊ |
131 | ␉{ 0x9440,␉0x24411682, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4870", kMotmot␉␉},␊ |
132 | ␉{ 0x9440,␉0x24441682, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4870", kMotmot␉␉},␊ |
133 | ␉{ 0x9440,␉0x24451682, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4870", kMotmot␉␉},␊ |
134 | ␊ |
135 | ␉{ 0x9441,␉0x02601043, CHIP_FAMILY_RV770,␉␉"ASUS EAH4870x2", kMotmot␉␉},␊ |
136 | ␉{ 0x9441,␉0x02841043, CHIP_FAMILY_RV770,␉␉"ASUS EAH4870x2", kMotmot␉␉},␊ |
137 | ␉{ 0x9441,␉0x24401682, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4870 X2", kMotmot␉␉},␊ |
138 | ␉{ 0x9441,␉0x25421002, CHIP_FAMILY_RV770,␉␉"PowerColor HD 4870 X2", kMotmot␉␉},␊ |
139 | ␊ |
140 | ␉{ 0x9442,␉0x05021002, CHIP_FAMILY_RV770,␉␉"MSI R4850-T2D512", kMotmot␉␉},␊ |
141 | ␉{ 0x9442,␉0x080110B0, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
142 | ␉{ 0x9442,␉0x24701682, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
143 | ␉{ 0x9442,␉0x24711682, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
144 | ␉{ 0x9442,␉0xE104174B, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
145 | ␉{ 0x9442,␉0xE810174B, CHIP_FAMILY_RV770,␉␉"Sapphire HD 4850", kMotmot␉␉},␊ |
146 | ␊ |
147 | ␉{ 0x944A,␉0x02A21028, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
148 | ␉{ 0x944A,␉0x30001043, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
149 | ␉{ 0x944A,␉0x30001458, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
150 | ␉{ 0x944A,␉0x30001462, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
151 | ␉{ 0x944A,␉0x30001545, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
152 | ␉{ 0x944A,␉0x30001682, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
153 | ␉{ 0x944A,␉0x3000174B, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
154 | ␉{ 0x944A,␉0x30001787, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
155 | ␉{ 0x944A,␉0x300017AF, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4850", kMotmot␉␉},␊ |
156 | ␊ |
157 | ␉{ 0x944C,␉0x05021002, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4830", kMotmot␉␉},␊ |
158 | ␉{ 0x944C,␉0x20031787, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4830", kMotmot␉␉},␊ |
159 | ␉{ 0x944C,␉0x24801682, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4830", kMotmot␉␉},␊ |
160 | ␉{ 0x944C,␉0x24811682, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4830", kMotmot␉␉},␊ |
161 | ␊ |
162 | ␉{ 0x944E,␉0x30001787, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4730", kMotmot␉␉},␊ |
163 | ␉{ 0x944E,␉0x30101787, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4810", kMotmot␉␉},␊ |
164 | ␉{ 0x944E,␉0x31001787, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4820", kMotmot␉␉},␊ |
165 | ␉{ 0x944E,␉0x3260174B, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4810", kMotmot␉␉},␊ |
166 | ␉{ 0x944E,␉0x3261174B, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4810", kMotmot␉␉},␊ |
167 | ␊ |
168 | ␉{ 0x9460,␉0x27021682, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4890", kMotmot␉␉},␊ |
169 | ␉{ 0x9460,␉0xE115174B, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4890", kMotmot␉␉},␊ |
170 | ␉{ 0x9460,␉0xE118174B, CHIP_FAMILY_RV770,␉␉"ATI Radeon HD 4890", kMotmot␉␉},␊ |
171 | ␊ |
172 | ␉{ 0x9480,␉0x01211025, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4650M", kGliff␉␉},␊ |
173 | ␉{ 0x9480,␉0x03111025, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 5165M", kPeregrine␉␉},␊ |
174 | ␉{ 0x9480,␉0x03121025, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 5165M", kPeregrine␉␉},␊ |
175 | ␉{ 0x9480,␉0x031C1025, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 5165M", kPeregrine␉␉},␊ |
176 | ␉{ 0x9480,␉0x031D1025, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 5165M", kPeregrine␉␉},␊ |
177 | ␉{ 0x9480,␉0x036C1025, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 5165M", kPeregrine␉␉},␊ |
178 | ␉{ 0x9480,␉0x036D1025, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 5165M", kPeregrine␉␉},␊ |
179 | ␉{ 0x9480,␉0x3628103C, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4650M", kGliff␉␉},␊ |
180 | ␉{ 0x9480,␉0x9035104D, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4650M", kGliff␉␉},␊ |
181 | ␉{ 0x9480,␉0xFD001179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4650M", kPeregrine␉␉},␊ |
182 | ␉{ 0x9480,␉0xFDD01179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4650M", kPeregrine␉␉},␊ |
183 | ␉{ 0x9480,␉0xFD121179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4650M", kPeregrine␉␉},␊ |
184 | ␉{ 0x9480,␉0xFD501179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4650M", kPeregrine␉␉},␊ |
185 | ␉{ 0x9480,␉0xFF001179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4600M", kPeregrine␉␉},␊ |
186 | ␉{ 0x9480,␉0xFF151179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4600M", kPeregrine␉␉},␊ |
187 | ␉{ 0x9480,␉0xFF221179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4600M", kPeregrine␉␉},␊ |
188 | ␉{ 0x9480,␉0xFF501179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4600M", kPeregrine␉␉},␊ |
189 | ␉{ 0x9480,␉0xFF801179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4600M", kPeregrine␉␉},␊ |
190 | ␉{ 0x9480,␉0xFF821179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 5165M", kPeregrine␉␉},␊ |
191 | ␉{ 0x9480,␉0xFFA01179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4600M", kPeregrine␉␉},␊ |
192 | ␉{ 0x9480,␉0xFFA21179, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 5165M", kPeregrine␉␉},␊ |
193 | ␊ |
194 | ␉{ 0x9490,␉0x20031787, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4670", kFlicker␉},␊ |
195 | ␉{ 0x9490,␉0x25421028, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4670", kFlicker␉},␊ |
196 | ␉{ 0x9490,␉0x30501787, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4710", kPeregrine␉␉},␊ |
197 | ␉{ 0x9490,␉0x300017AF, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4710", kPeregrine␉␉},␊ |
198 | ␉{ 0x9490,␉0x4710174B, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4710", kPeregrine␉␉},␊ |
199 | ␊ |
200 | ␉{ 0x9498,␉0x10001043, CHIP_FAMILY_RV730,␉␉"ASUS EAHG4670", kPeregrine␉␉},␊ |
201 | ␉{ 0x9498,␉0x20091787, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4650", kPeregrine␉␉},␊ |
202 | ␉{ 0x9498,␉0x21CF1458, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4600", kPeregrine␉␉},␊ |
203 | ␉{ 0x9498,␉0x24511682, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4650", kPeregrine␉␉},␊ |
204 | ␉{ 0x9498,␉0x24521682, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4650", kPeregrine␉␉},␊ |
205 | ␉{ 0x9498,␉0x24541682, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4650", kPeregrine␉␉},␊ |
206 | ␉{ 0x9498,␉0x29331682, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4670", kPeregrine␉␉},␊ |
207 | ␉{ 0x9498,␉0x29341682, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4670", kPeregrine␉␉},␊ |
208 | ␉{ 0x9498,␉0x30501787, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4700", kPeregrine␉␉},␊ |
209 | ␉{ 0x9498,␉0x31001787, CHIP_FAMILY_RV730,␉␉"ATI Radeon HD 4720", kPeregrine␉␉},␊ |
210 | ␊ |
211 | ␉{ 0x94B3,␉0x0D001002, CHIP_FAMILY_RV740,␉␉"ATI Radeon HD 4770", kFlicker␉},␊ |
212 | ␉{ 0x94B3,␉0x1170174B, CHIP_FAMILY_RV740,␉␉"ATI Radeon HD 4770", kFlicker␉},␊ |
213 | ␉{ 0x94B3,␉0x29001682, CHIP_FAMILY_RV740,␉␉"ATI Radeon HD 4770", kFlicker␉},␊ |
214 | ␊ |
215 | ␉{ 0x94C1,␉0x0D021002, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 XT", kNull␉␉},␊ |
216 | ␉{ 0x94C1,␉0x10021002, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 Pro", kNull␉␉},␊ |
217 | ␉{ 0x94C1,␉0x0D021028, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 XT", kNull␉␉},␊ |
218 | ␉{ 0x94C1,␉0x21741458, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 XT", kNull␉␉},␊ |
219 | ␉{ 0x94C1,␉0x10331462, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 XT", kNull␉␉},␊ |
220 | ␉{ 0x94C1,␉0x10401462, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 XT", kNull␉␉},␊ |
221 | ␉{ 0x94C1,␉0x11101462, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 XT", kNull␉␉},␊ |
222 | ␊ |
223 | ␉{ 0x94C3,␉0x03421002, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 PRO", kNull␉␉},␊ |
224 | ␉{ 0x94C3,␉0x01011A93, CHIP_FAMILY_RV610,␉␉"Qimonda Radeon HD 2400 PRO",␉␉␉kNull␉␉},␊ |
225 | ␉{ 0x94C3,␉0x03021028, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 PRO", kNull␉␉},␊ |
226 | ␉{ 0x94C3,␉0x03421002, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 PRO", kNull␉␉},␊ |
227 | ␉{ 0x94C3,␉0x04021028, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 PRO", kNull␉␉},␊ |
228 | ␉{ 0x94C3,␉0x10321462, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 PRO", kNull␉␉},␊ |
229 | ␉{ 0x94C3,␉0x10411462, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400", kNull␉␉},␊ |
230 | ␉{ 0x94C3,␉0x11041462, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400", kNull␉␉},␊ |
231 | ␉{ 0x94C3,␉0x11051462, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400", kNull␉␉},␊ |
232 | ␉{ 0x94C3,␉0x203817AF, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400", kNull␉␉},␊ |
233 | ␉{ 0x94C3,␉0x216A1458, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 PRO", kNull␉␉},␊ |
234 | ␉{ 0x94C3,␉0x21721458, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 PRO", kNull␉␉},␊ |
235 | ␉{ 0x94C3,␉0x2247148C, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 LE", kNull␉␉},␊ |
236 | ␉{ 0x94C3,␉0x22471787, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 LE", kNull␉␉},␊ |
237 | ␉{ 0x94C3,␉0x30001025, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2350", kNull␉␉},␊ |
238 | ␉{ 0x94C3,␉0x30001458, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 3410", kNull␉␉},␊ |
239 | ␉{ 0x94C3,␉0x30001462, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 3410", kNull␉␉},␊ |
240 | ␉{ 0x94C3,␉0x3000148C, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2350", kNull␉␉},␊ |
241 | ␉{ 0x94C3,␉0x30001642, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 3410", kNull␉␉},␊ |
242 | ␉{ 0x94C3,␉0x3000174B, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2350", kNull␉␉},␊ |
243 | ␉{ 0x94C3,␉0x30001787, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2350", kNull␉␉},␊ |
244 | ␉{ 0x94C3,␉0x37161642, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 PRO", kNull␉␉},␊ |
245 | ␉{ 0x94C3,␉0x94C31002, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 PRO", kNull␉␉},␊ |
246 | ␉{ 0x94C3,␉0xE370174B, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 PRO", kNull␉␉},␊ |
247 | ␉{ 0x94C3,␉0xE400174B, CHIP_FAMILY_RV610,␉␉"ATI Radeon HD 2400 PRO", kNull␉␉},␊ |
248 | ␊ |
249 | ␉{ 0x9501,␉0x25421002, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 3870", kNull␉␉},␊ |
250 | ␉{ 0x9501,␉0x30001002, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 3690", kNull␉␉},␊ |
251 | ␉{ 0x9501,␉0x3000174B, CHIP_FAMILY_RV670,␉␉"Sapphire Radeon HD 3690", kNull␉␉},␊ |
252 | ␉{ 0x9501,␉0x30001787, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 3690", kNull␉␉},␊ |
253 | ␉{ 0x9501,␉0x4750174B, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 4750", kNull␉␉},␊ |
254 | ␊ |
255 | ␉{ 0x9505,␉0x024A1043, CHIP_FAMILY_RV670,␉␉"ASUS MA 3850", kNull␉␉},␊ |
256 | ␉{ 0x9505,␉0x25421002, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 3850", kNull␉␉},␊ |
257 | ␉{ 0x9505,␉0x30001002, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 3690", kNull␉␉},␊ |
258 | ␉{ 0x9505,␉0x3000148C, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 3850", kNull␉␉},␊ |
259 | ␉{ 0x9505,␉0x3000174B, CHIP_FAMILY_RV670,␉␉"Sapphire Radeon HD 3690", kNull␉␉},␊ |
260 | ␉{ 0x9505,␉0x30001787, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 3690", kNull␉␉},␊ |
261 | ␉{ 0x9505,␉0x30011043, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 4730", kNull␉␉},␊ |
262 | ␉{ 0x9505,␉0x3001148C, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 4730", kNull␉␉},␊ |
263 | ␉{ 0x9505,␉0x3001174B, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 4750", kNull␉␉},␊ |
264 | ␉{ 0x9505,␉0x3002148C, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 4730", kNull␉␉},␊ |
265 | ␉{ 0x9505,␉0x3003148C, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 4750", kNull␉␉},␊ |
266 | ␉{ 0x9505,␉0x3004148C, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 4750", kNull␉␉},␊ |
267 | ␉{ 0x9505,␉0x3010174B, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 4750", kNull␉␉},␊ |
268 | ␉{ 0x9505,␉0x301017AF, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 4750", kNull␉␉},␊ |
269 | ␉{ 0x9505,␉0x4730174B, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 4730", kNull␉␉},␊ |
270 | ␉{ 0x9505,␉0xE630174B, CHIP_FAMILY_RV670,␉␉"ATI Radeon HD 3800 Series", kNull␉␉},␊ |
271 | ␊ |
272 | ␉{ 0x9540,␉0x30501787, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4590", kPeregrine␉␉},␊ |
273 | ␉{ 0x9540,␉0x4590174B, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4590", kPeregrine␉␉},␊ |
274 | ␊ |
275 | ␉{ 0x954F,␉0x16131462, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4550", kPeregrine␉␉},␊ |
276 | ␉{ 0x954F,␉0x20081787, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4350", kPeregrine␉␉},␊ |
277 | ␉{ 0x954F,␉0x29201682, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4550", kPeregrine␉␉},␊ |
278 | ␉{ 0x954F,␉0x29211682, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4550", kPeregrine␉␉},␊ |
279 | ␉{ 0x954F,␉0x3000174B, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4520", kPeregrine␉␉},␊ |
280 | ␉{ 0x954F,␉0x301017AF, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4450", kPeregrine␉␉},␊ |
281 | ␉{ 0x954F,␉0x30501787, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4450", kPeregrine␉␉},␊ |
282 | ␉{ 0x954F,␉0x30901682, CHIP_FAMILY_RV710,␉␉"XFX Radeon HD 4570", kPeregrine␉␉},␊ |
283 | ␉{ 0x954F,␉0x31001787, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4520", kPeregrine␉␉},␊ |
284 | ␉{ 0x954F,␉0x4450174B, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4450", kPeregrine␉␉},␊ |
285 | ␉{ 0x954F,␉0x4570174B, CHIP_FAMILY_RV710,␉␉"Sapphire Radeon HD 4570", kPeregrine␉␉},␊ |
286 | ␉{ 0x954F,␉0x66661043, CHIP_FAMILY_RV710,␉␉"ASUS EAH4550", kPeregrine␉␉},␊ |
287 | ␉{ 0x954F,␉0xE990174B, CHIP_FAMILY_RV710,␉␉"Sapphire Radeon HD 4350", kPeregrine␉␉},␊ |
288 | ␊ |
289 | ␉{ 0x9552,␉0x04341028, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4330", kShrike␉␉},␊ |
290 | ␉{ 0x9552,␉0x21AC1458, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4300/4500", kPeregrine␉␉},␊ |
291 | ␉{ 0x9552,␉0x21ED1458, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4300/4500", kPeregrine␉␉},␊ |
292 | ␉{ 0x9552,␉0x308B103C, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4330", kShrike␉␉},␊ |
293 | ␉{ 0x9552,␉0x3000148C, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4300/4500", kPeregrine␉␉},␊ |
294 | ␉{ 0x9552,␉0x3000174B, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4300/4500", kPeregrine␉␉},␊ |
295 | ␉{ 0x9552,␉0x30001787, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4300/4500", kPeregrine␉␉},␊ |
296 | ␉{ 0x9552,␉0x300017AF, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4300/4500", kPeregrine␉␉},␊ |
297 | ␉{ 0x9552,␉0x44721545, CHIP_FAMILY_RV710,␉␉"VisionTek Radeon 4350", kPeregrine␉␉},␊ |
298 | ␊ |
299 | ␉{ 0x9553,␉0x18751043, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4570",␉␉␉kShrike␉␉},␊ |
300 | ␉{ 0x9553,␉0x1B321043, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4570",␉␉␉kShrike␉␉},␊ |
301 | ␉{ 0x9553,␉0x215B17AA, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4530/4570",␉␉kShrike␉␉},␊ |
302 | ␉{ 0x9553,␉0x3092174B, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4300/4500 Series",␉␉kPeregrine␉␉},␊ |
303 | ␉{ 0x9553,␉0x3629103C, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4530", kShrike␉␉},␊ |
304 | ␉{ 0x9553,␉0x39291642, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4570",␉␉␉kPeregrine␉␉},␊ |
305 | ␉{ 0x9553,␉0xFD001179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 5145",␉␉␉kPeregrine␉␉},␊ |
306 | ␉{ 0x9553,␉0xFD121179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 5145",␉␉␉kPeregrine␉␉},␊ |
307 | ␉{ 0x9553,␉0xFD501179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 5145",␉␉␉kPeregrine␉␉},␊ |
308 | ␉{ 0x9553,␉0xFD921179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 5145",␉␉␉kPeregrine␉␉},␊ |
309 | ␉{ 0x9553,␉0xFDD01179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 5145",␉␉␉kPeregrine␉␉},␊ |
310 | ␉{ 0x9553,␉0xFF001179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4500",␉␉␉kPeregrine␉␉},␊ |
311 | ␉{ 0x9553,␉0xFF151179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4500",␉␉␉kPeregrine␉␉},␊ |
312 | ␉{ 0x9553,␉0xFF161179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 5145",␉␉␉kPeregrine␉␉},␊ |
313 | ␉{ 0x9553,␉0xFF221179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4500",␉␉␉kPeregrine␉␉},␊ |
314 | ␉{ 0x9553,␉0xFF401179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4500",␉␉␉kPeregrine␉␉},␊ |
315 | ␉{ 0x9553,␉0xFF501179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4500",␉␉␉kPeregrine␉␉},␊ |
316 | ␉{ 0x9553,␉0xFF801179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4500",␉␉␉kPeregrine␉␉},␊ |
317 | ␉{ 0x9553,␉0xFF821179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 5145",␉␉␉kPeregrine␉␉},␊ |
318 | ␉{ 0x9553,␉0xFFA01179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 5145",␉␉␉kPeregrine␉␉},␊ |
319 | ␉{ 0x9553,␉0xFFA21179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4500",␉␉␉kPeregrine␉␉},␊ |
320 | ␉{ 0x9553,␉0xFFC01179, CHIP_FAMILY_RV710,␉␉"ATI Mobility Radeon HD 4500",␉␉␉kPeregrine␉␉},␊ |
321 | ␊ |
322 | ␉{ 0x9555,␉0x1726103C, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4550", kShrike␉␉},␊ |
323 | ␉{ 0x9555,␉0x29241682, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD 4550", kShrike␉␉},␊ |
324 | ␉{ 0x9555,␉0x24651682, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD4300/HD4500", kShrike␉␉}, ␊ |
325 | ␉{ 0x9555,␉0x3711174B, CHIP_FAMILY_RV710,␉␉"ATI Radeon HD4300/HD4500", kShrike␉␉},␊ |
326 | ␊ |
327 | ␉{ 0x9581,␉0x011F1025, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 2600", kNull␉␉},␊ |
328 | ␉{ 0x9581,␉0x0562107B, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 2600", kNull␉␉},␊ |
329 | ␉{ 0x9581,␉0x15621043, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 2600", kNull␉␉},␊ |
330 | ␉{ 0x9581,␉0x3000148C, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 3600", kNull␉␉},␊ |
331 | ␉{ 0x9581,␉0x30C5103C, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 2600", kNull␉␉},␊ |
332 | ␉{ 0x9581,␉0x3C2D17AA, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 2600", kNull␉␉},␊ |
333 | ␉{ 0x9581,␉0x63F61462, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 2600", kNull␉␉},␊ |
334 | ␉{ 0x9581,␉0x95811002, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 3600", kNull␉␉},␊ |
335 | ␉{ 0x9581,␉0xFF001179, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 2600", kNull␉␉},␊ |
336 | ␉{ 0x9581,␉0xFF011179, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 2600", kNull␉␉},␊ |
337 | ␊ |
338 | ␉{ 0x9583,␉0x0083106B, CHIP_FAMILY_RV630,␉␉"ATI Mobility Radeon HD 2600 XT",␉␉kNull␉␉},␊ |
339 | ␉{ 0x9583,␉0x11071734, CHIP_FAMILY_RV630,␉␉"ATI Mobility Radeon HD 2600 XT",␉␉kNull␉␉},␊ |
340 | ␉{ 0x9583,␉0x3000148C, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 3600", kNull␉␉},␊ |
341 | ␉{ 0x9583,␉0x30D4103C, CHIP_FAMILY_RV630,␉␉"ATI Mobility Radeon HD 2600 XT",␉␉kNull␉␉},␊ |
342 | ␊ |
343 | ␉{ 0x9588,␉0x01021A93, CHIP_FAMILY_RV630,␉␉"Qimonda Radeon HD 2600 XT",␉␉␉kNull␉␉},␊ |
344 | ␊ |
345 | ␉{ 0x9589,␉0x01001A93, CHIP_FAMILY_RV630,␉␉"Qimonda Radeon HD 2600 PRO",␉␉␉kNull␉␉},␊ |
346 | ␉{ 0x9589,␉0x0E41174B, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 3600", kNull␉␉},␊ |
347 | ␉{ 0x9589,␉0x30001462, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 3610", kNull␉␉},␊ |
348 | ␉{ 0x9589,␉0x30001642, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 3610", kNull␉␉},␊ |
349 | ␉{ 0x9589,␉0x30001787, CHIP_FAMILY_RV630,␉␉"ATI Radeon HD 3600", kNull␉␉},␊ |
350 | ␊ |
351 | ␉{ 0x9591,␉0x15453992, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 3600", kNull␉␉},␊ |
352 | ␉{ 0x9591,␉0x2303148C, CHIP_FAMILY_RV635,␉␉"VisionTek Radeon HD 2600/3600 Series", kNull␉␉},␊ |
353 | ␊ |
354 | ␉{ 0x9598,␉0xB3831002, CHIP_FAMILY_RV635,␉␉"ATI All-in-Wonder HD", kNull␉␉},␊ |
355 | ␉{ 0x9598,␉0x30001043, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 3730", kNull␉␉},␊ |
356 | ␉{ 0x9598,␉0x3000148C, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 3730", kNull␉␉},␊ |
357 | ␉{ 0x9598,␉0x30001545, CHIP_FAMILY_RV635,␉␉"VisionTek Radeon HD 2600 XT",␉␉␉kNull␉␉},␊ |
358 | ␉{ 0x9598,␉0x3000174B, CHIP_FAMILY_RV635,␉␉"Sapphire Radeon HD 3730", kNull␉␉},␊ |
359 | ␉{ 0x9598,␉0x30011043, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 4570", kNull␉␉},␊ |
360 | ␉{ 0x9598,␉0x3001148C, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 4580", kNull␉␉},␊ |
361 | ␉{ 0x9598,␉0x3031148C, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 4570", kNull␉␉},␊ |
362 | ␉{ 0x9598,␉0x30011545, CHIP_FAMILY_RV635,␉␉"VisionTek Radeon HD 2600 Pro",␉␉␉kNull␉␉},␊ |
363 | ␉{ 0x9598,␉0x3001174B, CHIP_FAMILY_RV635,␉␉"Sapphire Radeon HD 3750", kNull␉␉},␊ |
364 | ␉{ 0x9598,␉0x300117AF, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 3750", kNull␉␉},␊ |
365 | ␉{ 0x9598,␉0x301017AF, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 4570", kNull␉␉},␊ |
366 | ␉{ 0x9598,␉0x301117AF, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 4580", kNull␉␉},␊ |
367 | ␉{ 0x9598,␉0x30501787, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 4610", kNull␉␉},␊ |
368 | ␉{ 0x9598,␉0x4570174B, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 4570", kNull␉␉},␊ |
369 | ␉{ 0x9598,␉0x4580174B, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 4580", kNull␉␉},␊ |
370 | ␉{ 0x9598,␉0x4610174B, CHIP_FAMILY_RV635,␉␉"ATI Radeon HD 4610", kNull␉␉},␊ |
371 | ␊ |
372 | ␉{ 0x95C0,␉0x3000148C, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 3550", kNull␉␉},␊ |
373 | ␉{ 0x95C0,␉0x3000174B, CHIP_FAMILY_RV620,␉␉"Sapphire Radeon HD 3550", kNull␉␉},␊ |
374 | ␉{ 0x95C0,␉0x3002174B, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 3570", kNull␉␉},␊ |
375 | ␉{ 0x95C0,␉0x3020174B, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 4250", kNull␉␉},␊ |
376 | ␉{ 0x95C0,␉0xE3901745, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 3550", kNull␉␉},␊ |
377 | ␊ |
378 | ␉{ 0x95C5,␉0x01041A93, CHIP_FAMILY_RV620,␉␉"Qimonda Radeon HD 3450", kNull␉␉},␊ |
379 | ␉{ 0x95C5,␉0x01051A93, CHIP_FAMILY_RV620,␉␉"Qimonda Radeon HD 3450", kNull␉␉},␊ |
380 | ␉{ 0x95C5,␉0x3000148C, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 3450", kNull␉␉},␊ |
381 | ␉{ 0x95C5,␉0x3001148C, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 3550", kNull␉␉},␊ |
382 | ␉{ 0x95C5,␉0x3002148C, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 4230", kNull␉␉},␊ |
383 | ␉{ 0x95C5,␉0x3003148C, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 4250", kNull␉␉},␊ |
384 | ␉{ 0x95C5,␉0x3010174B, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 4250", kNull␉␉},␊ |
385 | ␉{ 0x95C5,␉0x301017AF, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 4230", kNull␉␉},␊ |
386 | ␉{ 0x95C5,␉0x3032148C, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 4250", kNull␉␉},␊ |
387 | ␉{ 0x95C5,␉0x3033148C, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 4230", kNull␉␉},␊ |
388 | ␉{ 0x95C5,␉0x30501787, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 4250", kNull␉␉},␊ |
389 | ␉{ 0x95C5,␉0x4250174B, CHIP_FAMILY_RV620,␉␉"ATI Radeon HD 4250", kNull␉␉},␊ |
390 | ␊ |
391 | ␉{ 0x95CF,␉0x21431002, CHIP_FAMILY_RV620,␉␉"ATI FirePro 2260", kIago}␉␉},␊ |
392 | ␊ |
393 | ␉// Evergreen //␊ |
394 | ␉{ 0x6898,␉0x00D0106B, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5870", kLangur␉␉},␊ |
395 | ␉{ 0x6898,␉0x032E1043, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5870", kUakari␉␉},␊ |
396 | ␉{ 0x6898,␉0x038C1043, CHIP_FAMILY_CYPRESS,␉"ASUS 5870 Eyefinity 6", kNull␉␉},␊ |
397 | ␉{ 0x6898,␉0x0B001002, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5870", kZonalis␉},␊ |
398 | ␉{ 0x6898,␉0x21E51458, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5870", kUakari␉␉},␊ |
399 | ␉{ 0x6898,␉0x29611682, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5870", kUakari␉␉},␊ |
400 | ␉{ 0x6898,␉0xE140174B, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5870", kUakari␉␉},␊ |
401 | ␊ |
402 | ␉{ 0x6899,␉0x200A1787, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5850", kUakari␉␉},␊ |
403 | ␉{ 0x6899,␉0x21E41458, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5850", kUakari␉␉},␊ |
404 | ␉{ 0x6899,␉0x22901787, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5850", kUakari␉␉},␊ |
405 | ␉{ 0x6899,␉0xE140174B, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5850", kUakari␉␉},␊ |
406 | ␉{ 0x6899,␉0xE174174B, CHIP_FAMILY_CYPRESS,␉"ATI Sapphire Radeon HD 5850", kUakari␉␉},␊ |
407 | ␊ |
408 | ␉{ 0x689C,␉0x034A1043, CHIP_FAMILY_HEMLOCK,␉"ATI Radeon HD 5970", kUakari␉␉},␊ |
409 | ␉{ 0x689C,␉0x03521043, CHIP_FAMILY_HEMLOCK,␉"ASUS ARES", kUakari␉␉},␊ |
410 | ␉{ 0x689C,␉0x039E1043, CHIP_FAMILY_HEMLOCK,␉"ASUS EAH5870", kUakari␉␉},␊ |
411 | ␉{ 0x689C,␉0x25421002, CHIP_FAMILY_HEMLOCK,␉"ATI Radeon HD 5970", kUakari␉␉},␊ |
412 | ␉{ 0x689C,␉0x30201682, CHIP_FAMILY_HEMLOCK,␉"ATI Radeon HD 5970", kUakari␉␉},␊ |
413 | ␊ |
414 | ␉{ 0x68A0,␉0x03081025, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5830",␉␉␉kNomascus␉},␊ |
415 | ␉{ 0x68A0,␉0x030A1025, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5830",␉␉␉kNomascus␉},␊ |
416 | ␉{ 0x68A0,␉0x043A1028, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5870",␉␉␉kNomascus␉},␊ |
417 | ␊ |
418 | ␉{ 0x68A1,␉0x03081025, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kHoolock␉},␊ |
419 | ␉{ 0x68A1,␉0x030A1025, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kHoolock␉},␊ |
420 | ␉{ 0x68A1,␉0x03671025, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kHoolock␉},␊ |
421 | ␉{ 0x68A1,␉0x03681025, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kHoolock␉},␊ |
422 | ␉{ 0x68A1,␉0x038B1025, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kHoolock␉},␊ |
423 | ␉{ 0x68A1,␉0x038C1025, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kHoolock␉},␊ |
424 | ␉{ 0x68A1,␉0x042E1025, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kHoolock␉},␊ |
425 | ␉{ 0x68A1,␉0x042F1025, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kHoolock␉},␊ |
426 | ␉{ 0x68A1,␉0x144D103C, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kNomascus␉},␊ |
427 | ␉{ 0x68A1,␉0x1522103C, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kHoolock␉},␊ |
428 | ␉{ 0x68A1,␉0x22411462, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kHoolock␉},␊ |
429 | ␉{ 0x68A1,␉0x39961462, CHIP_FAMILY_JUNIPER,␉"ATI Mobility Radeon HD 5850",␉␉␉kHoolock␉},␊ |
430 | ␊ |
431 | ␉{ 0x68A8,␉0x04421025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
432 | ␉{ 0x68A8,␉0x04511025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
433 | ␉{ 0x68A8,␉0x048F1028, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6870M", kHoolock␉},␊ |
434 | ␉{ 0x68A8,␉0x04901028, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6870M", kHoolock␉},␊ |
435 | ␉{ 0x68A8,␉0x04B91028, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6870M", kHoolock␉},␊ |
436 | ␉{ 0x68A8,␉0x04BA1028, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6870M", kHoolock␉},␊ |
437 | ␉{ 0x68A8,␉0x050A1025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
438 | ␉{ 0x68A8,␉0x050B1025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
439 | ␉{ 0x68A8,␉0x050C1025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
440 | ␉{ 0x68A8,␉0x050E1025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
441 | ␉{ 0x68A8,␉0x050F1025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
442 | ␉{ 0x68A8,␉0x05131025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
443 | ␉{ 0x68A8,␉0x05141025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
444 | ␉{ 0x68A8,␉0x05151025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
445 | ␉{ 0x68A8,␉0x05161025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
446 | ␉{ 0x68A8,␉0x05251025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
447 | ␉{ 0x68A8,␉0x05261025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
448 | ␉{ 0x68A8,␉0x056D1025, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
449 | ␉{ 0x68A8,␉0x159B103C, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
450 | ␉{ 0x68A8,␉0xC0AD144D, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6850M", kUakari␉␉},␊ |
451 | ␊ |
452 | ␉{ 0x68B8,␉0x00CF106B, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kHoolock␉},␊ |
453 | ␉{ 0x68B8,␉0x0044144D, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6770", kVervet␉␉},␊ |
454 | ␉{ 0x68B8,␉0x1482174B, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
455 | ␉{ 0x68B8,␉0x200A1787, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
456 | ␉{ 0x68B8,␉0x200B1787, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
457 | ␉{ 0x68B8,␉0x21D71458, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
458 | ␉{ 0x68B8,␉0x21F61458, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
459 | ␉{ 0x68B8,␉0x22881787, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
460 | ␉{ 0x68B8,␉0x25431002, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
461 | ␉{ 0x68B8,␉0x25431458, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
462 | ␉{ 0x68B8,␉0x29901682, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
463 | ␉{ 0x68B8,␉0x29911682, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
464 | ␉{ 0x68B8,␉0x30001002, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6700", kVervet␉␉},␊ |
465 | ␉{ 0x68B8,␉0x6880103C, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
466 | ␉{ 0x68B8,␉0x6881103C, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6770", kVervet␉␉},␊ |
467 | ␉{ 0x68B8,␉0xE144174B, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kHoolock␉},␊ |
468 | ␉{ 0x68B8,␉0xE147174B, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
469 | ␉{ 0x68B8,␉0xE160174B, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770", kVervet␉␉},␊ |
470 | ␉{ 0x68B8,␉0xEA60174B, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6770", kVervet␉␉},␊ |
471 | ␊ |
472 | ␉{ 0x68BA,␉0x03FE1043, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6770", kVervet␉␉},␊ |
473 | ␉{ 0x68BA,␉0x1482174B, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6770", kVervet␉␉},␊ |
474 | ␉{ 0x68BA,␉0x174B1482, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6770", kVervet␉␉},␊ |
475 | ␉{ 0x68BA,␉0x200A1787, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6770", kVervet␉␉},␊ |
476 | ␉{ 0x68BA,␉0x21421462, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6770", kVervet␉␉},␊ |
477 | ␉{ 0x68BA,␉0x25431458, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6770", kVervet␉␉},␊ |
478 | ␉{ 0x68BA,␉0x31501682, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6770", kVervet␉␉},␊ |
479 | ␉{ 0x68BA,␉0x31521682, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6770", kVervet␉␉},␊ |
480 | ␉{ 0x68BA,␉0x31531682, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6770", kVervet␉␉},␊ |
481 | ␉{ 0x68BA,␉0xE144174B, CHIP_FAMILY_JUNIPER,␉"AMD Radeon HD 6770", kVervet␉␉},␊ |
482 | ␊ |
483 | ␉{ 0x68BE,␉0x200A1787, CHIP_FAMILY_JUNIPER,␉"HIS ATI 5750", kVervet␉␉},␊ |
484 | ␉{ 0x68BE,␉0x22881787, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5750", kVervet␉␉},␊ |
485 | ␉{ 0x68BE,␉0x3000148C, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6750", kNull␉␉},␊ |
486 | ␉{ 0x68BE,␉0x3000174B, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6750", kNull␉␉},␊ |
487 | ␉{ 0x68BE,␉0x300017AF, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6750", kNull␉␉},␊ |
488 | ␉{ 0x68BE,␉0x39821642, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6750", kNull␉␉},␊ |
489 | ␊ |
490 | ␉{ 0x68BF,␉0x220E1458, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6750", kVervet␉␉},␊ |
491 | ␉{ 0x68BF,␉0x3000148C, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6750", kVervet␉␉},␊ |
492 | ␉{ 0x68BF,␉0x31401682, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6750", kVervet␉␉},␊ |
493 | ␉{ 0x68BF,␉0x6750174B, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6750", kVervet␉␉},␊ |
494 | ␉{ 0x68BF,␉0xE144174B, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6750", kHoolock␉},␊ |
495 | ␊ |
496 | ␉{ 0x68C0,␉0x1594103C, CHIP_FAMILY_REDWOOD,␉"AMD Radeon HD 6570M", kNull␉␉},␊ |
497 | ␉{ 0x68C0,␉0x392717AA, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5730",␉␉␉kNull␉␉},␊ |
498 | ␉{ 0x68C0,␉0x395217AA, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5730",␉␉␉kNull␉␉},␊ |
499 | ␉{ 0x68C0,␉0x84721043, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5000",␉␉␉kNull␉␉},␊ |
500 | ␊ |
501 | ␉{ 0x68C1,␉0x02051025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
502 | ␉{ 0x68C1,␉0x02961025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
503 | ␉{ 0x68C1,␉0x030A1025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
504 | ␉{ 0x68C1,␉0x033D1025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
505 | ␉{ 0x68C1,␉0x033E1025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5650",␉␉␉kNull␉␉},␊ |
506 | ␉{ 0x68C1,␉0x03471025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
507 | ␉{ 0x68C1,␉0x03561025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
508 | ␉{ 0x68C1,␉0x03581025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
509 | ␉{ 0x68C1,␉0x035A1025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
510 | ␉{ 0x68C1,␉0x035C1025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
511 | ␉{ 0x68C1,␉0x03641025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
512 | ␉{ 0x68C1,␉0x036D1025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5650",␉␉␉kNull␉␉},␊ |
513 | ␉{ 0x68C1,␉0x03791025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
514 | ␉{ 0x68C1,␉0x037E1025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
515 | ␉{ 0x68C1,␉0x03821025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5750",␉␉␉kNull␉␉},␊ |
516 | ␉{ 0x68C1,␉0x04121025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5650",␉␉␉kNull␉␉},␊ |
517 | ␉{ 0x68C1,␉0x042E1025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5650",␉␉␉kNull␉␉},␊ |
518 | ␉{ 0x68C1,␉0x042F1025, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5650",␉␉␉kNull␉␉},␊ |
519 | ␉{ 0x68C1,␉0x9071104D, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5650",␉␉␉kEulemur␉},␊ |
520 | ␉{ 0x68C1,␉0x1449103C, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5650",␉␉␉kEulemur␉},␊ |
521 | ␉{ 0x68C1,␉0xFD001179, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5650",␉␉␉kEulemur␉},␊ |
522 | ␉{ 0x68C1,␉0xFD121179, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5650",␉␉␉kEulemur␉},␊ |
523 | ␉{ 0x68C1,␉0xFD501179, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5650",␉␉␉kEulemur␉},␊ |
524 | ␉{ 0x68C1,␉0xFDD01179, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5650",␉␉␉kEulemur␉},␊ |
525 | ␊ |
526 | ␉{ 0x68C8,␉0x2306103C, CHIP_FAMILY_REDWOOD,␉"ATI FirePro V4800 (FireGL)",␉␉␉kNull␉␉},␊ |
527 | ␉{ 0x68C8,␉0x240A1002, CHIP_FAMILY_REDWOOD,␉"ATI FirePro V4800 (FireGL)",␉␉␉kNull␉␉},␊ |
528 | ␉{ 0x68C8,␉0x240A1028, CHIP_FAMILY_REDWOOD,␉"ATI FirePro V4800 (FireGL)",␉␉␉kNull␉␉},␊ |
529 | ␊ |
530 | ␉{ 0x68D8,␉0x03561043, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5670", kBaboon␉␉},␊ |
531 | ␉{ 0x68D8,␉0x03C01043, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5670", kNull␉␉},␊ |
532 | ␉{ 0x68D8,␉0x20091787, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5670", kNull␉␉},␊ |
533 | ␉{ 0x68D8,␉0x200B1787, CHIP_FAMILY_REDWOOD,␉"HIS ATI HD5670 XT Redwood ICEQ", kBaboon␉␉}, // catalinz␊ |
534 | ␉{ 0x68D8,␉0x21D91458, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5670", kBaboon␉␉},␊ |
535 | ␉{ 0x68D8,␉0x21F41458, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5670", kNull␉␉},␊ |
536 | ␉{ 0x68D8,␉0x22051462, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5690", kNull␉␉},␊ |
537 | ␉{ 0x68D8,␉0x22941787, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5690", kNull␉␉},␊ |
538 | ␉{ 0x68D8,␉0x30001787, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5730", kNull␉␉},␊ |
539 | ␉{ 0x68D8,␉0x301017AF, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5730", kNull␉␉},␊ |
540 | ␉{ 0x68D8,␉0x301117AF, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5690", kNull␉␉},␊ |
541 | ␉{ 0x68D8,␉0x30601682, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5690", kNull␉␉},␊ |
542 | ␉{ 0x68D8,␉0x30651682, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5690", kNull␉␉},␊ |
543 | ␉{ 0x68D8,␉0x56701545, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5690", kNull␉␉},␊ |
544 | ␉{ 0x68D8,␉0x5690174B, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5690", kNull␉␉},␊ |
545 | ␉{ 0x68D8,␉0x5730174B, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5730", kNull␉␉},␊ |
546 | ␉{ 0x68D8,␉0x68E01028, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5670", kBaboon␉␉},␊ |
547 | ␉{ 0x68D8,␉0xE151174B, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5670", kEulemur␉},␊ |
548 | ␉{ 0x68D8,␉0xE155174B, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5670", kNull␉␉},␊ |
549 | ␉{ 0x68D8,␉0xE166174B, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5670", kUakari␉␉},␊ |
550 | ␊ |
551 | ␉{ 0x68D9,␉0x03CE1043, CHIP_FAMILY_REDWOOD,␉"ASUS EAH5550 series", kNull␉␉},␊ |
552 | ␉{ 0x68D9,␉0x22401462, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5570", kNull␉␉},␊ |
553 | ␉{ 0x68D9,␉0x3000148C, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 6510", kNull␉␉},␊ |
554 | ␉{ 0x68D9,␉0x3000174B, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 6510", kNull␉␉},␊ |
555 | ␉{ 0x68D9,␉0x301017AF, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5630", kNull␉␉},␊ |
556 | ␉{ 0x68D9,␉0x39691642, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5570", kNull␉␉},␊ |
557 | ␊ |
558 | ␉{ 0x68DA,␉0x3000148C, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 6390", kNull␉␉},␊ |
559 | ␉{ 0x68DA,␉0x3000174B, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 6390", kNull␉␉},␊ |
560 | ␉{ 0x68DA,␉0x30001787, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5630", kNull␉␉},␊ |
561 | ␉{ 0x68DA,␉0x300017AF, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 6390", kNull␉␉},␊ |
562 | ␉{ 0x68DA,␉0x301017AF, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5630", kNull␉␉},␊ |
563 | ␉{ 0x68DA,␉0x5630174B, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5630", kNull␉␉},␊ |
564 | ␊ |
565 | ␉{ 0x68E0,␉0x02931025, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
566 | ␉{ 0x68E0,␉0x03581025, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
567 | ␉{ 0x68E0,␉0x03591025, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
568 | ␉{ 0x68E0,␉0x035C1025, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
569 | ␉{ 0x68E0,␉0x035D1025, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
570 | ␉{ 0x68E0,␉0x036D1025, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kLangur },␊ |
571 | ␉{ 0x68E0,␉0x04471028, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
572 | ␉{ 0x68E0,␉0x04561028, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
573 | ␉{ 0x68E0,␉0x04831025, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
574 | ␉{ 0x68E0,␉0x1433103C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
575 | ␉{ 0x68E0,␉0x1441103C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
576 | ␉{ 0x68E0,␉0x144A103C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
577 | ␉{ 0x68E0,␉0x1BF21043, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kNull },␊ |
578 | ␉{ 0x68E0,␉0x848F1043, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kNull },␊ |
579 | ␉{ 0x68E0,␉0xFD001179, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
580 | ␉{ 0x68E0,␉0xFD121179, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
581 | ␉{ 0x68E0,␉0xFD501179, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
582 | ␉{ 0x68E0,␉0xFD921179, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
583 | ␉{ 0x68E0,␉0xFDD01179, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
584 | ␊ |
585 | ␉{ 0x68E1,␉0x04661028, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
586 | ␉{ 0x68E1,␉0x10021B61, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450M", kEulemur␉},␊ |
587 | ␉{ 0x68E1,␉0x10501462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
588 | ␉{ 0x68E1,␉0x1426103C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
589 | ␉{ 0x68E1,␉0x142A103C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 545vM", kEulemur␉},␊ |
590 | ␉{ 0x68E1,␉0x14E110CF, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5400M", kEulemur␉},␊ |
591 | ␉{ 0x68E1,␉0x21D81458, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
592 | ␉{ 0x68E1,␉0x21E21458, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
593 | ␉{ 0x68E1,␉0x21F11458, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
594 | ␉{ 0x68E1,␉0x22021458, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
595 | ␉{ 0x68E1,␉0x23421462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
596 | ␉{ 0x68E1,␉0x23431462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
597 | ␉{ 0x68E1,␉0x25481458, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5400M Series", kEulemur␉},␊ |
598 | ␉{ 0x68E1,␉0x254A1458, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5000M Series", kEulemur␉},␊ |
599 | ␉{ 0x68E1,␉0x30001043, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
600 | ␉{ 0x68E1,␉0x3000148C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
601 | ␉{ 0x68E1,␉0x30001682, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
602 | ␉{ 0x68E1,␉0x3000174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉}, ␊ |
603 | ␉{ 0x68E1,␉0x30001787, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉}, // 5430M ???␊ |
604 | ␉{ 0x68E1,␉0x300017AF, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
605 | ␉{ 0x68E1,␉0x3001148C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
606 | ␉{ 0x68E1,␉0x301417AF, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kEulemur␉},␊ |
607 | ␉{ 0x68E1,␉0x3002148C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
608 | ␉{ 0x68E1,␉0x3003148C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450M", kEulemur␉},␊ |
609 | ␉{ 0x68E1,␉0x54501545, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
610 | ␉{ 0x68E1,␉0x5470174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470M", kEulemur␉},␊ |
611 | ␉{ 0x68E1,␉0x60001092, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
612 | ␉{ 0x68E1,␉0x60001682, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
613 | ␉{ 0x68E1,␉0x6000174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
614 | ␉{ 0x68E1,␉0x6230174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kEulemur␉},␊ |
615 | ␉{ 0x68E1,␉0x6350174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kEulemur␉},␊ |
616 | ␉{ 0x68E1,␉0xFDD01179, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5430M", kEulemur␉},␊ |
617 | ␊ |
618 | ␉{ 0x68E4,␉0x04821025, CHIP_FAMILY_CEDAR,␉␉"AMD Radeon HD 6370M", kNull␉␉},␊ |
619 | ␉{ 0x68E4,␉0x1426103C, CHIP_FAMILY_CEDAR,␉␉"AMD Radeon HD 6370M", kNull␉␉},␊ |
620 | ␉{ 0x68E4,␉0x1C921043, CHIP_FAMILY_CEDAR,␉␉"AMD Radeon HD 6370M", kNull␉␉},␊ |
621 | ␉{ 0x68E4,␉0x397917AA, CHIP_FAMILY_CEDAR,␉␉"AMD Radeon HD 6370M", kNull␉␉},␊ |
622 | ␉{ 0x68E4,␉0x397F17AA, CHIP_FAMILY_CEDAR,␉␉"AMD Radeon HD 7370M", kNull␉␉},␊ |
623 | ␉{ 0x68E4,␉0x84A01043, CHIP_FAMILY_CEDAR,␉␉"AMD Radeon HD 6370M", kNull␉␉},␊ |
624 | ␊ |
625 | ␉{ 0x68F9,␉0x00011019, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
626 | ␉{ 0x68F9,␉0x00021019, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
627 | ␉{ 0x68F9,␉0x00191019, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kNull␉␉},␊ |
628 | ␉{ 0x68F9,␉0x010E1002, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
629 | ␉{ 0x68F9,␉0x010E1028, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
630 | ␉{ 0x68F9,␉0x03741043, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
631 | ␉{ 0x68F9,␉0x03CA1043, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
632 | ␉{ 0x68F9,␉0x05181025, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
633 | ␉{ 0x68F9,␉0x05191025, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
634 | ␉{ 0x68F9,␉0x174B3000, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6230", kNull␉␉},␊ |
635 | ␉{ 0x68F9,␉0x174B6250, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6250", kNull␉␉},␊ |
636 | ␉{ 0x68F9,␉0x174B6290, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6290", kNull␉␉},␊ |
637 | ␉{ 0x68F9,␉0x174BE164, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
638 | ␉{ 0x68F9,␉0x20091787, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
639 | ␉{ 0x68F9,␉0x21261028, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kNull␉␉},␊ |
640 | ␉{ 0x68F9,␉0x2126103C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kNull␉␉},␊ |
641 | ␉{ 0x68F9,␉0x21301462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
642 | ␉{ 0x68F9,␉0x21311462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
643 | ␉{ 0x68F9,␉0x21331462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kEulemur␉},␊ |
644 | ␉{ 0x68F9,␉0x21801462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
645 | ␉{ 0x68F9,␉0x21811462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
646 | ␉{ 0x68F9,␉0x21821462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kNull␉␉},␊ |
647 | ␉{ 0x68F9,␉0x21831462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kNull␉␉},␊ |
648 | ␉{ 0x68F9,␉0x22911787, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
649 | ␉{ 0x68F9,␉0x22301462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
650 | ␉{ 0x68F9,␉0x22311462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
651 | ␉{ 0x68F9,␉0x23401462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
652 | ␉{ 0x68F9,␉0x24951462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kNull␉␉},␊ |
653 | ␉{ 0x68F9,␉0x2AAC103C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
654 | ␉{ 0x68F9,␉0x2AEC103C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
655 | ␉{ 0x68F9,␉0x30001787, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470", kNull␉␉},␊ |
656 | ␉{ 0x68F9,␉0x300017AF, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6250", kNull␉␉},␊ |
657 | ␉{ 0x68F9,␉0x3001148C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6250", kNull␉␉},␊ |
658 | ␉{ 0x68F9,␉0x30011787, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5530", kNull␉␉},␊ |
659 | ␉{ 0x68F9,␉0x3002148C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6290", kNull␉␉},␊ |
660 | ␉{ 0x68F9,␉0x30021787, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5490", kNull␉␉},␊ |
661 | ␉{ 0x68F9,␉0x300217AF, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6290", kNull␉␉},␊ |
662 | ␉{ 0x68F9,␉0x3003148C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6230", kNull␉␉},␊ |
663 | ␉{ 0x68F9,␉0x301117AF, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470", kNull␉␉},␊ |
664 | ␉{ 0x68F9,␉0x301217AF, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5490", kNull␉␉},␊ |
665 | ␉{ 0x68F9,␉0x301317AF, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470", kNull␉␉},␊ |
666 | ␉{ 0x68F9,␉0x301417AF, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kNull␉␉},␊ |
667 | ␉{ 0x68F9,␉0x30321682, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450",␉␉␉kEulemur␉},␊ |
668 | ␉{ 0x68F9,␉0x303A1682, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450",␉␉␉kEulemur␉},␊ |
669 | ␉{ 0x68F9,␉0x3580103C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
670 | ␉{ 0x68F9,␉0x360217AA, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
671 | ␉{ 0x68F9,␉0x360317AA, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
672 | ␉{ 0x68F9,␉0x360F17AA, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
673 | ␉{ 0x68F9,␉0x361917AA, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
674 | ␉{ 0x68F9,␉0x39831642, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
675 | ␉{ 0x68F9,␉0x39841642, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kNull␉␉},␊ |
676 | ␉{ 0x68F9,␉0x39871642, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kNull␉␉},␊ |
677 | ␉{ 0x68F9,␉0x3987174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kNull␉␉},␊ |
678 | ␉{ 0x68F9,␉0x39971462, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
679 | ␉{ 0x68F9,␉0x3A051642, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kNull␉␉},␊ |
680 | ␉{ 0x68F9,␉0x3B311642, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350A", kNull␉␉},␊ |
681 | ␉{ 0x68F9,␉0x5470174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5470", kNull␉␉},␊ |
682 | ␉{ 0x68F9,␉0x5490174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5490", kNull␉␉},␊ |
683 | ␉{ 0x68F9,␉0x5530174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5530", kNull␉␉},␊ |
684 | ␉{ 0x68F9,␉0x6230174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6230", kNull␉␉},␊ |
685 | ␉{ 0x68F9,␉0x6350174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 6350", kNull␉␉},␊ |
686 | ␉{ 0x68F9,␉0x7350148C, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 7350", kNull␉␉},␊ |
687 | ␉{ 0x68F9,␉0xE127174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
688 | ␉{ 0x68F9,␉0xE145174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
689 | ␉{ 0x68F9,␉0xE153174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
690 | ␉{ 0x68F9,␉0xE164174B, CHIP_FAMILY_CEDAR,␉␉"ATI Radeon HD 5450", kEulemur␉},␊ |
691 | ␊ |
692 | ␉// Northen Islands //␊ |
693 | ␉{ 0x6718,␉0x03B81043, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉},␊ |
694 | ␉{ 0x6718,␉0x03BC1043, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉},␊ |
695 | ␉{ 0x6718,␉0x0B001002, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉},␊ |
696 | ␉{ 0x6718,␉0x20101458, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉},␊ |
697 | ␉{ 0x6718,␉0x20101787, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉},␊ |
698 | ␉{ 0x6718,␉0x22001458, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉},␊ |
699 | ␉{ 0x6718,␉0x22011458, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉},␊ |
700 | ␉{ 0x6718,␉0x23061787, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉}, // HIS␊ |
701 | ␉{ 0x6718,␉0x23701462, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉}, // MSI␊ |
702 | ␉{ 0x6718,␉0x24701462, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉}, // MSI␊ |
703 | ␉{ 0x6718,␉0x31301682, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉},␊ |
704 | ␉{ 0x6718,␉0x67181002, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉},␊ |
705 | ␉{ 0x6718,␉0xE182174B, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉},␊ |
706 | ␉{ 0x6718,␉0xE203174B, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6970", kGibba␉␉},␊ |
707 | ␊ |
708 | ␉{ 0x6719,␉0x03BE1043, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6950", kGibba␉␉},␊ |
709 | ␉{ 0x6719,␉0x03D41043, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6950", kGibba␉␉},␊ |
710 | ␉{ 0x6719,␉0x0B001002, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6950", kGibba␉␉},␊ |
711 | ␉{ 0x6719,␉0x186B174B, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6950", kGibba␉␉},␊ |
712 | ␉{ 0x6719,␉0x20101787, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6950", kGibba␉␉},␊ |
713 | ␉{ 0x6719,␉0x21FD1458, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6950", kGibba␉␉},␊ |
714 | ␉{ 0x6719,␉0x23071787, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6950", kGibba␉␉},␊ |
715 | ␉{ 0x6719,␉0x24611462, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6950", kGibba␉␉},␊ |
716 | ␉{ 0x6719,␉0x31211682, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6950", kGibba␉␉},␊ |
717 | ␉{ 0x6719,␉0x31221682, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6950", kGibba␉␉},␊ |
718 | ␉{ 0x6719,␉0xE189174B, CHIP_FAMILY_CAYMAN,␉␉"AMD Radeon HD 6950", kGibba␉␉},␊ |
719 | ␊ |
720 | //␉{ 0x671D,␉0x0B2A1002, CHIP_FAMILY_ANTILLES,␉"AMD Radeon HD 6990", kNull␉␉},␊ |
721 | //␉{ 0x671D,␉0x1B2A1002, CHIP_FAMILY_ANTILLES,␉"AMD Radeon HD 6990", kNull␉␉},␊ |
722 | //␉{ 0x671D,␉0x31601682, CHIP_FAMILY_ANTILLES,␉"AMD Radeon HD 6990", kNull␉␉},␊ |
723 | ␊ |
724 | ␉{ 0x6720,␉0x048F1028, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6970M", kElodea␉␉},␊ |
725 | ␉{ 0x6720,␉0x04901028, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6970M", kElodea␉␉},␊ |
726 | ␉{ 0x6720,␉0x04A41028, CHIP_FAMILY_BARTS,␉␉"AMD FirePro M8900M", kElodea␉␉},␊ |
727 | ␉{ 0x6720,␉0x04B91028, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6970M", kElodea␉␉},␊ |
728 | ␉{ 0x6720,␉0x04BA1028, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6970M", kElodea␉␉},␊ |
729 | ␉{ 0x6720,␉0x51021558, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6970M", kElodea␉␉},␊ |
730 | ␉{ 0x6720,␉0x51041558, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6990M", kElodea␉␉},␊ |
731 | ␉{ 0x6720,␉0x71001558, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6970M", kElodea␉␉},␊ |
732 | ␉{ 0x6720,␉0x72001558, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6970M", kElodea␉␉},␊ |
733 | ␉{ 0x6720,␉0x72011558, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6990M", kElodea␉␉},␊ |
734 | ␉{ 0x6720,␉0xC0AD144D, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6970M", kElodea␉␉},␊ |
735 | ␊ |
736 | ␉{ 0x6738,␉0x00D01002, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
737 | ␉{ 0x6738,␉0x03AE1043, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
738 | ␉{ 0x6738,␉0x03C61043, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
739 | ␉{ 0x6738,␉0x174B174B, CHIP_FAMILY_BARTS,␉␉"Sapphire Radeon HD6870", kBulrushes␉}, // ?? kDuckweed ??␊ |
740 | ␉{ 0x6738,␉0x20101787, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
741 | ␉{ 0x6738,␉0x21FA1002, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
742 | ␉{ 0x6738,␉0x21FA1458, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
743 | ␉{ 0x6738,␉0x23051787, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
744 | ␉{ 0x6738,␉0x25101462, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
745 | ␉{ 0x6738,␉0x31031682, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
746 | ␉{ 0x6738,␉0x31041682, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
747 | ␉{ 0x6738,␉0x31071682, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
748 | ␉{ 0x6738,␉0x31081682, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉}, // ?? kJuncus ??␊ |
749 | ␉{ 0x6738,␉0x67381002, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
750 | ␉{ 0x6738,␉0xE178174B, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6870", kDuckweed␉},␊ |
751 | ␊ |
752 | ␉{ 0x6739,␉0x03B41043, CHIP_FAMILY_BARTS,␉␉"ASUS EAH6850 DirectCU", kDuckweed␉},␊ |
753 | ␉{ 0x6739,␉0x174B174B, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
754 | ␉{ 0x6739,␉0x200F1787, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
755 | ␉{ 0x6739,␉0x21F81458, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kBulrushes␉},␊ |
756 | ␉{ 0x6739,␉0x23041787, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
757 | ␉{ 0x6739,␉0x24001462, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
758 | ␉{ 0x6739,␉0x24411462, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
759 | ␉{ 0x6739,␉0x25201462, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
760 | ␉{ 0x6739,␉0x30001787, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
761 | ␉{ 0x6739,␉0x31101682, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
762 | ␉{ 0x6739,␉0x31131682, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
763 | ␉{ 0x6739,␉0x31141682, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
764 | ␉{ 0x6739,␉0x31161682, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
765 | ␉{ 0x6739,␉0x31171682, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
766 | ␉{ 0x6739,␉0x67391002, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
767 | ␉{ 0x6739,␉0xAA881002, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
768 | ␉{ 0x6739,␉0xE174174B, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
769 | ␉{ 0x6739,␉0xE177174B, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
770 | ␉{ 0x6739,␉0xE183174B, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6850", kDuckweed␉},␊ |
771 | ␊ |
772 | ␉{ 0x673E,␉0x174B174B, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6790", kNull␉␉},␊ |
773 | ␉{ 0x673E,␉0x23101787, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6790", kNull␉␉},␊ |
774 | ␉{ 0x673E,␉0x31701682, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6790", kNull␉␉},␊ |
775 | ␉{ 0x673E,␉0x31721682, CHIP_FAMILY_BARTS,␉␉"AMD Radeon HD 6790", kNull␉␉},␊ |
776 | ␊ |
777 | ␉{ 0x6740,␉0x04A31028, CHIP_FAMILY_TURKS,␉␉"Dell HD 6770M", kNull␉␉}, // ??␊ |
778 | ␉{ 0x6740,␉0x1D121043, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6730M", kNull␉␉},␊ |
779 | ␉{ 0x6740,␉0x1631103C, CHIP_FAMILY_TURKS,␉␉"AMD FirePro M5950", kNull␉␉},␊ |
780 | ␉{ 0x6740,␉0x1657103C, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6770M", kNull␉␉},␊ |
781 | ␉{ 0x6740,␉0x165A103C, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6770M", kNull␉␉},␊ |
782 | ␉{ 0x6740,␉0x3388103C, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6770M", kNull␉␉},␊ |
783 | ␉{ 0x6740,␉0x3389103C, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6770M", kNull␉␉}, // ?? kHydrilla ??␊ |
784 | ␉{ 0x6740,␉0x6740106B, CHIP_FAMILY_TURKS,␉␉"Apple HD 6770M", kNull␉␉}, // ??␊ |
785 | ␊ |
786 | ␉{ 0x6741,␉0x050E1025, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6650M", kNull␉␉},␊ |
787 | ␉{ 0x6741,␉0x050F1025, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6650M", kNull␉␉},␊ |
788 | ␉{ 0x6741,␉0x05131025, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6650M", kNull␉␉},␊ |
789 | ␉{ 0x6741,␉0x1646103C, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6750M", kNull␉␉},␊ |
790 | ␉{ 0x6741,␉0x1688103C, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 7690M", kNull␉␉},␊ |
791 | ␉{ 0x6741,␉0x358D103C, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6630M/6650M/6750M", kNull␉␉},␊ |
792 | ␉{ 0x6741,␉0x9080104D, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6630M", kNull␉␉},␊ |
793 | ␊ |
794 | ␉{ 0x6758,␉0x00121028, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kBulrushes␉},␊ |
795 | ␉{ 0x6758,␉0x0B0E1002, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kPithecia␉},␊ |
796 | ␉{ 0x6758,␉0x0B0E1028, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kBulrushes␉},␊ |
797 | ␉{ 0x6758,␉0x20121787, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kPithecia␉},␊ |
798 | ␉{ 0x6758,␉0x20141787, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kBulrushes␉},␊ |
799 | ␉{ 0x6758,␉0x22051458, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kBulrushes␉},␊ |
800 | ␉{ 0x6758,␉0x31811682, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kBulrushes␉},␊ |
801 | ␉{ 0x6758,␉0x31831682, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kBulrushes␉},␊ |
802 | ␉{ 0x6758,␉0x67581002, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kBulrushes␉},␊ |
803 | ␉{ 0x6758,␉0x6882103C, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kBulrushes␉},␊ |
804 | ␉{ 0x6758,␉0xE181174B, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kBulrushes␉},␊ |
805 | ␉{ 0x6758,␉0xE1941746, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kBulrushes␉},␊ |
806 | ␉{ 0x6758,␉0xE194174B, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6670", kMangabey␉}, ␊ |
807 | ␊ |
808 | ␉{ 0x6759,␉0x20121787, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6570", kPithecia␉},␊ |
809 | ␉{ 0x6759,␉0x31951682, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6570", kGibba␉},␊ |
810 | ␉{ 0x6759,␉0x32801682, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 7570", kPithecia␉},␊ |
811 | ␉{ 0x6759,␉0xE193174B, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 6570", kPithecia␉},␊ |
812 | ␊ |
813 | ␉{ 0x675F,␉0x23141787, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 5570", kNull␉␉},␊ |
814 | ␉{ 0x675F,␉0x254B1458, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 5570", kNull␉␉},␊ |
815 | ␉{ 0x675F,␉0x6510148C, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 5570", kNull␉␉},␊ |
816 | ␉{ 0x675F,␉0x6510174B, CHIP_FAMILY_TURKS,␉␉"AMD Radeon HD 5570", kNull␉␉},␊ |
817 | ␊ |
818 | ␉{ 0x6760,␉0x00031179, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450M", kIpomoea␉},␊ |
819 | ␉{ 0x6760,␉0x04C11028, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450M", kIpomoea␉},␊ |
820 | ␉{ 0x6760,␉0x04CA1028, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450M", kIpomoea␉},␊ |
821 | ␉{ 0x6760,␉0x04CC1028, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450M", kIpomoea␉},␊ |
822 | ␉{ 0x6760,␉0x101C1043, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450M", kIpomoea␉},␊ |
823 | ␉{ 0x6760,␉0x165A103C, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6470M", kIpomoea␉},␊ |
824 | ␉{ 0x6760,␉0x167D103C, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6470M", kIpomoea␉},␊ |
825 | ␉{ 0x6760,␉0x1CB21043, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6470M", kIpomoea␉},␊ |
826 | ␉{ 0x6760,␉0x20011043, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6470M", kIpomoea␉},␊ |
827 | ␉{ 0x6760,␉0x85171043, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 7470M", kNull␉␉},␊ |
828 | ␊ |
829 | ␉{ 0x6778,␉0x00241019, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 7470", kBulrushes␉}, // Elitegroup␊ |
830 | ␉{ 0x6778,␉0x00271019, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 8470", kBulrushes␉}, // Elitegroup␊ |
831 | ␉{ 0x6778,␉0x21201028, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 7470", kBulrushes␉}, // Dell␊ |
832 | ␉{ 0x6778,␉0xB4911462, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 8470", kBulrushes␉}, // MSi␊ |
833 | ␉{ 0x6778,␉0xB4921462, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 8470", kBulrushes␉}, // MSi␊ |
834 | ␉{ 0x6778,␉0xB4931462, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 8470", kBulrushes␉}, // MSi␊ |
835 | ␊ |
836 | ␉{ 0x6779,␉0x00001002, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
837 | ␉{ 0x6779,␉0x03DA1043, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
838 | ␉{ 0x6779,␉0x03DC1043, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
839 | ␉{ 0x6779,␉0x20121787, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
840 | ␉{ 0x6779,␉0x21201028, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
841 | ␉{ 0x6779,␉0x21251462, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
842 | ␉{ 0x6779,␉0x22031458, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
843 | ␉{ 0x6779,␉0x22041458, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
844 | ␉{ 0x6779,␉0x23111787, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
845 | ␉{ 0x6779,␉0x32001682, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
846 | ␉{ 0x6779,␉0x64501092, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
847 | ␉{ 0x6779,␉0x909D1B0A, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
848 | ␉{ 0x6779,␉0xE164174B, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kIpomoea␉},␊ |
849 | ␉{ 0x6779,␉0xE180174B, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kPithecia␉},␊ |
850 | ␉{ 0x6779,␉0xE190174B, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
851 | ␉{ 0x6779,␉0xE199174B, CHIP_FAMILY_CAICOS,␉␉"AMD Radeon HD 6450", kBulrushes␉},␊ |
852 | ␊ |
853 | ␉// Southen Islands //␊ |
854 | ␊ |
855 | ␉{ 0x6798,␉0x04181043, CHIP_FAMILY_TAHITI,␉␉"Asus HD7970 7970", kAji },␊ |
856 | ␉{ 0x6798,␉0x041C1043, CHIP_FAMILY_TAHITI,␉␉"Asus HD7970 7970", kAji },␊ |
857 | ␉{ 0x6798,␉0x04201043, CHIP_FAMILY_TAHITI,␉␉"Asus HD7970 7970", kAji␉},␊ |
858 | ␉{ 0x6798,␉0x04421043, CHIP_FAMILY_TAHITI,␉␉"Asus HD7970 7970", kAji␉},␊ |
859 | ␉{ 0x6798,␉0x04441043, CHIP_FAMILY_TAHITI,␉␉"Asus HD7970 7970", kAji␉},␊ |
860 | ␉{ 0x6798,␉0x04461043, CHIP_FAMILY_TAHITI,␉␉"Asus HD7970 7970", kAji␉},␊ |
861 | ␉{ 0x6798,␉0x04481043, CHIP_FAMILY_TAHITI,␉␉"Asus HD7970 7970", kAji␉},␊ |
862 | ␉{ 0x6798,␉0x044A1043, CHIP_FAMILY_TAHITI,␉␉"Asus HD7970 7970", kAji␉},␊ |
863 | ␉{ 0x6798,␉0x044C1043, CHIP_FAMILY_TAHITI,␉␉"Asus HD7970 7970", kAji␉},␊ |
864 | ␉{ 0x6798,␉0x044E1043, CHIP_FAMILY_TAHITI,␉␉"Asus HD7970 7970", kAji␉},␊ |
865 | ␉{ 0x6798,␉0x0B001002, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji␉},␊ |
866 | ␉{ 0x6798,␉0x201C1787, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji␉}, // 7990 ???␊ |
867 | ␉{ 0x6798,␉0x23171787, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji␉},␊ |
868 | ␉{ 0x6798,␉0x254D1458, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji␉},␊ |
869 | ␉{ 0x6798,␉0x27701462, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji␉},␊ |
870 | ␉{ 0x6798,␉0x30001002, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji␉},␊ |
871 | ␉{ 0x6798,␉0x30001787, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji␉},␊ |
872 | ␉{ 0x6798,␉0x32101682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji␉},␊ |
873 | ␉{ 0x6798,␉0x32111682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji␉},␊ |
874 | ␉{ 0x6798,␉0x32121682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji },␊ |
875 | ␉{ 0x6798,␉0x32131682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji␉},␊ |
876 | ␉{ 0x6798,␉0x99991043, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7990", kAji␉}, // Asus␊ |
877 | ␉{ 0x6798,␉0xE208174B, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970", kAji␉},␊ |
878 | ␊ |
879 | ␉{ 0x679A,␉0x04241043, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
880 | ␉{ 0x679A,␉0x04261043, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
881 | ␉{ 0x679A,␉0x0B001002, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
882 | ␉{ 0x679A,␉0x0B011002, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 8900", kAji␉},␊ |
883 | ␉{ 0x679A,␉0x201C1787, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
884 | ␉{ 0x679A,␉0x23161787, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
885 | ␉{ 0x679A,␉0x254C1458, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
886 | ␉{ 0x679A,␉0x27601462, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
887 | ␉{ 0x679A,␉0x27711462, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
888 | ␉{ 0x679A,␉0x30001002, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
889 | ␉{ 0x679A,␉0x30001462, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 8950", kAji␉},␊ |
890 | ␉{ 0x679A,␉0x3000174B, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
891 | ␉{ 0x679A,␉0x30001787, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
892 | ␉{ 0x679A,␉0x32121682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
893 | ␉{ 0x679A,␉0x32201682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
894 | ␉{ 0x679A,␉0x32211682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
895 | ␉{ 0x679A,␉0x32221682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
896 | ␉{ 0x679A,␉0x6616103C, CHIP_FAMILY_TAHITI,␉␉"HP Radeon HD 7950", kAji␉},␊ |
897 | ␉{ 0x679A,␉0x30001002, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
898 | ␉{ 0x679A,␉0x7950174B, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
899 | ␉{ 0x679A,␉0xE207174B, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
900 | ␉{ 0x679A,␉0xE208174B, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7950", kAji␉},␊ |
901 | ␊ |
902 | ␉{ 0x6800,␉0x03711558, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970M", kDashimaki␉},␊ |
903 | ␉{ 0x6800,␉0x05501028, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970M", kDashimaki␉},␊ |
904 | ␉{ 0x6800,␉0x05511028, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970M", kDashimaki␉},␊ |
905 | ␉{ 0x6800,␉0x05544028, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970M", kDashimaki␉},␊ |
906 | ␉{ 0x6800,␉0x057B1028, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970M", kDashimaki␉},␊ |
907 | ␉{ 0x6800,␉0x05861028, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970M", kDashimaki␉},␊ |
908 | ␉{ 0x6800,␉0x05871028, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970M", kDashimaki␉},␊ |
909 | ␉{ 0x6800,␉0x05881028, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7970M", kDashimaki␉},␊ |
910 | ␊ |
911 | ␉{ 0x6818,␉0x042F1043, CHIP_FAMILY_TAHITI,␉␉"Asus HD 7870", kAji␉␉},␊ |
912 | ␉{ 0x6818,␉0x04311043, CHIP_FAMILY_TAHITI,␉␉"Asus HD 7870", kAji␉␉},␊ |
913 | ␉{ 0x6818,␉0x0B041002, CHIP_FAMILY_TAHITI,␉␉"ATI Radeon HD 7870", kAji␉␉},␊ |
914 | ␉{ 0x6818,␉0x0B051002, CHIP_FAMILY_TAHITI,␉␉"ATI Radeon HD 8800", kAji␉␉},␊ |
915 | ␉{ 0x6818,␉0x201C1787, CHIP_FAMILY_TAHITI,␉␉"ATI Radeon HD 7870", kAji␉␉},␊ |
916 | ␉{ 0x6818,␉0x23211787, CHIP_FAMILY_TAHITI,␉␉"ATI Radeon HD 7870", kAji␉␉},␊ |
917 | ␉{ 0x6818,␉0x25541458, CHIP_FAMILY_TAHITI,␉␉"Gigabyte HD 7870", kAji␉␉},␊ |
918 | ␉{ 0x6818,␉0x27401462, CHIP_FAMILY_TAHITI,␉␉"ATI Radeon HD 7870", kAji␉␉},␊ |
919 | ␉{ 0x6818,␉0x32501682, CHIP_FAMILY_TAHITI,␉␉"ATI Radeon HD 7870", kChutoro␉␉},␊ |
920 | ␉{ 0x6818,␉0x32511682, CHIP_FAMILY_TAHITI,␉␉"ATI Radeon HD 7870", kAji␉␉},␊ |
921 | ␉{ 0x6818,␉0x7870174B, CHIP_FAMILY_TAHITI,␉␉"ATI Radeon HD 7870", kAji␉␉},␊ |
922 | ␉{ 0x6818,␉0x8B04174B, CHIP_FAMILY_TAHITI,␉␉"ATI Radeon HD 8860", kAji␉␉},␊ |
923 | ␉{ 0x6818,␉0xE217174B, CHIP_FAMILY_TAHITI,␉␉"ATI Radeon HD 7870", kAji␉␉},␊ |
924 | ␊ |
925 | ␉{ 0x6819,␉0x042C1043, CHIP_FAMILY_TAHITI,␉␉"Asus HD 7850", kAji␉␉}, // Asus␊ |
926 | ␉{ 0x6819,␉0x04311043, CHIP_FAMILY_TAHITI,␉␉"Asus HD 7850", kAji␉␉}, // Asus␊ |
927 | ␉{ 0x6819,␉0x04331043, CHIP_FAMILY_TAHITI,␉␉"Asus HD 7850", kAji␉␉}, // Asus␊ |
928 | ␉{ 0x6819,␉0x043A1043, CHIP_FAMILY_TAHITI,␉␉"Asus HD 7850", kAji␉␉}, // Asus␊ |
929 | ␉{ 0x6819,␉0x045B1043, CHIP_FAMILY_TAHITI,␉␉"Asus HD 7850", kAji␉␉}, // Asus␊ |
930 | ␉{ 0x6819,␉0x0B041002, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // ATI␊ |
931 | ␉{ 0x6819,␉0x201C1787, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // HIS␊ |
932 | ␉{ 0x6819,␉0x23201787, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // HIS␊ |
933 | ␉{ 0x6819,␉0x25531458, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // Gigabyte␊ |
934 | ␉{ 0x6819,␉0x27301462, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // MSI␊ |
935 | ␉{ 0x6819,␉0x27311462, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // MSI␊ |
936 | ␉{ 0x6819,␉0x27321462, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // MSI␊ |
937 | ␉{ 0x6819,␉0x32601682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // XFX␊ |
938 | ␉{ 0x6819,␉0x32621682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // XFX␊ |
939 | ␉{ 0x6819,␉0x32641682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // XFX␊ |
940 | ␉{ 0x6819,␉0xE218174B, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // Sapphire␊ |
941 | ␉{ 0x6819,␉0xE221174B, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7850", kAji␉␉}, // Sapphire␊ |
942 | ␊ |
943 | ␉{ 0x682F,␉0x15271043, CHIP_FAMILY_TAHITI,␉␉"Asus Radeon HD 7700M", kAji␉␉},␊ |
944 | ␉{ 0x682F,␉0x1831103C, CHIP_FAMILY_TAHITI,␉␉"HP Radeon HD 7730M", kAji␉␉},␊ |
945 | ␉{ 0x682F,␉0x1832103C, CHIP_FAMILY_TAHITI,␉␉"HP Radeon HD 7730M", kAji␉␉},␊ |
946 | ␉{ 0x682F,␉0x1834103C, CHIP_FAMILY_TAHITI,␉␉"HP Radeon HD 7730M", kAji␉␉},␊ |
947 | ␉{ 0x682F,␉0x18A7103C, CHIP_FAMILY_TAHITI,␉␉"HP Radeon HD 7730M", kAji␉␉},␊ |
948 | ␉{ 0x682F,␉0xC0DA144D, CHIP_FAMILY_TAHITI,␉␉"Samsung Radeon HD 7730M", kAji␉␉},␊ |
949 | ␊ |
950 | ␉{ 0x683D,␉0x00301002, CHIP_FAMILY_TAHITI,␉␉"Radeon HD 8760 OEM", kAji␉␉}, // VERDE?␊ |
951 | ␉{ 0x683D,␉0x00301019, CHIP_FAMILY_TAHITI,␉␉"Radeon HD 8760 OEM", kAji␉␉}, // VERDE?␊ |
952 | ␉{ 0x683D,␉0x04211043, CHIP_FAMILY_TAHITI,␉␉"Asus Radeon HD 7770", kAji␉␉},␊ |
953 | ␉{ 0x683D,␉0x23041002, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7700", kAji␉␉},␊ |
954 | ␉{ 0x683D,␉0x25561458, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7770", kAji␉␉},␊ |
955 | ␉{ 0x683D,␉0x27101462, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7770", kAji␉␉},␊ |
956 | ␉{ 0x683D,␉0x2B301002, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7770", kAji␉␉},␊ |
957 | ␉{ 0x683D,␉0x32331682, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7770", kAji␉␉},␊ |
958 | ␉{ 0x683D,␉0x6886103C, CHIP_FAMILY_TAHITI,␉␉"HP Radeon HD 7700", kAji␉␉},␊ |
959 | ␉{ 0x683D,␉0x6890103C, CHIP_FAMILY_TAHITI,␉␉"Radeon HD 8760 OEM", kAji␉␉}, // VERDE?␊ |
960 | ␉{ 0x683D,␉0xE214174B, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7770", kAji␉␉},␊ |
961 | ␊ |
962 | ␉{ 0x683F,␉0x04231043, CHIP_FAMILY_TAHITI,␉␉"Asus HD 7750", kChutoro␉␉},␊ |
963 | ␉{ 0x683F,␉0x04271043, CHIP_FAMILY_TAHITI,␉␉"Asus HD 7750", kChutoro␉␉},␊ |
964 | ␉{ 0x683F,␉0x04591043, CHIP_FAMILY_TAHITI,␉␉"Asus HD 7750", kChutoro␉␉},␊ |
965 | ␉{ 0x683F,␉0x200B1787, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7750", kChutoro␉␉},␊ |
966 | ␉{ 0x683F,␉0x23181787, CHIP_FAMILY_TAHITI,␉␉"Vertex3D HD 7750", kChutoro␉␉},␊ |
967 | ␉{ 0x683F,␉0x25511458, CHIP_FAMILY_TAHITI,␉␉"Gigabyte HD 7750", kChutoro␉␉},␊ |
968 | ␉{ 0x683F,␉0x27921462, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7750", kChutoro␉␉},␊ |
969 | ␉{ 0x683F,␉0x2B301002, CHIP_FAMILY_TAHITI,␉␉"Ati HD 7750", kChutoro␉␉},␊ |
970 | ␉{ 0x683F,␉0x32411682, CHIP_FAMILY_TAHITI,␉␉"XFX HD 7750", kChutoro␉␉},␊ |
971 | ␉{ 0x683F,␉0x32421682, CHIP_FAMILY_TAHITI,␉␉"XFX HD 7750", kChutoro␉␉},␊ |
972 | ␉{ 0x683F,␉0x32451682, CHIP_FAMILY_TAHITI,␉␉"XFX HD 7750", kChutoro␉␉},␊ |
973 | ␉{ 0x683F,␉0xE2131019, CHIP_FAMILY_TAHITI,␉␉"Diamond HD 7750", kChutoro␉␉},␊ |
974 | ␉{ 0x683F,␉0xE213174B, CHIP_FAMILY_TAHITI,␉␉"AMD Radeon HD 7750", kChutoro␉␉},␊ |
975 | ␉{ 0x683F,␉0xE215174B, CHIP_FAMILY_TAHITI,␉␉"Sapphire HD 7750", kChutoro␉␉},␊ |
976 | ␊ |
977 | ␉{ 0x6840,␉0x01241002, CHIP_FAMILY_LOMBOK,␉␉"AMD Radeon HD 7600M Series", kPondweed },␊ |
978 | ␉{ 0x6840,␉0x01341002, CHIP_FAMILY_LOMBOK,␉␉"AMD Radeon HD 7600M Series", kPondweed },␊ |
979 | ␉{ 0x6840,␉0x050E1025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
980 | ␉{ 0x6840,␉0x050F1025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
981 | ␉{ 0x6840,␉0x05131025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
982 | ␉{ 0x6840,␉0x05141025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
983 | ␉{ 0x6840,␉0x056D1025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
984 | ␉{ 0x6840,␉0x059A1025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
985 | ␉{ 0x6840,␉0x059B1025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
986 | ␉{ 0x6840,␉0x059E1025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
987 | ␉{ 0x6840,␉0x06001025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
988 | ␉{ 0x6840,␉0x06061025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
989 | ␉{ 0x6840,␉0x06961025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
990 | ␉{ 0x6840,␉0x06971025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
991 | ␉{ 0x6840,␉0x06981025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
992 | ␉{ 0x6840,␉0x06991025, CHIP_FAMILY_LOMBOK,␉␉"Acer HD 7670M", kPondweed },␊ |
993 | ␉{ 0x6840,␉0x100A1043, CHIP_FAMILY_LOMBOK,␉␉"Asus HD 7670M", kPondweed },␊ |
994 | ␉{ 0x6840,␉0x104B1043, CHIP_FAMILY_LOMBOK,␉␉"Asus HD 7670M", kPondweed },␊ |
995 | ␉{ 0x6840,␉0x10DC1043, CHIP_FAMILY_LOMBOK,␉␉"Asus HD 7670M", kPondweed },␊ |
996 | ␉{ 0x6840,␉0x1813103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7590M", kPondweed },␊ |
997 | ␉{ 0x6840,␉0x182F103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
998 | ␉{ 0x6840,␉0x1830103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
999 | ␉{ 0x6840,␉0x1835103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1000 | ␉{ 0x6840,␉0x183A103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1001 | ␉{ 0x6840,␉0x183C103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1002 | ␉{ 0x6840,␉0x183E103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1003 | ␉{ 0x6840,␉0x1840103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1004 | ␉{ 0x6840,␉0x1842103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1005 | ␉{ 0x6840,␉0x1844103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1006 | ␉{ 0x6840,␉0x1848103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1007 | ␉{ 0x6840,␉0x184A103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1008 | ␉{ 0x6840,␉0x184C103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1009 | ␉{ 0x6840,␉0x1895103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1010 | ␉{ 0x6840,␉0x1897103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1011 | ␉{ 0x6840,␉0x18A5103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1012 | ␉{ 0x6840,␉0x18A7103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1013 | ␉{ 0x6840,␉0x18F4103C, CHIP_FAMILY_LOMBOK,␉␉"HP HD 7670M", kPondweed },␊ |
1014 | ␉{ 0x6840,␉0x21211043, CHIP_FAMILY_LOMBOK,␉␉"Asus HD 7670M", kPondweed },␊ |
1015 | ␉{ 0x6840,␉0x21221043, CHIP_FAMILY_LOMBOK,␉␉"Asus HD 7670M", kPondweed },␊ |
1016 | ␉{ 0x6840,␉0x21231043, CHIP_FAMILY_LOMBOK,␉␉"Asus HD 7670M", kPondweed },␊ |
1017 | ␉{ 0x6840,␉0x21251043, CHIP_FAMILY_LOMBOK,␉␉"Asus HD 7670M", kPondweed },␊ |
1018 | ␉{ 0x6840,␉0x21271043, CHIP_FAMILY_LOMBOK,␉␉"Asus HD 7670M", kPondweed },␊ |
1019 | ␉{ 0x6840,␉0x397017AA, CHIP_FAMILY_LOMBOK,␉␉"Lenovo HD 7670M", kPondweed },␊ |
1020 | ␉{ 0x6840,␉0x397B17AA, CHIP_FAMILY_LOMBOK,␉␉"Lenovo HD 7670M", kPondweed },␊ |
1021 | ␉{ 0x6840,␉0xC0C5144D, CHIP_FAMILY_LOMBOK,␉␉"Samsung HD 6000M series", kPondweed },␊ |
1022 | ␉{ 0x6840,␉0xC0CE144D, CHIP_FAMILY_LOMBOK,␉␉"Samsung HD 7670M", kPondweed },␊ |
1023 | ␉{ 0x6840,␉0xC0DA144D, CHIP_FAMILY_LOMBOK,␉␉"Samsung HD 7670M", kPondweed },␊ |
1024 | ␉{ 0x6840,␉0xFB111179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1025 | ␉{ 0x6840,␉0xFB221179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1026 | ␉{ 0x6840,␉0xFB231179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1027 | ␉{ 0x6840,␉0xFB2C1179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1028 | ␉{ 0x6840,␉0xFB311179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1029 | ␉{ 0x6840,␉0xFB321179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1030 | ␉{ 0x6840,␉0xFB381179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1031 | ␉{ 0x6840,␉0xFB391179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1032 | ␉{ 0x6840,␉0xFB3A1179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1033 | ␉{ 0x6840,␉0xFB401179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1034 | ␉{ 0x6840,␉0xFB411179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1035 | ␉{ 0x6840,␉0xFB471179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1036 | ␉{ 0x6840,␉0xFB481179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1037 | ␉{ 0x6840,␉0xFB511179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1038 | ␉{ 0x6840,␉0xFB521179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1039 | ␉{ 0x6840,␉0xFB531179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1040 | ␉{ 0x6840,␉0xFB811179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1041 | ␉{ 0x6840,␉0xFB821179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1042 | ␉{ 0x6840,␉0xFB831179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1043 | ␉{ 0x6840,␉0xFC561179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1044 | ␉{ 0x6840,␉0xFCD41179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1045 | ␉{ 0x6840,␉0xFCEE1179, CHIP_FAMILY_LOMBOK,␉␉"Toshiba HD 7670M", kPondweed },␊ |
1046 | */␊ |
1047 | ␊ |
1048 | ␉// KAVERI␊ |
1049 | //␉{ 0x1304,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1050 | //␉{ 0x1305,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull },␊ |
1051 | //␉{ 0x1306,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1052 | //␉{ 0x1307,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull },␊ |
1053 | //␉{ 0x1309,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1054 | //␉{ 0x130A,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1055 | //␉{ 0x130B,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1056 | //␉{ 0x130C,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1057 | //␉{ 0x130D,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1058 | //␉{ 0x130E,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1059 | ␉{ 0x130F,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon R7", kNull },␊ |
1060 | //␉{ 0x1310,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull },␊ |
1061 | //␉{ 0x1311,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull },␊ |
1062 | //␉{ 0x1312,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull },␊ |
1063 | ␉{ 0x1313,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon R7", kNull },␊ |
1064 | //␉{ 0x1315,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull },␊ |
1065 | ␉{ 0x1316,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon R5", kNull },␊ |
1066 | //␉{ 0x1317,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1067 | ␉{ 0x1318,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon R5", kNull }, // Mobile␊ |
1068 | //␉{ 0x131B,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull },␊ |
1069 | //␉{ 0x131C,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull },␊ |
1070 | //␉{ 0x131D,␉0x00000000, CHIP_FAMILY_KAVERI,␉␉"AMD Radeon", kNull },␊ |
1071 | ␊ |
1072 | ␉// R423␊ |
1073 | ␉{ 0x5D48, 0x00000000, CHIP_FAMILY_R423, "ATI Radeon HD Mobile ",␉kNull␉␉},␊ |
1074 | ␉{ 0x5D49, 0x00000000, CHIP_FAMILY_R423, "ATI Radeon HD Mobile ",␉kNull␉␉},␊ |
1075 | ␉{ 0x5D4A, 0x00000000, CHIP_FAMILY_R423, "ATI Radeon HD Mobile ",␉kNull␉␉},␊ |
1076 | ␉{ 0x5D4C, 0x00000000, CHIP_FAMILY_R423, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1077 | ␉{ 0x5D4D, 0x00000000, CHIP_FAMILY_R423, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1078 | ␉{ 0x5D4E, 0x00000000, CHIP_FAMILY_R423, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1079 | ␉{ 0x5D4F, 0x00000000, CHIP_FAMILY_R423, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1080 | ␉{ 0x5D50, 0x00000000, CHIP_FAMILY_R423, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1081 | ␉{ 0x5D52, 0x00000000, CHIP_FAMILY_R423, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1082 | ␉{ 0x5D57, 0x00000000, CHIP_FAMILY_R423, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1083 | ␊ |
1084 | ␉// RV410␊ |
1085 | ␉{ 0x5E48, 0x00000000, CHIP_FAMILY_RV410, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1086 | ␉{ 0x5E4A, 0x00000000, CHIP_FAMILY_RV410, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1087 | ␉{ 0x5E4B, 0x00000000, CHIP_FAMILY_RV410, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1088 | ␉{ 0x5E4C, 0x00000000, CHIP_FAMILY_RV410, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1089 | ␉{ 0x5E4D, 0x00000000, CHIP_FAMILY_RV410, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1090 | ␉{ 0x5E4F, 0x00000000, CHIP_FAMILY_RV410, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1091 | ␊ |
1092 | ␉// OLAND␊ |
1093 | ␉{ 0x6600,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon HD 8600/8700M",␉kNull }, // Mobile␊ |
1094 | ␉{ 0x6601,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon HD 8500/8700M",␉kNull }, // Mobile␊ |
1095 | //␉{ 0x6602,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon",␉␉␉kNull }, // Mobile␊ |
1096 | //␉{ 0x6603,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon",␉␉␉kNull }, // Mobile␊ |
1097 | ␉{ 0x6604,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon R7 M265",␉␉kNull }, // Mobile␊ |
1098 | ␉{ 0x6605,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon R7 M260",␉␉kNull }, // Mobile␊ |
1099 | ␉{ 0x6606,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon HD 8790M",␉␉kNull }, // Mobile␊ |
1100 | ␉{ 0x6607,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon R5 M240",␉␉kNull }, // Mobile␊ |
1101 | ␉{ 0x6608,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD FirePro W2100",␉␉kNull },␊ |
1102 | ␉{ 0x6610,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon R7 250",␉␉kFutomaki },␊ |
1103 | ␉{ 0x6611,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon R7 340 Series",␉kNull },␊ |
1104 | ␉{ 0x6613,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon R7 240",␉␉kFutomaki␉},␊ |
1105 | //␉{ 0x6620,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1106 | //␉{ 0x6621,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1107 | //␉{ 0x6623,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon", kNull }, // Mobile␊ |
1108 | //␉{ 0x6631,␉0x00000000, CHIP_FAMILY_OLAND,␉␉"AMD Radeon", kNull },␊ |
1109 | ␊ |
1110 | ␉// BONAIRE␊ |
1111 | ␉{ 0x6640,␉0x00000000, CHIP_FAMILY_BONAIRE,␉"AMD Radeon HD 8950", kNull }, // Mobile␊ |
1112 | ␉{ 0x6641,␉0x00000000, CHIP_FAMILY_BONAIRE,␉"AMD Radeon HD 8930M", kNull }, // Mobile␊ |
1113 | ␉{ 0x6646,␉0x00000000, CHIP_FAMILY_BONAIRE,␉"AMD Radeon R9 M280X", kNull }, // Mobile␊ |
1114 | ␉{ 0x6647,␉0x00000000, CHIP_FAMILY_BONAIRE,␉"AMD Radeon R9 M270X", kNull }, // Mobile␊ |
1115 | ␉{ 0x6649,␉0x00000000, CHIP_FAMILY_BONAIRE,␉"AMD FirePro W5100", kNull },␊ |
1116 | //␉{ 0x6650,␉0x00000000, CHIP_FAMILY_BONAIRE,␉"AMD Radeon", kNull },␊ |
1117 | //␉{ 0x6651,␉0x00000000, CHIP_FAMILY_BONAIRE,␉"AMD Radeon", kNull },␊ |
1118 | ␉{ 0x6658,␉0x00000000, CHIP_FAMILY_BONAIRE,␉"AMD Radeon R7 260X", kNull },␊ |
1119 | ␉{ 0x665C,␉0x00000000, CHIP_FAMILY_BONAIRE,␉"AMD Radeon HD 7790",␉kFutomaki␉},␊ |
1120 | ␉{ 0x665D,␉0x00000000, CHIP_FAMILY_BONAIRE,␉"AMD Radeon R9 260",␉kFutomaki␉},␊ |
1121 | ␉{ 0x665F,␉0x00000000, CHIP_FAMILY_BONAIRE,␉"AMD Radeon R9 360",␉kFutomaki␉},␊ |
1122 | ␊ |
1123 | ␉// HAINAN␊ |
1124 | ␉{ 0x6660,␉0x00000000, CHIP_FAMILY_HAINAN,␉␉"AMD Radeon HD 8670M", kNull }, // Mobile␊ |
1125 | ␉{ 0x6663,␉0x00000000, CHIP_FAMILY_HAINAN,␉␉"AMD Radeon HD 8570M", kNull }, // Mobile␊ |
1126 | ␉{ 0x6664,␉0x00000000, CHIP_FAMILY_HAINAN,␉␉"AMD Radeon R5 M240", kNull }, // Mobile␊ |
1127 | ␉{ 0x6665,␉0x00000000, CHIP_FAMILY_HAINAN,␉␉"AMD Radeon R5 M230", kNull }, // Mobile␊ |
1128 | ␉{ 0x6667,␉0x00000000, CHIP_FAMILY_HAINAN,␉␉"AMD Radeon R5 M230", kNull }, // Mobile␊ |
1129 | ␉{ 0x666F,␉0x00000000, CHIP_FAMILY_HAINAN,␉␉"AMD Radeon HD 8550M", kNull }, // Mobile␊ |
1130 | ␊ |
1131 | ␉// CAYMAN␊ |
1132 | ␉{ 0x6701,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6xxx Series",␉kLotus␉␉},␊ |
1133 | ␉{ 0x6702,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6xxx Series",␉kLotus␉␉},␊ |
1134 | ␉{ 0x6703,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6xxx Series",␉kLotus␉␉},␊ |
1135 | ␉{ 0x6704,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD FirePro V7900",␉kLotus␉␉},␊ |
1136 | ␉{ 0x6705,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6xxx Series",␉kLotus␉␉},␊ |
1137 | ␉{ 0x6706,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6xxx Series",␉kLotus␉␉},␊ |
1138 | ␉{ 0x6707,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6xxx Series",␉kLotus␉␉},␊ |
1139 | ␉{ 0x6708,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD FirePro V5900",␉kLotus␉␉},␊ |
1140 | ␉{ 0x6709,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6xxx Series",␉kLotus␉␉},␊ |
1141 | ␉{ 0x6718,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6970 Series",␉kLotus␉␉},␊ |
1142 | ␉{ 0x6719,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6950 Series",␉kLotus␉␉},␊ |
1143 | ␉{ 0x671C,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6990 Series",␉kLotus␉␉},␊ |
1144 | ␉{ 0x671D,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6950 Series",␉kLotus␉␉},␊ |
1145 | ␉{ 0x671F,␉0x00000000, CHIP_FAMILY_CAYMAN,␉"AMD Radeon HD 6930 Series",␉kLotus␉␉},␊ |
1146 | ␊ |
1147 | ␉// BARTS␊ |
1148 | ␉{ 0x6720,␉0x00000000, CHIP_FAMILY_BARTS,␉"AMD Radeon HD 6970M Series",␉kFanwort␉},␊ |
1149 | ␉{ 0x6722,␉0x00000000, CHIP_FAMILY_BARTS,␉"AMD Radeon HD 6900M Series",␉kFanwort␉},␊ |
1150 | ␉{ 0x6729,␉0x00000000, CHIP_FAMILY_BARTS,␉"AMD Radeon HD 6900M Series",␉kFanwort␉},␊ |
1151 | ␉{ 0x6738,␉0x00000000, CHIP_FAMILY_BARTS,␉"AMD Radeon HD 6870 Series",␉kDuckweed␉},␊ |
1152 | ␉{ 0x6739,␉0x00000000, CHIP_FAMILY_BARTS,␉"AMD Radeon HD 6850 X2",␉kDuckweed␉},␊ |
1153 | ␉{ 0x673E,␉0x00000000, CHIP_FAMILY_BARTS,␉"AMD Radeon HD 6790 Series",␉kDuckweed␉},␊ |
1154 | ␊ |
1155 | ␉// TURKS␊ |
1156 | ␉{ 0x6740,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 6770M Series",␉kCattail␉},␊ |
1157 | ␉{ 0x6741,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 6750M",␉kCattail␉},␊ |
1158 | ␉{ 0x6742,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 7500/7600",␉kCattail␉},␊ |
1159 | ␉{ 0x6745,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 6600M Series",␉kCattail␉},␊ |
1160 | ␉{ 0x6749,␉0x00000000, CHIP_FAMILY_TURKS,␉"ATI Radeon FirePro V4900",␉kPithecia␉},␊ |
1161 | ␉{ 0x674A,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD FirePro V3900",␉kPithecia␉},␊ |
1162 | ␉{ 0x6750,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 6670 Series",␉kPithecia␉},␊ |
1163 | ␉{ 0x6758,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 6670 Series",␉kPithecia␉},␊ |
1164 | ␉{ 0x6759,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 6570 Series",␉kPithecia␉},␊ |
1165 | ␉{ 0x675B,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 7600 Series",␉kPithecia␉},␊ |
1166 | ␉{ 0x675D,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 7570M Series",␉kCattail␉},␊ |
1167 | ␉{ 0x675F,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 6510 Series",␉kPithecia␉},␊ |
1168 | ␊ |
1169 | ␉// CAICOS␊ |
1170 | ␉{ 0x6760,␉0x00000000, CHIP_FAMILY_CAICOS,␉"AMD Radeon HD 6470M Series",␉kHydrilla␉},␊ |
1171 | ␉{ 0x6761,␉0x00000000, CHIP_FAMILY_CAICOS,␉"AMD Radeon HD 6430M Series",␉kHydrilla␉},␊ |
1172 | ␉{ 0x6763,␉0x00000000, CHIP_FAMILY_CAICOS,␉"AMD Radeon E6460 Series",␉kHydrilla␉},␊ |
1173 | ␉{ 0x6768,␉0x00000000, CHIP_FAMILY_CAICOS,␉"AMD Radeon HD 6400M Series",␉kHydrilla␉},␊ |
1174 | ␉{ 0x6770,␉0x00000000, CHIP_FAMILY_CAICOS,␉"AMD Radeon HD 6400 Series",␉kBulrushes␉},␊ |
1175 | ␉{ 0x6772,␉0x00000000, CHIP_FAMILY_CAICOS,␉"AMD Radeon HD 7400A Series",␉kBulrushes␉},␊ |
1176 | ␉{ 0x6778,␉0x00000000, CHIP_FAMILY_CAICOS,␉"AMD Radeon HD 7000 Series",␉kBulrushes␉},␊ |
1177 | ␉{ 0x6779,␉0x00000000, CHIP_FAMILY_CAICOS,␉"AMD Radeon HD 6450/7450/8450/R5 230",␉kBulrushes␉},␊ |
1178 | ␉{ 0x677B,␉0x00000000, CHIP_FAMILY_CAICOS,␉"AMD Radeon HD 7400 Series",␉kBulrushes␉},␊ |
1179 | ␊ |
1180 | ␉// TAHITI␊ |
1181 | ␉//Framebuffers: Aji - 4 Desktop, Buri - 4 Mobile, Chutoro - 5 Mobile, Dashimaki - 4, IkuraS - HMDI␊ |
1182 | ␉// Ebi - 5 Mobile, Gari - 5 M, Futomaki - 4 D, Hamachi - 4 D, OPM - 6 Server, Ikura - 6␊ |
1183 | ␉{ 0x6780,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7900 Series",␉kFutomaki␉},␊ |
1184 | ␉{ 0x6784,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7900 Series",␉kFutomaki␉},␊ |
1185 | ␉{ 0x6788,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7900 Series",␉kFutomaki␉},␊ |
1186 | ␉{ 0x678A,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7900 Series",␉kFutomaki␉},␊ |
1187 | ␉{ 0x6790,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7900 Series",␉kFutomaki␉},␊ |
1188 | ␉{ 0x6791,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7900 Series",␉kFutomaki␉},␊ |
1189 | ␉{ 0x6792,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7900 Series",␉kFutomaki␉},␊ |
1190 | ␉{ 0x6798,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7970X/8970/R9 280X",␉kFutomaki␉},␊ |
1191 | ␉{ 0x6799,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7990 Series",␉kAji␉␉},␊ |
1192 | ␉{ 0x679A,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7950/8950/R9 280",␉kFutomaki␉},␊ |
1193 | ␉{ 0x679B,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7990 Series",␉kFutomaki␉},␊ |
1194 | ␉{ 0x679E,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7870 XT",␉kFutomaki␉},␊ |
1195 | ␉{ 0x679F,␉0x00000000, CHIP_FAMILY_TAHITI,␉"AMD Radeon HD 7950 Series",␉kFutomaki␉},␊ |
1196 | ␊ |
1197 | ␉// HAWAII␊ |
1198 | //␉{ 0x67A0,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon", kFutomaki␉},␊ |
1199 | //␉{ 0x67A1,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon", kFutomaki␉},␊ |
1200 | //␉{ 0x67A2,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon", kFutomaki␉},␊ |
1201 | //␉{ 0x67A8,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon", kFutomaki␉},␊ |
1202 | //␉{ 0x67A9,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon", kFutomaki␉},␊ |
1203 | //␉{ 0x67AA,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon", kFutomaki␉},␊ |
1204 | ␉{ 0x67B0,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon R9 290X", kBaladi␉},␊ |
1205 | ␉{ 0x67B1,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon R9 290", kBaladi␉},␊ |
1206 | //␉{ 0x67B8,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon", kFutomaki␉},␊ |
1207 | ␉{ 0x67B9,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon R9 200", kFutomaki␉},␊ |
1208 | //␉{ 0x67BA,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon", kFutomaki␉},␊ |
1209 | //␉{ 0x67BE,␉0x00000000, CHIP_FAMILY_HAWAII,␉"AMD Radeon", kFutomaki␉},␊ |
1210 | ␊ |
1211 | ␉// PITCAIRN␊ |
1212 | ␉{ 0x6800,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon HD 7970M",␉kBuri␉}, // Mobile␊ |
1213 | ␉{ 0x6801,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon HD 8970M Series",␉kFutomaki␉}, // Mobile␊ |
1214 | //␉{ 0x6802,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon HD ???M Series",␉kFutomaki␉}, // Mobile␊ |
1215 | ␉{ 0x6806,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon HD 7600 Series",␉kFutomaki␉},␊ |
1216 | ␉{ 0x6808,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon HD 7600 Series",␉kFutomaki␉},␊ |
1217 | ␉{ 0x6809,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"ATI FirePro V",␉kNull␉␉},␊ |
1218 | ␉{ 0x6810,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon R9 270X",␉kFutomaki␉␉},␊ |
1219 | ␉{ 0x6811,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon R9 270",␉kFutomaki␉␉},␊ |
1220 | //␉{ 0x6816,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon",␉kFutomaki␉␉},␊ |
1221 | //␉{ 0x6817,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon",␉kFutomaki␉␉},␊ |
1222 | ␉{ 0x6818,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon HD 7870 Series",␉kFutomaki␉},␊ |
1223 | ␉{ 0x6819,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon HD 7850 Series",␉kFutomaki␉},␊ |
1224 | ␊ |
1225 | ␉// VERDE␊ |
1226 | ␉{ 0x6820,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7700 Series",␉kBuri␉}, // Mobile␊ |
1227 | ␉{ 0x6821,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7700 Series",␉kBuri␉}, // Mobile␊ |
1228 | ␉{ 0x6822,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon E8860",␉kBuri␉}, // Mobile␊ |
1229 | ␉{ 0x6823,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 8800M Series",␉kBuri␉}, // Mobile␊ |
1230 | //␉{ 0x6824,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7700M Series",␉kBuri␉}, // Mobile␊ |
1231 | ␉{ 0x6825,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7800M Series",␉kPondweed␉}, // Mobile␊ |
1232 | ␉{ 0x6826,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7700 Series",␉kBuri␉}, // Mobile␊ |
1233 | ␉{ 0x6827,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7800M Series",␉kPondweed␉}, // Mobile␊ |
1234 | ␉{ 0x6828,␉0x00000000, CHIP_FAMILY_VERDE,␉"ATI FirePro V",␉kBuri␉},␊ |
1235 | //␉{ 0x6829,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD ??? Series",␉kBuri␉},␊ |
1236 | //␉{ 0x682A,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD",␉kBuri␉}, // Mobile␊ |
1237 | ␉{ 0x682B,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 8800M Series",␉kBuri␉}, // Mobile␊ |
1238 | ␉{ 0x682D,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7700 Series",␉kBuri␉}, // Mobile␊ |
1239 | ␉{ 0x682F,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7730 Series",␉kBuri␉}, // Mobile␊ |
1240 | ␉{ 0x6830,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7800M Series",␉kBuri␉}, // Mobile␊ |
1241 | ␉{ 0x6831,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7700 Series",␉kBuri␉}, // Mobile␊ |
1242 | ␉{ 0x6835,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD R7 Series",␉kBuri␉},␊ |
1243 | ␉{ 0x6837,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7730 Series",␉kFutomaki␉},␊ |
1244 | ␉{ 0x6838,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7700 Series",␉kFutomaki␉},␊ |
1245 | ␉{ 0x6839,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7700 Series",␉kFutomaki␉},␊ |
1246 | ␉{ 0x683B,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7700 Series",␉kFutomaki␉},␊ |
1247 | ␉{ 0x683D,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7770 Series",␉kFutomaki␉}, //R7 250X␊ |
1248 | ␉{ 0x683F,␉0x00000000, CHIP_FAMILY_VERDE,␉"AMD Radeon HD 7750 Series",␉kFutomaki␉},␊ |
1249 | ␊ |
1250 | ␉// TURKS␊ |
1251 | ␉{ 0x6840,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 7670M Series",␉kPondweed␉}, // Mobile␊ |
1252 | ␉{ 0x6841,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 7650M Series",␉kPondweed␉}, // Mobile␊ |
1253 | ␉{ 0x6842,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 7600M Series",␉kPondweed␉}, // Mobile␊ |
1254 | ␉{ 0x6843,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 7670M Series",␉kPondweed␉}, // Mobile␊ |
1255 | ␉{ 0x6849,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 7600M Series",␉kPondweed␉},␊ |
1256 | ␊ |
1257 | ␉// PITCAIRN␊ |
1258 | //␉{ 0x684C,␉0x00000000, CHIP_FAMILY_PITCAIRN,␉"AMD Radeon HD",␉kNull␉},␊ |
1259 | ␊ |
1260 | ␉// TURKS␊ |
1261 | ␉{ 0x6850,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 7600M Series",␉kPondweed },␊ |
1262 | ␉{ 0x6858,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 7400 Series",␉kPondweed },␊ |
1263 | ␉{ 0x6859,␉0x00000000, CHIP_FAMILY_TURKS,␉"AMD Radeon HD 7600M Series",␉kPondweed },␊ |
1264 | ␊ |
1265 | ␉// CYPRESS␊ |
1266 | //␉{ 0x6880,␉0x00000000, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD",␉kNull␉}, // Mobile␊ |
1267 | ␉{ 0x6888,␉0x00000000, CHIP_FAMILY_CYPRESS,␉"ATI FirePro V8800",␉kNull␉},␊ |
1268 | ␉{ 0x6889,␉0x00000000, CHIP_FAMILY_CYPRESS,␉"ATI FirePro V7800",␉kNull␉},␊ |
1269 | ␉{ 0x688A,␉0x00000000, CHIP_FAMILY_CYPRESS,␉"ATI FirePro V9800",␉kNull␉},␊ |
1270 | ␉{ 0x688C,␉0x00000000, CHIP_FAMILY_CYPRESS,␉"AMD FireStream 9370",␉kZonalis␉},␊ |
1271 | ␉{ 0x688D,␉0x00000000, CHIP_FAMILY_CYPRESS,␉"AMD FireStream 9350",␉kZonalis␉},␊ |
1272 | ␉{ 0x6898,␉0x00000000, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5870 Series",␉kUakari␉},␊ |
1273 | ␉{ 0x6899,␉0x00000000, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5850 Series",␉kUakari␉},␊ |
1274 | ␉{ 0x689B,␉0x00000000, CHIP_FAMILY_CYPRESS,␉"AMD Radeon HD 6800 Series",␉kNull␉},␊ |
1275 | ␊ |
1276 | ␉// HEMLOCK␊ |
1277 | ␉{ 0x689C,␉0x00000000, CHIP_FAMILY_HEMLOCK,␉"ATI Radeon HD 5970 Series",␉kUakari␉},␊ |
1278 | ␉{ 0x689D,␉0x00000000, CHIP_FAMILY_HEMLOCK,␉"ATI Radeon HD 5900 Series",␉kUakari␉},␊ |
1279 | ␊ |
1280 | ␉// CYPRESS␊ |
1281 | ␉{ 0x689E,␉0x00000000, CHIP_FAMILY_CYPRESS,␉"ATI Radeon HD 5800 Series",␉kUakari␉},␊ |
1282 | ␊ |
1283 | ␉// JUNIPER␊ |
1284 | ␉{ 0x68A0,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770 Series",␉kHoolock␉}, // Mobile␊ |
1285 | ␉{ 0x68A1,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5850 Series",␉kHoolock␉}, // Mobile␊ |
1286 | ␉{ 0x68A8,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6850M",␉␉kHoolock␉},␊ |
1287 | ␉{ 0x68A9,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"ATI FirePro V5800 (FireGL)",␉kHoolock␉},␊ |
1288 | ␉{ 0x68B0,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770 Series",␉kHoolock␉}, // Mobile␊ |
1289 | ␉{ 0x68B1,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770 Series",␉kHoolock␉},␊ |
1290 | ␉{ 0x68B8,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5770 Series",␉kVervet␉},␊ |
1291 | ␉{ 0x68B9,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5700 Series",␉kHoolock␉},␊ |
1292 | ␉{ 0x68BA,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6770 Series",␉kHoolock␉},␊ |
1293 | ␉{ 0x68BC,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"AMD FireStream 9370",␉␉kHoolock␉},␊ |
1294 | ␉{ 0x68BD,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"AMD FireStream 9350",␉␉kHoolock␉},␊ |
1295 | ␉{ 0x68BE,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 5750 Series",␉kHoolock␉},␊ |
1296 | ␉{ 0x68BF,␉0x00000000, CHIP_FAMILY_JUNIPER,␉"ATI Radeon HD 6750 Series",␉kHoolock␉},␊ |
1297 | ␊ |
1298 | ␉// REDWOOD␊ |
1299 | ␉{ 0x68C0,␉0x00000000, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5730 Series",␉kBaboon␉}, // Mobile␊ |
1300 | ␉{ 0x68C1,␉0x00000000, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5650 Series",␉kBaboon␉}, // Mobile␊ |
1301 | ␉{ 0x68C7,␉0x00000000, CHIP_FAMILY_REDWOOD,␉"ATI Mobility Radeon HD 5570",␉kEulemur␉}, // Mobile␊ |
1302 | ␉{ 0x68C8,␉0x00000000, CHIP_FAMILY_REDWOOD,␉"ATI FirePro v4800", kBaboon␉},␊ |
1303 | ␉{ 0x68C9,␉0x00000000, CHIP_FAMILY_REDWOOD,␉"FirePro 3D V3800",␉kBaboon␉},␊ |
1304 | ␉{ 0x68D8,␉0x00000000, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5670 Series",␉kBaboon␉},␊ |
1305 | ␉{ 0x68D9,␉0x00000000, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5570 Series",␉kBaboon␉},␊ |
1306 | ␉{ 0x68DA,␉0x00000000, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5500 Series",␉kBaboon␉},␊ |
1307 | ␉{ 0x68DE,␉0x00000000, CHIP_FAMILY_REDWOOD,␉"ATI Radeon HD 5000 Series",␉kNull␉},␊ |
1308 | ␊ |
1309 | ␉// CEDAR␊ |
1310 | ␉{ 0x68E0,␉0x00000000, CHIP_FAMILY_CEDAR,␉"ATI Radeon HD 5470 Series",␉kEulemur␉},␊ |
1311 | ␉{ 0x68E1,␉0x00000000, CHIP_FAMILY_CEDAR,␉"AMD Radeon HD 6230",␉␉kEulemur␉},␊ |
1312 | ␉{ 0x68E4,␉0x00000000, CHIP_FAMILY_CEDAR,␉"ATI Radeon HD 6370M Series",␉kEulemur␉},␊ |
1313 | ␉{ 0x68E5,␉0x00000000, CHIP_FAMILY_CEDAR,␉"ATI Radeon HD 6300M Series",␉kEulemur␉},␊ |
1314 | //␉{ 0x68E8,␉0x00000000, CHIP_FAMILY_CEDAR,␉"ATI Radeon HD ??? Series",␉kNull␉␉},␊ |
1315 | //␉{ 0x68E9,␉0x00000000, CHIP_FAMILY_CEDAR,␉"ATI Radeon HD ??? Series",␉kNull␉␉},␊ |
1316 | ␉{ 0x68F1,␉0x00000000, CHIP_FAMILY_CEDAR,␉"AMD FirePro 2460",␉kEulemur␉},␊ |
1317 | ␉{ 0x68F2,␉0x00000000, CHIP_FAMILY_CEDAR,␉"AMD FirePro 2270",␉kEulemur␉},␊ |
1318 | //␉{ 0x68F8,␉0x00000000, CHIP_FAMILY_CEDAR,␉"ATI Radeon HD ??? Series",␉kNull␉␉},␊ |
1319 | ␉{ 0x68F9,␉0x00000000, CHIP_FAMILY_CEDAR,␉"ATI Radeon HD 5450 Series",␉kEulemur␉},␊ |
1320 | ␉{ 0x68FA,␉0x00000000, CHIP_FAMILY_CEDAR,␉"ATI Radeon HD 7300 Series",␉kEulemur␉},␊ |
1321 | //␉{ 0x68FE,␉0x00000000, CHIP_FAMILY_CEDAR,␉"ATI Radeon HD ??? Series",␉kNull␉␉},␊ |
1322 | ␊ |
1323 | ␉// ␊ |
1324 | ␉{ 0x6900,␉0x00000000, CHIP_FAMILY_TOPAS,␉␉"ATI Radeon R7 M260/M265", kBuri␉},␊ |
1325 | ␉{ 0x6901,␉0x00000000, CHIP_FAMILY_TOPAS,␉␉"ATI Radeon R5 M255", kBuri␉},␊ |
1326 | ␉{ 0x6921,␉0x00000000, CHIP_FAMILY_AMETHYST,␉"ATI Radeon R9 M295X", kBuri␉},␊ |
1327 | ␉{ 0x6938,␉0x00000000, CHIP_FAMILY_AMETHYST,␉"ATI Radeon R9 M295X", kBuri␉},␊ |
1328 | ␉{ 0x6939,␉0x00000000, CHIP_FAMILY_TONGA,␉␉"ATI Radeon R9 285", kFutomaki␉},␊ |
1329 | ␊ |
1330 | ␉// R520␊ |
1331 | ␉{ 0x7100, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1332 | ␉{ 0x7101, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Mobile ",␉kNull␉␉},␊ |
1333 | ␉{ 0x7102, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Mobile ",␉kNull␉␉},␊ |
1334 | ␉{ 0x7103, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Mobile ",␉kNull␉␉},␊ |
1335 | ␉{ 0x7104, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1336 | ␉{ 0x7105, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1337 | ␉{ 0x7106, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Mobile ",␉kNull␉␉},␊ |
1338 | ␉{ 0x7108, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1339 | ␉{ 0x7109, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1340 | ␉{ 0x710A, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1341 | ␉{ 0x710B, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1342 | ␉{ 0x710C, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1343 | ␉{ 0x710E, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1344 | ␉{ 0x710F, 0x00000000, CHIP_FAMILY_R520, "ATI Radeon HD Desktop ",␉kNull␉␉},␊ |
1345 | ␊ |
1346 | ␉// RV515␊ |
1347 | ␉{ 0x7140, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1348 | ␉{ 0x7141, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1349 | ␉{ 0x7142, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1350 | ␉{ 0x7143, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1351 | ␉{ 0x7144, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1352 | ␉{ 0x7145, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1353 | ␉{ 0x7146, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1354 | ␉{ 0x7147, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1355 | ␉{ 0x7149, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1356 | ␉{ 0x714A, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1357 | ␉{ 0x714B, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1358 | ␉{ 0x714C, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1359 | ␉{ 0x714D, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1360 | ␉{ 0x714E, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1361 | ␉{ 0x714F, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1362 | ␉{ 0x7151, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1363 | ␉{ 0x7152, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1364 | ␉{ 0x7153, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1365 | ␉{ 0x715E, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1366 | ␉{ 0x715F, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1367 | ␉{ 0x7180, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1368 | ␉{ 0x7181, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1369 | ␉{ 0x7183, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1370 | ␉{ 0x7186, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1371 | ␉{ 0x7187, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1372 | ␉{ 0x7188, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD2300 Mobile ",␉kCaretta␉},␊ |
1373 | ␉{ 0x718A, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1374 | ␉{ 0x718B, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1375 | ␉{ 0x718C, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1376 | ␉{ 0x718D, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1377 | ␉{ 0x718F, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1378 | ␉{ 0x7193, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1379 | ␉{ 0x7196, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kCaretta␉},␊ |
1380 | ␉{ 0x719B, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1381 | ␉{ 0x719F, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kCaretta␉},␊ |
1382 | ␊ |
1383 | ␉// RV530␊ |
1384 | ␉{ 0x71C0, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Desktop ",␉kWormy␉␉},␊ |
1385 | ␉{ 0x71C1, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Desktop ",␉kWormy␉␉},␊ |
1386 | ␉{ 0x71C2, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Desktop ",␉kWormy␉␉},␊ |
1387 | ␉{ 0x71C3, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Desktop ",␉kWormy␉␉},␊ |
1388 | ␉{ 0x71C4, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Mobile ",␉kWormy␉␉},␊ |
1389 | ␉{ 0x71C5, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD1600 Mobile ",␉kWormy␉␉},␊ |
1390 | ␉{ 0x71C6, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Desktop ",␉kWormy␉␉},␊ |
1391 | ␉{ 0x71C7, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Desktop ",␉kWormy␉␉},␊ |
1392 | ␉{ 0x71CD, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Desktop ",␉kWormy␉␉},␊ |
1393 | ␉{ 0x71CE, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Desktop ",␉kWormy␉␉},␊ |
1394 | ␉{ 0x71D2, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Desktop ",␉kWormy␉␉},␊ |
1395 | ␉{ 0x71D4, 0x00000000, CHIP_FAMILY_RV530, "ATI Mobility FireGL V5250",␉kWormy␉␉},␊ |
1396 | ␉{ 0x71D5, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Mobile ",␉kWormy␉␉},␊ |
1397 | ␉{ 0x71D6, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Mobile ",␉kWormy␉␉},␊ |
1398 | ␉{ 0x71DA, 0x00000000, CHIP_FAMILY_RV530, "ATI Radeon HD Desktop ",␉kWormy␉␉},␊ |
1399 | ␉{ 0x71DE, 0x00000000, CHIP_FAMILY_RV530, "ASUS M66 ATI Radeon Mobile ",␉kWormy␉␉},␊ |
1400 | ␊ |
1401 | ␉// RV515␊ |
1402 | ␉{ 0x7200, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Desktop ",␉kWormy␉␉},␊ |
1403 | ␉{ 0x7210, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kWormy␉␉},␊ |
1404 | ␉{ 0x7211, 0x00000000, CHIP_FAMILY_RV515, "ATI Radeon HD Mobile ",␉kWormy␉␉},␊ |
1405 | ␊ |
1406 | ␉// R580␊ |
1407 | ␉{ 0x7240, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1408 | ␉{ 0x7243, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1409 | ␉{ 0x7244, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1410 | ␉{ 0x7245, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1411 | ␉{ 0x7246, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1412 | ␉{ 0x7247, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1413 | ␉{ 0x7248, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1414 | ␉{ 0x7249, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1415 | ␉{ 0x724A, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1416 | ␉{ 0x724B, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1417 | ␉{ 0x724C, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1418 | ␉{ 0x724D, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1419 | ␉{ 0x724E, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1420 | ␉{ 0x724F, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1421 | ␊ |
1422 | ␉// RV570␊ |
1423 | ␉{ 0x7280, 0x00000000, CHIP_FAMILY_RV570, "ATI Radeon X1950 Pro ",␉kAlopias␉},␊ |
1424 | ␊ |
1425 | ␉// RV560␊ |
1426 | ␉{ 0x7281, 0x00000000, CHIP_FAMILY_RV560, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1427 | ␉{ 0x7283, 0x00000000, CHIP_FAMILY_RV560, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1428 | ␊ |
1429 | ␉// R580␊ |
1430 | ␉{ 0x7284, 0x00000000, CHIP_FAMILY_R580, "ATI Radeon HD Mobile ",␉kAlopias␉},␊ |
1431 | ␊ |
1432 | ␉// RV560␊ |
1433 | ␉{ 0x7287, 0x00000000, CHIP_FAMILY_RV560, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1434 | ␊ |
1435 | ␉// RV570␊ |
1436 | ␉{ 0x7288, 0x00000000, CHIP_FAMILY_RV570, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1437 | ␉{ 0x7289, 0x00000000, CHIP_FAMILY_RV570, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1438 | ␉{ 0x728B, 0x00000000, CHIP_FAMILY_RV570, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1439 | ␉{ 0x728C, 0x00000000, CHIP_FAMILY_RV570, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1440 | ␊ |
1441 | ␉// RV560␊ |
1442 | ␉{ 0x7290, 0x00000000, CHIP_FAMILY_RV560, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1443 | ␉{ 0x7291, 0x00000000, CHIP_FAMILY_RV560, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1444 | ␉{ 0x7293, 0x00000000, CHIP_FAMILY_RV560, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1445 | ␉{ 0x7297, 0x00000000, CHIP_FAMILY_RV560, "ATI Radeon HD Desktop ",␉kAlopias␉},␊ |
1446 | ␊ |
1447 | ␉// RS690␊ |
1448 | ␉{ 0x791E,␉0x00000000, CHIP_FAMILY_RS690,␉"ATI Radeon IGP ",␉kNull␉␉␉},␊ |
1449 | ␉{ 0x791F,␉0x00000000, CHIP_FAMILY_RS690,␉"ATI Radeon IGP ",␉kNull␉␉␉},␊ |
1450 | ␉{ 0x793F,␉0x00000000, CHIP_FAMILY_RS690,␉"ATI Radeon IGP ",␉kNull␉␉␉},␊ |
1451 | ␉{ 0x7941,␉0x00000000, CHIP_FAMILY_RS690,␉"ATI Radeon IGP ",␉kNull␉␉␉},␊ |
1452 | ␉{ 0x7942,␉0x00000000, CHIP_FAMILY_RS690,␉"ATI Radeon IGP ",␉kNull␉␉␉},␊ |
1453 | ␊ |
1454 | ␉// RS740␊ |
1455 | ␉{ 0x796C,␉0x00000000, CHIP_FAMILY_RS740,␉"ATI Radeon IGP ",␉kNull␉␉␉},␊ |
1456 | ␉{ 0x796D,␉0x00000000, CHIP_FAMILY_RS740,␉"ATI Radeon IGP ",␉kNull␉␉␉},␊ |
1457 | ␉{ 0x796E,␉0x00000000, CHIP_FAMILY_RS740,␉"ATI Radeon IGP ",␉kNull␉␉␉},␊ |
1458 | ␉{ 0x796F,␉0x00000000, CHIP_FAMILY_RS740,␉"ATI Radeon IGP ",␉kNull␉␉␉},␊ |
1459 | ␊ |
1460 | ␉// RS600␊ |
1461 | ␉{ 0x9400,␉0x00000000, CHIP_FAMILY_R600,␉"ATI Radeon HD 2900 XT",␉kNull␉␉},␊ |
1462 | ␉{ 0x9401,␉0x00000000, CHIP_FAMILY_R600,␉"ATI Radeon HD 2900 GT",␉kNull␉␉},␊ |
1463 | ␉{ 0x9402,␉0x00000000, CHIP_FAMILY_R600,␉"ATI Radeon HD 2900 GT",␉kNull␉␉},␊ |
1464 | ␉{ 0x9403,␉0x00000000, CHIP_FAMILY_R600,␉"ATI Radeon HD 2900 GT",␉kNull␉␉},␊ |
1465 | ␉{ 0x9405,␉0x00000000, CHIP_FAMILY_R600,␉"ATI Radeon HD 2900 GT",␉kNull␉␉},␊ |
1466 | ␉{ 0x940A,␉0x00000000, CHIP_FAMILY_R600,␉"ATI FireGL V8650",␉kNull␉␉},␊ |
1467 | ␉{ 0x940B,␉0x00000000, CHIP_FAMILY_R600,␉"ATI FireGL V8600",␉kNull␉␉},␊ |
1468 | ␉{ 0x940F,␉0x00000000, CHIP_FAMILY_R600,␉"ATI FireGL V7600",␉kNull␉␉},␊ |
1469 | ␊ |
1470 | ␉// RV740␊ |
1471 | ␉{ 0x94A0,␉0x00000000, CHIP_FAMILY_RV740,␉"ATI Radeon HD 4830M",␉kFlicker␉},␊ |
1472 | ␉{ 0x94A1,␉0x00000000, CHIP_FAMILY_RV740,␉"ATI Radeon HD 4860M",␉kFlicker␉},␊ |
1473 | ␉{ 0x94A3,␉0x00000000, CHIP_FAMILY_RV740,␉"ATI FirePro M7740",␉kFlicker␉},␊ |
1474 | ␉{ 0x94B1,␉0x00000000, CHIP_FAMILY_RV740,␉"ATI Radeon HD",␉kFlicker␉},␊ |
1475 | ␉{ 0x94B3,␉0x00000000, CHIP_FAMILY_RV740,␉"ATI Radeon HD 4770",␉kFlicker␉},␊ |
1476 | ␉{ 0x94B4,␉0x00000000, CHIP_FAMILY_RV740,␉"ATI Radeon HD 4700 Series",␉kFlicker␉},␊ |
1477 | ␉{ 0x94B5,␉0x00000000, CHIP_FAMILY_RV740,␉"ATI Radeon HD 4770",␉kFlicker␉},␊ |
1478 | ␉{ 0x94B9,␉0x00000000, CHIP_FAMILY_RV740,␉"ATI Radeon HD",␉kFlicker␉},␊ |
1479 | ␊ |
1480 | ␉// RV770␊ |
1481 | ␉{ 0x9440,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Radeon HD 4870 ",␉kMotmot␉␉},␊ |
1482 | ␉{ 0x9441,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Radeon HD 4870 X2",␉kMotmot␉␉},␊ |
1483 | ␉{ 0x9442,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Radeon HD 4850 Series",␉kMotmot␉␉},␊ |
1484 | ␉{ 0x9443,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Radeon HD 4850 X2",␉kMotmot␉␉},␊ |
1485 | ␉{ 0x9444,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI FirePro V8750 (FireGL)", kMotmot␉␉},␊ |
1486 | ␉{ 0x9446,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI FirePro V7770 (FireGL)",␉kMotmot␉␉},␊ |
1487 | ␉{ 0x9447,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI FirePro V8700 Duo (FireGL)",␉kMotmot␉␉},␊ |
1488 | ␉{ 0x944A,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Mobility Radeon HD 4850",␉kMotmot␉␉},//iMac - Quail␊ |
1489 | ␉{ 0x944B,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Mobility Radeon HD 4850 X2",␉kMotmot␉␉},//iMac - Quail␊ |
1490 | ␉{ 0x944C,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Radeon HD 4830 Series",␉kMotmot␉␉},␊ |
1491 | ␉{ 0x944E,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Radeon HD 4810 Series",␉kMotmot␉␉},␊ |
1492 | ␉{ 0x9450,␉0x00000000, CHIP_FAMILY_RV770,␉"AMD FireStream 9270",␉kMotmot␉␉},␊ |
1493 | ␉{ 0x9452,␉0x00000000, CHIP_FAMILY_RV770,␉"AMD FireStream 9250",␉kMotmot␉␉},␊ |
1494 | ␉{ 0x9456,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI FirePro V8700 (FireGL)",␉kMotmot␉␉},␊ |
1495 | ␉{ 0x945A,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Mobility Radeon HD 4870",␉kMotmot␉␉},␊ |
1496 | ␉{ 0x9460,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Radeon HD 4800 Series",␉kMotmot␉␉},␊ |
1497 | ␉{ 0x9462,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Radeon HD 4800 Series",␉kMotmot␉␉},␊ |
1498 | //␉{ 0x946A,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Mobility Radeon",␉kMotmot␉␉},␊ |
1499 | //␉{ 0x946B,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Mobility Radeon",␉kMotmot␉␉},␊ |
1500 | //␉{ 0x947A,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Mobility Radeon",␉kMotmot␉␉},␊ |
1501 | //␉{ 0x947B,␉0x00000000, CHIP_FAMILY_RV770,␉"ATI Mobility Radeon",␉kMotmot␉␉},␊ |
1502 | ␊ |
1503 | ␉// RV730␊ |
1504 | ␉{ 0x9480,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI Mobility Radeon HD 550v",␉kGliff␉},␊ |
1505 | ␉{ 0x9487,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI Radeon HD Series",␉kGliff␉␉},␊ |
1506 | ␉{ 0x9488,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI Radeon HD 4650 Series",␉kGliff␉},␊ |
1507 | ␉{ 0x9489,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI Radeon HD Series",␉kGliff␉␉},␊ |
1508 | ␉{ 0x948A,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI Radeon HD Series",␉kGliff␉␉},␊ |
1509 | ␉{ 0x948F,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI Radeon HD Series",␉kGliff␉␉},␊ |
1510 | ␉{ 0x9490,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI Radeon HD 4670 Series",␉kGliff␉␉},␊ |
1511 | ␉{ 0x9491,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI Radeon HD 4600 Series",␉kGliff␉␉},␊ |
1512 | ␉{ 0x9495,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI Radeon HD 4650 Series",␉kGliff␉␉},␊ |
1513 | ␉{ 0x9498,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI Radeon HD 4710 Series",␉kGliff␉␉},␊ |
1514 | ␉{ 0x949C,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI FirePro V7750 (FireGL)",␉kGliff␉␉},␊ |
1515 | ␉{ 0x949E,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI FirePro V5700 (FireGL)",␉kGliff␉␉},␊ |
1516 | ␉{ 0x949F,␉0x00000000, CHIP_FAMILY_RV730,␉"ATI FirePro V3750 (FireGL)",␉kGliff␉␉},␊ |
1517 | ␊ |
1518 | ␉// RV610␊ |
1519 | ␉{ 0x94C0,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD Series",␉kIago␉␉},␊ |
1520 | ␉{ 0x94C1,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD 2400 Series",␉kIago␉},␊ |
1521 | ␉{ 0x94C3,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD 2350 Series",␉kIago␉},␊ |
1522 | ␉{ 0x94C4,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD 2400 Series",␉kIago␉},␊ |
1523 | ␉{ 0x94C5,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD 2400 Series",␉kIago␉},␊ |
1524 | ␉{ 0x94C6,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD 2400 Series",␉kIago␉},␊ |
1525 | ␉{ 0x94C7,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD 2350",␉␉kIago␉},␊ |
1526 | ␉{ 0x94C8,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD 2400 Series",␉kIago␉},␊ |
1527 | ␉{ 0x94C9,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD 2400 Series",␉kIago␉},␊ |
1528 | ␉{ 0x94CB,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD 2400 Series",␉kIago␉},␊ |
1529 | ␉{ 0x94CC,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD 2400 Series",␉kIago␉},␊ |
1530 | ␉{ 0x94CD,␉0x00000000, CHIP_FAMILY_RV610,␉"ATI Radeon HD 2400 PRO Series",␉kIago␉},␊ |
1531 | ␊ |
1532 | ␉// RV670␊ |
1533 | ␉{ 0x9500,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3800 Series",␉kMegalodon␉},␊ |
1534 | ␉{ 0x9501,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3690 Series",␉kMegalodon␉},␊ |
1535 | ␉{ 0x9504,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3850M Series",␉kMegalodon␉},␊ |
1536 | ␉{ 0x9505,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3800 Series",␉kMegalodon␉},␊ |
1537 | ␉{ 0x9506,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3850 X2 M Series",␉kMegalodon␉},␊ |
1538 | ␉{ 0x9507,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3830",␉kMegalodon␉},␊ |
1539 | ␉{ 0x9508,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3870M Series",␉kMegalodon␉},␊ |
1540 | ␉{ 0x9509,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3870 X2 MSeries",␉kMegalodon␉},␊ |
1541 | ␉{ 0x950F,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3870 X2",␉kMegalodon␉},␊ |
1542 | ␉{ 0x9511,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3850 X2",␉kMegalodon␉},␊ |
1543 | ␉{ 0x9513,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3850 X2",␉kMegalodon␉},␊ |
1544 | ␉{ 0x9515,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD 3850 Series",␉kMegalodon␉},␊ |
1545 | ␉{ 0x9517,␉0x00000000, CHIP_FAMILY_RV670,␉"ATI Radeon HD Series",␉kMegalodon␉},␊ |
1546 | ␉{ 0x9519,␉0x00000000, CHIP_FAMILY_RV670,␉"AMD FireStream 9170",␉kMegalodon␉},␊ |
1547 | ␊ |
1548 | ␉// RV710␊ |
1549 | ␉{ 0x9540,␉0x00000000, CHIP_FAMILY_RV710,␉"ATI Radeon HD 4550",␉kFlicker␉},␊ |
1550 | ␉{ 0x9541,␉0x00000000, CHIP_FAMILY_RV710,␉"ATI Radeon HD",␉kFlicker␉},␊ |
1551 | ␉{ 0x9542,␉0x00000000, CHIP_FAMILY_RV710,␉"ATI Radeon HD",␉kFlicker␉},␊ |
1552 | ␉{ 0x954E,␉0x00000000, CHIP_FAMILY_RV710,␉"ATI Radeon HD",␉kFlicker␉},␊ |
1553 | ␉{ 0x954F,␉0x00000000, CHIP_FAMILY_RV710,␉"ATI Radeon HD 4350",␉kFlicker␉},␊ |
1554 | ␉{ 0x9552,␉0x00000000, CHIP_FAMILY_RV710,␉"ATI Mobility Radeon HD 4330", ␉kShrike },␊ |
1555 | ␉{ 0x9553,␉0x00000000, CHIP_FAMILY_RV710,␉"ATI Mobility Radeon HD 4570", ␉kShrike },␊ |
1556 | ␉{ 0x9555,␉0x00000000, CHIP_FAMILY_RV710,␉"ATI Mobility Radeon HD 4550", ␉kShrike },␊ |
1557 | ␉{ 0x9557,␉0x00000000, CHIP_FAMILY_RV710,␉"ATI FirePro RG220",␉kFlicker␉},␊ |
1558 | ␉{ 0x955F,␉0x00000000, CHIP_FAMILY_RV710,␉"ATI Radeon HD 4330M series",␉kFlicker␉},␊ |
1559 | ␊ |
1560 | ␉// RV630␊ |
1561 | ␉{ 0x9580,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD Series",␉kHypoprion␉},␊ |
1562 | ␉{ 0x9581,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD 2600 XT",␉kHypoprion },␊ |
1563 | ␉{ 0x9583,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD 2600 XT",␉kHypoprion },␊ |
1564 | ␉{ 0x9586,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD 2600 XT Series",␉kHypoprion␉},␊ |
1565 | ␉{ 0x9587,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD 2600 Pro Series",␉kHypoprion␉},␊ |
1566 | ␉{ 0x9588,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD 2600 XT", kHypoprion },␊ |
1567 | ␉{ 0x9589,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD 2600 PRO", kHypoprion },␊ |
1568 | ␉{ 0x958A,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD 2600 X2 Series",␉kLamna },␊ |
1569 | ␉{ 0x958B,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD 2600 X2 Series",␉kLamna },␊ |
1570 | ␉{ 0x958C,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD 2600 X2 Series",␉kLamna },␊ |
1571 | ␉{ 0x958D,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD 2600 X2 Series",␉kLamna },␊ |
1572 | ␉{ 0x958E,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD 2600 X2 Series",␉kLamna },␊ |
1573 | ␉{ 0x958F,␉0x00000000, CHIP_FAMILY_RV630,␉"ATI Radeon HD Series",␉kHypoprion␉},␊ |
1574 | ␊ |
1575 | ␉// RV635␊ |
1576 | //␉{ 0x9590,␉0x00000000, CHIP_FAMILY_RV635,␉"ATI Radeon HD",␉kMegalodon },␊ |
1577 | ␉{ 0x9591,␉0x00000000, CHIP_FAMILY_RV635,␉"ATI Radeon HD 3600 Series",␉kMegalodon }, // Mobile␊ |
1578 | //␉{ 0x9593,␉0x00000000, CHIP_FAMILY_RV635,␉"ATI Radeon HD",␉kMegalodon }, // Mobile␊ |
1579 | //␉{ 0x9595,␉0x00000000, CHIP_FAMILY_RV635,␉"ATI Radeon HD",␉kMegalodon }, // Mobile␊ |
1580 | //␉{ 0x9596,␉0x00000000, CHIP_FAMILY_RV635,␉"ATI Radeon HD",␉kMegalodon },␊ |
1581 | //␉{ 0x9597,␉0x00000000, CHIP_FAMILY_RV635,␉"ATI Radeon HD",␉kMegalodon },␊ |
1582 | ␉{ 0x9598,␉0x00000000, CHIP_FAMILY_RV635,␉"ATI Radeon HD 3600 Series",␉kMegalodon },␊ |
1583 | //␉{ 0x9599,␉0x00000000, CHIP_FAMILY_RV635,␉"ATI Radeon HD",␉kMegalodon },␊ |
1584 | //␉{ 0x959B,␉0x00000000, CHIP_FAMILY_RV635,␉"ATI Radeon HD",␉kMegalodon }, // Mobile␊ |
1585 | ␊ |
1586 | ␉// RV620␊ |
1587 | ␉{ 0x95C0,␉0x00000000, CHIP_FAMILY_RV620,␉"ATI Radeon HD 3550 Series",␉kIago },␊ |
1588 | //␉{ 0x95C2,␉0x00000000, CHIP_FAMILY_RV620,␉"ATI Radeon HD",␉kIago }, // Mobile␊ |
1589 | ␉{ 0x95C4,␉0x00000000, CHIP_FAMILY_RV620,␉"ATI Radeon HD 3470 Series",␉kIago }, // Mobile␊ |
1590 | ␉{ 0x95C5,␉0x00000000, CHIP_FAMILY_RV620,␉"ATI Radeon HD 3450 Series",␉kIago },␊ |
1591 | ␉{ 0x95C6,␉0x00000000, CHIP_FAMILY_RV620,␉"ATI Radeon HD 3450 AGP",␉kIago },␊ |
1592 | //␉{ 0x95C7,␉0x00000000, CHIP_FAMILY_RV620,␉"ATI Radeon HD",␉kIago },␊ |
1593 | //␉{ 0x95C9,␉0x00000000, CHIP_FAMILY_RV620,␉"ATI Radeon HD",␉kIago },␊ |
1594 | //␉{ 0x95CC,␉0x00000000, CHIP_FAMILY_RV620,␉"ATI Radeon HD",␉kIago },␊ |
1595 | //␉{ 0x95CD,␉0x00000000, CHIP_FAMILY_RV620,␉"ATI Radeon HD",␉kIago },␊ |
1596 | //␉{ 0x95CE,␉0x00000000, CHIP_FAMILY_RV620,␉"ATI Radeon HD",␉kIago },␊ |
1597 | ␉{ 0x95CF,␉0x00000000, CHIP_FAMILY_RV620,␉"ATI FirePro 2260",␉kIago },␊ |
1598 | ␊ |
1599 | ␉// RS780␊ |
1600 | ␉{ 0x9610,␉0x00000000, CHIP_FAMILY_RS780,␉"ATI Radeon HD 3200 Graphics",␉kNull },␊ |
1601 | ␉{ 0x9611,␉0x00000000, CHIP_FAMILY_RS780,␉"ATI Radeon HD 3100 Graphics",␉kNull },␊ |
1602 | //␉{ 0x9612,␉0x00000000, CHIP_FAMILY_RS780,␉"ATI Radeon HD",␉kNull },␊ |
1603 | //␉{ 0x9613,␉0x00000000, CHIP_FAMILY_RS780,␉"ATI Radeon HD",␉kNull },␊ |
1604 | ␉{ 0x9614,␉0x00000000, CHIP_FAMILY_RS780,␉"ATI Radeon HD 3300 Graphics",␉kNull },␊ |
1605 | //␉{ 0x9615,␉0x00000000, CHIP_FAMILY_RS780,␉"ATI Radeon HD",␉kNull },␊ |
1606 | ␉{ 0x9616,␉0x00000000, CHIP_FAMILY_RS780,␉"AMD 760G", kNull },␊ |
1607 | ␊ |
1608 | ␉// SUMO␊ |
1609 | ␉{ 0x9640,␉0x00000000, CHIP_FAMILY_SUMO,␉"AMD Radeon HD 6550D",␉kNull },␊ |
1610 | ␉{ 0x9641,␉0x00000000, CHIP_FAMILY_SUMO,␉"AMD Radeon HD 6620G",␉kNull }, // Mobile␊ |
1611 | ␊ |
1612 | ␉// SUMO2␊ |
1613 | ␉{ 0x9642,␉0x00000000, CHIP_FAMILY_SUMO2,␉"AMD Radeon HD 6370D",␉kNull },␊ |
1614 | ␉{ 0x9643,␉0x00000000, CHIP_FAMILY_SUMO2,␉"AMD Radeon HD 6380G",␉kNull }, // Mobile␊ |
1615 | ␉{ 0x9644,␉0x00000000, CHIP_FAMILY_SUMO2,␉"AMD Radeon HD 6410D",␉kNull },␊ |
1616 | ␉{ 0x9645,␉0x00000000, CHIP_FAMILY_SUMO2,␉"AMD Radeon HD 6410D",␉kNull }, // Mobile␊ |
1617 | ␊ |
1618 | ␉// SUMO␊ |
1619 | ␉{ 0x9647,␉0x00000000, CHIP_FAMILY_SUMO,␉"AMD Radeon HD 6520G",␉kNull }, // Mobile␊ |
1620 | ␉{ 0x9648,␉0x00000000, CHIP_FAMILY_SUMO,␉"AMD Radeon HD 6480G",␉kNull }, // Mobile␊ |
1621 | ␊ |
1622 | ␉// SUMO2␊ |
1623 | ␉{ 0x9649,␉0x00000000, CHIP_FAMILY_SUMO2,␉"AMD Radeon(TM) HD 6480G",␉kNull }, // Mobile␊ |
1624 | ␊ |
1625 | ␉// SUMO␊ |
1626 | ␉{ 0x964A,␉0x00000000, CHIP_FAMILY_SUMO,␉"AMD Radeon HD 6530D",␉kNull },␊ |
1627 | //␉{ 0x964B,␉0x00000000, CHIP_FAMILY_SUMO,␉"AMD Radeon HD",␉kNull },␊ |
1628 | //␉{ 0x964C,␉0x00000000, CHIP_FAMILY_SUMO,␉"AMD Radeon HD",␉kNull },␊ |
1629 | //␉{ 0x964E,␉0x00000000, CHIP_FAMILY_SUMO,␉"AMD Radeon HD",␉kNull }, // Mobile␊ |
1630 | //␉{ 0x964F,␉0x00000000, CHIP_FAMILY_SUMO,␉"AMD Radeon HD",␉kNull }, // Mobile␊ |
1631 | ␊ |
1632 | ␉// RS880␊ |
1633 | ␉{ 0x9710,␉0x00000000, CHIP_FAMILY_RS880,␉"ATI Radeon HD 4200 Series",␉kNull␉},␊ |
1634 | //␉{ 0x9711,␉0x00000000, CHIP_FAMILY_RS880,␉"ATI Radeon HD",␉kNull␉},␊ |
1635 | ␉{ 0x9712,␉0x00000000, CHIP_FAMILY_RS880,␉"ATI Radeon HD 4200 Series",␉kNull␉}, // Mobile␊ |
1636 | //␉{ 0x9713,␉0x00000000, CHIP_FAMILY_RS880,␉"ATI Radeon HD",␉kNull␉}, // Mobile␊ |
1637 | ␉{ 0x9714,␉0x00000000, CHIP_FAMILY_RS880,␉"ATI Radeon HD 4290",␉kNull␉},␊ |
1638 | ␉{ 0x9715,␉0x00000000, CHIP_FAMILY_RS880,␉"ATI Radeon HD 4250",␉kNull␉},␊ |
1639 | ␉{ 0x9723,␉0x00000000, CHIP_FAMILY_RS880,␉"ATI Radeon HD 5450 Series",␉kNull␉},␊ |
1640 | ␊ |
1641 | ␉// PALM␊ |
1642 | ␉{ 0x9802,␉0x00000000, CHIP_FAMILY_PALM,␉"AMD Radeon HD 6310 Graphics", kNull },␊ |
1643 | ␉{ 0x9803,␉0x00000000, CHIP_FAMILY_PALM,␉"AMD Radeon HD 6250 Graphics", kNull },␊ |
1644 | ␉{ 0x9804,␉0x00000000, CHIP_FAMILY_PALM,␉"AMD Radeon HD 6250 Graphics", kNull },␊ |
1645 | ␉{ 0x9805,␉0x00000000, CHIP_FAMILY_PALM,␉"AMD Radeon HD 6250 Graphics", kNull },␊ |
1646 | ␉{ 0x9806,␉0x00000000, CHIP_FAMILY_PALM,␉"AMD Radeon HD 6320 Graphics", kNull },␊ |
1647 | ␉{ 0x9807,␉0x00000000, CHIP_FAMILY_PALM,␉"AMD Radeon HD 6290 Graphics", kNull },␊ |
1648 | ␉{ 0x9808,␉0x00000000, CHIP_FAMILY_PALM,␉"AMD Radeon HD 7340 Graphics", kNull },␊ |
1649 | ␉{ 0x9809,␉0x00000000, CHIP_FAMILY_PALM,␉"AMD Radeon HD 7310 Graphics", kNull },␊ |
1650 | ␉{ 0x980A,␉0x00000000, CHIP_FAMILY_PALM,␉"AMD Radeon HD 7290 Graphics", kNull },␊ |
1651 | ␊ |
1652 | ␉// KABINI␊ |
1653 | ␉{ 0x9830,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD 8400", kNull }, // Mobile␊ |
1654 | ␉{ 0x9831,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD 8400E", kNull },␊ |
1655 | ␉{ 0x9832,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD 8330", kNull }, // Mobile␊ |
1656 | ␉{ 0x9833,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD 8330E", kNull },␊ |
1657 | ␉{ 0x9834,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD 8210", kNull }, // Mobile␊ |
1658 | ␉{ 0x9835,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD 8210E", kNull },␊ |
1659 | ␉{ 0x9836,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD 8280", kNull }, // Mobile␊ |
1660 | ␉{ 0x9837,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD 8280E", kNull },␊ |
1661 | ␉{ 0x9838,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD 8240", kNull }, // Mobile␊ |
1662 | ␉{ 0x9839,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD 8180", kNull }, // Mobile␊ |
1663 | //␉{ 0x983A,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD", kNull },␊ |
1664 | //␉{ 0x983B,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1665 | //␉{ 0x983C,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD", kNull },␊ |
1666 | ␉{ 0x983D,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD 8250", kNull },␊ |
1667 | //␉{ 0x983E,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD", kNull },␊ |
1668 | //␉{ 0x983F,␉0x00000000, CHIP_FAMILY_KABINI,␉"AMD Radeon HD", kNull },␊ |
1669 | ␊ |
1670 | ␉// MULLINS␊ |
1671 | ␉{ 0x9850,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1672 | ␉{ 0x9851,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1673 | ␉{ 0x9852,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1674 | ␉{ 0x9853,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1675 | ␉{ 0x9854,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1676 | ␉{ 0x9855,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1677 | ␉{ 0x9856,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1678 | ␉{ 0x9857,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1679 | ␉{ 0x9858,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1680 | ␉{ 0x9859,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1681 | ␉{ 0x985A,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1682 | ␉{ 0x985B,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1683 | ␉{ 0x985C,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1684 | ␉{ 0x985D,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1685 | ␉{ 0x985E,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1686 | ␉{ 0x985F,␉0x00000000, CHIP_FAMILY_MULLINS,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1687 | ␊ |
1688 | ␉// ARUBA␊ |
1689 | ␉{ 0x9900,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7660G", kNull }, // Mobile␊ |
1690 | ␉{ 0x9901,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7660D", kNull },␊ |
1691 | ␉{ 0x9903,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7640G", kNull }, // Mobile␊ |
1692 | ␉{ 0x9904,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7560D", kNull },␊ |
1693 | //␉{ 0x9905,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD", kNull },␊ |
1694 | ␉{ 0x9906,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD FirePro A300 Series", kNull },␊ |
1695 | ␉{ 0x9907,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7620G", kNull }, // Mobile␊ |
1696 | ␉{ 0x9908,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7600G", kNull }, // Mobile␊ |
1697 | //␉{ 0x9909,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD", kNull }, // Mobile␊ |
1698 | ␉{ 0x990A,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7500G", kNull }, // Mobile␊ |
1699 | ␉{ 0x990B,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8650G", kNull }, // Mobile␊ |
1700 | ␉{ 0x990C,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8670D", kNull },␊ |
1701 | ␉{ 0x990D,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8550G", kNull }, // Mobile␊ |
1702 | ␉{ 0x990E,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8570D", kNull },␊ |
1703 | ␉{ 0x990F,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8610G", kNull }, // Mobile␊ |
1704 | ␉{ 0x9910,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7660G", kNull }, // Mobile␊ |
1705 | ␉{ 0x9913,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7640G", kNull }, // Mobile␊ |
1706 | ␉{ 0x9917,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7620G", kNull },␊ |
1707 | ␉{ 0x9918,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7600G", kNull },␊ |
1708 | ␉{ 0x9919,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7500G", kNull },␊ |
1709 | ␉{ 0x9990,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7520G", kNull }, // Mobile␊ |
1710 | ␉{ 0x9991,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7540D", kNull },␊ |
1711 | ␉{ 0x9992,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7420G", kNull }, // Mobile␊ |
1712 | ␉{ 0x9993,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7480D", kNull },␊ |
1713 | ␉{ 0x9994,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7400G", kNull }, // Mobile␊ |
1714 | ␉{ 0x9995,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8450G", kNull }, // Mobile␊ |
1715 | ␉{ 0x9996,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8470D", kNull },␊ |
1716 | ␉{ 0x9997,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8350G", kNull }, // Mobile␊ |
1717 | ␉{ 0x9998,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8370D", kNull },␊ |
1718 | ␉{ 0x9999,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8510G", kNull }, // Mobile␊ |
1719 | ␉{ 0x999A,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8410G", kNull }, // Mobile␊ |
1720 | ␉{ 0x999B,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8310G", kNull }, // Mobile␊ |
1721 | ␉{ 0x999C,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8650D", kNull },␊ |
1722 | ␉{ 0x999D,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 8550D", kNull },␊ |
1723 | ␉{ 0x99A0,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7520G", kNull }, // Mobile␊ |
1724 | ␉{ 0x99A2,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7420G", kNull }, // Mobile␊ |
1725 | ␉{ 0x99A4,␉0x00000000, CHIP_FAMILY_ARUBA,␉"AMD Radeon HD 7400G", kNull },␊ |
1726 | ␊ |
1727 | ␉{ 0x0000,␉0x00000000, CHIP_FAMILY_UNKNOW,␉"AMD Unknown",␉␉␉kNull␉␉}␊ |
1728 | };␊ |
1729 | ␊ |
1730 | static const char *chip_family_name[] = {␊ |
1731 | ␉"UNKNOW",␊ |
1732 | ␉"R420",␊ |
1733 | ␉"R423",␊ |
1734 | ␉"RV410",␊ |
1735 | ␉"RV515",␊ |
1736 | ␉"R520",␊ |
1737 | ␉"RV530",␊ |
1738 | ␉"RV560",␊ |
1739 | ␉"RV570",␊ |
1740 | ␉"R580",␊ |
1741 | ␉/* IGP */␊ |
1742 | ␉"RS600",␊ |
1743 | ␉"RS690",␊ |
1744 | ␉"RS740",␊ |
1745 | ␉"RS780",␊ |
1746 | ␉"RS880",␊ |
1747 | ␉/* R600 */␊ |
1748 | ␉"R600",␊ |
1749 | ␉"RV610",␊ |
1750 | ␉"RV620",␊ |
1751 | ␉"RV630",␊ |
1752 | ␉"RV635",␊ |
1753 | ␉"RV670",␊ |
1754 | ␉/* R700 */␊ |
1755 | ␉"RV710",␊ |
1756 | ␉"RV730",␊ |
1757 | ␉"RV740",␊ |
1758 | ␉"RV770",␊ |
1759 | ␉"RV772",␊ |
1760 | ␉"RV790",␊ |
1761 | ␉/* Evergreen */␊ |
1762 | ␉"Cedar",␊ |
1763 | ␉"Cypress",␊ |
1764 | ␉"Hemlock",␊ |
1765 | ␉"Juniper",␊ |
1766 | ␉"Redwood",␊ |
1767 | ␉/* Northern Islands */␊ |
1768 | ␉"Barts",␊ |
1769 | ␉"Caicos",␊ |
1770 | ␉"Cayman",␊ |
1771 | ␉"Turks",␊ |
1772 | ␉/* Southern Islands */␊ |
1773 | ␉"Palm",␊ |
1774 | ␉"Sumo",␊ |
1775 | ␉"Sumo2",␊ |
1776 | ␉"Aruba",␊ |
1777 | ␉"Tahiti",␊ |
1778 | ␉"Pitcairn",␊ |
1779 | ␉"Verde",␊ |
1780 | ␉"Oland",␊ |
1781 | ␉"Hainan",␊ |
1782 | ␉"Bonaire",␊ |
1783 | ␉"Kaveri",␊ |
1784 | ␉"Kabini",␊ |
1785 | ␉"Hawaii",␊ |
1786 | ␉/* ... */␊ |
1787 | ␉"Mullins",␊ |
1788 | ␉"Topas",␊ |
1789 | ␉"Amethyst",␊ |
1790 | ␉"Tonga",␊ |
1791 | ␉""␊ |
1792 | };␊ |
1793 | ␊ |
1794 | AtiDevProp ati_devprop_list[] = {␊ |
1795 | ␉{FLAGTRUE,␉false,␉"@0,AAPL,boot-display",␉␉get_bootdisplay_val,␉NULVAL␉␉␉␉},␊ |
1796 | //␉{FLAGTRUE,␉false,␉"@0,ATY,EFIDisplay",␉␉NULL,␉␉␉STRVAL("TMDSA")␉␉␉},␊ |
1797 | ␊ |
1798 | //␉{FLAGTRUE,␉true,␉"@0,AAPL,vram-memory",␉␉get_vrammemory_val,␉NULVAL␉␉␉␉},␊ |
1799 | //␉{FLAGTRUE,␉true,␉"@0,compatible",␉␉get_name_val,␉␉NULVAL␉␉␉␉},␊ |
1800 | //␉{FLAGTRUE,␉true,␉"@0,connector-type",␉␉get_conntype_val,␉NULVAL␉␉␉␉},␊ |
1801 | //␉{FLAGTRUE,␉true,␉"@0,device_type",␉␉NULL,␉␉␉STRVAL("display")␉␉},␊ |
1802 | //␉{FLAGTRUE,␉false,␉"@0,display-connect-flags",␉NULL,␉␉␉DWRVAL((uint32_t)0)␉␉},␊ |
1803 | //␉{FLAGTRUE,␉true,␉"@0,display-type",␉␉NULL,␉␉␉STRVAL("NONE")␉␉␉},␊ |
1804 | ␉{FLAGTRUE,␉true,␉"@0,name",␉␉␉get_name_val,␉␉NULVAL␉␉␉␉},␊ |
1805 | //␉{FLAGTRUE,␉true,␉"@0,VRAM,memsize",␉␉get_vrammemsize_val,␉NULVAL␉␉␉␉},␊ |
1806 | ␊ |
1807 | //␉{FLAGTRUE,␉false,␉"AAPL,aux-power-connected",␉NULL,␉␉␉DWRVAL((uint32_t)1)␉␉},␊ |
1808 | //␉{FLAGTRUE,␉false,␉"AAPL,backlight-control",␉NULL,␉␉␉DWRVAL((uint32_t)0)␉␉},␊ |
1809 | ␉{FLAGTRUE,␉false,␉"ATY,bin_image",␉␉get_binimage_val,␉NULVAL␉␉␉␉},␊ |
1810 | ␉{FLAGTRUE,␉false,␉"ATY,Copyright",␉␉NULL,␉STRVAL("Copyright AMD Inc. All Rights Reserved. 2005-2010") },␊ |
1811 | ␉{FLAGTRUE,␉false,␉"ATY,Card#",␉␉␉get_romrevision_val,␉NULVAL␉␉␉␉},␊ |
1812 | ␉{FLAGTRUE,␉false,␉"ATY,VendorID",␉␉␉NULL,␉␉␉WRDVAL((uint16_t)0x1002)␉},␊ |
1813 | ␉{FLAGTRUE,␉false,␉"ATY,DeviceID",␉␉␉get_deviceid_val,␉NULVAL␉␉␉␉},␊ |
1814 | ␊ |
1815 | //␉{FLAGTRUE,␉false,␉"ATY,MCLK",␉␉␉get_mclk_val,␉␉NULVAL␉␉␉␉},␊ |
1816 | //␉{FLAGTRUE,␉false,␉"ATY,SCLK",␉␉␉get_sclk_val,␉␉NULVAL␉␉␉␉},␊ |
1817 | //␉{FLAGTRUE,␉false,␉"ATY,RefCLK",␉␉␉get_refclk_val,␉␉DWRVAL((uint32_t)0x0a8c)␉},␊ |
1818 | ␉␊ |
1819 | //␉{FLAGTRUE,␉false,␉"ATY,PlatformInfo",␉␉get_platforminfo_val,␉NULVAL␉␉␉␉},␊ |
1820 | ␊ |
1821 | ␉{FLAGTRUE,␉false,␉"name",␉␉␉␉get_nameparent_val,␉NULVAL␉␉␉␉},␊ |
1822 | ␉{FLAGTRUE,␉false,␉"device_type",␉␉␉get_nameparent_val,␉NULVAL␉␉␉␉},␊ |
1823 | ␉{FLAGTRUE,␉false,␉"model",␉␉␉get_model_val,␉␉STRVAL("ATI Radeon")␉␉},␊ |
1824 | //␉{FLAGTRUE,␉false,␉"VRAM,totalsize",␉␉get_vramtotalsize_val,␉NULVAL␉␉␉␉},␊ |
1825 | ␉{FLAGTRUE,␉false,␉"hda-gfx",␉␉␉get_hdmiaudio,␉␉NULVAL␉␉␉␉},␊ |
1826 | ␊ |
1827 | ␉{FLAGTRUE,␉false,␉NULL,␉␉␉␉NULL,␉␉␉NULVAL␉␉␉␉}␊ |
1828 | };␊ |
1829 | ␊ |
1830 | bool get_bootdisplay_val(value_t *val)␊ |
1831 | {␊ |
1832 | ␉static uint32_t v = 0;␊ |
1833 | ␉␊ |
1834 | ␉if (v)␊ |
1835 | ␉{␊ |
1836 | ␉␉return false;␊ |
1837 | ␉}␊ |
1838 | ␉if (!card->posted)␊ |
1839 | ␉{␊ |
1840 | ␉␉return false;␊ |
1841 | ␉}␊ |
1842 | ␉v = 1;␊ |
1843 | ␉val->type = kCst;␊ |
1844 | ␉val->size = 4;␊ |
1845 | ␉val->data = (uint8_t *)&v;␊ |
1846 | ␊ |
1847 | ␉return true;␊ |
1848 | }␊ |
1849 | ␊ |
1850 | bool get_hdmiaudio(value_t * val)␊ |
1851 | {␊ |
1852 | ␉bool doit = false;␊ |
1853 | ␉if(getBoolForKey(kEnableHDMIAudio, &doit, &bootInfo->chameleonConfig) && doit)␊ |
1854 | ␉{␊ |
1855 | ␉␉val->type = kStr;␊ |
1856 | ␉␉val->size = strlen("onboard-1") + 1;␊ |
1857 | ␉␉val->data = (uint8_t *)"onboard-1";␊ |
1858 | ␊ |
1859 | ␉␉return true;␊ |
1860 | ␉}␊ |
1861 | ␉return false;␊ |
1862 | }␊ |
1863 | ␊ |
1864 | bool get_vrammemory_val(value_t *val)␊ |
1865 | {␊ |
1866 | ␉return false;␊ |
1867 | }␊ |
1868 | ␊ |
1869 | bool get_name_val(value_t *val)␊ |
1870 | {␊ |
1871 | ␉val->type = aty_name.type;␊ |
1872 | ␉val->size = aty_name.size;␊ |
1873 | ␉val->data = aty_name.data;␊ |
1874 | ␉␊ |
1875 | ␉return true;␊ |
1876 | }␊ |
1877 | ␊ |
1878 | bool get_nameparent_val(value_t *val)␊ |
1879 | {␊ |
1880 | ␉val->type = aty_nameparent.type;␊ |
1881 | ␉val->size = aty_nameparent.size;␊ |
1882 | ␉val->data = aty_nameparent.data;␊ |
1883 | ␉␊ |
1884 | ␉return true;␊ |
1885 | }␊ |
1886 | ␊ |
1887 | bool get_model_val(value_t *val)␊ |
1888 | {␊ |
1889 | ␉if (!card->info->model_name)␊ |
1890 | ␉␉return false;␊ |
1891 | ␉␊ |
1892 | ␉val->type = kStr;␊ |
1893 | ␉val->size = strlen(card->info->model_name) + 1;␊ |
1894 | ␉val->data = (uint8_t *)card->info->model_name;␊ |
1895 | ␉␊ |
1896 | ␉return true;␊ |
1897 | }␊ |
1898 | ␊ |
1899 | bool get_conntype_val(value_t *val)␊ |
1900 | {␊ |
1901 | //Connector types:␊ |
1902 | //0x00000010: VGA␊ |
1903 | //0x00000004: DL DVI-I␊ |
1904 | //0x00000200: SL DVI-I␊ |
1905 | //0x00000080: S-V␊ |
1906 | //0x00000800: HDMI␊ |
1907 | //0x00000400: DisplayPort␊ |
1908 | //0x00000002: LVDS␊ |
1909 | ␊ |
1910 | ␉return false;␊ |
1911 | }␊ |
1912 | ␊ |
1913 | bool get_vrammemsize_val(value_t *val)␊ |
1914 | {␊ |
1915 | ␉static int idx = -1;␊ |
1916 | ␉static uint64_t memsize;␊ |
1917 | ␉␊ |
1918 | ␉idx++;␊ |
1919 | ␉memsize = ((uint64_t)card->vram_size << 32);␊ |
1920 | ␉if (idx == 0)␊ |
1921 | ␉{␊ |
1922 | ␉␉memsize = memsize | (uint64_t)card->vram_size;␊ |
1923 | ␉}␊ |
1924 | ␉val->type = kCst;␊ |
1925 | ␉val->size = 8;␊ |
1926 | ␉val->data = (uint8_t *)&memsize;␊ |
1927 | ␉␊ |
1928 | ␉return true;␊ |
1929 | }␊ |
1930 | ␊ |
1931 | bool get_binimage_val(value_t *val)␊ |
1932 | {␊ |
1933 | ␉if (!card->rom)␊ |
1934 | ␉{␊ |
1935 | ␉␉return false;␊ |
1936 | ␉}␊ |
1937 | ␉val->type = kPtr;␊ |
1938 | ␉val->size = card->rom_size;␊ |
1939 | ␉val->data = card->rom;␊ |
1940 | ␊ |
1941 | ␉return true;␊ |
1942 | }␊ |
1943 | ␊ |
1944 | bool get_romrevision_val(value_t *val)␊ |
1945 | {␊ |
1946 | ␉uint8_t *rev;␊ |
1947 | ␉if (!card->rom)␊ |
1948 | ␉{␊ |
1949 | ␉␉return false;␊ |
1950 | ␉}␊ |
1951 | ␊ |
1952 | ␉rev = card->rom + *(uint8_t *)(card->rom + OFFSET_TO_GET_ATOMBIOS_STRINGS_START);␊ |
1953 | ␊ |
1954 | ␉val->type = kPtr;␊ |
1955 | ␉val->size = strlen((char *)rev);␊ |
1956 | ␉val->data = malloc(val->size);␊ |
1957 | ␊ |
1958 | ␉if (!val->data)␊ |
1959 | ␉{␊ |
1960 | ␉␉return false;␊ |
1961 | ␉}␊ |
1962 | ␊ |
1963 | ␉memcpy(val->data, rev, val->size);␊ |
1964 | ␉␊ |
1965 | ␉return true;␊ |
1966 | }␊ |
1967 | ␊ |
1968 | bool get_deviceid_val(value_t *val)␊ |
1969 | {␊ |
1970 | ␉val->type = kCst;␊ |
1971 | ␉val->size = 2;␊ |
1972 | ␉val->data = (uint8_t *)&card->pci_dev->device_id;␊ |
1973 | ␉␊ |
1974 | ␉return true;␊ |
1975 | }␊ |
1976 | ␊ |
1977 | bool get_mclk_val(value_t *val)␊ |
1978 | {␊ |
1979 | ␉return false;␊ |
1980 | }␊ |
1981 | ␊ |
1982 | bool get_sclk_val(value_t *val)␊ |
1983 | {␊ |
1984 | ␉return false;␊ |
1985 | }␊ |
1986 | ␊ |
1987 | bool get_refclk_val(value_t *val)␊ |
1988 | {␊ |
1989 | ␉return false;␊ |
1990 | }␊ |
1991 | ␊ |
1992 | bool get_platforminfo_val(value_t *val)␊ |
1993 | {␊ |
1994 | ␉val->data = malloc(0x80);␊ |
1995 | ␉if (!val->data)␊ |
1996 | ␉{␊ |
1997 | ␉␉return false;␊ |
1998 | ␉}␊ |
1999 | ␉bzero(val->data, 0x80);␊ |
2000 | ␉␊ |
2001 | ␉val->type␉␉= kPtr;␊ |
2002 | ␉val->size␉␉= 0x80;␊ |
2003 | ␉val->data[0]␉= 1;␊ |
2004 | ␉␊ |
2005 | ␉return true;␊ |
2006 | }␊ |
2007 | ␊ |
2008 | bool get_vramtotalsize_val(value_t *val)␊ |
2009 | {␊ |
2010 | ␊ |
2011 | ␉val->type = kCst;␊ |
2012 | ␉val->size = 4;␊ |
2013 | ␉val->data = (uint8_t *)&card->vram_size;␊ |
2014 | ␉␊ |
2015 | ␉return true;␊ |
2016 | }␊ |
2017 | ␊ |
2018 | void free_val(value_t *val)␊ |
2019 | {␊ |
2020 | ␉if (val->type == kPtr)␊ |
2021 | ␉{␊ |
2022 | ␉␉free(val->data);␊ |
2023 | ␉}␊ |
2024 | ␉␊ |
2025 | ␉bzero(val, sizeof(value_t));␊ |
2026 | }␊ |
2027 | ␊ |
2028 | void devprop_add_list(AtiDevProp devprop_list[])␊ |
2029 | {␊ |
2030 | ␉int i, pnum;␊ |
2031 | ␉value_t *val = malloc(sizeof(value_t));␊ |
2032 | ␉␊ |
2033 | ␉for (i = 0; devprop_list[i].name != NULL; i++)␊ |
2034 | ␉{␊ |
2035 | ␉␉if ((devprop_list[i].flags == FLAGTRUE) || (devprop_list[i].flags | card->flags))␊ |
2036 | ␉␉{␊ |
2037 | ␉␉␉if (devprop_list[i].get_value && devprop_list[i].get_value(val))␊ |
2038 | ␉␉␉{␊ |
2039 | ␉␉␉␉devprop_add_value(card->device, devprop_list[i].name, val->data, val->size);␊ |
2040 | ␉␉␉␉free_val(val);␊ |
2041 | ␉␉␉␉␊ |
2042 | ␉␉␉␉if (devprop_list[i].all_ports)␊ |
2043 | ␉␉␉␉{␊ |
2044 | ␉␉␉␉␉for (pnum = 1; pnum < card->ports; pnum++)␊ |
2045 | ␉␉␉␉␉{␊ |
2046 | ␉␉␉␉␉␉if (devprop_list[i].get_value(val))␊ |
2047 | ␉␉␉␉␉␉{␊ |
2048 | ␉␉␉␉␉␉␉devprop_list[i].name[1] = (uint8_t)(0x30 + pnum); // convert to ascii␊ |
2049 | ␉␉␉␉␉␉␉devprop_add_value(card->device, devprop_list[i].name, val->data, val->size);␊ |
2050 | ␉␉␉␉␉␉␉free_val(val);␊ |
2051 | ␉␉␉␉␉␉}␊ |
2052 | ␉␉␉␉␉}␊ |
2053 | ␉␉␉␉␉devprop_list[i].name[1] = 0x30; // write back our "@0," for a next possible card␊ |
2054 | ␉␉␉␉}␊ |
2055 | ␉␉␉}␊ |
2056 | ␉␉␉else␊ |
2057 | ␉␉␉{␊ |
2058 | ␉␉␉␉if (devprop_list[i].default_val.type != kNul)␊ |
2059 | ␉␉␉␉{␊ |
2060 | ␉␉␉␉␉devprop_add_value(card->device, devprop_list[i].name,␊ |
2061 | ␉␉␉␉␉␉devprop_list[i].default_val.type == kCst ?␊ |
2062 | ␉␉␉␉␉␉(uint8_t *)&(devprop_list[i].default_val.data) : devprop_list[i].default_val.data,␊ |
2063 | ␉␉␉␉␉␉devprop_list[i].default_val.size);␊ |
2064 | ␉␉␉␉}␊ |
2065 | ␉␉␉␉␊ |
2066 | ␉␉␉␉if (devprop_list[i].all_ports)␊ |
2067 | ␉␉␉␉{␊ |
2068 | ␉␉␉␉␉for (pnum = 1; pnum < card->ports; pnum++)␊ |
2069 | ␉␉␉␉␉{␊ |
2070 | ␉␉␉␉␉␉if (devprop_list[i].default_val.type != kNul)␊ |
2071 | ␉␉␉␉␉␉{␊ |
2072 | ␉␉␉␉␉␉␉devprop_list[i].name[1] = (uint8_t)(0x30 + pnum); // convert to ascii␊ |
2073 | ␉␉␉␉␉␉␉devprop_add_value(card->device, devprop_list[i].name,␊ |
2074 | ␉␉␉␉␉␉␉␉devprop_list[i].default_val.type == kCst ?␊ |
2075 | ␉␉␉␉␉␉␉␉(uint8_t *)&(devprop_list[i].default_val.data) : devprop_list[i].default_val.data,␊ |
2076 | ␉␉␉␉␉␉␉␉devprop_list[i].default_val.size);␊ |
2077 | ␉␉␉␉␉␉}␊ |
2078 | ␉␉␉␉␉}␊ |
2079 | ␉␉␉␉␉devprop_list[i].name[1] = 0x30; // write back our "@0," for a next possible card␊ |
2080 | ␉␉␉␉}␊ |
2081 | ␉␉␉}␊ |
2082 | ␉␉}␊ |
2083 | ␉}␊ |
2084 | ␊ |
2085 | ␉free(val);␊ |
2086 | }␊ |
2087 | ␊ |
2088 | bool validate_rom(option_rom_header_t *rom_header, pci_dt_t *pci_dev)␊ |
2089 | {␊ |
2090 | ␉option_rom_pci_header_t *rom_pci_header;␊ |
2091 | ␉␊ |
2092 | ␉if (rom_header->signature != 0xaa55)␊ |
2093 | ␉{␊ |
2094 | ␉␉//verbose("invalid ROM signature %x\n", rom_header->signature);␊ |
2095 | ␉␉return false;␊ |
2096 | ␉}␊ |
2097 | ␊ |
2098 | ␉rom_pci_header = (option_rom_pci_header_t *)((uint8_t *)rom_header + rom_header->pci_header_offset);␊ |
2099 | ␉␊ |
2100 | ␉if (rom_pci_header->signature != 0x52494350)␊ |
2101 | ␉{␊ |
2102 | ␉␉//verbose("invalid ROM header %x\n", rom_pci_header->signature);␊ |
2103 | ␉␉return false;␊ |
2104 | ␉}␊ |
2105 | ␉␊ |
2106 | ␉if (rom_pci_header->vendor_id != pci_dev->vendor_id || rom_pci_header->device_id != pci_dev->device_id)␊ |
2107 | ␉{␊ |
2108 | ␉␉//verbose("invalid ROM vendor=%x deviceID=%d\n", rom_pci_header->vendor_id, rom_pci_header->device_id);␊ |
2109 | ␉␉return false;␊ |
2110 | ␉}␊ |
2111 | ␉␊ |
2112 | ␉return true;␊ |
2113 | }␊ |
2114 | ␊ |
2115 | bool load_vbios_file(const char *key, uint16_t vendor_id, uint16_t device_id, uint32_t subsys_id)␊ |
2116 | {␊ |
2117 | ␉int fd;␊ |
2118 | ␉char file_name[64];␊ |
2119 | ␉bool do_load = false;␊ |
2120 | ␊ |
2121 | ␉getBoolForKey(key, &do_load, &bootInfo->chameleonConfig);␊ |
2122 | ␉if (!do_load)␊ |
2123 | ␉{␊ |
2124 | ␉␉return false;␊ |
2125 | ␉}␊ |
2126 | ␊ |
2127 | ␉sprintf(file_name, "/Extra/%04x_%04x_%08x.rom", vendor_id, device_id, subsys_id);␊ |
2128 | ␉if ((fd = open_bvdev("bt(0,0)", file_name, 0)) < 0)␊ |
2129 | ␉{␊ |
2130 | ␉␉return false;␊ |
2131 | ␉}␊ |
2132 | ␊ |
2133 | ␉card->rom_size = file_size(fd);␊ |
2134 | ␉card->rom = malloc(card->rom_size);␊ |
2135 | ␉if (!card->rom)␊ |
2136 | ␉{␊ |
2137 | ␉␉return false;␊ |
2138 | ␉}␊ |
2139 | ␊ |
2140 | ␉read(fd, (char *)card->rom, card->rom_size);␊ |
2141 | ␊ |
2142 | ␉if (!validate_rom((option_rom_header_t *)card->rom, card->pci_dev))␊ |
2143 | ␉{␊ |
2144 | ␉␉verbose("validate_rom fails\n");␊ |
2145 | ␉␉card->rom_size = 0;␊ |
2146 | ␉␉card->rom = 0;␊ |
2147 | ␉␉return false;␊ |
2148 | ␉}␊ |
2149 | ␉␊ |
2150 | ␉card->rom_size = ((option_rom_header_t *)card->rom)->rom_size * 512;␊ |
2151 | ␊ |
2152 | ␉close(fd);␊ |
2153 | ␊ |
2154 | ␉return true;␊ |
2155 | }␊ |
2156 | ␊ |
2157 | void get_vram_size(void)␊ |
2158 | {␊ |
2159 | ␉ati_chip_family_t chip_family = card->info->chip_family;␊ |
2160 | ␉␊ |
2161 | ␉card->vram_size = 0;␊ |
2162 | ␊ |
2163 | ␉if (chip_family >= CHIP_FAMILY_CEDAR)␊ |
2164 | ␉{␊ |
2165 | ␉␉// size in MB on evergreen␊ |
2166 | ␉␉// XXX watch for overflow!!!␊ |
2167 | ␉␉card->vram_size = RegRead32(R600_CONFIG_MEMSIZE) * 1024 * 1024;␊ |
2168 | ␉}␊ |
2169 | ␉else␊ |
2170 | ␉{␊ |
2171 | ␉␉if (chip_family >= CHIP_FAMILY_R600)␊ |
2172 | ␉␉{␊ |
2173 | ␉␉␉card->vram_size = RegRead32(R600_CONFIG_MEMSIZE);␊ |
2174 | ␉␉}␊ |
2175 | ␉}␊ |
2176 | }␊ |
2177 | ␊ |
2178 | bool read_vbios(bool from_pci)␊ |
2179 | {␊ |
2180 | ␉option_rom_header_t *rom_addr;␊ |
2181 | ␉␊ |
2182 | ␉if (from_pci)␊ |
2183 | ␉{␊ |
2184 | ␉␉rom_addr = (option_rom_header_t *)(pci_config_read32(card->pci_dev->dev.addr, PCI_ROM_ADDRESS) & ~0x7ff);␊ |
2185 | ␉␉verbose(" @0x%x\n", (unsigned) rom_addr);␊ |
2186 | ␉}␊ |
2187 | ␉else␊ |
2188 | ␉{␊ |
2189 | ␉␉rom_addr = (option_rom_header_t *)0xc0000;␊ |
2190 | ␉}␊ |
2191 | ␉␊ |
2192 | ␉if (!validate_rom(rom_addr, card->pci_dev))␊ |
2193 | ␉{␊ |
2194 | ␉␉verbose("There is no ROM @0x%x\n", (unsigned) rom_addr);␊ |
2195 | ␉␉return false;␊ |
2196 | ␉}␊ |
2197 | ␉card->rom_size = rom_addr->rom_size * 512;␊ |
2198 | ␉if (!card->rom_size)␊ |
2199 | ␉{␊ |
2200 | ␉␉return false;␊ |
2201 | ␉}␊ |
2202 | ␉␊ |
2203 | ␉card->rom = malloc(card->rom_size);␊ |
2204 | ␉if (!card->rom)␊ |
2205 | ␉{␊ |
2206 | ␉␉return false;␊ |
2207 | ␉}␊ |
2208 | ␉␊ |
2209 | ␉memcpy(card->rom, (void *)rom_addr, card->rom_size);␊ |
2210 | ␉␊ |
2211 | ␉return true;␊ |
2212 | }␊ |
2213 | ␊ |
2214 | bool read_disabled_vbios(void)␊ |
2215 | {␊ |
2216 | ␉bool ret = false;␊ |
2217 | ␉ati_chip_family_t chip_family = card->info->chip_family;␊ |
2218 | ␉␊ |
2219 | ␉if (chip_family >= CHIP_FAMILY_RV770)␊ |
2220 | ␉{␊ |
2221 | ␉␉uint32_t viph_control␉␉= RegRead32(RADEON_VIPH_CONTROL);␊ |
2222 | ␉␉uint32_t bus_cntl␉␉= RegRead32(RADEON_BUS_CNTL);␊ |
2223 | ␉␉uint32_t d1vga_control␉␉= RegRead32(AVIVO_D1VGA_CONTROL);␊ |
2224 | ␉␉uint32_t d2vga_control␉␉= RegRead32(AVIVO_D2VGA_CONTROL);␊ |
2225 | ␉␉uint32_t vga_render_control␉= RegRead32(AVIVO_VGA_RENDER_CONTROL);␊ |
2226 | ␉␉uint32_t rom_cntl␉␉= RegRead32(R600_ROM_CNTL);␊ |
2227 | ␉␉uint32_t cg_spll_func_cntl␉= 0;␊ |
2228 | ␉␉uint32_t cg_spll_status;␊ |
2229 | ␉␉␊ |
2230 | ␉␉// disable VIP␊ |
2231 | ␉␉RegWrite32(RADEON_VIPH_CONTROL, (viph_control & ~RADEON_VIPH_EN));␊ |
2232 | ␉␉␊ |
2233 | ␉␉// enable the rom␊ |
2234 | ␉␉RegWrite32(RADEON_BUS_CNTL, (bus_cntl & ~RADEON_BUS_BIOS_DIS_ROM));␊ |
2235 | ␉␉␊ |
2236 | ␉␉// Disable VGA mode␊ |
2237 | ␉␉RegWrite32(AVIVO_D1VGA_CONTROL, (d1vga_control & ~(AVIVO_DVGA_CONTROL_MODE_ENABLE | AVIVO_DVGA_CONTROL_TIMING_SELECT)));␊ |
2238 | ␉␉RegWrite32(AVIVO_D2VGA_CONTROL, (d2vga_control & ~(AVIVO_DVGA_CONTROL_MODE_ENABLE | AVIVO_DVGA_CONTROL_TIMING_SELECT)));␊ |
2239 | ␉␉RegWrite32(AVIVO_VGA_RENDER_CONTROL, (vga_render_control & ~AVIVO_VGA_VSTATUS_CNTL_MASK));␊ |
2240 | ␉␉␊ |
2241 | ␉␉if (chip_family == CHIP_FAMILY_RV730)␊ |
2242 | ␉␉{␊ |
2243 | ␉␉␉cg_spll_func_cntl = RegRead32(R600_CG_SPLL_FUNC_CNTL);␊ |
2244 | ␉␉␉␊ |
2245 | ␉␉␉// enable bypass mode␊ |
2246 | ␉␉␉RegWrite32(R600_CG_SPLL_FUNC_CNTL, (cg_spll_func_cntl | R600_SPLL_BYPASS_EN));␊ |
2247 | ␉␉␉␊ |
2248 | ␉␉␉// wait for SPLL_CHG_STATUS to change to 1␊ |
2249 | ␉␉␉cg_spll_status = 0;␊ |
2250 | ␉␉␉while (!(cg_spll_status & R600_SPLL_CHG_STATUS))␊ |
2251 | ␉␉␉{␊ |
2252 | ␉␉␉␉cg_spll_status = RegRead32(R600_CG_SPLL_STATUS);␊ |
2253 | ␉␉␉}␊ |
2254 | ␉␉␉␊ |
2255 | ␉␉␉RegWrite32(R600_ROM_CNTL, (rom_cntl & ~R600_SCK_OVERWRITE));␊ |
2256 | ␉␉}␊ |
2257 | ␉␉else␊ |
2258 | ␉␉{␊ |
2259 | ␉␉␉RegWrite32(R600_ROM_CNTL, (rom_cntl | R600_SCK_OVERWRITE));␊ |
2260 | ␉␉}␊ |
2261 | ␊ |
2262 | ␉␉ret = read_vbios(true);␊ |
2263 | ␉␉␊ |
2264 | ␉␉// restore regs␊ |
2265 | ␉␉if (chip_family == CHIP_FAMILY_RV730)␊ |
2266 | ␉␉{␊ |
2267 | ␉␉␉RegWrite32(R600_CG_SPLL_FUNC_CNTL, cg_spll_func_cntl);␊ |
2268 | ␉␉␉␊ |
2269 | ␉␉␉// wait for SPLL_CHG_STATUS to change to 1␊ |
2270 | ␉␉␉cg_spll_status = 0;␊ |
2271 | ␉␉␉while (!(cg_spll_status & R600_SPLL_CHG_STATUS))␊ |
2272 | ␉␉␉cg_spll_status = RegRead32(R600_CG_SPLL_STATUS);␊ |
2273 | ␉␉}␊ |
2274 | ␉␉RegWrite32(RADEON_VIPH_CONTROL, viph_control);␊ |
2275 | ␉␉RegWrite32(RADEON_BUS_CNTL, bus_cntl);␊ |
2276 | ␉␉RegWrite32(AVIVO_D1VGA_CONTROL, d1vga_control);␊ |
2277 | ␉␉RegWrite32(AVIVO_D2VGA_CONTROL, d2vga_control);␊ |
2278 | ␉␉RegWrite32(AVIVO_VGA_RENDER_CONTROL, vga_render_control);␊ |
2279 | ␉␉RegWrite32(R600_ROM_CNTL, rom_cntl);␊ |
2280 | ␉}␊ |
2281 | ␉else␊ |
2282 | ␉␉if (chip_family >= CHIP_FAMILY_R600)␊ |
2283 | ␉␉{␊ |
2284 | ␉␉␉uint32_t viph_control␉␉␉␉= RegRead32(RADEON_VIPH_CONTROL);␊ |
2285 | ␉␉␉uint32_t bus_cntl␉␉␉␉= RegRead32(RADEON_BUS_CNTL);␊ |
2286 | ␉␉␉uint32_t d1vga_control␉␉␉␉= RegRead32(AVIVO_D1VGA_CONTROL);␊ |
2287 | ␉␉␉uint32_t d2vga_control␉␉␉␉= RegRead32(AVIVO_D2VGA_CONTROL);␊ |
2288 | ␉␉␉uint32_t vga_render_control␉␉␉= RegRead32(AVIVO_VGA_RENDER_CONTROL);␊ |
2289 | ␉␉␉uint32_t rom_cntl␉␉␉␉= RegRead32(R600_ROM_CNTL);␊ |
2290 | ␉␉␉uint32_t general_pwrmgt␉␉␉␉= RegRead32(R600_GENERAL_PWRMGT);␊ |
2291 | ␉␉␉uint32_t low_vid_lower_gpio_cntl␉␉= RegRead32(R600_LOW_VID_LOWER_GPIO_CNTL);␊ |
2292 | ␉␉␉uint32_t medium_vid_lower_gpio_cntl␉␉= RegRead32(R600_MEDIUM_VID_LOWER_GPIO_CNTL);␊ |
2293 | ␉␉␉uint32_t high_vid_lower_gpio_cntl␉␉= RegRead32(R600_HIGH_VID_LOWER_GPIO_CNTL);␊ |
2294 | ␉␉␉uint32_t ctxsw_vid_lower_gpio_cntl␉␉= RegRead32(R600_CTXSW_VID_LOWER_GPIO_CNTL);␊ |
2295 | ␉␉␉uint32_t lower_gpio_enable␉␉␉= RegRead32(R600_LOWER_GPIO_ENABLE);␊ |
2296 | ␉␉␉␊ |
2297 | ␉␉␉// disable VIP␊ |
2298 | ␉␉␉RegWrite32(RADEON_VIPH_CONTROL, (viph_control & ~RADEON_VIPH_EN));␊ |
2299 | ␉␉␉␊ |
2300 | ␉␉␉// enable the rom␊ |
2301 | ␉␉␉RegWrite32(RADEON_BUS_CNTL, (bus_cntl & ~RADEON_BUS_BIOS_DIS_ROM));␊ |
2302 | ␉␉␉␊ |
2303 | ␉␉␉// Disable VGA mode␊ |
2304 | ␉␉␉RegWrite32(AVIVO_D1VGA_CONTROL, (d1vga_control & ~(AVIVO_DVGA_CONTROL_MODE_ENABLE | AVIVO_DVGA_CONTROL_TIMING_SELECT)));␊ |
2305 | ␉␉␉RegWrite32(AVIVO_D2VGA_CONTROL, (d2vga_control & ~(AVIVO_DVGA_CONTROL_MODE_ENABLE | AVIVO_DVGA_CONTROL_TIMING_SELECT)));␊ |
2306 | ␉␉␉RegWrite32(AVIVO_VGA_RENDER_CONTROL, (vga_render_control & ~AVIVO_VGA_VSTATUS_CNTL_MASK));␊ |
2307 | ␉␉␉RegWrite32(R600_ROM_CNTL, ((rom_cntl & ~R600_SCK_PRESCALE_CRYSTAL_CLK_MASK) | (1 << R600_SCK_PRESCALE_CRYSTAL_CLK_SHIFT) | R600_SCK_OVERWRITE));␊ |
2308 | ␉␉␉RegWrite32(R600_GENERAL_PWRMGT, (general_pwrmgt & ~R600_OPEN_DRAIN_PADS));␊ |
2309 | ␉␉␉RegWrite32(R600_LOW_VID_LOWER_GPIO_CNTL, (low_vid_lower_gpio_cntl & ~0x400));␊ |
2310 | ␉␉␉RegWrite32(R600_MEDIUM_VID_LOWER_GPIO_CNTL, (medium_vid_lower_gpio_cntl & ~0x400));␊ |
2311 | ␉␉␉RegWrite32(R600_HIGH_VID_LOWER_GPIO_CNTL, (high_vid_lower_gpio_cntl & ~0x400));␊ |
2312 | ␉␉␉RegWrite32(R600_CTXSW_VID_LOWER_GPIO_CNTL, (ctxsw_vid_lower_gpio_cntl & ~0x400));␊ |
2313 | ␉␉␉RegWrite32(R600_LOWER_GPIO_ENABLE, (lower_gpio_enable | 0x400));␊ |
2314 | ␉␉␉␊ |
2315 | ␉␉␉ret = read_vbios(true);␊ |
2316 | ␉␉␉␊ |
2317 | ␉␉␉// restore regs␊ |
2318 | ␉␉␉RegWrite32(RADEON_VIPH_CONTROL, viph_control);␊ |
2319 | ␉␉␉RegWrite32(RADEON_BUS_CNTL, bus_cntl);␊ |
2320 | ␉␉␉RegWrite32(AVIVO_D1VGA_CONTROL, d1vga_control);␊ |
2321 | ␉␉␉RegWrite32(AVIVO_D2VGA_CONTROL, d2vga_control);␊ |
2322 | ␉␉␉RegWrite32(AVIVO_VGA_RENDER_CONTROL, vga_render_control);␊ |
2323 | ␉␉␉RegWrite32(R600_ROM_CNTL, rom_cntl);␊ |
2324 | ␉␉␉RegWrite32(R600_GENERAL_PWRMGT, general_pwrmgt);␊ |
2325 | ␉␉␉RegWrite32(R600_LOW_VID_LOWER_GPIO_CNTL, low_vid_lower_gpio_cntl);␊ |
2326 | ␉␉␉RegWrite32(R600_MEDIUM_VID_LOWER_GPIO_CNTL, medium_vid_lower_gpio_cntl);␊ |
2327 | ␉␉␉RegWrite32(R600_HIGH_VID_LOWER_GPIO_CNTL, high_vid_lower_gpio_cntl);␊ |
2328 | ␉␉␉RegWrite32(R600_CTXSW_VID_LOWER_GPIO_CNTL, ctxsw_vid_lower_gpio_cntl);␊ |
2329 | ␉␉␉RegWrite32(R600_LOWER_GPIO_ENABLE, lower_gpio_enable);␊ |
2330 | ␉␉}␊ |
2331 | ␊ |
2332 | ␉return ret;␊ |
2333 | }␊ |
2334 | ␊ |
2335 | bool radeon_card_posted(void)␊ |
2336 | {␊ |
2337 | ␉uint32_t reg;␊ |
2338 | ␉␊ |
2339 | ␉// first check CRTCs␊ |
2340 | ␉reg = RegRead32(RADEON_CRTC_GEN_CNTL) | RegRead32(RADEON_CRTC2_GEN_CNTL);␊ |
2341 | ␉if (reg & RADEON_CRTC_EN)␊ |
2342 | ␉{␊ |
2343 | ␉␉return true;␊ |
2344 | ␉}␊ |
2345 | ␉␊ |
2346 | ␉// then check MEM_SIZE, in case something turned the crtcs off␊ |
2347 | ␉reg = RegRead32(R600_CONFIG_MEMSIZE);␊ |
2348 | ␉if (reg)␊ |
2349 | ␉{␊ |
2350 | ␉␉return true;␊ |
2351 | ␉}␊ |
2352 | ␉␊ |
2353 | ␉return false;␊ |
2354 | }␊ |
2355 | ␊ |
2356 | #if 0␊ |
2357 | bool devprop_add_pci_config_space(void)␊ |
2358 | {␊ |
2359 | ␉int offset;␊ |
2360 | ␉␊ |
2361 | ␉uint8_t *config_space = malloc(0x100);␊ |
2362 | ␉if (!config_space)␊ |
2363 | ␉{␊ |
2364 | ␉␉return false;␊ |
2365 | ␉}␊ |
2366 | ␉␊ |
2367 | ␉for (offset = 0; offset < 0x100; offset += 4)␊ |
2368 | ␉{␊ |
2369 | ␉␉config_space[offset / 4] = pci_config_read32(card->pci_dev->dev.addr, offset);␊ |
2370 | ␉}␊ |
2371 | ␉␊ |
2372 | ␉devprop_add_value(card->device, "ATY,PCIConfigSpace", config_space, 0x100);␊ |
2373 | ␉free(config_space);␊ |
2374 | ␉␊ |
2375 | ␉return true;␊ |
2376 | }␊ |
2377 | #endif␊ |
2378 | ␊ |
2379 | static char␉name[24];␊ |
2380 | static char␉name_parent[24];␊ |
2381 | ␊ |
2382 | static bool init_card(pci_dt_t *pci_dev)␊ |
2383 | {␊ |
2384 | ␉bool␉add_vbios = true;␊ |
2385 | ␉int␉␉i;␊ |
2386 | ␉int␉␉n_ports = 0;␊ |
2387 | ␊ |
2388 | ␉card = malloc(sizeof(card_t));␊ |
2389 | ␉if (!card)␊ |
2390 | ␉{␊ |
2391 | ␉␉return false;␊ |
2392 | ␉}␊ |
2393 | ␉bzero(card, sizeof(card_t));␊ |
2394 | ␊ |
2395 | ␉card->pci_dev = pci_dev;␊ |
2396 | ␉␊ |
2397 | ␉for (i = 0; radeon_cards[i].device_id ; i++)␊ |
2398 | ␉{␊ |
2399 | ␉␉if (radeon_cards[i].device_id == pci_dev->device_id)␊ |
2400 | ␉␉{␊ |
2401 | ␉␉␉if ((radeon_cards[i].subsys_id == 0x00000000) || (radeon_cards[i].subsys_id == pci_dev->subsys_id.subsys_id))␊ |
2402 | ␉␉␉{␊ |
2403 | ␉␉␉␉card->info = &radeon_cards[i];␊ |
2404 | ␉␉␉␉break;␊ |
2405 | ␉␉␉}␊ |
2406 | ␉␉}␊ |
2407 | ␉}␊ |
2408 | ␊ |
2409 | ␉if (card->info == NULL) // Jief␊ |
2410 | ␉{␊ |
2411 | ␉␉DBG("Unsupported ATI card! Device ID: [%04x:%04x] Subsystem ID: [%04x:%04x] \n", ␊ |
2412 | ␉␉␉␉pci_dev->vendor_id, pci_dev->device_id, pci_dev->subsys_id.subsys.vendor_id, pci_dev->subsys_id.subsys.device_id);␊ |
2413 | ␉␉return false;␊ |
2414 | ␉}␊ |
2415 | ␉DBG("Found ATI card! Device ID:[%04X:%04X] Subsystem ID:[%08X] - Radeon [%04X:%08X] %s\n", ␊ |
2416 | ␉␉pci_dev->vendor_id, pci_dev->device_id, pci_dev->subsys_id.subsys_id, card->info->device_id, card->info->subsys_id, card->info->model_name);␊ |
2417 | ␉␊ |
2418 | ␉card->fb␉␉= (uint8_t *)(pci_config_read32(pci_dev->dev.addr, PCI_BASE_ADDRESS_0) & ~0x0f);␊ |
2419 | ␉card->mmio␉␉= (uint8_t *)(pci_config_read32(pci_dev->dev.addr, PCI_BASE_ADDRESS_2) & ~0x0f);␊ |
2420 | ␉card->io␉␉= (uint8_t *)(pci_config_read32(pci_dev->dev.addr, PCI_BASE_ADDRESS_4) & ~0x03);␊ |
2421 | ␊ |
2422 | ␉DBG("Framebuffer @0x%08X MMIO @0x%08X␉I/O Port @0x%08X ROM Addr @0x%08X\n",␊ |
2423 | ␉␉(unsigned) card->fb, (unsigned) card->mmio, (unsigned) card->io, pci_config_read32(pci_dev->dev.addr, PCI_ROM_ADDRESS));␊ |
2424 | ␉␊ |
2425 | ␉card->posted = radeon_card_posted();␊ |
2426 | ␉DBG("ATI card %s, ", card->posted ? "POSTed" : "non-POSTed");␊ |
2427 | ␉DBG("\n");␊ |
2428 | ␉get_vram_size();␊ |
2429 | ␉␊ |
2430 | ␉getBoolForKey(kATYbinimage, &add_vbios, &bootInfo->chameleonConfig);␊ |
2431 | ␊ |
2432 | ␉if (add_vbios)␊ |
2433 | ␉{␊ |
2434 | ␉␉if (!load_vbios_file(kUseAtiROM, pci_dev->vendor_id, pci_dev->device_id, pci_dev->subsys_id.subsys_id))␊ |
2435 | ␉␉{␊ |
2436 | ␉␉␉DBG("reading Video BIOS from %s", card->posted ? "legacy space" : "PCI ROM");␊ |
2437 | ␉␉␉if (card->posted)␊ |
2438 | ␉␉␉{␊ |
2439 | ␉␉␉␉read_vbios(false);␊ |
2440 | ␉␉␉}␊ |
2441 | ␉␉␉else␊ |
2442 | ␉␉␉{␊ |
2443 | ␉␉␉␉read_disabled_vbios();␊ |
2444 | ␉␉␉}␊ |
2445 | ␉␉␉verbose("Video BIOS read from file\n");␊ |
2446 | ␉␉}␊ |
2447 | ␉}␊ |
2448 | ␊ |
2449 | ␊ |
2450 | ␉if (card->info->chip_family >= CHIP_FAMILY_CEDAR)␊ |
2451 | ␉{␊ |
2452 | ␉␉DBG("ATI Radeon EVERGREEN family\n");␊ |
2453 | ␉␉card->flags |= EVERGREEN;␊ |
2454 | ␉}␊ |
2455 | ␊ |
2456 | ␊ |
2457 | ␉// Check AtiConfig key for a framebuffer name,␊ |
2458 | ␉card->cfg_name = getStringForKey(kAtiConfig, &bootInfo->chameleonConfig);␊ |
2459 | ␊ |
2460 | ␉// if none,␊ |
2461 | ␉if (!card->cfg_name)␊ |
2462 | ␉{␊ |
2463 | ␉␉// use cfg_name on radeon_cards, to retrive the default name from card_configs,␊ |
2464 | ␉␉card->cfg_name = card_configs[card->info->cfg_name].name;␊ |
2465 | ␉␉␊ |
2466 | ␉␉// which means one of the fb's or kNull␊ |
2467 | ␉␉DBG("Framebuffer set to device's default: %s\n", card->cfg_name);␊ |
2468 | ␉}␊ |
2469 | ␉else␊ |
2470 | ␉{␊ |
2471 | ␉␉// else, use the fb name returned by AtiConfig.␊ |
2472 | ␉␉verbose("(AtiConfig) Framebuffer set to: %s\n", card->cfg_name);␊ |
2473 | ␉}␊ |
2474 | ␊ |
2475 | ␉// Check AtiPorts key for nr of ports,␊ |
2476 | ␉card->ports = getIntForKey(kAtiPorts, &n_ports, &bootInfo->chameleonConfig);␊ |
2477 | ␉// if a value bigger than 0 ?? is found, (do we need >= 0 ?? that's null FB on card_configs)␊ |
2478 | ␉if (n_ports > 0)␊ |
2479 | ␉{␊ |
2480 | ␉␉card->ports = (uint8_t)n_ports; // use it.␊ |
2481 | ␉␉DBG("(AtiPorts) Nr of ports set to: %d\n", card->ports);␊ |
2482 | ␉}␊ |
2483 | ␉else␊ |
2484 | ␉{␊ |
2485 | ␉␉// else, match cfg_name with card_configs list and retrive default nr of ports.␊ |
2486 | ␉␉for (i = 0; i < kCfgEnd; i++)␊ |
2487 | ␉␉{␊ |
2488 | ␉␉␉if (strcmp(card->cfg_name, card_configs[i].name) == 0)␊ |
2489 | ␉␉␉{␊ |
2490 | ␉␉␉␉card->ports = card_configs[i].ports; // default␊ |
2491 | ␉␉␉}␊ |
2492 | ␉␉}␊ |
2493 | ␊ |
2494 | ␉␉DBG("Nr of ports set to framebuffer's default: %d\n", card->ports);␊ |
2495 | ␉}␊ |
2496 | ␊ |
2497 | ␊ |
2498 | ␉sprintf(name, "ATY,%s", card->cfg_name);␊ |
2499 | ␉aty_name.type = kStr;␊ |
2500 | ␉aty_name.size = strlen(name) + 1;␊ |
2501 | ␉aty_name.data = (uint8_t *)name;␊ |
2502 | ␊ |
2503 | ␉sprintf(name_parent, "ATY,%sParent", card->cfg_name);␊ |
2504 | ␉aty_nameparent.type = kStr;␊ |
2505 | ␉aty_nameparent.size = strlen(name_parent) + 1;␊ |
2506 | ␉aty_nameparent.data = (uint8_t *)name_parent;␊ |
2507 | ␉␊ |
2508 | ␉return true;␊ |
2509 | }␊ |
2510 | ␊ |
2511 | bool setup_ati_devprop(pci_dt_t *ati_dev)␊ |
2512 | {␊ |
2513 | ␉char *devicepath;␊ |
2514 | ␊ |
2515 | ␉verbose("\tClass code: [%04X]\n", ati_dev->class_id );␊ |
2516 | ␊ |
2517 | ␉if (!init_card(ati_dev))␊ |
2518 | ␉{␊ |
2519 | ␉␉return false;␊ |
2520 | ␉}␊ |
2521 | ␊ |
2522 | ␉// -------------------------------------------------␊ |
2523 | ␉// Find a better way to do this (in device_inject.c)␊ |
2524 | ␉if (!string)␊ |
2525 | ␉{␊ |
2526 | ␉␉string = devprop_create_string();␊ |
2527 | ␉}␊ |
2528 | ␉devicepath = get_pci_dev_path(ati_dev);␊ |
2529 | ␉card->device = devprop_add_device(string, devicepath);␊ |
2530 | ␉if (!card->device)␊ |
2531 | ␉{␊ |
2532 | ␉␉return false;␊ |
2533 | ␉}␊ |
2534 | ␉// -------------------------------------------------␊ |
2535 | ␊ |
2536 | ␉if (getBoolForKey(kUseIntelHDMI, &doit, &bootInfo->chameleonConfig) && doit)␊ |
2537 | ␉{␊ |
2538 | ␉␉devprop_add_value(card->device, "hda-gfx", (uint8_t *)"onboard-2", 10);␊ |
2539 | ␉}␊ |
2540 | ␉else␊ |
2541 | ␉{␊ |
2542 | ␉␉devprop_add_value(card->device, "hda-gfx", (uint8_t *)"onboard-1", 10);␊ |
2543 | ␉}␊ |
2544 | ␊ |
2545 | #if 0␊ |
2546 | ␉uint64_t fb␉= (uint32_t)card->fb;␊ |
2547 | ␉uint64_t mmio␉= (uint32_t)card->mmio;␊ |
2548 | ␉uint64_t io␉= (uint32_t)card->io;␊ |
2549 | ␉devprop_add_value(card->device, "ATY,FrameBufferOffset", &fb, 8);␊ |
2550 | ␉devprop_add_value(card->device, "ATY,RegisterSpaceOffset", &mmio, 8);␊ |
2551 | ␉devprop_add_value(card->device, "ATY,IOSpaceOffset", &io, 8);␊ |
2552 | #endif␊ |
2553 | ␊ |
2554 | ␉devprop_add_list(ati_devprop_list);␊ |
2555 | ␊ |
2556 | ␉// -------------------------------------------------␊ |
2557 | ␉// Find a better way to do this (in device_inject.c)␊ |
2558 | ␉//Azi: XXX tried to fix a malloc error in vain; this is related to XCode 4 compilation!␊ |
2559 | ␉stringdata = malloc(sizeof(uint8_t) * string->length);␊ |
2560 | ␉memcpy(stringdata, (uint8_t*)devprop_generate_string(string), string->length);␊ |
2561 | ␉stringlength = string->length;␊ |
2562 | ␉// -------------------------------------------------␊ |
2563 | ␊ |
2564 | ␉DBG("\tATI %s %s %dMB (%s) [%04x:%04x] (subsys [%04x:%04x])\n\t%s\n",␊ |
2565 | ␉␉␉chip_family_name[card->info->chip_family], card->info->model_name,␊ |
2566 | ␉␉␉(uint32_t)(card->vram_size / (1024 * 1024)), card->cfg_name,␊ |
2567 | ␉␉␉ati_dev->vendor_id, ati_dev->device_id,␊ |
2568 | ␉␉␉ati_dev->subsys_id.subsys.vendor_id, ati_dev->subsys_id.subsys.device_id,␊ |
2569 | ␉␉␉devicepath);␊ |
2570 | ␊ |
2571 | ␉free(card);␊ |
2572 | ␊ |
2573 | ␉return true;␊ |
2574 | }␊ |
2575 | |