VirtualBox

source: vbox/trunk/src/VBox/Devices/PC/BIOS/pirq.inc@ 49068

Last change on this file since 49068 was 49068, checked in by vboxsync, 11 years ago

BIOS: Typo fix for PCI BIOS IRQ routing table query.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 14.8 KB
Line 
1;;
2;; Copyright (C) 2006-2011 Oracle Corporation
3;;
4;; This file is part of VirtualBox Open Source Edition (OSE), as
5;; available from http://www.virtualbox.org. This file is free software;
6;; you can redistribute it and/or modify it under the terms of the GNU
7;; General Public License (GPL) as published by the Free Software
8;; Foundation, in version 2 as it comes in the "COPYING" file of the
9;; VirtualBox OSE distribution. VirtualBox OSE is distributed in the
10;; hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
11;; --------------------------------------------------------------------
12;;
13;; This code is based on:
14;;
15;; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
16;;
17;; Copyright (C) 2002 MandrakeSoft S.A.
18;;
19;; MandrakeSoft S.A.
20;; 43, rue d'Aboukir
21;; 75002 Paris - France
22;; http://www.linux-mandrake.com/
23;; http://www.mandrakesoft.com/
24;;
25;; This library is free software; you can redistribute it and/or
26;; modify it under the terms of the GNU Lesser General Public
27;; License as published by the Free Software Foundation; either
28;; version 2 of the License, or (at your option) any later version.
29;;
30;; This library is distributed in the hope that it will be useful,
31;; but WITHOUT ANY WARRANTY; without even the implied warranty of
32;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
33;; Lesser General Public License for more details.
34;;
35;; You should have received a copy of the GNU Lesser General Public
36;; License along with this library; if not, write to the Free Software
37;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
38;;
39;;
40
41
42; Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
43; other than GPL or LGPL is available it will apply instead, Oracle elects to use only
44; the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
45; a choice of LGPL license versions is made available with the language indicating
46; that LGPLv2 or any later version may be used, or where a choice of which version
47; of the LGPL is applied is otherwise unspecified.
48
49if BX_PCIBIOS
50public _pci_routing_table
51public _pci_routing_table_size
52
53align 16
54pci_routing_table_structure:
55 db '$PIR' ;; "$PIR" signature
56 db 0, 1 ;; version
57ifdef VBOX
58 dw 32 + (30 * 16) ;; table size
59else ; !VBOX
60 dw 32 + (6 * 16) ;; table size
61endif ; !VBOX
62 db 0 ;; PCI interrupt router bus
63 db 8 ;; PCI interrupt router DevFunc
64 dw 0000h ;; PCI exclusive IRQs
65 dw 8086h ;; compatible PCI interrupt router vendor ID
66 dw 7000h ;; compatible PCI interrupt router device ID
67 dw 0,0 ;; Miniport data
68 db 0,0,0,0,0,0,0,0,0,0,0 ;; reserved
69ifdef VBOX
70 db 0 ;; checksum (set by biossums)
71else ; !VBOX
72 db 7 ;; checksum
73endif ; !VBOX
74_pci_routing_table:
75pci_routing_table:
76 ;; first slot entry PCI-to-ISA (embedded)
77 db 0 ;; pci bus number
78 db 008h ;; pci device number (bit 7-3)
79 db 60h ;; link value INTA#: pointer into PCI2ISA config space
80 dw 0DEF8h ;; IRQ bitmap INTA#
81 db 61h ;; link value INTB#
82 dw 0DEF8h ;; IRQ bitmap INTB#
83 db 62h ;; link value INTC#
84 dw 0DEF8h ;; IRQ bitmap INTC#
85 db 63h ;; link value INTD#
86 dw 0DEF8h ;; IRQ bitmap INTD#
87 db 0 ;; physical slot (0 = embedded)
88 db 0 ;; reserved
89 ;; second slot entry: 1st PCI slot
90 db 0 ;; pci bus number
91 db 010h ;; pci device number (bit 7-3)
92 db 61h ;; link value INTA#
93 dw 0DEF8h ;; IRQ bitmap INTA#
94 db 62h ;; link value INTB#
95 dw 0DEF8h ;; IRQ bitmap INTB#
96 db 63h ;; link value INTC#
97 dw 0DEF8h ;; IRQ bitmap INTC#
98 db 60h ;; link value INTD#
99 dw 0DEF8h ;; IRQ bitmap INTD#
100 db 1 ;; physical slot (0 = embedded)
101 db 0 ;; reserved
102 ;; third slot entry: 2nd PCI slot
103 db 0 ;; pci bus number
104 db 018h ;; pci device number (bit 7-3)
105 db 62h ;; link value INTA#
106 dw 0DEF8h ;; IRQ bitmap INTA#
107 db 63h ;; link value INTB#
108 dw 0DEF8h ;; IRQ bitmap INTB#
109 db 60h ;; link value INTC#
110 dw 0DEF8h ;; IRQ bitmap INTC#
111 db 61h ;; link value INTD#
112 dw 0DEF8h ;; IRQ bitmap INTD#
113 db 2 ;; physical slot (0 = embedded)
114 db 0 ;; reserved
115 ;; 4th slot entry: 3rd PCI slot
116 db 0 ;; pci bus number
117 db 020h ;; pci device number (bit 7-3)
118 db 63h ;; link value INTA#
119 dw 0DEF8h ;; IRQ bitmap INTA#
120 db 60h ;; link value INTB#
121 dw 0DEF8h ;; IRQ bitmap INTB#
122 db 61h ;; link value INTC#
123 dw 0DEF8h ;; IRQ bitmap INTC#
124 db 62h ;; link value INTD#
125 dw 0DEF8h ;; IRQ bitmap INTD#
126 db 3 ;; physical slot (0 = embedded)
127 db 0 ;; reserved
128 ;; 5th slot entry: 4rd PCI slot
129 db 0 ;; pci bus number
130 db 028h ;; pci device number (bit 7-3)
131 db 60h ;; link value INTA#
132 dw 0DEF8h ;; IRQ bitmap INTA#
133 db 61h ;; link value INTB#
134 dw 0DEF8h ;; IRQ bitmap INTB#
135 db 62h ;; link value INTC#
136 dw 0DEF8h ;; IRQ bitmap INTC#
137 db 63h ;; link value INTD#
138 dw 0DEF8h ;; IRQ bitmap INTD#
139 db 4 ;; physical slot (0 = embedded)
140 db 0 ;; reserved
141 ;; 6th slot entry: 5rd PCI slot
142 db 0 ;; pci bus number
143 db 030h ;; pci device number (bit 7-3)
144 db 61h ;; link value INTA#
145 dw 0DEF8h ;; IRQ bitmap INTA#
146 db 62h ;; link value INTB#
147 dw 0DEF8h ;; IRQ bitmap INTB#
148 db 63h ;; link value INTC#
149 dw 0DEF8h ;; IRQ bitmap INTC#
150 db 60h ;; link value INTD#
151 dw 0DEF8h ;; IRQ bitmap INTD#
152 db 5 ;; physical slot (0 = embedded)
153 db 0 ;; reserved
154ifdef VBOX
155 ;; 7th slot entry: 6th PCI slot
156 db 0 ;; pci bus number
157 db 038h ;; pci device number (bit 7-3)
158 db 62h ;; link value INTA#
159 dw 0DEF8h ;; IRQ bitmap INTA#
160 db 63h ;; link value INTB#
161 dw 0DEF8h ;; IRQ bitmap INTB#
162 db 60h ;; link value INTC#
163 dw 0DEF8h ;; IRQ bitmap INTC#
164 db 61h ;; link value INTD#
165 dw 0DEF8h ;; IRQ bitmap INTD#
166 db 6 ;; physical slot (0 = embedded)
167 db 0 ;; reserved
168 ;; 8th slot entry: 7th PCI slot
169 db 0 ;; pci bus number
170 db 040h ;; pci device number (bit 7-3)
171 db 63h ;; link value INTA#
172 dw 0DEF8h ;; IRQ bitmap INTA#
173 db 60h ;; link value INTB#
174 dw 0DEF8h ;; IRQ bitmap INTB#
175 db 61h ;; link value INTC#
176 dw 0DEF8h ;; IRQ bitmap INTC#
177 db 62h ;; link value INTD#
178 dw 0DEF8h ;; IRQ bitmap INTD#
179 db 7 ;; physical slot (0 = embedded)
180 db 0 ;; reserved
181 ;; 9th slot entry: 8th PCI slot
182 db 0 ;; pci bus number
183 db 048h ;; pci device number (bit 7-3)
184 db 60h ;; link value INTA#
185 dw 0DEF8h ;; IRQ bitmap INTA#
186 db 61h ;; link value INTB#
187 dw 0DEF8h ;; IRQ bitmap INTB#
188 db 62h ;; link value INTC#
189 dw 0DEF8h ;; IRQ bitmap INTC#
190 db 63h ;; link value INTD#
191 dw 0DEF8h ;; IRQ bitmap INTD#
192 db 8 ;; physical slot (0 = embedded)
193 db 0 ;; reserved
194 ;; 10th slot entry: 9th PCI slot
195 db 0 ;; pci bus number
196 db 050h ;; pci device number (bit 7-3)
197 db 61h ;; link value INTA#
198 dw 0DEF8h ;; IRQ bitmap INTA#
199 db 62h ;; link value INTB#
200 dw 0DEF8h ;; IRQ bitmap INTB#
201 db 63h ;; link value INTC#
202 dw 0DEF8h ;; IRQ bitmap INTC#
203 db 60h ;; link value INTD#
204 dw 0DEF8h ;; IRQ bitmap INTD#
205 db 9 ;; physical slot (0 = embedded)
206 db 0 ;; reserved
207 ;; 11th slot entry: 10th PCI slot
208 db 0 ;; pci bus number
209 db 058h ;; pci device number (bit 7-3)
210 db 62h ;; link value INTA#
211 dw 0DEF8h ;; IRQ bitmap INTA#
212 db 63h ;; link value INTB#
213 dw 0DEF8h ;; IRQ bitmap INTB#
214 db 60h ;; link value INTC#
215 dw 0DEF8h ;; IRQ bitmap INTC#
216 db 61h ;; link value INTD#
217 dw 0DEF8h ;; IRQ bitmap INTD#
218 db 10 ;; physical slot (0 = embedded)
219 db 0 ;; reserved
220 ;; 12th slot entry: 11th PCI slot
221 db 0 ;; pci bus number
222 db 60h ;; pci device number (bit 7-3)
223 db 63h ;; link value INTA#
224 dw 0DEF8h ;; IRQ bitmap INTA#
225 db 60h ;; link value INTB#
226 dw 0DEF8h ;; IRQ bitmap INTB#
227 db 61h ;; link value INTC#
228 dw 0DEF8h ;; IRQ bitmap INTC#
229 db 62h ;; link value INTD#
230 dw 0DEF8h ;; IRQ bitmap INTD#
231 db 11 ;; physical slot (0 = embedded)
232 db 0 ;; reserved
233 ;; 13th slot entry: 12th PCI slot
234 db 0 ;; pci bus number
235 db 068h ;; pci device number (bit 7-3)
236 db 60h ;; link value INTA#
237 dw 0DEF8h ;; IRQ bitmap INTA#
238 db 61h ;; link value INTB#
239 dw 0DEF8h ;; IRQ bitmap INTB#
240 db 62h ;; link value INTC#
241 dw 0DEF8h ;; IRQ bitmap INTC#
242 db 63h ;; link value INTD#
243 dw 0DEF8h ;; IRQ bitmap INTD#
244 db 12 ;; physical slot (0 = embedded)
245 db 0 ;; reserved
246 ;; 14th slot entry: 13th PCI slot
247 db 0 ;; pci bus number
248 db 070h ;; pci device number (bit 7-3)
249 db 61h ;; link value INTA#
250 dw 0DEF8h ;; IRQ bitmap INTA#
251 db 62h ;; link value INTB#
252 dw 0DEF8h ;; IRQ bitmap INTB#
253 db 63h ;; link value INTC#
254 dw 0DEF8h ;; IRQ bitmap INTC#
255 db 60h ;; link value INTD#
256 dw 0DEF8h ;; IRQ bitmap INTD#
257 db 13 ;; physical slot (0 = embedded)
258 db 0 ;; reserved
259 ;; 15th slot entry: 14th PCI slot
260 db 0 ;; pci bus number
261 db 078h ;; pci device number (bit 7-3)
262 db 62h ;; link value INTA#
263 dw 0DEF8h ;; IRQ bitmap INTA#
264 db 63h ;; link value INTB#
265 dw 0DEF8h ;; IRQ bitmap INTB#
266 db 60h ;; link value INTC#
267 dw 0DEF8h ;; IRQ bitmap INTC#
268 db 61h ;; link value INTD#
269 dw 0DEF8h ;; IRQ bitmap INTD#
270 db 14 ;; physical slot (0 = embedded)
271 db 0 ;; reserved
272 ;; 16th slot entry: 15th PCI slot
273 db 0 ;; pci bus number
274 db 080h ;; pci device number (bit 7-3)
275 db 63h ;; link value INTA#
276 dw 0DEF8h ;; IRQ bitmap INTA#
277 db 60h ;; link value INTB#
278 dw 0DEF8h ;; IRQ bitmap INTB#
279 db 61h ;; link value INTC#
280 dw 0DEF8h ;; IRQ bitmap INTC#
281 db 62h ;; link value INTD#
282 dw 0DEF8h ;; IRQ bitmap INTD#
283 db 15 ;; physical slot (0 = embedded)
284 db 0 ;; reserved
285 ;; 17th slot entry: 16th PCI slot
286 db 0 ;; pci bus number
287 db 088h ;; pci device number (bit 7-3)
288 db 60h ;; link value INTA#
289 dw 0DEF8h ;; IRQ bitmap INTA#
290 db 61h ;; link value INTB#
291 dw 0DEF8h ;; IRQ bitmap INTB#
292 db 62h ;; link value INTC#
293 dw 0DEF8h ;; IRQ bitmap INTC#
294 db 63h ;; link value INTD#
295 dw 0DEF8h ;; IRQ bitmap INTD#
296 db 16 ;; physical slot (0 = embedded)
297 db 0 ;; reserved
298 ;; 18th slot entry: 17th PCI slot
299 db 0 ;; pci bus number
300 db 090h ;; pci device number (bit 7-3)
301 db 61h ;; link value INTA#
302 dw 0DEF8h ;; IRQ bitmap INTA#
303 db 62h ;; link value INTB#
304 dw 0DEF8h ;; IRQ bitmap INTB#
305 db 63h ;; link value INTC#
306 dw 0DEF8h ;; IRQ bitmap INTC#
307 db 60h ;; link value INTD#
308 dw 0DEF8h ;; IRQ bitmap INTD#
309 db 17 ;; physical slot (0 = embedded)
310 db 0 ;; reserved
311 ;; 19th slot entry: 18th PCI slot
312 db 0 ;; pci bus number
313 db 098h ;; pci device number (bit 7-3)
314 db 62h ;; link value INTA#
315 dw 0DEF8h ;; IRQ bitmap INTA#
316 db 63h ;; link value INTB#
317 dw 0DEF8h ;; IRQ bitmap INTB#
318 db 60h ;; link value INTC#
319 dw 0DEF8h ;; IRQ bitmap INTC#
320 db 61h ;; link value INTD#
321 dw 0DEF8h ;; IRQ bitmap INTD#
322 db 18 ;; physical slot (0 = embedded)
323 db 0 ;; reserved
324 ;; 20th slot entry: 19th PCI slot
325 db 0 ;; pci bus number
326 db 0A0h ;; pci device number (bit 7-3)
327 db 63h ;; link value INTA#
328 dw 0DEF8h ;; IRQ bitmap INTA#
329 db 60h ;; link value INTB#
330 dw 0DEF8h ;; IRQ bitmap INTB#
331 db 61h ;; link value INTC#
332 dw 0DEF8h ;; IRQ bitmap INTC#
333 db 62h ;; link value INTD#
334 dw 0DEF8h ;; IRQ bitmap INTD#
335 db 19 ;; physical slot (0 = embedded)
336 db 0 ;; reserved
337 ;; 21st slot entry: 20th PCI slot
338 db 0 ;; pci bus number
339 db 0A8h ;; pci device number (bit 7-3)
340 db 60h ;; link value INTA#
341 dw 0DEF8h ;; IRQ bitmap INTA#
342 db 61h ;; link value INTB#
343 dw 0DEF8h ;; IRQ bitmap INTB#
344 db 62h ;; link value INTC#
345 dw 0DEF8h ;; IRQ bitmap INTC#
346 db 63h ;; link value INTD#
347 dw 0DEF8h ;; IRQ bitmap INTD#
348 db 20 ;; physical slot (0 = embedded)
349 db 0 ;; reserved
350 ;; 22nd slot entry: 21st PCI slot
351 db 0 ;; pci bus number
352 db 0B0h ;; pci device number (bit 7-3)
353 db 61h ;; link value INTA#
354 dw 0DEF8h ;; IRQ bitmap INTA#
355 db 62h ;; link value INTB#
356 dw 0DEF8h ;; IRQ bitmap INTB#
357 db 63h ;; link value INTC#
358 dw 0DEF8h ;; IRQ bitmap INTC#
359 db 60h ;; link value INTD#
360 dw 0DEF8h ;; IRQ bitmap INTD#
361 db 21 ;; physical slot (0 = embedded)
362 db 0 ;; reserved
363 ;; 23rd slot entry: 22nd PCI slot
364 db 0 ;; pci bus number
365 db 0B8h ;; pci device number (bit 7-3)
366 db 62h ;; link value INTA#
367 dw 0DEF8h ;; IRQ bitmap INTA#
368 db 63h ;; link value INTB#
369 dw 0DEF8h ;; IRQ bitmap INTB#
370 db 60h ;; link value INTC#
371 dw 0DEF8h ;; IRQ bitmap INTC#
372 db 61h ;; link value INTD#
373 dw 0DEF8h ;; IRQ bitmap INTD#
374 db 22 ;; physical slot (0 = embedded)
375 db 0 ;; reserved
376 ;; 24th slot entry: 23rd PCI slot
377 db 0 ;; pci bus number
378 db 0C0h ;; pci device number (bit 7-3)
379 db 63h ;; link value INTA#
380 dw 0DEF8h ;; IRQ bitmap INTA#
381 db 60h ;; link value INTB#
382 dw 0DEF8h ;; IRQ bitmap INTB#
383 db 61h ;; link value INTC#
384 dw 0DEF8h ;; IRQ bitmap INTC#
385 db 62h ;; link value INTD#
386 dw 0DEF8h ;; IRQ bitmap INTD#
387 db 23 ;; physical slot (0 = embedded)
388 db 0 ;; reserved
389 ;; 25th slot entry: 24th PCI slot
390 db 0 ;; pci bus number
391 db 0C8h ;; pci device number (bit 7-3)
392 db 60h ;; link value INTA#
393 dw 0DEF8h ;; IRQ bitmap INTA#
394 db 61h ;; link value INTB#
395 dw 0DEF8h ;; IRQ bitmap INTB#
396 db 62h ;; link value INTC#
397 dw 0DEF8h ;; IRQ bitmap INTC#
398 db 63h ;; link value INTD#
399 dw 0DEF8h ;; IRQ bitmap INTD#
400 db 24 ;; physical slot (0 = embedded)
401 db 0 ;; reserved
402 ;; 26th slot entry: 25th PCI slot
403 db 0 ;; pci bus number
404 db 0D0h ;; pci device number (bit 7-3)
405 db 61h ;; link value INTA#
406 dw 0DEF8h ;; IRQ bitmap INTA#
407 db 62h ;; link value INTB#
408 dw 0DEF8h ;; IRQ bitmap INTB#
409 db 63h ;; link value INTC#
410 dw 0DEF8h ;; IRQ bitmap INTC#
411 db 60h ;; link value INTD#
412 dw 0DEF8h ;; IRQ bitmap INTD#
413 db 25 ;; physical slot (0 = embedded)
414 db 0 ;; reserved
415 ;; 27th slot entry: 26th PCI slot
416 db 0 ;; pci bus number
417 db 0D8h ;; pci device number (bit 7-3)
418 db 62h ;; link value INTA#
419 dw 0DEF8h ;; IRQ bitmap INTA#
420 db 63h ;; link value INTB#
421 dw 0DEF8h ;; IRQ bitmap INTB#
422 db 60h ;; link value INTC#
423 dw 0DEF8h ;; IRQ bitmap INTC#
424 db 61h ;; link value INTD#
425 dw 0DEF8h ;; IRQ bitmap INTD#
426 db 26 ;; physical slot (0 = embedded)
427 db 0 ;; reserved
428 ;; 28th slot entry: 27th PCI slot
429 db 0 ;; pci bus number
430 db 0E0h ;; pci device number (bit 7-3)
431 db 63h ;; link value INTA#
432 dw 0DEF8h ;; IRQ bitmap INTA#
433 db 60h ;; link value INTB#
434 dw 0DEF8h ;; IRQ bitmap INTB#
435 db 61h ;; link value INTC#
436 dw 0DEF8h ;; IRQ bitmap INTC#
437 db 62h ;; link value INTD#
438 dw 0DEF8h ;; IRQ bitmap INTD#
439 db 27 ;; physical slot (0 = embedded)
440 db 0 ;; reserved
441 ;; 29th slot entry: 28th PCI slot
442 db 0 ;; pci bus number
443 db 0E8h ;; pci device number (bit 7-3)
444 db 60h ;; link value INTA#
445 dw 0DEF8h ;; IRQ bitmap INTA#
446 db 61h ;; link value INTB#
447 dw 0DEF8h ;; IRQ bitmap INTB#
448 db 62h ;; link value INTC#
449 dw 0DEF8h ;; IRQ bitmap INTC#
450 db 63h ;; link value INTD#
451 dw 0DEF8h ;; IRQ bitmap INTD#
452 db 28 ;; physical slot (0 = embedded)
453 db 0 ;; reserved
454 ;; 30th slot entry: 29th PCI slot
455 db 0 ;; pci bus number
456 db 0F0h ;; pci device number (bit 7-3)
457 db 61h ;; link value INTA#
458 dw 0DEF8h ;; IRQ bitmap INTA#
459 db 62h ;; link value INTB#
460 dw 0DEF8h ;; IRQ bitmap INTB#
461 db 63h ;; link value INTC#
462 dw 0DEF8h ;; IRQ bitmap INTC#
463 db 60h ;; link value INTD#
464 dw 0DEF8h ;; IRQ bitmap INTD#
465 db 29 ;; physical slot (0 = embedded)
466 db 0 ;; reserved
467endif ; VBOX
468pci_routing_table_end:
469;; Size of the table
470_pci_routing_table_size dw pci_routing_table_end - pci_routing_table
471
472endif ; BX_PCIBIOS
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette