]> git.proxmox.com Git - mirror_qemu.git/blobdiff - hw/watchdog.h
pseries: Implement automatic PAPR VIO address allocation
[mirror_qemu.git] / hw / watchdog.h
index ad1fcfce56840f2fa9743658a4cca328c2700960..c12a29311aa149c159471cdcfc49d657f465986d 100644 (file)
 #ifndef QEMU_WATCHDOG_H
 #define QEMU_WATCHDOG_H
 
-extern void wdt_i6300esb_init(void);
-extern void wdt_ib700_init(void);
-
-/* Possible values for action parameter. */
-#define WDT_RESET        1     /* Hard reset. */
-#define WDT_SHUTDOWN     2     /* Shutdown. */
-#define WDT_POWEROFF     3     /* Quit. */
-#define WDT_PAUSE        4     /* Pause. */
-#define WDT_DEBUG        5     /* Prints a message and continues running. */
-#define WDT_NONE         6     /* Do nothing. */
+#include "qemu-queue.h"
 
 struct WatchdogTimerModel {
-    LIST_ENTRY(WatchdogTimerModel) entry;
+    QLIST_ENTRY(WatchdogTimerModel) entry;
 
     /* Short name of the device - used to select it on the command line. */
     const char *wdt_name;
     /* Longer description (eg. manufacturer and full model number). */
     const char *wdt_description;
-
-    /* This callback should create/register the device.  It is called
-     * indirectly from hw/pc.c when the virtual PC is being set up.
-     */
-    void (*wdt_pc_init)(PCIBus *pci_bus);
 };
 typedef struct WatchdogTimerModel WatchdogTimerModel;
 
-/* in vl.c */
-extern WatchdogTimerModel *watchdog;
-extern int watchdog_action;
-
 /* in hw/watchdog.c */
-extern int select_watchdog(const char *p);
-extern int select_watchdog_action(const char *action);
-extern void watchdog_add_model(WatchdogTimerModel *model);
-extern void watchdog_perform_action(void);
-extern void watchdog_pc_init(PCIBus *pci_bus);
-extern void register_watchdogs(void);
+int select_watchdog(const char *p);
+int select_watchdog_action(const char *action);
+void watchdog_add_model(WatchdogTimerModel *model);
+void watchdog_perform_action(void);
 
 #endif /* QEMU_WATCHDOG_H */