From nobody Wed Feb 11 00:55:11 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1486302271621694.7902604709051; Sun, 5 Feb 2017 05:44:31 -0800 (PST) Received: from localhost ([::1]:43307 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1caN7G-0004ry-Eh for importer@patchew.org; Sun, 05 Feb 2017 08:44:30 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33674) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1caN1B-0000As-3c for qemu-devel@nongnu.org; Sun, 05 Feb 2017 08:38:14 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1caN17-0003Hl-VO for qemu-devel@nongnu.org; Sun, 05 Feb 2017 08:38:13 -0500 Received: from m12-14.163.com ([220.181.12.14]:60837) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1caN17-0003En-BI for qemu-devel@nongnu.org; Sun, 05 Feb 2017 08:38:09 -0500 Received: from localhost.localdomain (unknown [117.136.0.125]) by smtp10 (Coremail) with SMTP id DsCowACnVrepKpdYyVK9Ig--.30409S3; Sun, 05 Feb 2017 21:37:46 +0800 (CST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-Id; bh=0LIuUqaLw7GAp8Zb/F nJyFCrYZG5tkaNSU9xSup/3kk=; b=RM/XplcZkWk73/1zyL7PSXBZuaoWkYgOrI 0SbKgXd/AqCBTu/O+ImxubMmS7Dikw4zH3Ef8aEECzdHrGfIaA1MDfcNVyblr/9y +gKaF28IH7qedfGzlFKiozQv4NLBIPfr9rtpobR6opfN5x0ZX+LIPN74dXsziKCP buxDydvx0= From: xiaoqiang zhao To: qemu-devel@nongnu.org Date: Sun, 5 Feb 2017 21:37:23 +0800 Message-Id: <20170205133727.23424-6-zxq_yx_007@163.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20170205133727.23424-1-zxq_yx_007@163.com> References: <20170205133727.23424-1-zxq_yx_007@163.com> X-CM-TRANSID: DsCowACnVrepKpdYyVK9Ig--.30409S3 X-Coremail-Antispam: 1Uf129KBjvJXoWxZw1kKw1fGFyUAFWkuFy8Krg_yoW5Wr1UpF Z7AF95WrW8GF47JrWfKrWDGas5Jwn3Gw48t3WxGwsakw17Gr95JF1kA3ya9FWUGrZ7ZF4r tayxtry3W3W7Gw7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07jlZXOUUUUU= X-Originating-IP: [117.136.0.125] X-CM-SenderInfo: 520ts5t0bqili6rwjhhfrp/1tbiFgp1xlWBUnmo5wAAsf X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 220.181.12.14 Subject: [Qemu-devel] [RESEND PATCH 5/9] hw/timer: QOM'ify m48txx_sysbus (pass 1) X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: pbonzini@redhat.com, mark.cave-ayland@ilande.co.uk, atar4qemu@gmail.com, peter.maydell@linaro.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" * split the old SysBus init function into an instance_init and a Device realize function * use DeviceClass::realize instead of SysBusDeviceClass::init Signed-off-by: xiaoqiang zhao Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/timer/m48t59.c | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/hw/timer/m48t59.c b/hw/timer/m48t59.c index e46ca88391..39e425e950 100644 --- a/hw/timer/m48t59.c +++ b/hw/timer/m48t59.c @@ -765,30 +765,31 @@ static void m48t59_isa_realize(DeviceState *dev, Erro= r **errp) } } =20 -static int m48t59_init1(SysBusDevice *dev) +static void m48t59_init1(Object *obj) { - M48txxSysBusDeviceClass *u =3D M48TXX_SYS_BUS_GET_CLASS(dev); - M48txxSysBusState *d =3D M48TXX_SYS_BUS(dev); - Object *o =3D OBJECT(dev); + M48txxSysBusDeviceClass *u =3D M48TXX_SYS_BUS_GET_CLASS(obj); + M48txxSysBusState *d =3D M48TXX_SYS_BUS(obj); + SysBusDevice *dev =3D SYS_BUS_DEVICE(obj); M48t59State *s =3D &d->state; - Error *err =3D NULL; =20 s->model =3D u->info.model; s->size =3D u->info.size; sysbus_init_irq(dev, &s->IRQ); =20 - memory_region_init_io(&s->iomem, o, &nvram_ops, s, "m48t59.nvram", + memory_region_init_io(&s->iomem, obj, &nvram_ops, s, "m48t59.nvram", s->size); - memory_region_init_io(&d->io, o, &m48t59_io_ops, s, "m48t59", 4); - sysbus_init_mmio(dev, &s->iomem); - sysbus_init_mmio(dev, &d->io); - m48t59_realize_common(s, &err); - if (err !=3D NULL) { - error_free(err); - return -1; - } + memory_region_init_io(&d->io, obj, &m48t59_io_ops, s, "m48t59", 4); +} =20 - return 0; +static void m48t59_realize(DeviceState *dev, Error **errp) +{ + M48txxSysBusState *d =3D M48TXX_SYS_BUS(dev); + M48t59State *s =3D &d->state; + SysBusDevice *sbd =3D SYS_BUS_DEVICE(dev); + + sysbus_init_mmio(sbd, &s->iomem); + sysbus_init_mmio(sbd, &d->io); + m48t59_realize_common(s, errp); } =20 static uint32_t m48txx_isa_read(Nvram *obj, uint32_t addr) @@ -862,10 +863,9 @@ static Property m48t59_sysbus_properties[] =3D { static void m48txx_sysbus_class_init(ObjectClass *klass, void *data) { DeviceClass *dc =3D DEVICE_CLASS(klass); - SysBusDeviceClass *k =3D SYS_BUS_DEVICE_CLASS(klass); NvramClass *nc =3D NVRAM_CLASS(klass); =20 - k->init =3D m48t59_init1; + dc->realize =3D m48t59_realize; dc->reset =3D m48t59_reset_sysbus; dc->props =3D m48t59_sysbus_properties; nc->read =3D m48txx_sysbus_read; @@ -891,6 +891,7 @@ static const TypeInfo m48txx_sysbus_type_info =3D { .name =3D TYPE_M48TXX_SYS_BUS, .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(M48txxSysBusState), + .instance_init =3D m48t59_init1, .abstract =3D true, .class_init =3D m48txx_sysbus_class_init, .interfaces =3D (InterfaceInfo[]) { --=20 2.11.0