Yes, this is totally doable. I just don't know if it's a good idea to
add a new device type specifically for bhyve LPC and nothing else. Even
if we do it like this I'll still have to send another patch including
the bhyve XML namespace as we need to be able to pass extra command line
options to the bhyve process related to unimplemented MSRs on AMD Zen
systems. I thought I'd do the 2 things in a similar manner as both of
them are strictly bhyve specific
Regards,
Ivan
On 08/10/2018 04:58 PM, Daniel P. Berrangé wrote:
On Fri, Aug 10, 2018 at 03:41:09PM +0300, Ivan Mishonov wrote:
> This is how it's described in bhyve(8). Basically you need to configure one
> for each bhyve VM. Otherwise the VM won't boot. I'm not sure if there's
an
> equivalent device in other Hypervisors. I've used KVM for quite some time
> and didn't need to configure anything similar
>
> lpc LPC PCI-ISA bridge with COM1 and COM2
> 16550 serial ports and a boot ROM.
> The LPC bridge emulation can only be
> configured on bus 0.
Ok, so we have the same thing in QEMU, but it is a built-in part of the
machine type which we can't move between different PCI slots, so we have
never had to represent it in the XML.
I think conceptually we'd probably map this to a new controller type eg
<controller type="isa-bridge" index="0">
<address type="pci" domain="0" bus="0"
slot="NNN" function="0"/>
</controller>
So you'd just need to define the new "isa-bridge" controller type for
the parser and have the bhyve driver honour the <address>, if provided.
Regards,
Daniel