mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 21:55:25 +00:00
tests: Add test for PCI usage on RISC-V
This shows users can now use PCI for RISC-V guests, as long as they opt into it by manually assigning addresses. Signed-off-by: Andrea Bolognani <abologna@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
e266a41f1e
commit
c5f92bf558
27
tests/qemuxml2argvdata/riscv64-virt-pci.args
Normal file
27
tests/qemuxml2argvdata/riscv64-virt-pci.args
Normal file
@ -0,0 +1,27 @@
|
||||
LC_ALL=C \
|
||||
PATH=/bin \
|
||||
HOME=/home/test \
|
||||
USER=test \
|
||||
LOGNAME=test \
|
||||
QEMU_AUDIO_DRV=none \
|
||||
/usr/bin/qemu-system-riscv64 \
|
||||
-name riscv64 \
|
||||
-S \
|
||||
-machine virt,accel=tcg,usb=off,dump-guest-core=off \
|
||||
-m 2048 \
|
||||
-smp 1,sockets=1,cores=1,threads=1 \
|
||||
-uuid fd65fc03-8838-4c4d-9d8d-395802488790 \
|
||||
-display none \
|
||||
-no-user-config \
|
||||
-nodefaults \
|
||||
-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-riscv64/monitor.sock,\
|
||||
server,nowait \
|
||||
-mon chardev=charmonitor,id=monitor,mode=control \
|
||||
-rtc base=utc \
|
||||
-no-shutdown \
|
||||
-kernel /var/lib/libvirt/images/riscv64.bbl \
|
||||
-append root=/dev/vda \
|
||||
-drive file=/var/lib/libvirt/images/riscv64.qcow2,format=qcow2,if=none,\
|
||||
id=drive-virtio-disk0 \
|
||||
-device virtio-blk-pci,bus=pcie.0,addr=0x1,drive=drive-virtio-disk0,\
|
||||
id=virtio-disk0,bootindex=1
|
24
tests/qemuxml2argvdata/riscv64-virt-pci.xml
Normal file
24
tests/qemuxml2argvdata/riscv64-virt-pci.xml
Normal file
@ -0,0 +1,24 @@
|
||||
<domain type='qemu'>
|
||||
<name>riscv64</name>
|
||||
<uuid>fd65fc03-8838-4c4d-9d8d-395802488790</uuid>
|
||||
<memory unit='KiB'>2097152</memory>
|
||||
<vcpu placement='static'>1</vcpu>
|
||||
<os>
|
||||
<type arch='riscv64' machine='virt'>hvm</type>
|
||||
<kernel>/var/lib/libvirt/images/riscv64.bbl</kernel>
|
||||
<cmdline>root=/dev/vda</cmdline>
|
||||
</os>
|
||||
<devices>
|
||||
<emulator>/usr/bin/qemu-system-riscv64</emulator>
|
||||
<disk type='file'>
|
||||
<driver name='qemu' type='qcow2'/>
|
||||
<source file='/var/lib/libvirt/images/riscv64.qcow2'/>
|
||||
<target dev='vda' bus='virtio'/>
|
||||
<!-- We need to manually pick an address on pcie.0 because otherwise
|
||||
libvirt would try to add pcie-root-ports, and QEMU doesn't support
|
||||
PCIe controllers for RISC-V guests yet -->
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
|
||||
</disk>
|
||||
<memballoon model='none'/>
|
||||
</devices>
|
||||
</domain>
|
@ -3072,6 +3072,8 @@ mymain(void)
|
||||
|
||||
DO_TEST("riscv64-virt",
|
||||
QEMU_CAPS_DEVICE_VIRTIO_MMIO);
|
||||
DO_TEST("riscv64-virt-pci",
|
||||
QEMU_CAPS_OBJECT_GPEX);
|
||||
|
||||
/* Simple headless guests for various architectures */
|
||||
DO_TEST_CAPS_ARCH_LATEST("aarch64-virt-headless", "aarch64");
|
||||
|
28
tests/qemuxml2xmloutdata/riscv64-virt-pci.xml
Normal file
28
tests/qemuxml2xmloutdata/riscv64-virt-pci.xml
Normal file
@ -0,0 +1,28 @@
|
||||
<domain type='qemu'>
|
||||
<name>riscv64</name>
|
||||
<uuid>fd65fc03-8838-4c4d-9d8d-395802488790</uuid>
|
||||
<memory unit='KiB'>2097152</memory>
|
||||
<currentMemory unit='KiB'>2097152</currentMemory>
|
||||
<vcpu placement='static'>1</vcpu>
|
||||
<os>
|
||||
<type arch='riscv64' machine='virt'>hvm</type>
|
||||
<kernel>/var/lib/libvirt/images/riscv64.bbl</kernel>
|
||||
<cmdline>root=/dev/vda</cmdline>
|
||||
<boot dev='hd'/>
|
||||
</os>
|
||||
<clock offset='utc'/>
|
||||
<on_poweroff>destroy</on_poweroff>
|
||||
<on_reboot>restart</on_reboot>
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<emulator>/usr/bin/qemu-system-riscv64</emulator>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='qemu' type='qcow2'/>
|
||||
<source file='/var/lib/libvirt/images/riscv64.qcow2'/>
|
||||
<target dev='vda' bus='virtio'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
|
||||
</disk>
|
||||
<controller type='pci' index='0' model='pcie-root'/>
|
||||
<memballoon model='none'/>
|
||||
</devices>
|
||||
</domain>
|
@ -1267,6 +1267,8 @@ mymain(void)
|
||||
|
||||
DO_TEST("riscv64-virt",
|
||||
QEMU_CAPS_DEVICE_VIRTIO_MMIO);
|
||||
DO_TEST("riscv64-virt-pci",
|
||||
QEMU_CAPS_OBJECT_GPEX);
|
||||
|
||||
if (getenv("LIBVIRT_SKIP_CLEANUP") == NULL)
|
||||
virFileDeleteTree(fakerootdir);
|
||||
|
Loading…
Reference in New Issue
Block a user