On 2/10/19 10:08 AM, Roman Bogorodskiy wrote:
This adds modeling of the pci-isa bridge device for bhyve to make
it possible to assign specific PCI address for instead of the default
PCI slot 0.
I tried to keep the existing behaviour, i.e. the isa-bridge controller
is automatically added to domain if it uses serial or video devices, or
boot ROM. It also tries to assign pci slot 1 for it, that should not
be a problem because previously that address was always reserved for
the isa-bridge, so it definitely wasn't used by other devices.
Now, however, it's not always reserved. For example, if there are no
devices in the domain configuration that require isa-bridge, and
users didn't explicitly add it (or added that on a different slot),
then PCI slot 1 is available for allocation. This probably can be a
problem for users when they figure out that they still need to add the
isa-bridge device on slot 1, but it's already used, but I'm not sure
if it's worth to always reserve slot 1 for that purpose.
Anything that is <controller type='pci' ...> should provide PCI slots
that other devices (including other PCI controllers) can be connected
to. This isn't a PCI controller, it is an ISA controller that happens to
plug into a PCI slot. So while it is a controller, it should have a
different type (maybe <controller type='isa'...>)