diff options
author | Brandon Bergren <git@bdragon.rtk0.net> | 2020-05-13 12:13:56 -0500 |
---|---|---|
committer | Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> | 2020-05-16 14:09:11 +0100 |
commit | 9b8c30c6db07daa27e9422daf1bb542dbe46170a (patch) | |
tree | 5a68ed9c865eb660f765694ff473f754ea64bdac | |
parent | 01069e6610e62a5b2aa886930d75a5cf644f4138 (diff) | |
download | openbios-9b8c30c6db07daa27e9422daf1bb542dbe46170a.zip openbios-9b8c30c6db07daa27e9422daf1bb542dbe46170a.tar.gz openbios-9b8c30c6db07daa27e9422daf1bb542dbe46170a.tar.bz2 |
pci: Enable bus-master on virtio_blk
In qemu 9d7bd0826f2d19f88631ad7078662668148f7b5f, the behavior of vring
processing was changed to not run whenever bus-mastering is disabled.
Since we were never enabling it in the first place, OpenBIOS was no longer
able to access virtio disks on qemu.
Fix this by enabling bus-mastering before initializing.
Signed-off-by: Brandon Bergren <git@bdragon.rtk0.net>
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
-rw-r--r-- | drivers/pci.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/pci.c b/drivers/pci.c index 9d501d3..34ae69a 100644 --- a/drivers/pci.c +++ b/drivers/pci.c @@ -816,6 +816,9 @@ int virtio_blk_config_cb(const pci_config_t *config) return 0; } + /* Enable bus mastering to ensure vring processing will run. */ + ob_pci_enable_bus_master(config); + ob_virtio_init(config->path, "virtio-blk", common_cfg, device_cfg, notify_base, notify_mult, idx); #endif |