From patchwork Mon Dec 9 20:48:26 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 299228 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id AFB962C009E for ; Tue, 10 Dec 2013 09:28:49 +1100 (EST) Received: from localhost ([::1]:45880 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Vq7u8-0003qX-2u for incoming@patchwork.ozlabs.org; Mon, 09 Dec 2013 15:58:12 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51504) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Vq7m4-0006hj-PL for qemu-devel@nongnu.org; Mon, 09 Dec 2013 15:49:58 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Vq7lz-0003up-5D for qemu-devel@nongnu.org; Mon, 09 Dec 2013 15:49:52 -0500 Received: from mail-ea0-x234.google.com ([2a00:1450:4013:c01::234]:61217) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Vq7ly-0003uj-Sw for qemu-devel@nongnu.org; Mon, 09 Dec 2013 15:49:47 -0500 Received: by mail-ea0-f180.google.com with SMTP id f15so1814609eak.25 for ; Mon, 09 Dec 2013 12:49:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-type:content-transfer-encoding; bh=0EXh99TYEiHeMtb0yFVGaBnddtqko7QlVN7NW0Tc0rg=; b=0Wiq4eSy/C83dzXex1mXjU+LfZs9bSSTGdxFuMe9SozxFwGMvhBzFRAD4LNzH4Kwd2 hhaD/VTGG+mLwU1znkRcrQZpglM5q8UJyM4Cbfk/pk7vKzhVU1EyB/f339TXOn/LGgnC rsYbYVv9VXhByK22Yys5bJJTXaQc+/6SSEsj6xDctK+vkwx4gtp3idzItsaA3JSV+5aJ nu9uF6lQdCPgzvr8wdIvnzVNT/gOsSMXf8fESE7mAmJvlbDqRBnsKh8nTJM6muQay3rF 4ptbLjOj7dhvfRSdhmtie8rZ+C4VDtvgA6pj0ygUhS0QLO6e9lu5ItU5lnS7u6ktbE/v Df6w== X-Received: by 10.14.2.73 with SMTP id 49mr14537351eee.15.1386622186098; Mon, 09 Dec 2013 12:49:46 -0800 (PST) Received: from yakj.lan (net-2-35-202-54.cust.dsl.vodafone.it. [2.35.202.54]) by mx.google.com with ESMTPSA id a45sm33003002eem.6.2013.12.09.12.49.44 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 09 Dec 2013 12:49:45 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Date: Mon, 9 Dec 2013 21:48:26 +0100 Message-Id: <1386622112-27257-25-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.4.2 In-Reply-To: <1386622112-27257-1-git-send-email-pbonzini@redhat.com> References: <1386622112-27257-1-git-send-email-pbonzini@redhat.com> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a00:1450:4013:c01::234 Cc: cornelia.huck@de.ibm.com, afaerber@suse.de, mst@redhat.com Subject: [Qemu-devel] [PULL 24/30] virtio-serial: Convert to QOM realize X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org From: Andreas Färber Signed-off-by: Andreas Färber Signed-off-by: Paolo Bonzini --- hw/char/virtio-serial-bus.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/hw/char/virtio-serial-bus.c b/hw/char/virtio-serial-bus.c index 313a5d8..df96117 100644 --- a/hw/char/virtio-serial-bus.c +++ b/hw/char/virtio-serial-bus.c @@ -889,23 +889,24 @@ static int virtser_port_qdev_exit(DeviceState *qdev) return 0; } -static int virtio_serial_device_init(VirtIODevice *vdev) +static void virtio_serial_device_realize(DeviceState *dev, Error **errp) { - DeviceState *dev = DEVICE(vdev); + VirtIODevice *vdev = VIRTIO_DEVICE(dev); VirtIOSerial *vser = VIRTIO_SERIAL(dev); BusState *bus; uint32_t i, max_supported_ports; if (!vser->serial.max_virtserial_ports) { - return -1; + error_setg(errp, "Maximum number of serial ports not specified"); + return; } /* Each port takes 2 queues, and one pair is for the control queue */ max_supported_ports = VIRTIO_PCI_QUEUE_MAX / 2 - 1; if (vser->serial.max_virtserial_ports > max_supported_ports) { - error_report("maximum ports supported: %u", max_supported_ports); - return -1; + error_setg(errp, "maximum ports supported: %u", max_supported_ports); + return; } virtio_init(vdev, "virtio-serial", VIRTIO_ID_CONSOLE, @@ -965,8 +966,6 @@ static int virtio_serial_device_init(VirtIODevice *vdev) */ register_savevm(dev, "virtio-console", -1, 3, virtio_serial_save, virtio_serial_load, vser); - - return 0; } static void virtio_serial_port_class_init(ObjectClass *klass, void *data) @@ -1016,9 +1015,10 @@ static void virtio_serial_class_init(ObjectClass *klass, void *data) { DeviceClass *dc = DEVICE_CLASS(klass); VirtioDeviceClass *vdc = VIRTIO_DEVICE_CLASS(klass); + dc->props = virtio_serial_properties; set_bit(DEVICE_CATEGORY_INPUT, dc->categories); - vdc->init = virtio_serial_device_init; + vdc->realize = virtio_serial_device_realize; vdc->exit = virtio_serial_device_exit; vdc->get_features = get_features; vdc->get_config = get_config;