1 /* 2 * Copyright (C) 2022 Intel Corporation. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #include <asm/vm_config.h> 8 #include <vpci.h> 9 #include <asm/mmu.h> 10 #include <asm/page.h> 11 #include <vmcs9900.h> 12 #include <ivshmem_cfg.h> 13 #define INVALID_PCI_BASE 0U 14 struct acrn_vm_pci_dev_config vm0_pci_devs[VM0_CONFIG_PCI_DEV_NUM] = { 15 { 16 .emu_type = PCI_DEV_TYPE_HVEMUL, 17 .vdev_ops = &vhostbridge_ops, 18 .vbdf.bits = {.b = 0x00U, .d = 0x00U, .f = 0x00U}, 19 }, 20 { 21 .emu_type = PCI_DEV_TYPE_PTDEV, 22 .vbdf.bits = 23 { 24 .b = 0x00U, 25 .d = 0x01U, 26 .f = 0x00U, 27 }, 28 .pbdf.bits = 29 { 30 .b = 0x00U, 31 .d = 0x17U, 32 .f = 0x00U, 33 }, 34 .vbar_base[0] = 0x80020000UL, 35 .vbar_base[5] = 0x80022000UL, 36 .vbar_base[1] = 0x80023000UL, 37 .vbar_base[4] = 0x3060UL, 38 .vbar_base[3] = 0x3080UL, 39 .vbar_base[2] = 0x3090UL, 40 }, 41 { 42 .emu_type = PCI_DEV_TYPE_PTDEV, 43 .vbdf.bits = 44 { 45 .b = 0x00U, 46 .d = 0x02U, 47 .f = 0x00U, 48 }, 49 .pbdf.bits = 50 { 51 .b = 0x00U, 52 .d = 0x1FU, 53 .f = 0x06U, 54 }, 55 .vbar_base[0] = 0x80000000UL, 56 }, 57 }; 58 struct acrn_vm_pci_dev_config vm1_pci_devs[VM1_CONFIG_PCI_DEV_NUM] = { 59 { 60 .emu_type = PCI_DEV_TYPE_HVEMUL, 61 .vdev_ops = &vhostbridge_ops, 62 .vbdf.bits = {.b = 0x00U, .d = 0x00U, .f = 0x00U}, 63 }, 64 { 65 .emu_type = PCI_DEV_TYPE_PTDEV, 66 .vbdf.bits = 67 { 68 .b = 0x00U, 69 .d = 0x01U, 70 .f = 0x00U, 71 }, 72 .pbdf.bits = 73 { 74 .b = 0x00U, 75 .d = 0x14U, 76 .f = 0x00U, 77 }, 78 .vbar_base[0] = 0x80000000UL, 79 }, 80 }; 81