VirtualBox

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

Last change on this file was 98103, checked in by vboxsync, 16 months ago

Copyright year updates by scm.

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

© 2023 Oracle
ContactPrivacy policyTerms of Use