1 /* SPDX-License-Identifier: GPL-2.0-only */
5 int cs5536_probe(const struct targetdef
*target
, const struct cpuid_t
*id
) {
6 return (NULL
!= pci_dev_find(0x1022, 0x2090));
10 * Documentation referenced:
12 * 33238G: AMD Geode(tm) CS5536 Companion Device Data Book
13 * http://www.amd.com/files/connectivitysolutions/geode/geode_lx/33238G_cs5536_db.pdf
17 const struct msrdef cs5536_msrs
[] = {
18 /* 0x51400008-0x5140000f per 33238G pages 356-361 */
19 /* 0x51400015 per 33238G pages 365-366 */
20 /* 0x51400020-0x51400027 per 33238G pages 379-385 */
21 { 0x51400008, MSRTYPE_RDWR
, MSR2(0, 0), "DIVIL_LBAR_IRQ", "Local BAR - IRQ Mapper", {
24 { 47, 4, "IO_MASK", "I/O Address Mask Value", PRESENT_BIN
, {
28 { 32, 1, "LBAR_EN", "LBAR Enable", PRESENT_BIN
, {
29 { MSR1(0), "Disable LBAR" },
30 { MSR1(1), "Enable LBAR" },
35 { 15, 11, "BASE_ADDR", "Base Address in I/O Space", PRESENT_HEX
, {
41 { 0x51400009, MSRTYPE_RDWR
, MSR2(0, 0), "DIVIL_LBAR_KEL", "Local BAR - Keyboard Emulation Logic from USB", {
42 { 63, 20, "MEM_MASK", "Memory Address Mask Value", PRESENT_HEX
, {
46 { 32, 1, "LBAR_EN", "LBAR Enable", PRESENT_BIN
, {
47 { MSR1(0), "Disable LBAR" },
48 { MSR1(1), "Enable LBAR" },
51 { 31, 20, "BASE_ADDR", "Base Address in Memory Space", PRESENT_HEX
, {
57 /* 0x5140000a is not mentioned in the databook */
58 { 0x5140000b, MSRTYPE_RDWR
, MSR2(0, 0), "DIVIL_LBAR_SMB", "Local BAR - System Management Bus", {
61 { 47, 4, "IO_MASK", "I/O Address Mask Value", PRESENT_BIN
, {
65 { 32, 1, "LBAR_EN", "LBAR Enable", PRESENT_BIN
, {
66 { MSR1(0), "Disable LBAR" },
67 { MSR1(1), "Enable LBAR" },
72 { 15, 8, "BASE_ADDR", "Base Address in I/O Space", PRESENT_HEX
, {
78 { 0x5140000c, MSRTYPE_RDWR
, MSR2(0, 0), "DIVIL_LBAR_GPIO", "Local BAR - GPIO and Input Conditioning Functions", {
81 { 47, 4, "IO_MASK", "I/O Address Mask Value", PRESENT_BIN
, {
85 { 32, 1, "LBAR_EN", "LBAR Enable", PRESENT_BIN
, {
86 { MSR1(0), "Disable LBAR" },
87 { MSR1(1), "Enable LBAR" },
92 { 15, 8, "BASE_ADDR", "Base Address in I/O Space", PRESENT_HEX
, {
98 { 0x5140000d, MSRTYPE_RDWR
, MSR2(0, 0), "DIVIL_LBAR_MFGPT", "Local BAR - MFGPTs", {
101 { 47, 4, "IO_MASK", "I/O Address Mask Value", PRESENT_BIN
, {
104 { 43, 11, RESERVED
},
105 { 32, 1, "LBAR_EN", "LBAR Enable", PRESENT_BIN
, {
106 { MSR1(0), "Disable LBAR" },
107 { MSR1(1), "Enable LBAR" },
110 { 31, 15, RESERVED
},
112 { 15, 8, "BASE_ADDR", "Base Address in I/O Space", PRESENT_HEX
, {
118 { 0x5140000e, MSRTYPE_RDWR
, MSR2(0, 0), "DIVIL_LBAR_ACPI", "Local BAR - ACPI", {
119 { 63, 15, RESERVED
},
121 { 47, 4, "IO_MASK", "I/O Address Mask Value", PRESENT_BIN
, {
124 { 43, 11, RESERVED
},
125 { 32, 1, "LBAR_EN", "LBAR Enable", PRESENT_BIN
, {
126 { MSR1(0), "Disable LBAR" },
127 { MSR1(1), "Enable LBAR" },
130 { 31, 15, RESERVED
},
132 { 15, 8, "BASE_ADDR", "Base Address in I/O Space", PRESENT_HEX
, {
138 { 0x5140000f, MSRTYPE_RDWR
, MSR2(0, 0), "DIVIL_LBAR_PMS", "Local BAR - Power Management Support", {
139 { 63, 15, RESERVED
},
141 { 47, 4, "IO_MASK", "I/O Address Mask Value", PRESENT_BIN
, {
144 { 43, 11, RESERVED
},
145 { 32, 1, "LBAR_EN", "LBAR Enable", PRESENT_BIN
, {
146 { MSR1(0), "Disable LBAR" },
147 { MSR1(1), "Enable LBAR" },
150 { 31, 15, RESERVED
},
152 { 15, 9, "BASE_ADDR", "Base Address in I/O Space", PRESENT_HEX
, {
158 { 0x51400015, MSRTYPE_RDWR
, MSR2(0, 0x70), "DIVIL_BALL_OPTS", "Ball Options Control", {
159 { 63, 32, RESERVED
},
160 { 31, 20, RESERVED
},
161 { 11, 2, "SEC_BOOT_LOC", "Secondary Boot Location", PRESENT_BIN
, {
162 { MSR1(0), "LPC ROM" },
163 { MSR1(2), "NOR Flash on IDE" },
164 { MSR1(3), "Firmware Hub" },
167 { 9, 2, "BOOT_OP_LATCHED", "Latched Value of Boot Option", PRESENT_BIN
, {
168 { MSR1(0), "LPC ROM" },
169 { MSR1(2), "NOR Flash on IDE" },
170 { MSR1(3), "Firmware Hub" },
174 { 6, 1, "PIN_OPT_LALL", "All LPC Pin Option Selection", PRESENT_BIN
, {
175 { MSR1(0), "All LPC pins become GPIOs including LPC_DRQ# and LPC_SERIRQ" },
176 { MSR1(1), "All LPC pins are controlled by the LPC controller except LPC_DRQ# and LPC_SERIRQ (bits [5:4])" },
179 { 5, 1, "PIN_OPT_LIRQ", "LPC_SERIRQ or GPIO21 Pin Option Selection", PRESENT_BIN
, {
180 { MSR1(0), "Ball G2 is GPIO21" },
181 { MSR1(1), "Ball G2 functions as LPC_SERIRQ" },
184 { 4, 1, "PIN_OPT_LDRQ", "LPC_DRQ# or GPIO20 Pin Option Selection", PRESENT_BIN
, {
185 { MSR1(0), "Ball G1 is GPIO20" },
186 { MSR1(1), "Ball G1 functions as LPC_DRQ#" },
189 { 3, 2, "PRI_BOOT_LOC", "Primary Boot Location", PRESENT_BIN
, {
190 { MSR1(0), "LPC ROM" },
191 { MSR1(2), "NOR Flash on IDE" },
192 { MSR1(3), "Firmware Hub" },
196 { 0, 1, "PIN_OPT_IDE", "IDE or Flash Controller Pin Function Selection", PRESENT_BIN
, {
197 { MSR1(0), "All IDE pins associated with Flash Controller" },
198 { MSR1(1), "All IDE pins associated with IDE Controller" },
202 { 0x51400020, MSRTYPE_RDWR
, MSR2(0, 0), "PIC_YSEL_LOW", "IRQ Mapper Unrestricted Y Select Low", {
203 { 63, 32, RESERVED
},
204 { 31, 4, "MAP_Y7", "Map Unrestricted Y Input 7", PRESENT_BIN
, {
205 { MSR1(0), "Disable" },
206 { MSR1(1), "Interrupt Group 1" },
207 { MSR1(2), "Interrupt Group 2" },
208 { MSR1(3), "Interrupt Group 3" },
209 { MSR1(4), "Interrupt Group 4" },
210 { MSR1(5), "Interrupt Group 5" },
211 { MSR1(6), "Interrupt Group 6" },
212 { MSR1(7), "Interrupt Group 7" },
213 { MSR1(8), "Interrupt Group 8" },
214 { MSR1(9), "Interrupt Group 9" },
215 { MSR1(10), "Interrupt Group 10" },
216 { MSR1(11), "Interrupt Group 11" },
217 { MSR1(12), "Interrupt Group 12" },
218 { MSR1(13), "Interrupt Group 13" },
219 { MSR1(14), "Interrupt Group 14" },
220 { MSR1(15), "Interrupt Group 15" },
223 { 27, 4, "MAP_Y6", "Map Unrestricted Y Input 6", PRESENT_BIN
, {
224 { MSR1(0), "Disable" },
225 { MSR1(1), "Interrupt Group 1" },
226 { MSR1(2), "Interrupt Group 2" },
227 { MSR1(3), "Interrupt Group 3" },
228 { MSR1(4), "Interrupt Group 4" },
229 { MSR1(5), "Interrupt Group 5" },
230 { MSR1(6), "Interrupt Group 6" },
231 { MSR1(7), "Interrupt Group 7" },
232 { MSR1(8), "Interrupt Group 8" },
233 { MSR1(9), "Interrupt Group 9" },
234 { MSR1(10), "Interrupt Group 10" },
235 { MSR1(11), "Interrupt Group 11" },
236 { MSR1(12), "Interrupt Group 12" },
237 { MSR1(13), "Interrupt Group 13" },
238 { MSR1(14), "Interrupt Group 14" },
239 { MSR1(15), "Interrupt Group 15" },
242 { 23, 4, "MAP_Y5", "Map Unrestricted Y Input 5", PRESENT_BIN
, {
243 { MSR1(0), "Disable" },
244 { MSR1(1), "Interrupt Group 1" },
245 { MSR1(2), "Interrupt Group 2" },
246 { MSR1(3), "Interrupt Group 3" },
247 { MSR1(4), "Interrupt Group 4" },
248 { MSR1(5), "Interrupt Group 5" },
249 { MSR1(6), "Interrupt Group 6" },
250 { MSR1(7), "Interrupt Group 7" },
251 { MSR1(8), "Interrupt Group 8" },
252 { MSR1(9), "Interrupt Group 9" },
253 { MSR1(10), "Interrupt Group 10" },
254 { MSR1(11), "Interrupt Group 11" },
255 { MSR1(12), "Interrupt Group 12" },
256 { MSR1(13), "Interrupt Group 13" },
257 { MSR1(14), "Interrupt Group 14" },
258 { MSR1(15), "Interrupt Group 15" },
261 { 19, 4, "MAP_Y4", "Map Unrestricted Y Input 4", PRESENT_BIN
, {
262 { MSR1(0), "Disable" },
263 { MSR1(1), "Interrupt Group 1" },
264 { MSR1(2), "Interrupt Group 2" },
265 { MSR1(3), "Interrupt Group 3" },
266 { MSR1(4), "Interrupt Group 4" },
267 { MSR1(5), "Interrupt Group 5" },
268 { MSR1(6), "Interrupt Group 6" },
269 { MSR1(7), "Interrupt Group 7" },
270 { MSR1(8), "Interrupt Group 8" },
271 { MSR1(9), "Interrupt Group 9" },
272 { MSR1(10), "Interrupt Group 10" },
273 { MSR1(11), "Interrupt Group 11" },
274 { MSR1(12), "Interrupt Group 12" },
275 { MSR1(13), "Interrupt Group 13" },
276 { MSR1(14), "Interrupt Group 14" },
277 { MSR1(15), "Interrupt Group 15" },
280 { 15, 4, "MAP_Y3", "Map Unrestricted Y Input 3", PRESENT_BIN
, {
281 { MSR1(0), "Disable" },
282 { MSR1(1), "Interrupt Group 1" },
283 { MSR1(2), "Interrupt Group 2" },
284 { MSR1(3), "Interrupt Group 3" },
285 { MSR1(4), "Interrupt Group 4" },
286 { MSR1(5), "Interrupt Group 5" },
287 { MSR1(6), "Interrupt Group 6" },
288 { MSR1(7), "Interrupt Group 7" },
289 { MSR1(8), "Interrupt Group 8" },
290 { MSR1(9), "Interrupt Group 9" },
291 { MSR1(10), "Interrupt Group 10" },
292 { MSR1(11), "Interrupt Group 11" },
293 { MSR1(12), "Interrupt Group 12" },
294 { MSR1(13), "Interrupt Group 13" },
295 { MSR1(14), "Interrupt Group 14" },
296 { MSR1(15), "Interrupt Group 15" },
299 { 11, 4, "MAP_Y2", "Map Unrestricted Y Input 2", PRESENT_BIN
, {
300 { MSR1(0), "Disable" },
301 { MSR1(1), "Interrupt Group 1" },
302 { MSR1(2), "Interrupt Group 2" },
303 { MSR1(3), "Interrupt Group 3" },
304 { MSR1(4), "Interrupt Group 4" },
305 { MSR1(5), "Interrupt Group 5" },
306 { MSR1(6), "Interrupt Group 6" },
307 { MSR1(7), "Interrupt Group 7" },
308 { MSR1(8), "Interrupt Group 8" },
309 { MSR1(9), "Interrupt Group 9" },
310 { MSR1(10), "Interrupt Group 10" },
311 { MSR1(11), "Interrupt Group 11" },
312 { MSR1(12), "Interrupt Group 12" },
313 { MSR1(13), "Interrupt Group 13" },
314 { MSR1(14), "Interrupt Group 14" },
315 { MSR1(15), "Interrupt Group 15" },
318 { 7, 4, "MAP_Y1", "Map Unrestricted Y Input 1", PRESENT_BIN
, {
319 { MSR1(0), "Disable" },
320 { MSR1(1), "Interrupt Group 1" },
321 { MSR1(2), "Interrupt Group 2" },
322 { MSR1(3), "Interrupt Group 3" },
323 { MSR1(4), "Interrupt Group 4" },
324 { MSR1(5), "Interrupt Group 5" },
325 { MSR1(6), "Interrupt Group 6" },
326 { MSR1(7), "Interrupt Group 7" },
327 { MSR1(8), "Interrupt Group 8" },
328 { MSR1(9), "Interrupt Group 9" },
329 { MSR1(10), "Interrupt Group 10" },
330 { MSR1(11), "Interrupt Group 11" },
331 { MSR1(12), "Interrupt Group 12" },
332 { MSR1(13), "Interrupt Group 13" },
333 { MSR1(14), "Interrupt Group 14" },
334 { MSR1(15), "Interrupt Group 15" },
337 { 3, 4, "MAP_Y0", "Map Unrestricted Y Input 0", PRESENT_BIN
, {
338 { MSR1(0), "Disable" },
339 { MSR1(1), "Interrupt Group 1" },
340 { MSR1(2), "Interrupt Group 2" },
341 { MSR1(3), "Interrupt Group 3" },
342 { MSR1(4), "Interrupt Group 4" },
343 { MSR1(5), "Interrupt Group 5" },
344 { MSR1(6), "Interrupt Group 6" },
345 { MSR1(7), "Interrupt Group 7" },
346 { MSR1(8), "Interrupt Group 8" },
347 { MSR1(9), "Interrupt Group 9" },
348 { MSR1(10), "Interrupt Group 10" },
349 { MSR1(11), "Interrupt Group 11" },
350 { MSR1(12), "Interrupt Group 12" },
351 { MSR1(13), "Interrupt Group 13" },
352 { MSR1(14), "Interrupt Group 14" },
353 { MSR1(15), "Interrupt Group 15" },
358 { 0x51400021, MSRTYPE_RDWR
, MSR2(0, 0), "PIC_YSEL_HIGH", "IRQ Mapper Unrestricted Y Select High", {
359 { 63, 32, RESERVED
},
360 { 31, 4, "MAP_Y15", "Map Unrestricted Y Input 15", PRESENT_BIN
, {
361 { MSR1(0), "Disable" },
362 { MSR1(1), "Interrupt Group 1" },
363 { MSR1(2), "Interrupt Group 2" },
364 { MSR1(3), "Interrupt Group 3" },
365 { MSR1(4), "Interrupt Group 4" },
366 { MSR1(5), "Interrupt Group 5" },
367 { MSR1(6), "Interrupt Group 6" },
368 { MSR1(7), "Interrupt Group 7" },
369 { MSR1(8), "Interrupt Group 8" },
370 { MSR1(9), "Interrupt Group 9" },
371 { MSR1(10), "Interrupt Group 10" },
372 { MSR1(11), "Interrupt Group 11" },
373 { MSR1(12), "Interrupt Group 12" },
374 { MSR1(13), "Interrupt Group 13" },
375 { MSR1(14), "Interrupt Group 14" },
376 { MSR1(15), "Interrupt Group 15" },
379 { 27, 4, "MAP_Y14", "Map Unrestricted Y Input 14", PRESENT_BIN
, {
380 { MSR1(0), "Disable" },
381 { MSR1(1), "Interrupt Group 1" },
382 { MSR1(2), "Interrupt Group 2" },
383 { MSR1(3), "Interrupt Group 3" },
384 { MSR1(4), "Interrupt Group 4" },
385 { MSR1(5), "Interrupt Group 5" },
386 { MSR1(6), "Interrupt Group 6" },
387 { MSR1(7), "Interrupt Group 7" },
388 { MSR1(8), "Interrupt Group 8" },
389 { MSR1(9), "Interrupt Group 9" },
390 { MSR1(10), "Interrupt Group 10" },
391 { MSR1(11), "Interrupt Group 11" },
392 { MSR1(12), "Interrupt Group 12" },
393 { MSR1(13), "Interrupt Group 13" },
394 { MSR1(14), "Interrupt Group 14" },
395 { MSR1(15), "Interrupt Group 15" },
398 { 23, 4, "MAP_Y13", "Map Unrestricted Y Input 13", PRESENT_BIN
, {
399 { MSR1(0), "Disable" },
400 { MSR1(1), "Interrupt Group 1" },
401 { MSR1(2), "Interrupt Group 2" },
402 { MSR1(3), "Interrupt Group 3" },
403 { MSR1(4), "Interrupt Group 4" },
404 { MSR1(5), "Interrupt Group 5" },
405 { MSR1(6), "Interrupt Group 6" },
406 { MSR1(7), "Interrupt Group 7" },
407 { MSR1(8), "Interrupt Group 8" },
408 { MSR1(9), "Interrupt Group 9" },
409 { MSR1(10), "Interrupt Group 10" },
410 { MSR1(11), "Interrupt Group 11" },
411 { MSR1(12), "Interrupt Group 12" },
412 { MSR1(13), "Interrupt Group 13" },
413 { MSR1(14), "Interrupt Group 14" },
414 { MSR1(15), "Interrupt Group 15" },
417 { 19, 4, "MAP_Y12", "Map Unrestricted Y Input 12", PRESENT_BIN
, {
418 { MSR1(0), "Disable" },
419 { MSR1(1), "Interrupt Group 1" },
420 { MSR1(2), "Interrupt Group 2" },
421 { MSR1(3), "Interrupt Group 3" },
422 { MSR1(4), "Interrupt Group 4" },
423 { MSR1(5), "Interrupt Group 5" },
424 { MSR1(6), "Interrupt Group 6" },
425 { MSR1(7), "Interrupt Group 7" },
426 { MSR1(8), "Interrupt Group 8" },
427 { MSR1(9), "Interrupt Group 9" },
428 { MSR1(10), "Interrupt Group 10" },
429 { MSR1(11), "Interrupt Group 11" },
430 { MSR1(12), "Interrupt Group 12" },
431 { MSR1(13), "Interrupt Group 13" },
432 { MSR1(14), "Interrupt Group 14" },
433 { MSR1(15), "Interrupt Group 15" },
436 { 15, 4, "MAP_Y11", "Map Unrestricted Y Input 11", PRESENT_BIN
, {
437 { MSR1(0), "Disable" },
438 { MSR1(1), "Interrupt Group 1" },
439 { MSR1(2), "Interrupt Group 2" },
440 { MSR1(3), "Interrupt Group 3" },
441 { MSR1(4), "Interrupt Group 4" },
442 { MSR1(5), "Interrupt Group 5" },
443 { MSR1(6), "Interrupt Group 6" },
444 { MSR1(7), "Interrupt Group 7" },
445 { MSR1(8), "Interrupt Group 8" },
446 { MSR1(9), "Interrupt Group 9" },
447 { MSR1(10), "Interrupt Group 10" },
448 { MSR1(11), "Interrupt Group 11" },
449 { MSR1(12), "Interrupt Group 12" },
450 { MSR1(13), "Interrupt Group 13" },
451 { MSR1(14), "Interrupt Group 14" },
452 { MSR1(15), "Interrupt Group 15" },
455 { 11, 4, "MAP_Y10", "Map Unrestricted Y Input 10", PRESENT_BIN
, {
456 { MSR1(0), "Disable" },
457 { MSR1(1), "Interrupt Group 1" },
458 { MSR1(2), "Interrupt Group 2" },
459 { MSR1(3), "Interrupt Group 3" },
460 { MSR1(4), "Interrupt Group 4" },
461 { MSR1(5), "Interrupt Group 5" },
462 { MSR1(6), "Interrupt Group 6" },
463 { MSR1(7), "Interrupt Group 7" },
464 { MSR1(8), "Interrupt Group 8" },
465 { MSR1(9), "Interrupt Group 9" },
466 { MSR1(10), "Interrupt Group 10" },
467 { MSR1(11), "Interrupt Group 11" },
468 { MSR1(12), "Interrupt Group 12" },
469 { MSR1(13), "Interrupt Group 13" },
470 { MSR1(14), "Interrupt Group 14" },
471 { MSR1(15), "Interrupt Group 15" },
474 { 7, 4, "MAP_Y9", "Map Unrestricted Y Input 9", PRESENT_BIN
, {
475 { MSR1(0), "Disable" },
476 { MSR1(1), "Interrupt Group 1" },
477 { MSR1(2), "Interrupt Group 2" },
478 { MSR1(3), "Interrupt Group 3" },
479 { MSR1(4), "Interrupt Group 4" },
480 { MSR1(5), "Interrupt Group 5" },
481 { MSR1(6), "Interrupt Group 6" },
482 { MSR1(7), "Interrupt Group 7" },
483 { MSR1(8), "Interrupt Group 8" },
484 { MSR1(9), "Interrupt Group 9" },
485 { MSR1(10), "Interrupt Group 10" },
486 { MSR1(11), "Interrupt Group 11" },
487 { MSR1(12), "Interrupt Group 12" },
488 { MSR1(13), "Interrupt Group 13" },
489 { MSR1(14), "Interrupt Group 14" },
490 { MSR1(15), "Interrupt Group 15" },
493 { 3, 4, "MAP_Y8", "Map Unrestricted Y Input 8", PRESENT_BIN
, {
494 { MSR1(0), "Disable" },
495 { MSR1(1), "Interrupt Group 1" },
496 { MSR1(2), "Interrupt Group 2" },
497 { MSR1(3), "Interrupt Group 3" },
498 { MSR1(4), "Interrupt Group 4" },
499 { MSR1(5), "Interrupt Group 5" },
500 { MSR1(6), "Interrupt Group 6" },
501 { MSR1(7), "Interrupt Group 7" },
502 { MSR1(8), "Interrupt Group 8" },
503 { MSR1(9), "Interrupt Group 9" },
504 { MSR1(10), "Interrupt Group 10" },
505 { MSR1(11), "Interrupt Group 11" },
506 { MSR1(12), "Interrupt Group 12" },
507 { MSR1(13), "Interrupt Group 13" },
508 { MSR1(14), "Interrupt Group 14" },
509 { MSR1(15), "Interrupt Group 15" },
514 { 0x51400022, MSRTYPE_RDWR
, MSR2(0, 0), "PIC_ZSEL_LOW", "IRQ Mapper Unrestricted Z Select Low", {
515 { 63, 32, RESERVED
},
516 { 31, 4, "MAP_Z7", "Map Unrestricted Z Input 7", PRESENT_BIN
, {
517 { MSR1(0), "Disable" },
518 { MSR1(1), "Interrupt Group 1" },
519 { MSR1(2), "Interrupt Group 2" },
520 { MSR1(3), "Interrupt Group 3" },
521 { MSR1(4), "Interrupt Group 4" },
522 { MSR1(5), "Interrupt Group 5" },
523 { MSR1(6), "Interrupt Group 6" },
524 { MSR1(7), "Interrupt Group 7" },
525 { MSR1(8), "Interrupt Group 8" },
526 { MSR1(9), "Interrupt Group 9" },
527 { MSR1(10), "Interrupt Group 10" },
528 { MSR1(11), "Interrupt Group 11" },
529 { MSR1(12), "Interrupt Group 12" },
530 { MSR1(13), "Interrupt Group 13" },
531 { MSR1(14), "Interrupt Group 14" },
532 { MSR1(15), "Interrupt Group 15" },
535 { 27, 4, "MAP_Z6", "Map Unrestricted Z Input 6", PRESENT_BIN
, {
536 { MSR1(0), "Disable" },
537 { MSR1(1), "Interrupt Group 1" },
538 { MSR1(2), "Interrupt Group 2" },
539 { MSR1(3), "Interrupt Group 3" },
540 { MSR1(4), "Interrupt Group 4" },
541 { MSR1(5), "Interrupt Group 5" },
542 { MSR1(6), "Interrupt Group 6" },
543 { MSR1(7), "Interrupt Group 7" },
544 { MSR1(8), "Interrupt Group 8" },
545 { MSR1(9), "Interrupt Group 9" },
546 { MSR1(10), "Interrupt Group 10" },
547 { MSR1(11), "Interrupt Group 11" },
548 { MSR1(12), "Interrupt Group 12" },
549 { MSR1(13), "Interrupt Group 13" },
550 { MSR1(14), "Interrupt Group 14" },
551 { MSR1(15), "Interrupt Group 15" },
554 { 23, 4, "MAP_Z5", "Map Unrestricted Z Input 5", PRESENT_BIN
, {
555 { MSR1(0), "Disable" },
556 { MSR1(1), "Interrupt Group 1" },
557 { MSR1(2), "Interrupt Group 2" },
558 { MSR1(3), "Interrupt Group 3" },
559 { MSR1(4), "Interrupt Group 4" },
560 { MSR1(5), "Interrupt Group 5" },
561 { MSR1(6), "Interrupt Group 6" },
562 { MSR1(7), "Interrupt Group 7" },
563 { MSR1(8), "Interrupt Group 8" },
564 { MSR1(9), "Interrupt Group 9" },
565 { MSR1(10), "Interrupt Group 10" },
566 { MSR1(11), "Interrupt Group 11" },
567 { MSR1(12), "Interrupt Group 12" },
568 { MSR1(13), "Interrupt Group 13" },
569 { MSR1(14), "Interrupt Group 14" },
570 { MSR1(15), "Interrupt Group 15" },
573 { 19, 4, "MAP_Z4", "Map Unrestricted Z Input 4", PRESENT_BIN
, {
574 { MSR1(0), "Disable" },
575 { MSR1(1), "Interrupt Group 1" },
576 { MSR1(2), "Interrupt Group 2" },
577 { MSR1(3), "Interrupt Group 3" },
578 { MSR1(4), "Interrupt Group 4" },
579 { MSR1(5), "Interrupt Group 5" },
580 { MSR1(6), "Interrupt Group 6" },
581 { MSR1(7), "Interrupt Group 7" },
582 { MSR1(8), "Interrupt Group 8" },
583 { MSR1(9), "Interrupt Group 9" },
584 { MSR1(10), "Interrupt Group 10" },
585 { MSR1(11), "Interrupt Group 11" },
586 { MSR1(12), "Interrupt Group 12" },
587 { MSR1(13), "Interrupt Group 13" },
588 { MSR1(14), "Interrupt Group 14" },
589 { MSR1(15), "Interrupt Group 15" },
592 { 15, 4, "MAP_Z3", "Map Unrestricted Z Input 3", PRESENT_BIN
, {
593 { MSR1(0), "Disable" },
594 { MSR1(1), "Interrupt Group 1" },
595 { MSR1(2), "Interrupt Group 2" },
596 { MSR1(3), "Interrupt Group 3" },
597 { MSR1(4), "Interrupt Group 4" },
598 { MSR1(5), "Interrupt Group 5" },
599 { MSR1(6), "Interrupt Group 6" },
600 { MSR1(7), "Interrupt Group 7" },
601 { MSR1(8), "Interrupt Group 8" },
602 { MSR1(9), "Interrupt Group 9" },
603 { MSR1(10), "Interrupt Group 10" },
604 { MSR1(11), "Interrupt Group 11" },
605 { MSR1(12), "Interrupt Group 12" },
606 { MSR1(13), "Interrupt Group 13" },
607 { MSR1(14), "Interrupt Group 14" },
608 { MSR1(15), "Interrupt Group 15" },
611 { 11, 4, "MAP_Z2", "Map Unrestricted Z Input 2", PRESENT_BIN
, {
612 { MSR1(0), "Disable" },
613 { MSR1(1), "Interrupt Group 1" },
614 { MSR1(2), "Interrupt Group 2" },
615 { MSR1(3), "Interrupt Group 3" },
616 { MSR1(4), "Interrupt Group 4" },
617 { MSR1(5), "Interrupt Group 5" },
618 { MSR1(6), "Interrupt Group 6" },
619 { MSR1(7), "Interrupt Group 7" },
620 { MSR1(8), "Interrupt Group 8" },
621 { MSR1(9), "Interrupt Group 9" },
622 { MSR1(10), "Interrupt Group 10" },
623 { MSR1(11), "Interrupt Group 11" },
624 { MSR1(12), "Interrupt Group 12" },
625 { MSR1(13), "Interrupt Group 13" },
626 { MSR1(14), "Interrupt Group 14" },
627 { MSR1(15), "Interrupt Group 15" },
630 { 7, 4, "MAP_Z1", "Map Unrestricted Z Input 1", PRESENT_BIN
, {
631 { MSR1(0), "Disable" },
632 { MSR1(1), "Interrupt Group 1" },
633 { MSR1(2), "Interrupt Group 2" },
634 { MSR1(3), "Interrupt Group 3" },
635 { MSR1(4), "Interrupt Group 4" },
636 { MSR1(5), "Interrupt Group 5" },
637 { MSR1(6), "Interrupt Group 6" },
638 { MSR1(7), "Interrupt Group 7" },
639 { MSR1(8), "Interrupt Group 8" },
640 { MSR1(9), "Interrupt Group 9" },
641 { MSR1(10), "Interrupt Group 10" },
642 { MSR1(11), "Interrupt Group 11" },
643 { MSR1(12), "Interrupt Group 12" },
644 { MSR1(13), "Interrupt Group 13" },
645 { MSR1(14), "Interrupt Group 14" },
646 { MSR1(15), "Interrupt Group 15" },
649 { 3, 4, "MAP_Z0", "Map Unrestricted Z Input 0", PRESENT_BIN
, {
650 { MSR1(0), "Disable" },
651 { MSR1(1), "Interrupt Group 1" },
652 { MSR1(2), "Interrupt Group 2" },
653 { MSR1(3), "Interrupt Group 3" },
654 { MSR1(4), "Interrupt Group 4" },
655 { MSR1(5), "Interrupt Group 5" },
656 { MSR1(6), "Interrupt Group 6" },
657 { MSR1(7), "Interrupt Group 7" },
658 { MSR1(8), "Interrupt Group 8" },
659 { MSR1(9), "Interrupt Group 9" },
660 { MSR1(10), "Interrupt Group 10" },
661 { MSR1(11), "Interrupt Group 11" },
662 { MSR1(12), "Interrupt Group 12" },
663 { MSR1(13), "Interrupt Group 13" },
664 { MSR1(14), "Interrupt Group 14" },
665 { MSR1(15), "Interrupt Group 15" },
670 { 0x51400023, MSRTYPE_RDWR
, MSR2(0, 0), "PIC_ZSEL_HIGH", "IRQ Mapper Unrestricted Z Select High", {
671 { 63, 32, RESERVED
},
672 { 31, 4, "MAP_Z15", "Map Unrestricted Z Input 15", PRESENT_BIN
, {
673 { MSR1(0), "Disable" },
674 { MSR1(1), "Interrupt Group 1" },
675 { MSR1(2), "Interrupt Group 2" },
676 { MSR1(3), "Interrupt Group 3" },
677 { MSR1(4), "Interrupt Group 4" },
678 { MSR1(5), "Interrupt Group 5" },
679 { MSR1(6), "Interrupt Group 6" },
680 { MSR1(7), "Interrupt Group 7" },
681 { MSR1(8), "Interrupt Group 8" },
682 { MSR1(9), "Interrupt Group 9" },
683 { MSR1(10), "Interrupt Group 10" },
684 { MSR1(11), "Interrupt Group 11" },
685 { MSR1(12), "Interrupt Group 12" },
686 { MSR1(13), "Interrupt Group 13" },
687 { MSR1(14), "Interrupt Group 14" },
688 { MSR1(15), "Interrupt Group 15" },
691 { 27, 4, "MAP_Z14", "Map Unrestricted Z Input 14", PRESENT_BIN
, {
692 { MSR1(0), "Disable" },
693 { MSR1(1), "Interrupt Group 1" },
694 { MSR1(2), "Interrupt Group 2" },
695 { MSR1(3), "Interrupt Group 3" },
696 { MSR1(4), "Interrupt Group 4" },
697 { MSR1(5), "Interrupt Group 5" },
698 { MSR1(6), "Interrupt Group 6" },
699 { MSR1(7), "Interrupt Group 7" },
700 { MSR1(8), "Interrupt Group 8" },
701 { MSR1(9), "Interrupt Group 9" },
702 { MSR1(10), "Interrupt Group 10" },
703 { MSR1(11), "Interrupt Group 11" },
704 { MSR1(12), "Interrupt Group 12" },
705 { MSR1(13), "Interrupt Group 13" },
706 { MSR1(14), "Interrupt Group 14" },
707 { MSR1(15), "Interrupt Group 15" },
710 { 23, 4, "MAP_Z13", "Map Unrestricted Z Input 13", PRESENT_BIN
, {
711 { MSR1(0), "Disable" },
712 { MSR1(1), "Interrupt Group 1" },
713 { MSR1(2), "Interrupt Group 2" },
714 { MSR1(3), "Interrupt Group 3" },
715 { MSR1(4), "Interrupt Group 4" },
716 { MSR1(5), "Interrupt Group 5" },
717 { MSR1(6), "Interrupt Group 6" },
718 { MSR1(7), "Interrupt Group 7" },
719 { MSR1(8), "Interrupt Group 8" },
720 { MSR1(9), "Interrupt Group 9" },
721 { MSR1(10), "Interrupt Group 10" },
722 { MSR1(11), "Interrupt Group 11" },
723 { MSR1(12), "Interrupt Group 12" },
724 { MSR1(13), "Interrupt Group 13" },
725 { MSR1(14), "Interrupt Group 14" },
726 { MSR1(15), "Interrupt Group 15" },
729 { 19, 4, "MAP_Z12", "Map Unrestricted Z Input 12", PRESENT_BIN
, {
730 { MSR1(0), "Disable" },
731 { MSR1(1), "Interrupt Group 1" },
732 { MSR1(2), "Interrupt Group 2" },
733 { MSR1(3), "Interrupt Group 3" },
734 { MSR1(4), "Interrupt Group 4" },
735 { MSR1(5), "Interrupt Group 5" },
736 { MSR1(6), "Interrupt Group 6" },
737 { MSR1(7), "Interrupt Group 7" },
738 { MSR1(8), "Interrupt Group 8" },
739 { MSR1(9), "Interrupt Group 9" },
740 { MSR1(10), "Interrupt Group 10" },
741 { MSR1(11), "Interrupt Group 11" },
742 { MSR1(12), "Interrupt Group 12" },
743 { MSR1(13), "Interrupt Group 13" },
744 { MSR1(14), "Interrupt Group 14" },
745 { MSR1(15), "Interrupt Group 15" },
748 { 15, 4, "MAP_Z11", "Map Unrestricted Z Input 11", PRESENT_BIN
, {
749 { MSR1(0), "Disable" },
750 { MSR1(1), "Interrupt Group 1" },
751 { MSR1(2), "Interrupt Group 2" },
752 { MSR1(3), "Interrupt Group 3" },
753 { MSR1(4), "Interrupt Group 4" },
754 { MSR1(5), "Interrupt Group 5" },
755 { MSR1(6), "Interrupt Group 6" },
756 { MSR1(7), "Interrupt Group 7" },
757 { MSR1(8), "Interrupt Group 8" },
758 { MSR1(9), "Interrupt Group 9" },
759 { MSR1(10), "Interrupt Group 10" },
760 { MSR1(11), "Interrupt Group 11" },
761 { MSR1(12), "Interrupt Group 12" },
762 { MSR1(13), "Interrupt Group 13" },
763 { MSR1(14), "Interrupt Group 14" },
764 { MSR1(15), "Interrupt Group 15" },
767 { 11, 4, "MAP_Z10", "Map Unrestricted Z Input 10", PRESENT_BIN
, {
768 { MSR1(0), "Disable" },
769 { MSR1(1), "Interrupt Group 1" },
770 { MSR1(2), "Interrupt Group 2" },
771 { MSR1(3), "Interrupt Group 3" },
772 { MSR1(4), "Interrupt Group 4" },
773 { MSR1(5), "Interrupt Group 5" },
774 { MSR1(6), "Interrupt Group 6" },
775 { MSR1(7), "Interrupt Group 7" },
776 { MSR1(8), "Interrupt Group 8" },
777 { MSR1(9), "Interrupt Group 9" },
778 { MSR1(10), "Interrupt Group 10" },
779 { MSR1(11), "Interrupt Group 11" },
780 { MSR1(12), "Interrupt Group 12" },
781 { MSR1(13), "Interrupt Group 13" },
782 { MSR1(14), "Interrupt Group 14" },
783 { MSR1(15), "Interrupt Group 15" },
786 { 7, 4, "MAP_Z9", "Map Unrestricted Z Input 9", PRESENT_BIN
, {
787 { MSR1(0), "Disable" },
788 { MSR1(1), "Interrupt Group 1" },
789 { MSR1(2), "Interrupt Group 2" },
790 { MSR1(3), "Interrupt Group 3" },
791 { MSR1(4), "Interrupt Group 4" },
792 { MSR1(5), "Interrupt Group 5" },
793 { MSR1(6), "Interrupt Group 6" },
794 { MSR1(7), "Interrupt Group 7" },
795 { MSR1(8), "Interrupt Group 8" },
796 { MSR1(9), "Interrupt Group 9" },
797 { MSR1(10), "Interrupt Group 10" },
798 { MSR1(11), "Interrupt Group 11" },
799 { MSR1(12), "Interrupt Group 12" },
800 { MSR1(13), "Interrupt Group 13" },
801 { MSR1(14), "Interrupt Group 14" },
802 { MSR1(15), "Interrupt Group 15" },
805 { 3, 4, "MAP_Z8", "Map Unrestricted Z Input 8", PRESENT_BIN
, {
806 { MSR1(0), "Disable" },
807 { MSR1(1), "Interrupt Group 1" },
808 { MSR1(2), "Interrupt Group 2" },
809 { MSR1(3), "Interrupt Group 3" },
810 { MSR1(4), "Interrupt Group 4" },
811 { MSR1(5), "Interrupt Group 5" },
812 { MSR1(6), "Interrupt Group 6" },
813 { MSR1(7), "Interrupt Group 7" },
814 { MSR1(8), "Interrupt Group 8" },
815 { MSR1(9), "Interrupt Group 9" },
816 { MSR1(10), "Interrupt Group 10" },
817 { MSR1(11), "Interrupt Group 11" },
818 { MSR1(12), "Interrupt Group 12" },
819 { MSR1(13), "Interrupt Group 13" },
820 { MSR1(14), "Interrupt Group 14" },
821 { MSR1(15), "Interrupt Group 15" },
826 { 0x51400024, MSRTYPE_RDWR
, MSR2(0, 0xffff), "PIC_IRQM_PRIM", "IRQ Mapper Primary Mask", {
827 { 63, 48, RESERVED
},
828 { 15, 1, "PRIM15_MSK", "Primary Input 15 Mask", PRESENT_DEC
, {
829 { MSR1(0), "Mask the interrupt source" },
830 { MSR1(1), "Do not mask the interrupt source" },
833 { 14, 1, "PRIM14_MSK", "Primary Input 14 Mask", PRESENT_DEC
, {
834 { MSR1(0), "Mask the interrupt source" },
835 { MSR1(1), "Do not mask the interrupt source" },
838 { 13, 1, "PRIM13_MSK", "Primary Input 13 Mask", PRESENT_DEC
, {
839 { MSR1(0), "Mask the interrupt source" },
840 { MSR1(1), "Do not mask the interrupt source" },
843 { 12, 1, "PRIM12_MSK", "Primary Input 12 Mask", PRESENT_DEC
, {
844 { MSR1(0), "Mask the interrupt source" },
845 { MSR1(1), "Do not mask the interrupt source" },
848 { 11, 1, "PRIM11_MSK", "Primary Input 11 Mask", PRESENT_DEC
, {
849 { MSR1(0), "Mask the interrupt source" },
850 { MSR1(1), "Do not mask the interrupt source" },
853 { 10, 1, "PRIM10_MSK", "Primary Input 10 Mask", PRESENT_DEC
, {
854 { MSR1(0), "Mask the interrupt source" },
855 { MSR1(1), "Do not mask the interrupt source" },
858 { 9, 1, "PRIM9_MSK", "Primary Input 9 Mask", PRESENT_DEC
, {
859 { MSR1(0), "Mask the interrupt source" },
860 { MSR1(1), "Do not mask the interrupt source" },
863 { 8, 1, "PRIM8_MSK", "Primary Input 8 Mask", PRESENT_DEC
, {
864 { MSR1(0), "Mask the interrupt source" },
865 { MSR1(1), "Do not mask the interrupt source" },
868 { 7, 1, "PRIM7_MSK", "Primary Input 7 Mask", PRESENT_DEC
, {
869 { MSR1(0), "Mask the interrupt source" },
870 { MSR1(1), "Do not mask the interrupt source" },
873 { 6, 1, "PRIM6_MSK", "Primary Input 6 Mask", PRESENT_DEC
, {
874 { MSR1(0), "Mask the interrupt source" },
875 { MSR1(1), "Do not mask the interrupt source" },
878 { 5, 1, "PRIM5_MSK", "Primary Input 5 Mask", PRESENT_DEC
, {
879 { MSR1(0), "Mask the interrupt source" },
880 { MSR1(1), "Do not mask the interrupt source" },
883 { 4, 1, "PRIM4_MSK", "Primary Input 4 Mask", PRESENT_DEC
, {
884 { MSR1(0), "Mask the interrupt source" },
885 { MSR1(1), "Do not mask the interrupt source" },
888 { 3, 1, "PRIM3_MSK", "Primary Input 3 Mask", PRESENT_DEC
, {
889 { MSR1(0), "Mask the interrupt source" },
890 { MSR1(1), "Do not mask the interrupt source" },
894 { 1, 1, "PRIM1_MSK", "Primary Input 1 Mask", PRESENT_DEC
, {
895 { MSR1(0), "Mask the interrupt source" },
896 { MSR1(1), "Do not mask the interrupt source" },
899 { 0, 1, "PRIM0_MSK", "Primary Input 0 Mask", PRESENT_DEC
, {
900 { MSR1(0), "Mask the interrupt source" },
901 { MSR1(1), "Do not mask the interrupt source" },
906 { 0x51400025, MSRTYPE_RDWR
, MSR2(0, 0), "PIC_IRQM_LPC", "IRQ Mapper LPC Mask", {
907 { 63, 48, RESERVED
},
908 { 15, 1, "LPC15_EN", "LPC Input 15 Enable", PRESENT_DEC
, {
909 { MSR1(0), "Disable interrupt source" },
910 { MSR1(1), "Enable interrupt source" },
913 { 14, 1, "LPC14_EN", "LPC Input 14 Enable", PRESENT_DEC
, {
914 { MSR1(0), "Disable interrupt source" },
915 { MSR1(1), "Enable interrupt source" },
918 { 13, 1, "LPC13_EN", "LPC Input 13 Enable", PRESENT_DEC
, {
919 { MSR1(0), "Disable interrupt source" },
920 { MSR1(1), "Enable interrupt source" },
923 { 12, 1, "LPC12_EN", "LPC Input 12 Enable", PRESENT_DEC
, {
924 { MSR1(0), "Disable interrupt source" },
925 { MSR1(1), "Enable interrupt source" },
928 { 11, 1, "LPC11_EN", "LPC Input 11 Enable", PRESENT_DEC
, {
929 { MSR1(0), "Disable interrupt source" },
930 { MSR1(1), "Enable interrupt source" },
933 { 10, 1, "LPC10_EN", "LPC Input 10 Enable", PRESENT_DEC
, {
934 { MSR1(0), "Disable interrupt source" },
935 { MSR1(1), "Enable interrupt source" },
938 { 9, 1, "LPC9_EN", "LPC Input 9 Enable", PRESENT_DEC
, {
939 { MSR1(0), "Disable interrupt source" },
940 { MSR1(1), "Enable interrupt source" },
943 { 8, 1, "LPC8_EN", "LPC Input 8 Enable", PRESENT_DEC
, {
944 { MSR1(0), "Disable interrupt source" },
945 { MSR1(1), "Enable interrupt source" },
948 { 7, 1, "LPC7_EN", "LPC Input 7 Enable", PRESENT_DEC
, {
949 { MSR1(0), "Disable interrupt source" },
950 { MSR1(1), "Enable interrupt source" },
953 { 6, 1, "LPC6_EN", "LPC Input 6 Enable", PRESENT_DEC
, {
954 { MSR1(0), "Disable interrupt source" },
955 { MSR1(1), "Enable interrupt source" },
958 { 5, 1, "LPC5_EN", "LPC Input 5 Enable", PRESENT_DEC
, {
959 { MSR1(0), "Disable interrupt source" },
960 { MSR1(1), "Enable interrupt source" },
963 { 4, 1, "LPC4_EN", "LPC Input 4 Enable", PRESENT_DEC
, {
964 { MSR1(0), "Disable interrupt source" },
965 { MSR1(1), "Enable interrupt source" },
968 { 3, 1, "LPC3_EN", "LPC Input 3 Enable", PRESENT_DEC
, {
969 { MSR1(0), "Disable interrupt source" },
970 { MSR1(1), "Enable interrupt source" },
974 { 1, 1, "LPC1_EN", "LPC Input 1 Enable", PRESENT_DEC
, {
975 { MSR1(0), "Disable interrupt source" },
976 { MSR1(1), "Enable interrupt source" },
979 { 0, 1, "LPC0_EN", "LPC Input 0 Enable", PRESENT_DEC
, {
980 { MSR1(0), "Disable interrupt source" },
981 { MSR1(1), "Enable interrupt source" },
986 { 0x51400026, MSRTYPE_RDONLY
, MSR2(0, 0), "PIC_XIRR_STS_LOW", "IRQ Mapper Extended Interrupt Request Status Low", {
987 { 63, 32, RESERVED
},
988 { 31, 1, "IG7_STS_Z", "Unrestricted Source Z Input 7", PRESENT_BIN
, {
989 { MSR1(0), "No interrupt" },
990 { MSR1(1), "INTERRUPT" },
993 { 30, 1, "IG7_STS_Y", "Unrestricted Source Y Input 7", PRESENT_BIN
, {
994 { MSR1(0), "No interrupt" },
995 { MSR1(1), "INTERRUPT" },
998 { 29, 1, "IG7_STS_LPC", "LPC Input 7", PRESENT_BIN
, {
999 { MSR1(0), "No interrupt" },
1000 { MSR1(1), "INTERRUPT" },
1003 { 28, 1, "IG7_STS_PRIM", "Primary Input 7", PRESENT_BIN
, {
1004 { MSR1(0), "No interrupt" },
1005 { MSR1(1), "INTERRUPT" },
1008 { 27, 1, "IG6_STS_Z", "Unrestricted Source Z Input 6", PRESENT_BIN
, {
1009 { MSR1(0), "No interrupt" },
1010 { MSR1(1), "INTERRUPT" },
1013 { 26, 1, "IG6_STS_Y", "Unrestricted Source Y Input 6", PRESENT_BIN
, {
1014 { MSR1(0), "No interrupt" },
1015 { MSR1(1), "INTERRUPT" },
1018 { 25, 1, "IG6_STS_LPC", "LPC Input 6", PRESENT_BIN
, {
1019 { MSR1(0), "No interrupt" },
1020 { MSR1(1), "INTERRUPT" },
1023 { 24, 1, "IG6_STS_PRIM", "Primary Input 6", PRESENT_BIN
, {
1024 { MSR1(0), "No interrupt" },
1025 { MSR1(1), "INTERRUPT" },
1028 { 23, 1, "IG5_STS_Z", "Unrestricted Source Z Input 5", PRESENT_BIN
, {
1029 { MSR1(0), "No interrupt" },
1030 { MSR1(1), "INTERRUPT" },
1033 { 22, 1, "IG5_STS_Y", "Unrestricted Source Y Input 5", PRESENT_BIN
, {
1034 { MSR1(0), "No interrupt" },
1035 { MSR1(1), "INTERRUPT" },
1038 { 21, 1, "IG5_STS_LPC", "LPC Input 5", PRESENT_BIN
, {
1039 { MSR1(0), "No interrupt" },
1040 { MSR1(1), "INTERRUPT" },
1043 { 20, 1, "IG5_STS_PRIM", "Primary Input 5", PRESENT_BIN
, {
1044 { MSR1(0), "No interrupt" },
1045 { MSR1(1), "INTERRUPT" },
1048 { 19, 1, "IG4_STS_Z", "Unrestricted Source Z Input 4", PRESENT_BIN
, {
1049 { MSR1(0), "No interrupt" },
1050 { MSR1(1), "INTERRUPT" },
1053 { 18, 1, "IG4_STS_Y", "Unrestricted Source Y Input 4", PRESENT_BIN
, {
1054 { MSR1(0), "No interrupt" },
1055 { MSR1(1), "INTERRUPT" },
1058 { 17, 1, "IG4_STS_LPC", "LPC Input 4", PRESENT_BIN
, {
1059 { MSR1(0), "No interrupt" },
1060 { MSR1(1), "INTERRUPT" },
1063 { 16, 1, "IG4_STS_PRIM", "Primary Input 4", PRESENT_BIN
, {
1064 { MSR1(0), "No interrupt" },
1065 { MSR1(1), "INTERRUPT" },
1068 { 15, 1, "IG3_STS_Z", "Unrestricted Source Z Input 3", PRESENT_BIN
, {
1069 { MSR1(0), "No interrupt" },
1070 { MSR1(1), "INTERRUPT" },
1073 { 14, 1, "IG3_STS_Y", "Unrestricted Source Y Input 3", PRESENT_BIN
, {
1074 { MSR1(0), "No interrupt" },
1075 { MSR1(1), "INTERRUPT" },
1078 { 13, 1, "IG3_STS_LPC", "LPC Input 3", PRESENT_BIN
, {
1079 { MSR1(0), "No interrupt" },
1080 { MSR1(1), "INTERRUPT" },
1083 { 12, 1, "IG3_STS_PRIM", "Primary Input 3", PRESENT_BIN
, {
1084 { MSR1(0), "No interrupt" },
1085 { MSR1(1), "INTERRUPT" },
1088 { 11, 1, "IG2_STS_Z", "Unrestricted Source Z Input 2", PRESENT_BIN
, {
1089 { MSR1(0), "No interrupt" },
1090 { MSR1(1), "INTERRUPT" },
1093 { 10, 1, "IG2_STS_Y", "Unrestricted Source Y Input 2", PRESENT_BIN
, {
1094 { MSR1(0), "No interrupt" },
1095 { MSR1(1), "INTERRUPT" },
1099 { 7, 1, "IG1_STS_Z", "Unrestricted Source Z Input 1", PRESENT_BIN
, {
1100 { MSR1(0), "No interrupt" },
1101 { MSR1(1), "INTERRUPT" },
1104 { 6, 1, "IG1_STS_Y", "Unrestricted Source Y Input 1", PRESENT_BIN
, {
1105 { MSR1(0), "No interrupt" },
1106 { MSR1(1), "INTERRUPT" },
1109 { 5, 1, "IG1_STS_LPC", "LPC Input 1", PRESENT_BIN
, {
1110 { MSR1(0), "No interrupt" },
1111 { MSR1(1), "INTERRUPT" },
1114 { 4, 1, "IG1_STS_PRIM", "Primary Input 1", PRESENT_BIN
, {
1115 { MSR1(0), "No interrupt" },
1116 { MSR1(1), "INTERRUPT" },
1120 { 1, 1, "IG0_STS_LPC", "LPC Input 0", PRESENT_BIN
, {
1121 { MSR1(0), "No interrupt" },
1122 { MSR1(1), "INTERRUPT" },
1125 { 0, 1, "IG0_STS_PRIM", "Primary Input 0", PRESENT_BIN
, {
1126 { MSR1(0), "No interrupt" },
1127 { MSR1(1), "INTERRUPT" },
1132 { 0x51400027, MSRTYPE_RDONLY
, MSR2(0, 0), "PIC_XIRR_STS_HIGH", "IRQ Mapper Extended Interrupt Request Status High", {
1133 { 63, 32, RESERVED
},
1134 { 31, 1, "IG15_STS_Z", "Unrestricted Source Z Input 15", PRESENT_BIN
, {
1135 { MSR1(0), "No interrupt" },
1136 { MSR1(1), "INTERRUPT" },
1139 { 30, 1, "IG15_STS_Y", "Unrestricted Source Y Input 15", PRESENT_BIN
, {
1140 { MSR1(0), "No interrupt" },
1141 { MSR1(1), "INTERRUPT" },
1144 { 29, 1, "IG15_STS_LPC", "LPC Input 15", PRESENT_BIN
, {
1145 { MSR1(0), "No interrupt" },
1146 { MSR1(1), "INTERRUPT" },
1149 { 28, 1, "IG15_STS_PRIM", "Primary Input 15", PRESENT_BIN
, {
1150 { MSR1(0), "No interrupt" },
1151 { MSR1(1), "INTERRUPT" },
1154 { 27, 1, "IG14_STS_Z", "Unrestricted Source Z Input 14", PRESENT_BIN
, {
1155 { MSR1(0), "No interrupt" },
1156 { MSR1(1), "INTERRUPT" },
1159 { 26, 1, "IG14_STS_Y", "Unrestricted Source Y Input 14", PRESENT_BIN
, {
1160 { MSR1(0), "No interrupt" },
1161 { MSR1(1), "INTERRUPT" },
1164 { 25, 1, "IG14_STS_LPC", "LPC Input 14", PRESENT_BIN
, {
1165 { MSR1(0), "No interrupt" },
1166 { MSR1(1), "INTERRUPT" },
1169 { 24, 1, "IG14_STS_PRIM", "Primary Input 14", PRESENT_BIN
, {
1170 { MSR1(0), "No interrupt" },
1171 { MSR1(1), "INTERRUPT" },
1174 { 23, 1, "IG13_STS_Z", "Unrestricted Source Z Input 13", PRESENT_BIN
, {
1175 { MSR1(0), "No interrupt" },
1176 { MSR1(1), "INTERRUPT" },
1179 { 22, 1, "IG13_STS_Y", "Unrestricted Source Y Input 13", PRESENT_BIN
, {
1180 { MSR1(0), "No interrupt" },
1181 { MSR1(1), "INTERRUPT" },
1184 { 21, 1, "IG13_STS_LPC", "LPC Input 13", PRESENT_BIN
, {
1185 { MSR1(0), "No interrupt" },
1186 { MSR1(1), "INTERRUPT" },
1189 { 20, 1, "IG13_STS_PRIM", "Primary Input 13", PRESENT_BIN
, {
1190 { MSR1(0), "No interrupt" },
1191 { MSR1(1), "INTERRUPT" },
1194 { 19, 1, "IG12_STS_Z", "Unrestricted Source Z Input 12", PRESENT_BIN
, {
1195 { MSR1(0), "No interrupt" },
1196 { MSR1(1), "INTERRUPT" },
1199 { 18, 1, "IG12_STS_Y", "Unrestricted Source Y Input 12", PRESENT_BIN
, {
1200 { MSR1(0), "No interrupt" },
1201 { MSR1(1), "INTERRUPT" },
1204 { 17, 1, "IG12_STS_LPC", "LPC Input 12", PRESENT_BIN
, {
1205 { MSR1(0), "No interrupt" },
1206 { MSR1(1), "INTERRUPT" },
1209 { 16, 1, "IG12_STS_PRIM", "Primary Input 12", PRESENT_BIN
, {
1210 { MSR1(0), "No interrupt" },
1211 { MSR1(1), "INTERRUPT" },
1214 { 15, 1, "IG11_STS_Z", "Unrestricted Source Z Input 11", PRESENT_BIN
, {
1215 { MSR1(0), "No interrupt" },
1216 { MSR1(1), "INTERRUPT" },
1219 { 14, 1, "IG11_STS_Y", "Unrestricted Source Y Input 11", PRESENT_BIN
, {
1220 { MSR1(0), "No interrupt" },
1221 { MSR1(1), "INTERRUPT" },
1224 { 13, 1, "IG11_STS_LPC", "LPC Input 11", PRESENT_BIN
, {
1225 { MSR1(0), "No interrupt" },
1226 { MSR1(1), "INTERRUPT" },
1229 { 12, 1, "IG11_STS_PRIM", "Primary Input 11", PRESENT_BIN
, {
1230 { MSR1(0), "No interrupt" },
1231 { MSR1(1), "INTERRUPT" },
1234 { 11, 1, "IG10_STS_Z", "Unrestricted Source Z Input 10", PRESENT_BIN
, {
1235 { MSR1(0), "No interrupt" },
1236 { MSR1(1), "INTERRUPT" },
1239 { 10, 1, "IG10_STS_Y", "Unrestricted Source Y Input 10", PRESENT_BIN
, {
1240 { MSR1(0), "No interrupt" },
1241 { MSR1(1), "INTERRUPT" },
1244 { 9, 1, "IG10_STS_LPC", "LPC Input 10", PRESENT_BIN
, {
1245 { MSR1(0), "No interrupt" },
1246 { MSR1(1), "INTERRUPT" },
1249 { 8, 1, "IG10_STS_PRIM", "Primary Input 10", PRESENT_BIN
, {
1250 { MSR1(0), "No interrupt" },
1251 { MSR1(1), "INTERRUPT" },
1254 { 7, 1, "IG9_STS_Z", "Unrestricted Source Z Input 9", PRESENT_BIN
, {
1255 { MSR1(0), "No interrupt" },
1256 { MSR1(1), "INTERRUPT" },
1259 { 6, 1, "IG9_STS_Y", "Unrestricted Source Y Input 9", PRESENT_BIN
, {
1260 { MSR1(0), "No interrupt" },
1261 { MSR1(1), "INTERRUPT" },
1264 { 5, 1, "IG9_STS_LPC", "LPC Input 9", PRESENT_BIN
, {
1265 { MSR1(0), "No interrupt" },
1266 { MSR1(1), "INTERRUPT" },
1269 { 4, 1, "IG9_STS_PRIM", "Primary Input 9", PRESENT_BIN
, {
1270 { MSR1(0), "No interrupt" },
1271 { MSR1(1), "INTERRUPT" },
1274 { 3, 1, "IG8_STS_Z", "Unrestricted Source Z Input 8", PRESENT_BIN
, {
1275 { MSR1(0), "No interrupt" },
1276 { MSR1(1), "INTERRUPT" },
1279 { 2, 1, "IG8_STS_Y", "Unrestricted Source Y Input 8", PRESENT_BIN
, {
1280 { MSR1(0), "No interrupt" },
1281 { MSR1(1), "INTERRUPT" },
1284 { 1, 1, "IG8_STS_LPC", "LPC Input 8", PRESENT_BIN
, {
1285 { MSR1(0), "No interrupt" },
1286 { MSR1(1), "INTERRUPT" },
1289 { 0, 1, "IG8_STS_PRIM", "Primary Input 8", PRESENT_BIN
, {
1290 { MSR1(0), "No interrupt" },
1291 { MSR1(1), "INTERRUPT" },
1296 { 0x5140004e, MSRTYPE_RDWR
, MSR2(0, 0), "LPC_SERIRQ", "LPC Serial IRQ Control", {
1297 { 31, 16, "INVERT", "IRQ[x] input is active low", PRESENT_HEX
},
1298 { 15, 8, RESERVED
},
1299 { 7, 1, "SIRQ_EN", "Serial IRQ Enable", PRESENT_BIN
, {
1300 { MSR1(0), "Disable" },
1301 { MSR1(1), "Enable" },
1304 { 6, 1, "SIRQ_MODE", "Serial IRQ Interface Mode", PRESENT_BIN
, {
1305 { MSR1(0), "Continuous (Idle)" },
1306 { MSR1(1), "Quiet (Active)" },
1309 { 5, 4, "IRQ_FRAME", "IRQ Data Frames", PRESENT_BIN
, {
1328 { 1, 2, "START_FPW", "Start Frame Pulse Width", PRESENT_BIN
, {
1329 { MSR1(0), "4 clocks" },
1330 { MSR1(1), "6 clocks" },
1331 { MSR1(2), "8 clocks" },
1332 { MSR1(3), "Reserved" },