2 * Jailhouse, a Linux-based partitioning hypervisor
4 * Copyright (c) Siemens AG, 2014, 2015
6 * This work is licensed under the terms of the GNU GPL, version 2. See
7 * the COPYING file in the top-level directory.
9 * Alternatively, you can use or redistribute this file under the following
12 * Redistribution and use in source and binary forms, with or without
13 * modification, are permitted provided that the following conditions
16 * 1. Redistributions of source code must retain the above copyright
17 * notice, this list of conditions and the following disclaimer.
19 * 2. Redistributions in binary form must reproduce the above copyright
20 * notice, this list of conditions and the following disclaimer in the
21 * documentation and/or other materials provided with the distribution.
23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
24 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
27 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
28 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
29 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
32 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
33 * THE POSSIBILITY OF SUCH DAMAGE.
35 * Configuration for Dell Inc. OptiPlex 7010
36 * created with '/usr/local/libexec/jailhouse/jailhouse config create -r . novabox.c'
38 * NOTE: This config expects the following to be appended to your kernel cmdline
39 * "memmap=0x7c00000$0x37600000"
42 #include <linux/types.h>
43 #include <jailhouse/cell-config.h>
45 #define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))
48 struct jailhouse_system header;
50 struct jailhouse_memory mem_regions[45];
51 struct jailhouse_irqchip irqchips[1];
52 __u8 pio_bitmap[0x2000];
53 struct jailhouse_pci_device pci_devices[16];
54 struct jailhouse_pci_capability pci_caps[29];
55 } __attribute__((packed)) config = {
57 .signature = JAILHOUSE_SYSTEM_SIGNATURE,
58 .hypervisor_memory = {
59 .phys_start = 0x37600000,
62 .platform_info.x86 = {
63 .mmconfig_base = 0xf8000000,
64 .mmconfig_end_bus = 0x3f,
65 .pm_timer_address = 0x408,
76 >>>>>>> 11dff97feece0823144bbe800b9e56c6995cd2fb
79 .interrupt_limit = 256,
82 .cpu_set_size = sizeof(config.cpus),
83 .num_memory_regions = ARRAY_SIZE(config.mem_regions),
84 .num_irqchips = ARRAY_SIZE(config.irqchips),
85 .pio_bitmap_size = ARRAY_SIZE(config.pio_bitmap),
86 .num_pci_devices = ARRAY_SIZE(config.pci_devices),
87 .num_pci_caps = ARRAY_SIZE(config.pci_caps),
96 /* MemRegion: 00000000-0009d7ff : System RAM */
101 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
102 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
104 /* MemRegion: 000a0000-000bffff : PCI Bus 0000:00 */
106 .phys_start = 0xa0000,
107 .virt_start = 0xa0000,
109 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
111 /* MemRegion: 00100000-00ffffff : System RAM */
113 .phys_start = 0x100000,
114 .virt_start = 0x100000,
116 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
117 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
119 /* MemRegion: 01000000-02ffffff : Kernel */
121 .phys_start = 0x1000000,
122 .virt_start = 0x1000000,
124 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
125 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
127 /* MemRegion: 03000000-1fffffff : System RAM */
129 .phys_start = 0x3000000,
130 .virt_start = 0x3000000,
132 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
133 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
135 /* MemRegion: 20200000-375fffff : System RAM */
137 .phys_start = 0x20200000,
138 .virt_start = 0x20200000,
140 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
141 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
143 /* MemRegion: 3f200000-40003fff : System RAM */
145 .phys_start = 0x3f200000,
146 .virt_start = 0x3f200000,
148 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
149 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
151 /* MemRegion: 40005000-d9b4dfff : System RAM */
153 .phys_start = 0x40005000,
154 .virt_start = 0x40005000,
156 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
157 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
159 /* MemRegion: da174000-da3dbfff : ACPI Non-volatile Storage */
161 .phys_start = 0xda174000,
162 .virt_start = 0xda174000,
164 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
166 /* MemRegion: da3dc000-da3e6fff : ACPI Tables */
168 .phys_start = 0xda3dc000,
169 .virt_start = 0xda3dc000,
171 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
173 /* MemRegion: da3e7000-da3f3fff : ACPI Non-volatile Storage */
175 .phys_start = 0xda3e7000,
176 .virt_start = 0xda3e7000,
178 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
180 /* MemRegion: da3f4000-da3f8fff : ACPI Tables */
182 .phys_start = 0xda3f4000,
183 .virt_start = 0xda3f4000,
185 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
187 /* MemRegion: da3f9000-da43bfff : ACPI Non-volatile Storage */
189 .phys_start = 0xda3f9000,
190 .virt_start = 0xda3f9000,
192 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
194 /* MemRegion: da43c000-daffffff : System RAM */
196 .phys_start = 0xda43c000,
197 .virt_start = 0xda43c000,
199 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
200 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
202 /* MemRegion: db000000-db7fffff : RAM buffer */
204 .phys_start = 0xdb000000,
205 .virt_start = 0xdb000000,
207 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
208 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
210 /* MemRegion: dfa00000-dfa00fff : pnp 00:08 */
212 .phys_start = 0xdfa00000,
213 .virt_start = 0xdfa00000,
215 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
217 /* MemRegion: e0000000-efffffff : 0000:00:02.0 */
219 .phys_start = 0xe0000000,
220 .virt_start = 0xe0000000,
222 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
224 /* MemRegion: f7800000-f7bfffff : 0000:00:02.0 */
226 .phys_start = 0xf7800000,
227 .virt_start = 0xf7800000,
229 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
231 /* MemRegion: f7c00000-f7c00fff : 0000:02:00.1 */
233 .phys_start = 0xf7c00000,
234 .virt_start = 0xf7c00000,
236 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
238 /* MemRegion: f7c01000-f7c01fff : 0000:02:00.1 */
240 .phys_start = 0xf7c01000,
241 .virt_start = 0xf7c01000,
243 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
245 /* MemRegion: f7c02000-f7c02fff : 0000:02:00.0 */
247 .phys_start = 0xf7c02000,
248 .virt_start = 0xf7c02000,
250 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
252 /* MemRegion: f7c03000-f7c03fff : 0000:02:00.0 */
254 .phys_start = 0xf7c03000,
255 .virt_start = 0xf7c03000,
257 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
259 /* MemRegion: f7d00000-f7d1ffff : 0000:00:19.0 */
261 .phys_start = 0xf7d00000,
262 .virt_start = 0xf7d00000,
264 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
266 /* MemRegion: f7d20000-f7d2ffff : 0000:00:14.0 */
268 .phys_start = 0xf7d20000,
269 .virt_start = 0xf7d20000,
271 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
273 /* MemRegion: f7d30000-f7d33fff : 0000:00:1b.0 */
275 .phys_start = 0xf7d30000,
276 .virt_start = 0xf7d30000,
278 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
280 /* MemRegion: f7d35000-f7d350ff : 0000:00:1f.3 */
282 .phys_start = 0xf7d35000,
283 .virt_start = 0xf7d35000,
285 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
287 /* MemRegion: f7d36000-f7d367ff : ahci */
289 .phys_start = 0xf7d36000,
290 .virt_start = 0xf7d36000,
292 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
294 /* MemRegion: f7d37000-f7d373ff : ehci_hcd */
296 .phys_start = 0xf7d37000,
297 .virt_start = 0xf7d37000,
299 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
301 /* MemRegion: f7d38000-f7d383ff : ehci_hcd */
303 .phys_start = 0xf7d38000,
304 .virt_start = 0xf7d38000,
306 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
308 /* MemRegion: f7d39000-f7d39fff : 0000:00:19.0 */
310 .phys_start = 0xf7d39000,
311 .virt_start = 0xf7d39000,
313 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
315 /* MemRegion: f7d3c000-f7d3c00f : 0000:00:16.0 */
317 .phys_start = 0xf7d3c000,
318 .virt_start = 0xf7d3c000,
320 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
322 /* MemRegion: fed00000-fed003ff : HPET 0 */
324 .phys_start = 0xfed00000,
325 .virt_start = 0xfed00000,
327 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
329 /* MemRegion: fed10000-fed17fff : pnp 00:08 */
331 .phys_start = 0xfed10000,
332 .virt_start = 0xfed10000,
334 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
336 /* MemRegion: fed18000-fed18fff : pnp 00:08 */
338 .phys_start = 0xfed18000,
339 .virt_start = 0xfed18000,
341 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
343 /* MemRegion: fed19000-fed19fff : pnp 00:08 */
345 .phys_start = 0xfed19000,
346 .virt_start = 0xfed19000,
348 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
350 /* MemRegion: fed20000-fed3ffff : pnp 00:08 */
352 .phys_start = 0xfed20000,
353 .virt_start = 0xfed20000,
355 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
357 /* MemRegion: fed40000-fed44fff : pnp 00:00 */
359 .phys_start = 0xfed40000,
360 .virt_start = 0xfed40000,
362 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
364 /* MemRegion: fed45000-fed8ffff : pnp 00:08 */
366 .phys_start = 0xfed45000,
367 .virt_start = 0xfed45000,
369 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
371 /* MemRegion: fed90000-fed93fff : pnp 00:08 */
373 .phys_start = 0xfed90000,
374 .virt_start = 0xfed90000,
376 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
378 /* MemRegion: 100000000-11e5fffff : System RAM */
380 .phys_start = 0x100000000,
381 .virt_start = 0x100000000,
383 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
384 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
386 /* MemRegion: 11e600000-11fffffff : RAM buffer */
388 .phys_start = 0x11e600000,
389 .virt_start = 0x11e600000,
391 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
392 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
394 /* MemRegion: 000c0000-000dffff : ROMs */
396 .phys_start = 0xc0000,
397 .virt_start = 0xc0000,
399 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE,
401 /* MemRegion: da0ed000-da112fff : ACPI DMAR RMRR */
402 /* PCI device: 00:1d.0 */
403 /* PCI device: 00:1a.0 */
404 /* PCI device: 00:14.0 */
406 .phys_start = 0xda0ed000,
407 .virt_start = 0xda0ed000,
409 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
410 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
412 /* MemRegion: db800000-df9fffff : ACPI DMAR RMRR */
413 /* PCI device: 00:02.0 */
415 .phys_start = 0xdb800000,
416 .virt_start = 0xdb800000,
418 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
419 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
421 /* MemRegion: 3f000000-3f1fffff : JAILHOUSE Inmate Memory */
423 .phys_start = 0x3b600000,
424 .virt_start = 0x3b600000,
426 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
427 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA,
432 /* IOAPIC 2, GSI base 0 */
434 .address = 0xfec00000,
436 .pin_bitmap = 0xffffff,
441 [ 0/8 ... 0x3f/8] = -1,
442 [ 0x40/8 ... 0x47/8] = 0xf0, /* PIT */
443 [ 0x48/8 ... 0x5f/8] = -1,
444 [ 0x60/8 ... 0x67/8] = 0xec, /* HACK: NMI status/control */
445 [ 0x68/8 ... 0x6f/8] = -1,
446 [ 0x70/8 ... 0x77/8] = 0xfc, /* RTC */
447 [ 0x78/8 ... 0x7f/7] = -1,
448 [ 0x80/8 ... 0x87/8] = 0xfe, /* Linux: native_io_delay() */
449 [ 0x88/8 ... 0xec/8] = -1,
450 [ 0xed/8 ... 0xf5/8] = 0xfe, /*port 0xed delay experimental*/
451 [ 0xf6/8 ... 0x2f7/8] = -1,
452 [ 0x2f8/8 ... 0x2ff/8] = 0,/*serial 1*/
453 [ 0x300/8 ... 0x3af/8] = -1,
454 [ 0x3b0/8 ... 0x3df/8] = 0x00, /* VGA */
455 [ 0x3e0/8 ... 0x3f7/8] = -1,
456 [ 0x3f8/8 ... 0x3ff/8] = -1,/*serial 0*/
457 [ 0x400/8 ... 0xeff/8] = -1,
458 [ 0xd00/8 ... 0xffff/8] = 0, /* HACK: PCI bus */
462 /* PCIDevice: 00:00.0 */
464 .type = JAILHOUSE_PCI_TYPE_DEVICE,
469 0x00000000, 0x00000000, 0x00000000,
470 0x00000000, 0x00000000, 0x00000000,
474 .num_msi_vectors = 0,
476 .num_msix_vectors = 0,
477 .msix_region_size = 0x0,
480 /* PCIDevice: 00:02.0 */
482 .type = JAILHOUSE_PCI_TYPE_DEVICE,
487 0xffc00000, 0xffffffff, 0x00000000,
488 0xf0000000, 0xffffffff, 0x00000000,
492 .num_msi_vectors = 1,
494 .num_msix_vectors = 0,
495 .msix_region_size = 0x0,
498 /* PCIDevice: 00:14.0 */
500 .type = JAILHOUSE_PCI_TYPE_DEVICE,
505 0xffff0000, 0xffffffff, 0x00000000,
506 0x00000000, 0x00000000, 0x00000000,
510 .num_msi_vectors = 8,
512 .num_msix_vectors = 0,
513 .msix_region_size = 0x0,
516 /* PCIDevice: 00:16.0 */
518 .type = JAILHOUSE_PCI_TYPE_DEVICE,
523 0xfffffff0, 0xffffffff, 0x00000000,
524 0x00000000, 0x00000000, 0x00000000,
528 .num_msi_vectors = 1,
530 .num_msix_vectors = 0,
531 .msix_region_size = 0x0,
534 /* PCIDevice: 00:19.0 */
536 .type = JAILHOUSE_PCI_TYPE_DEVICE,
541 0xfffe0000, 0xfffff000, 0xffffffe0,
542 0x00000000, 0x00000000, 0x00000000,
546 .num_msi_vectors = 1,
548 .num_msix_vectors = 0,
549 .msix_region_size = 0x0,
552 /* PCIDevice: 00:1a.0 */
554 .type = JAILHOUSE_PCI_TYPE_DEVICE,
559 0xfffffc00, 0x00000000, 0x00000000,
560 0x00000000, 0x00000000, 0x00000000,
564 .num_msi_vectors = 0,
566 .num_msix_vectors = 0,
567 .msix_region_size = 0x0,
570 /* PCIDevice: 00:1b.0 */
572 .type = JAILHOUSE_PCI_TYPE_DEVICE,
577 0xffffc000, 0xffffffff, 0x00000000,
578 0x00000000, 0x00000000, 0x00000000,
582 .num_msi_vectors = 1,
584 .num_msix_vectors = 0,
585 .msix_region_size = 0x0,
588 /* PCIDevice: 00:1c.0 */
590 .type = JAILHOUSE_PCI_TYPE_BRIDGE,
595 0x00000000, 0x00000000, 0x00000000,
596 0x00000000, 0x00000000, 0x00000000,
600 .num_msi_vectors = 1,
602 .num_msix_vectors = 0,
603 .msix_region_size = 0x0,
606 /* PCIDevice: 00:1c.2 */
608 .type = JAILHOUSE_PCI_TYPE_BRIDGE,
613 0x00000000, 0x00000000, 0x00000000,
614 0x00000000, 0x00000000, 0x00000000,
618 .num_msi_vectors = 1,
620 .num_msix_vectors = 0,
621 .msix_region_size = 0x0,
624 /* PCIDevice: 00:1d.0 */
626 .type = JAILHOUSE_PCI_TYPE_DEVICE,
631 0xfffffc00, 0x00000000, 0x00000000,
632 0x00000000, 0x00000000, 0x00000000,
636 .num_msi_vectors = 0,
638 .num_msix_vectors = 0,
639 .msix_region_size = 0x0,
642 /* PCIDevice: 00:1e.0 */
644 .type = JAILHOUSE_PCI_TYPE_BRIDGE,
649 0x00000000, 0x00000000, 0x00000000,
650 0x00000000, 0x00000000, 0x00000000,
654 .num_msi_vectors = 0,
656 .num_msix_vectors = 0,
657 .msix_region_size = 0x0,
660 /* PCIDevice: 00:1f.0 */
662 .type = JAILHOUSE_PCI_TYPE_DEVICE,
667 0x00000000, 0x00000000, 0x00000000,
668 0x00000000, 0x00000000, 0x00000000,
672 .num_msi_vectors = 0,
674 .num_msix_vectors = 0,
675 .msix_region_size = 0x0,
678 /* PCIDevice: 00:1f.2 */
680 .type = JAILHOUSE_PCI_TYPE_DEVICE,
685 0xfffffff8, 0xfffffffc, 0xfffffff8,
686 0xfffffffc, 0xffffffe0, 0xfffff800,
690 .num_msi_vectors = 1,
692 .num_msix_vectors = 0,
693 .msix_region_size = 0x0,
696 /* PCIDevice: 00:1f.3 */
698 .type = JAILHOUSE_PCI_TYPE_DEVICE,
703 0xffffff00, 0xffffffff, 0x00000000,
704 0x00000000, 0x00000000, 0xffffffe0,
708 .num_msi_vectors = 0,
710 .num_msix_vectors = 0,
711 .msix_region_size = 0x0,
714 /* PCIDevice: 02:00.0 */
716 .type = JAILHOUSE_PCI_TYPE_DEVICE,
721 0xfffffff8, 0xfffff000, 0x00000000,
722 0x00000000, 0x00000000, 0xfffff000,
726 .num_msi_vectors = 8,
728 .num_msix_vectors = 0,
729 .msix_region_size = 0x0,
732 /* PCIDevice: 02:00.1 */
734 .type = JAILHOUSE_PCI_TYPE_DEVICE,
739 0xfffffff8, 0xfffff000, 0x00000000,
740 0x00000000, 0x00000000, 0xfffff000,
744 .num_msi_vectors = 8,
746 .num_msix_vectors = 0,
747 .msix_region_size = 0x0,
753 /* PCIDevice: 00:00.0 */
754 /* PCIDevice: 00:1f.0 */
761 /* PCIDevice: 00:02.0 */
766 .flags = JAILHOUSE_PCICAPS_WRITE,
772 .flags = JAILHOUSE_PCICAPS_WRITE,
780 /* PCIDevice: 00:14.0 */
785 .flags = JAILHOUSE_PCICAPS_WRITE,
791 .flags = JAILHOUSE_PCICAPS_WRITE,
793 /* PCIDevice: 00:16.0 */
798 .flags = JAILHOUSE_PCICAPS_WRITE,
804 .flags = JAILHOUSE_PCICAPS_WRITE,
806 /* PCIDevice: 00:19.0 */
811 .flags = JAILHOUSE_PCICAPS_WRITE,
817 .flags = JAILHOUSE_PCICAPS_WRITE,
825 /* PCIDevice: 00:1a.0 */
826 /* PCIDevice: 00:1d.0 */
831 .flags = JAILHOUSE_PCICAPS_WRITE,
845 /* PCIDevice: 00:1b.0 */
850 .flags = JAILHOUSE_PCICAPS_WRITE,
856 .flags = JAILHOUSE_PCICAPS_WRITE,
864 /* PCIDevice: 00:1c.0 */
865 /* PCIDevice: 00:1c.2 */
876 .flags = JAILHOUSE_PCICAPS_WRITE,
888 .flags = JAILHOUSE_PCICAPS_WRITE,
890 /* PCIDevice: 00:1e.0 */
897 /* PCIDevice: 00:1f.2 */
902 .flags = JAILHOUSE_PCICAPS_WRITE,
908 .flags = JAILHOUSE_PCICAPS_WRITE,
922 /* PCIDevice: 02:00.0 */
923 /* PCIDevice: 02:00.1 */
928 .flags = JAILHOUSE_PCICAPS_WRITE,
934 .flags = JAILHOUSE_PCICAPS_WRITE,