1#ifndef WDT_DIAG288_H 2#define WDT_DIAG288_H 3 4#include "hw/qdev.h" 5 6#define TYPE_WDT_DIAG288 "diag288" 7#define DIAG288(obj) \ 8 OBJECT_CHECK(DIAG288State, (obj), TYPE_WDT_DIAG288) 9#define DIAG288_CLASS(klass) \ 10 OBJECT_CLASS_CHECK(DIAG288Class, (klass), TYPE_WDT_DIAG288) 11#define DIAG288_GET_CLASS(obj) \ 12 OBJECT_GET_CLASS(DIAG288Class, (obj), TYPE_WDT_DIAG288) 13 14#define WDT_DIAG288_INIT 0 15#define WDT_DIAG288_CHANGE 1 16#define WDT_DIAG288_CANCEL 2 17 18typedef struct DIAG288State { 19 /*< private >*/ 20 DeviceState parent_obj; 21 QEMUTimer *timer; 22 bool enabled; 23 24 /*< public >*/ 25} DIAG288State; 26 27typedef struct DIAG288Class { 28 /*< private >*/ 29 DeviceClass parent_class; 30 31 /*< public >*/ 32 int (*handle_timer)(DIAG288State *dev, 33 uint64_t func, uint64_t timeout); 34} DIAG288Class; 35 36#endif /* WDT_DIAG288_H */ 37