summaryrefslogtreecommitdiff
path: root/sys/src/9/pc64
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2021-07-11 11:24:13 +0000
committercinap_lenrek <cinap_lenrek@felloff.net>2021-07-11 11:24:13 +0000
commitf58d99aa7a97ba5f79af89f38b78d5924d4e35a2 (patch)
tree42aeb9f910f45bee8073edf3fa118e28cced6af4 /sys/src/9/pc64
parentc3589ef3cf33189d342a3ab638b558fd9249b220 (diff)
virtio: add non-legacy virtio 1.0 drivers for disk and ethernet
The new interface uses pci capability structures to locate the registers in a rather fine granular way making it more complicated as they can be located anywhere in any pci bar at any offset. As far as i can see, qemu (6.0.50) never uses i/o bars in non-legacy mode, so only mmio is implemented for now. The previous virtio drivers implemented the legacy interface only which uses i/o ports for all register accesses. This is still the preferred method (and also qemu default) as it is easier to emulate and most likely faster. However, some vps providers like vultr force the legacy interface to disabled with qemu -device option "disable-legacy=on" resulting on a system without a disk and ethernet.
Diffstat (limited to 'sys/src/9/pc64')
-rw-r--r--sys/src/9/pc64/pc642
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/src/9/pc64/pc64 b/sys/src/9/pc64/pc64
index 3250e9a45..1c9fbd172 100644
--- a/sys/src/9/pc64/pc64
+++ b/sys/src/9/pc64/pc64
@@ -78,6 +78,7 @@ link
etherwpi pci wifi
etherrt2860 pci wifi
ethervirtio pci
+ ethervirtio10 pci
ethermedium
# pcmciamodem
netdevmedium
@@ -105,6 +106,7 @@ misc
sdiahci pci sdscsi led
# sdodin pci sdscsi led
sdvirtio pci sdscsi
+ sdvirtio10 pci sdscsi
sdmmc pci pmmc
sdnvme pci
sdloop