]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
bhyve: add ROM emulation
authorCorvin Köhne <CorvinK@beckhoff.com>
Thu, 10 Mar 2022 10:28:06 +0000 (11:28 +0100)
committerEmmanuel Vadot <manu@FreeBSD.org>
Thu, 10 Mar 2022 11:30:37 +0000 (12:30 +0100)
commite47fe3183e1f2d531230ffc627ec165ea23e72cb
treef1e0184fd09c70774cccdd425dd27f091fd817cc
parent563fd2240e13cfb53f6e5d50e9d1dc738b7c441e
bhyve: add ROM emulation

Some PCI devices especially GPUs require a ROM to work properly.
The ROM is executed by boot firmware to initialize the device.
To add a ROM to a device use the new ROM option for passthru device
(e.g. -s passthru,0/2/0,rom=<path>/<to>/<rom>).

It's necessary that the ROM is executed by the boot firmware.
It won't be executed by any OS.
Additionally, the boot firmware should be configured to execute the
ROM file.
For that reason, it's only possible to use a ROM when using
OVMF with enabled bus enumeration.

Differential Revision: https://reviews.freebsd.org/D33129
Sponsored by:   Beckhoff Automation GmbH & Co. KG
MFC after:      1 month
lib/libvmmapi/vmmapi.h
sys/amd64/vmm/vmm.c
usr.sbin/bhyve/bhyve.8
usr.sbin/bhyve/bhyve_config.5
usr.sbin/bhyve/pci_emul.c
usr.sbin/bhyve/pci_emul.h
usr.sbin/bhyve/pci_passthru.c