From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41153) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a8RU1-0003R7-4h for qemu-devel@nongnu.org; Mon, 14 Dec 2015 06:40:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a8RU0-0001FD-1c for qemu-devel@nongnu.org; Mon, 14 Dec 2015 06:40:01 -0500 Received: from mx1.redhat.com ([209.132.183.28]:40853) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a8RTz-0001Ev-SK for qemu-devel@nongnu.org; Mon, 14 Dec 2015 06:39:59 -0500 From: Gerd Hoffmann Date: Mon, 14 Dec 2015 12:39:36 +0100 Message-Id: <1450093182-3500-6-git-send-email-kraxel@redhat.com> In-Reply-To: <1450093182-3500-1-git-send-email-kraxel@redhat.com> References: <1450093182-3500-1-git-send-email-kraxel@redhat.com> Subject: [Qemu-devel] [PATCH v2 04/10] igd: switch TYPE_IGD_PASSTHROUGH_I440FX_PCI_DEVICE to realize List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: igvt-g@ml01.01.org, xen-devel@lists.xensource.com, Eduardo Habkost , Stefano Stabellini , Gerd Hoffmann , vfio-users@redhat.com Signed-off-by: Gerd Hoffmann --- hw/pci-host/igd.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/hw/pci-host/igd.c b/hw/pci-host/igd.c index ef0273b..d1eeafb 100644 --- a/hw/pci-host/igd.c +++ b/hw/pci-host/igd.c @@ -53,7 +53,7 @@ out: return ret; } -static int igd_pt_i440fx_initfn(struct PCIDevice *pci_dev) +static void igd_pt_i440fx_realize(PCIDevice *pci_dev, Error **errp) { uint32_t val = 0; int rc, i, num; @@ -65,12 +65,11 @@ static int igd_pt_i440fx_initfn(struct PCIDevice *pci_dev) len = igd_host_bridge_infos[i].len; rc = host_pci_config_read(pos, len, val); if (rc) { - return -ENODEV; + error_setg(errp, "failed to read host config"); + return; } pci_default_write_config(pci_dev, pos, val, len); } - - return 0; } static void igd_passthrough_i440fx_class_init(ObjectClass *klass, void *data) @@ -78,7 +77,7 @@ static void igd_passthrough_i440fx_class_init(ObjectClass *klass, void *data) DeviceClass *dc = DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); - k->init = igd_pt_i440fx_initfn; + k->realize = igd_pt_i440fx_realize; dc->desc = "IGD Passthrough Host bridge"; } -- 1.8.3.1