mirror of https://gitee.com/openkylin/qemu.git
ipmi: Add firmware registration to the ISA interface
Signed-off-by: Corey Minyard <cminyard@mvista.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
90b6180500
commit
44d3db0d96
|
@ -407,6 +407,7 @@ typedef struct ISAIPMIBTDevice {
|
|||
ISADevice dev;
|
||||
int32 isairq;
|
||||
IPMIBT bt;
|
||||
IPMIFwInfo fwinfo;
|
||||
} ISAIPMIBTDevice;
|
||||
|
||||
static void isa_ipmi_bt_realize(DeviceState *dev, Error **errp)
|
||||
|
@ -435,6 +436,20 @@ static void isa_ipmi_bt_realize(DeviceState *dev, Error **errp)
|
|||
qdev_set_legacy_instance_id(dev, iib->bt.io_base, iib->bt.io_length);
|
||||
|
||||
isa_register_ioport(isadev, &iib->bt.io, iib->bt.io_base);
|
||||
|
||||
iib->fwinfo.interface_name = "bt";
|
||||
iib->fwinfo.interface_type = IPMI_SMBIOS_BT;
|
||||
iib->fwinfo.ipmi_spec_major_revision = 2;
|
||||
iib->fwinfo.ipmi_spec_minor_revision = 0;
|
||||
iib->fwinfo.base_address = iib->bt.io_base;
|
||||
iib->fwinfo.register_length = iib->bt.io_length;
|
||||
iib->fwinfo.register_spacing = 1;
|
||||
iib->fwinfo.memspace = IPMI_MEMSPACE_IO;
|
||||
iib->fwinfo.irq_type = IPMI_LEVEL_IRQ;
|
||||
iib->fwinfo.interrupt_number = iib->isairq;
|
||||
iib->fwinfo.acpi_parent = "\\_SB.PCI0.ISA";
|
||||
iib->fwinfo.i2c_slave_address = iib->bt.bmc->slave_addr;
|
||||
ipmi_add_fwinfo(&iib->fwinfo, errp);
|
||||
}
|
||||
|
||||
static const VMStateDescription vmstate_ISAIPMIBTDevice = {
|
||||
|
|
|
@ -370,6 +370,7 @@ typedef struct ISAIPMIKCSDevice {
|
|||
ISADevice dev;
|
||||
int32 isairq;
|
||||
IPMIKCS kcs;
|
||||
IPMIFwInfo fwinfo;
|
||||
} ISAIPMIKCSDevice;
|
||||
|
||||
static void ipmi_isa_realize(DeviceState *dev, Error **errp)
|
||||
|
@ -398,6 +399,20 @@ static void ipmi_isa_realize(DeviceState *dev, Error **errp)
|
|||
qdev_set_legacy_instance_id(dev, iik->kcs.io_base, iik->kcs.io_length);
|
||||
|
||||
isa_register_ioport(isadev, &iik->kcs.io, iik->kcs.io_base);
|
||||
|
||||
iik->fwinfo.interface_name = "kcs";
|
||||
iik->fwinfo.interface_type = IPMI_SMBIOS_KCS;
|
||||
iik->fwinfo.ipmi_spec_major_revision = 2;
|
||||
iik->fwinfo.ipmi_spec_minor_revision = 0;
|
||||
iik->fwinfo.base_address = iik->kcs.io_base;
|
||||
iik->fwinfo.i2c_slave_address = iik->kcs.bmc->slave_addr;
|
||||
iik->fwinfo.register_length = iik->kcs.io_length;
|
||||
iik->fwinfo.register_spacing = 1;
|
||||
iik->fwinfo.memspace = IPMI_MEMSPACE_IO;
|
||||
iik->fwinfo.irq_type = IPMI_LEVEL_IRQ;
|
||||
iik->fwinfo.interrupt_number = iik->isairq;
|
||||
iik->fwinfo.acpi_parent = "\\_SB.PCI0.ISA";
|
||||
ipmi_add_fwinfo(&iik->fwinfo, errp);
|
||||
}
|
||||
|
||||
const VMStateDescription vmstate_ISAIPMIKCSDevice = {
|
||||
|
|
Loading…
Reference in New Issue