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'...>)