Skip to content

Commit

Permalink
hw/misc/pvpanic: extract public API from i386/pc to "hw/misc/pvpanic.h"
Browse files Browse the repository at this point in the history
and remove the old i386/pc dependency.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
  • Loading branch information
philmd authored and Michael Tokarev committed Dec 18, 2017
1 parent 489983d commit 0d5d8a3
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 9 deletions.
2 changes: 1 addition & 1 deletion hw/i386/acpi-build.c
Expand Up @@ -28,8 +28,8 @@
#include "qemu/error-report.h"
#include "hw/pci/pci.h"
#include "qom/cpu.h"
#include "hw/i386/pc.h"
#include "target/i386/cpu.h"
#include "hw/misc/pvpanic.h"
#include "hw/timer/hpet.h"
#include "hw/acpi/acpi-defs.h"
#include "hw/acpi/acpi.h"
Expand Down
9 changes: 4 additions & 5 deletions hw/misc/pvpanic.c
Expand Up @@ -17,17 +17,16 @@
#include "qemu/log.h"

#include "hw/nvram/fw_cfg.h"
#include "hw/i386/pc.h"
#include "hw/misc/pvpanic.h"

/* The bit of supported pv event */
#define PVPANIC_F_PANICKED 0

/* The pv event value */
#define PVPANIC_PANICKED (1 << PVPANIC_F_PANICKED)

#define TYPE_ISA_PVPANIC_DEVICE "pvpanic"
#define ISA_PVPANIC_DEVICE(obj) \
OBJECT_CHECK(PVPanicState, (obj), TYPE_ISA_PVPANIC_DEVICE)
OBJECT_CHECK(PVPanicState, (obj), TYPE_PVPANIC)

static void handle_event(int event)
{
Expand Down Expand Up @@ -104,7 +103,7 @@ static void pvpanic_isa_realizefn(DeviceState *dev, Error **errp)

uint16_t pvpanic_port(void)
{
Object *o = object_resolve_path_type("", TYPE_ISA_PVPANIC_DEVICE, NULL);
Object *o = object_resolve_path_type("", TYPE_PVPANIC, NULL);
if (!o) {
return 0;
}
Expand All @@ -126,7 +125,7 @@ static void pvpanic_isa_class_init(ObjectClass *klass, void *data)
}

static TypeInfo pvpanic_isa_info = {
.name = TYPE_ISA_PVPANIC_DEVICE,
.name = TYPE_PVPANIC,
.parent = TYPE_ISA_DEVICE,
.instance_size = sizeof(PVPanicState),
.instance_init = pvpanic_isa_initfn,
Expand Down
3 changes: 0 additions & 3 deletions include/hw/i386/pc.h
Expand Up @@ -306,9 +306,6 @@ int piix4_init(PCIBus *bus, ISABus **isa_bus, int devfn);
void pc_system_firmware_init(MemoryRegion *rom_memory,
bool isapc_ram_fw);

/* pvpanic.c */
uint16_t pvpanic_port(void);

/* acpi-build.c */
void pc_madt_cpu_entry(AcpiDeviceIf *adev, int uid,
const CPUArchIdList *apic_ids, GArray *entry);
Expand Down
21 changes: 21 additions & 0 deletions include/hw/misc/pvpanic.h
@@ -0,0 +1,21 @@
/*
* QEMU simulated pvpanic device.
*
* Copyright Fujitsu, Corp. 2013
*
* Authors:
* Wen Congyang <wency@cn.fujitsu.com>
* Hu Tao <hutao@cn.fujitsu.com>
*
* This work is licensed under the terms of the GNU GPL, version 2 or later.
* See the COPYING file in the top-level directory.
*
*/
#ifndef HW_MISC_PVPANIC_H
#define HW_MISC_PVPANIC_H

#define TYPE_PVPANIC "pvpanic"

uint16_t pvpanic_port(void);

#endif

0 comments on commit 0d5d8a3

Please sign in to comment.