[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 11/12] ide: Make PIIX and ISA IDE init functions ret
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] [PATCH 11/12] ide: Make PIIX and ISA IDE init functions return the qdev |
Date: |
Fri, 25 Jun 2010 18:53:31 +0200 |
Signed-off-by: Markus Armbruster <address@hidden>
---
hw/ide.h | 11 ++++++-----
hw/ide/isa.c | 8 ++++----
hw/ide/piix.c | 6 ++++--
3 files changed, 14 insertions(+), 11 deletions(-)
diff --git a/hw/ide.h b/hw/ide.h
index 0e7d540..f0cb320 100644
--- a/hw/ide.h
+++ b/hw/ide.h
@@ -1,17 +1,18 @@
#ifndef HW_IDE_H
#define HW_IDE_H
-#include "qdev.h"
+#include "isa.h"
+#include "pci.h"
/* ide-isa.c */
-int isa_ide_init(int iobase, int iobase2, int isairq,
- DriveInfo *hd0, DriveInfo *hd1);
+ISADevice *isa_ide_init(int iobase, int iobase2, int isairq,
+ DriveInfo *hd0, DriveInfo *hd1);
/* ide-pci.c */
void pci_cmd646_ide_init(PCIBus *bus, DriveInfo **hd_table,
int secondary_ide_enabled);
-void pci_piix3_ide_init(PCIBus *bus, DriveInfo **hd_table, int devfn);
-void pci_piix4_ide_init(PCIBus *bus, DriveInfo **hd_table, int devfn);
+PCIDevice *pci_piix3_ide_init(PCIBus *bus, DriveInfo **hd_table, int devfn);
+PCIDevice *pci_piix4_ide_init(PCIBus *bus, DriveInfo **hd_table, int devfn);
/* ide-macio.c */
int pmac_ide_init (DriveInfo **hd_table, qemu_irq irq,
diff --git a/hw/ide/isa.c b/hw/ide/isa.c
index b6c6347..10777ca 100644
--- a/hw/ide/isa.c
+++ b/hw/ide/isa.c
@@ -75,8 +75,8 @@ static int isa_ide_initfn(ISADevice *dev)
return 0;
};
-int isa_ide_init(int iobase, int iobase2, int isairq,
- DriveInfo *hd0, DriveInfo *hd1)
+ISADevice *isa_ide_init(int iobase, int iobase2, int isairq,
+ DriveInfo *hd0, DriveInfo *hd1)
{
ISADevice *dev;
ISAIDEState *s;
@@ -86,14 +86,14 @@ int isa_ide_init(int iobase, int iobase2, int isairq,
qdev_prop_set_uint32(&dev->qdev, "iobase2", iobase2);
qdev_prop_set_uint32(&dev->qdev, "irq", isairq);
if (qdev_init(&dev->qdev) < 0)
- return -1;
+ return NULL;
s = DO_UPCAST(ISAIDEState, dev, dev);
if (hd0)
ide_create_drive(&s->bus, 0, hd0);
if (hd1)
ide_create_drive(&s->bus, 1, hd1);
- return 0;
+ return dev;
}
static ISADeviceInfo isa_ide_info = {
diff --git a/hw/ide/piix.c b/hw/ide/piix.c
index dad6e86..fa22226 100644
--- a/hw/ide/piix.c
+++ b/hw/ide/piix.c
@@ -160,22 +160,24 @@ static int pci_piix4_ide_initfn(PCIDevice *dev)
/* hd_table must contain 4 block drivers */
/* NOTE: for the PIIX3, the IRQs and IOports are hardcoded */
-void pci_piix3_ide_init(PCIBus *bus, DriveInfo **hd_table, int devfn)
+PCIDevice *pci_piix3_ide_init(PCIBus *bus, DriveInfo **hd_table, int devfn)
{
PCIDevice *dev;
dev = pci_create_simple(bus, devfn, "piix3-ide");
pci_ide_create_devs(dev, hd_table);
+ return dev;
}
/* hd_table must contain 4 block drivers */
/* NOTE: for the PIIX4, the IRQs and IOports are hardcoded */
-void pci_piix4_ide_init(PCIBus *bus, DriveInfo **hd_table, int devfn)
+PCIDevice *pci_piix4_ide_init(PCIBus *bus, DriveInfo **hd_table, int devfn)
{
PCIDevice *dev;
dev = pci_create_simple(bus, devfn, "piix4-ide");
pci_ide_create_devs(dev, hd_table);
+ return dev;
}
static PCIDeviceInfo piix_ide_info[] = {
--
1.6.6.1
- [Qemu-devel] [PATCH v2 08/12] block: Catch attempt to attach multiple devices to a blockdev, (continued)
- [Qemu-devel] [PATCH 03/12] blockdev: Remove drive_get_serial(), Markus Armbruster, 2010/06/25
- [Qemu-devel] [PATCH 09/12] savevm: Survive hot-unplug of snapshot device, Markus Armbruster, 2010/06/25
- [Qemu-devel] [PATCH 10/12] block: Fix virtual media change for if=none, Markus Armbruster, 2010/06/25
- [Qemu-devel] [PATCH 11/12] ide: Make PIIX and ISA IDE init functions return the qdev,
Markus Armbruster <=
- [Qemu-devel] [PATCH 07/12] blockdev: drive_get_by_id() is no longer used, remove, Markus Armbruster, 2010/06/25
- [Qemu-devel] [PATCH 02/12] ide: Make it explicit that ide_create_drive() can't fail, Markus Armbruster, 2010/06/25
- [Qemu-devel] [PATCH 04/12] blockdev: New drive_of_blockdev(), Markus Armbruster, 2010/06/25