[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 31/55] ide: Provide IDEDeviceInfo method exit()
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] [PATCH 31/55] ide: Provide IDEDeviceInfo method exit() |
Date: |
Wed, 20 Jul 2011 18:24:05 +0200 |
Signed-off-by: Markus Armbruster <address@hidden>
---
hw/ide/internal.h | 1 +
hw/ide/qdev.c | 12 ++++++++++++
2 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/hw/ide/internal.h b/hw/ide/internal.h
index 12f80de..df8887a 100644
--- a/hw/ide/internal.h
+++ b/hw/ide/internal.h
@@ -527,6 +527,7 @@ typedef int (*ide_qdev_initfn)(IDEDevice *dev);
struct IDEDeviceInfo {
DeviceInfo qdev;
ide_qdev_initfn init;
+ ide_qdev_initfn exit;
};
#define BM_STATUS_DMAING 0x01
diff --git a/hw/ide/qdev.c b/hw/ide/qdev.c
index d9b8f24..97ccbe8 100644
--- a/hw/ide/qdev.c
+++ b/hw/ide/qdev.c
@@ -87,9 +87,21 @@ err:
return -1;
}
+static int ide_qdev_exit(DeviceState *qdev)
+{
+ IDEDevice *dev = DO_UPCAST(IDEDevice, qdev, qdev);
+ IDEDeviceInfo *info = DO_UPCAST(IDEDeviceInfo, qdev, qdev->info);
+
+ if (info->exit) {
+ return info->exit(dev);
+ }
+ return 0;
+}
+
static void ide_qdev_register(IDEDeviceInfo *info)
{
info->qdev.init = ide_qdev_init;
+ info->qdev.exit = ide_qdev_exit;
info->qdev.bus_info = &ide_bus_info;
qdev_register(&info->qdev);
}
--
1.7.2.3
- [Qemu-devel] [PATCH 32/55] ide/atapi: Don't fail eject when tray is already open, (continued)
- [Qemu-devel] [PATCH 32/55] ide/atapi: Don't fail eject when tray is already open, Markus Armbruster, 2011/07/20
- [Qemu-devel] [PATCH 05/55] block: Split change_cb() into change_media_cb(), resize_cb(), Markus Armbruster, 2011/07/20
- [Qemu-devel] [PATCH 34/55] scsi-disk: Fix START_STOP to fail when it can't eject, Markus Armbruster, 2011/07/20
- [Qemu-devel] [PATCH 39/55] block/raw: Fix to forward method bdrv_media_changed(), Markus Armbruster, 2011/07/20
- [Qemu-devel] [PATCH 15/55] ide/atapi: Clean up misleading name in cmd_start_stop_unit(), Markus Armbruster, 2011/07/20
- [Qemu-devel] [PATCH 31/55] ide: Provide IDEDeviceInfo method exit(),
Markus Armbruster <=
- [Qemu-devel] [PATCH 23/55] block: Show whether the guest ejected the medium in info block, Markus Armbruster, 2011/07/20
[Qemu-devel] [PATCH 26/55] scsi-disk: Track tray locked state, Markus Armbruster, 2011/07/20
[Qemu-devel] [PATCH 14/55] ide: Reject ATA commands specific to drive kinds, Markus Armbruster, 2011/07/20
[Qemu-devel] [PATCH 10/55] ide: Update command code definitions as per ACS-2 Table B.2, Markus Armbruster, 2011/07/20