aboutsummaryrefslogtreecommitdiff
path: root/include/hw/scsi/scsi.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/hw/scsi/scsi.h')
-rw-r--r--include/hw/scsi/scsi.h19
1 files changed, 9 insertions, 10 deletions
diff --git a/include/hw/scsi/scsi.h b/include/hw/scsi/scsi.h
index 2fc23e44ba..3818e3fa46 100644
--- a/include/hw/scsi/scsi.h
+++ b/include/hw/scsi/scsi.h
@@ -6,6 +6,7 @@
#include "hw/qdev-core.h"
#include "scsi/utils.h"
#include "qemu/notify.h"
+#include "qom/object.h"
#define MAX_SCSI_DEVS 255
@@ -49,14 +50,11 @@ struct SCSIRequest {
};
#define TYPE_SCSI_DEVICE "scsi-device"
-#define SCSI_DEVICE(obj) \
- OBJECT_CHECK(SCSIDevice, (obj), TYPE_SCSI_DEVICE)
-#define SCSI_DEVICE_CLASS(klass) \
- OBJECT_CLASS_CHECK(SCSIDeviceClass, (klass), TYPE_SCSI_DEVICE)
-#define SCSI_DEVICE_GET_CLASS(obj) \
- OBJECT_GET_CLASS(SCSIDeviceClass, (obj), TYPE_SCSI_DEVICE)
-
-typedef struct SCSIDeviceClass {
+typedef struct SCSIDeviceClass SCSIDeviceClass;
+DECLARE_OBJ_CHECKERS(SCSIDevice, SCSIDeviceClass,
+ SCSI_DEVICE, TYPE_SCSI_DEVICE)
+
+struct SCSIDeviceClass {
DeviceClass parent_class;
void (*realize)(SCSIDevice *dev, Error **errp);
void (*unrealize)(SCSIDevice *dev);
@@ -65,7 +63,7 @@ typedef struct SCSIDeviceClass {
SCSIRequest *(*alloc_req)(SCSIDevice *s, uint32_t tag, uint32_t lun,
uint8_t *buf, void *hba_private);
void (*unit_attention_reported)(SCSIDevice *s);
-} SCSIDeviceClass;
+};
struct SCSIDevice
{
@@ -136,7 +134,8 @@ struct SCSIBusInfo {
};
#define TYPE_SCSI_BUS "SCSI"
-#define SCSI_BUS(obj) OBJECT_CHECK(SCSIBus, (obj), TYPE_SCSI_BUS)
+DECLARE_INSTANCE_CHECKER(SCSIBus, SCSI_BUS,
+ TYPE_SCSI_BUS)
struct SCSIBus {
BusState qbus;