[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL v2 48/51] ipmi: use a function to initialize the SDR
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL v2 48/51] ipmi: use a function to initialize the SDR table |
Date: |
Tue, 15 Mar 2016 17:03:10 +0200 |
From: Cédric Le Goater <address@hidden>
This patch moves the code section initializing the sdrs in its own
routine to prepare ground for changes in the subsequent patches.
Signed-off-by: Cédric Le Goater <address@hidden>
Acked-by: Corey Minyard <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
---
hw/ipmi/ipmi_bmc_sim.c | 49 ++++++++++++++++++++++++++++---------------------
1 file changed, 28 insertions(+), 21 deletions(-)
diff --git a/hw/ipmi/ipmi_bmc_sim.c b/hw/ipmi/ipmi_bmc_sim.c
index 52bfdb9..0d4d748 100644
--- a/hw/ipmi/ipmi_bmc_sim.c
+++ b/hw/ipmi/ipmi_bmc_sim.c
@@ -1694,6 +1694,33 @@ static const uint8_t init_sdrs[] = {
0xff, 0xff, 0x00, 0x00, 0x00
};
+static void ipmi_sdr_init(IPMIBmcSim *ibs)
+{
+ unsigned int i;
+ unsigned int recid;
+
+ for (i = 0;;) {
+ struct ipmi_sdr_header *sdrh;
+ int len;
+ if ((i + IPMI_SDR_HEADER_SIZE) > sizeof(init_sdrs)) {
+ error_report("Problem with recid 0x%4.4x", i);
+ return;
+ }
+ sdrh = (struct ipmi_sdr_header *) &init_sdrs[i];
+ len = ipmi_sdr_length(sdrh);
+ recid = ipmi_sdr_recid(sdrh);
+ if (recid == 0xffff) {
+ break;
+ }
+ if ((i + len) > sizeof(init_sdrs)) {
+ error_report("Problem with recid 0x%4.4x", i);
+ return;
+ }
+ sdr_add_entry(ibs, sdrh, len, NULL);
+ i += len;
+ }
+}
+
static const VMStateDescription vmstate_ipmi_sim = {
.name = TYPE_IPMI_BMC_SIMULATOR,
.version_id = 1,
@@ -1726,7 +1753,6 @@ static void ipmi_sim_realize(DeviceState *dev, Error
**errp)
{
IPMIBmc *b = IPMI_BMC(dev);
unsigned int i;
- unsigned int recid;
IPMIBmcSim *ibs = IPMI_BMC_SIMULATOR(b);
qemu_mutex_init(&ibs->lock);
@@ -1743,26 +1769,7 @@ static void ipmi_sim_realize(DeviceState *dev, Error
**errp)
ibs->sdr.last_clear[i] = 0xff;
}
- for (i = 0;;) {
- struct ipmi_sdr_header *sdrh;
- int len;
- if ((i + IPMI_SDR_HEADER_SIZE) > sizeof(init_sdrs)) {
- error_report("Problem with recid 0x%4.4x", i);
- return;
- }
- sdrh = (struct ipmi_sdr_header *) &init_sdrs[i];
- len = ipmi_sdr_length(sdrh);
- recid = ipmi_sdr_recid(sdrh);
- if (recid == 0xffff) {
- break;
- }
- if ((i + len) > sizeof(init_sdrs)) {
- error_report("Problem with recid 0x%4.4x", i);
- return;
- }
- sdr_add_entry(ibs, sdrh, len, NULL);
- i += len;
- }
+ ipmi_sdr_init(ibs);
ibs->acpi_power_state[0] = 0;
ibs->acpi_power_state[1] = 0;
--
MST
- [Qemu-devel] [PULL v2 38/51] pc: acpi: create Processor and Notify objects only for valid lapics, (continued)
- [Qemu-devel] [PULL v2 38/51] pc: acpi: create Processor and Notify objects only for valid lapics, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 39/51] pc: acpi: drop cpu->found_cpus bitmap, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 41/51] MAINTAINERS: Add an entry for virtio header files, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 40/51] pc: acpi: clarify why possible LAPIC entries must be present in MADT, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 42/51] MAINTAINERS: machine core, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 43/51] ipmi: remove IPMI_CHECK_CMD_LEN() macro, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 45/51] ipmi: remove IPMI_CHECK_RESERVATION() macro, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 47/51] ipmi: add a realize function to the device class, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 44/51] ipmi: replace IPMI_ADD_RSP_DATA() macro with inline helpers, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 46/51] ipmi: add rsp_buffer_set_error() helper, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 48/51] ipmi: use a function to initialize the SDR table,
Michael S. Tsirkin <=
- [Qemu-devel] [PULL v2 49/51] ipmi: remove the need of an ending record in the SDR table, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 50/51] ipmi: add some local variables in ipmi_sdr_init, Michael S. Tsirkin, 2016/03/15
- [Qemu-devel] [PULL v2 51/51] hw/acpi: fix GSI links UID, Michael S. Tsirkin, 2016/03/15
- Re: [Qemu-devel] [PULL v2 00/51] vhost, virtio, pci, pc, acpi, Peter Maydell, 2016/03/15