mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-09-24 18:27:18 +00:00
HV: repace vpci_vdev_array with pci_ptdev config
Use acrn_vm_pci_ptdev_config struct for PCI PT devices configuration in acrn_vm_config, the only needed configure item is PT devices's vBDF and pBDF info. When init PT devices, the BDF info will be stored in pci_vdevs[] of acrn_vm. With this patch, the previous vpci_vdev_array struct is not needed. Tracked-On: #2291 Signed-off-by: Victor Sun <victor.sun@intel.com> Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
@@ -37,6 +37,10 @@
|
||||
console=ttyS2 no_timer_check ignore_loglevel log_buf_len=16M \
|
||||
consoleblank=0 tsc=reliable xapic_phys"
|
||||
|
||||
extern struct vpci_vdev_array vpci_vdev_array0, vpci_vdev_array1;
|
||||
#define VM0_CONFIG_PCI_PTDEV_NUM 2U
|
||||
#define VM1_CONFIG_PCI_PTDEV_NUM 3U
|
||||
|
||||
extern struct acrn_vm_pci_ptdev_config vm0_pci_ptdevs[VM0_CONFIG_PCI_PTDEV_NUM];
|
||||
extern struct acrn_vm_pci_ptdev_config vm1_pci_ptdevs[VM1_CONFIG_PCI_PTDEV_NUM];
|
||||
|
||||
#endif /* PARTITION_CONFIG_H */
|
||||
|
@@ -6,39 +6,28 @@
|
||||
|
||||
#include <hypervisor.h>
|
||||
|
||||
struct vpci_vdev_array vpci_vdev_array0 = {
|
||||
.num_pci_vdev = 2,
|
||||
|
||||
.vpci_vdev_list = {
|
||||
{/*vdev 0: hostbridge */
|
||||
.vbdf.bits = {.b = 0x00U, .d = 0x00U, .f = 0x0U},
|
||||
.pbdf.bits = {.b = 0x00U, .d = 0x00U, .f = 0x0U},
|
||||
},
|
||||
|
||||
{/*vdev 1: SATA controller*/
|
||||
.vbdf.bits = {.b = 0x00U, .d = 0x01U, .f = 0x0U},
|
||||
.pbdf.bits = {.b = 0x00U, .d = 0x12U, .f = 0x0U},
|
||||
},
|
||||
}
|
||||
struct acrn_vm_pci_ptdev_config vm0_pci_ptdevs[2] = {
|
||||
{
|
||||
.vbdf.bits = {.b = 0x00U, .d = 0x00U, .f = 0x00U},
|
||||
.pbdf.bits = {.b = 0x00U, .d = 0x00U, .f = 0x00U},
|
||||
},
|
||||
{
|
||||
.vbdf.bits = {.b = 0x00U, .d = 0x01U, .f = 0x00U},
|
||||
.pbdf.bits = {.b = 0x00U, .d = 0x12U, .f = 0x00U},
|
||||
},
|
||||
};
|
||||
|
||||
struct vpci_vdev_array vpci_vdev_array1 = {
|
||||
.num_pci_vdev = 3,
|
||||
|
||||
.vpci_vdev_list = {
|
||||
{/*vdev 0: hostbridge*/
|
||||
.vbdf.bits = {.b = 0x00U, .d = 0x00U, .f = 0x0U},
|
||||
.pbdf.bits = {.b = 0x00U, .d = 0x00U, .f = 0x0U},
|
||||
},
|
||||
|
||||
{/*vdev 1: USB controller*/
|
||||
.vbdf.bits = {.b = 0x00U, .d = 0x01U, .f = 0x0U},
|
||||
.pbdf.bits = {.b = 0x00U, .d = 0x15U, .f = 0x0U},
|
||||
},
|
||||
|
||||
{/*vdev 2: Ethernet*/
|
||||
.vbdf.bits = {.b = 0x00U, .d = 0x02U, .f = 0x0U},
|
||||
.pbdf.bits = {.b = 0x02U, .d = 0x00U, .f = 0x0U},
|
||||
},
|
||||
}
|
||||
struct acrn_vm_pci_ptdev_config vm1_pci_ptdevs[3] = {
|
||||
{
|
||||
.vbdf.bits = {.b = 0x00U, .d = 0x00U, .f = 0x00U},
|
||||
.pbdf.bits = {.b = 0x00U, .d = 0x00U, .f = 0x00U},
|
||||
},
|
||||
{
|
||||
.vbdf.bits = {.b = 0x00U, .d = 0x01U, .f = 0x00U},
|
||||
.pbdf.bits = {.b = 0x00U, .d = 0x15U, .f = 0x00U},
|
||||
},
|
||||
{
|
||||
.vbdf.bits = {.b = 0x00U, .d = 0x02U, .f = 0x00U},
|
||||
.pbdf.bits = {.b = 0x02U, .d = 0x00U, .f = 0x00U},
|
||||
},
|
||||
};
|
||||
|
Reference in New Issue
Block a user