From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34026) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V2YFO-0004gh-Sw for qemu-devel@nongnu.org; Thu, 25 Jul 2013 22:59:15 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V2YFN-0005gz-S1 for qemu-devel@nongnu.org; Thu, 25 Jul 2013 22:59:14 -0400 Received: from [222.73.24.84] (port=8309 helo=song.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V2YFN-0005fx-Gs for qemu-devel@nongnu.org; Thu, 25 Jul 2013 22:59:13 -0400 Date: Fri, 26 Jul 2013 10:58:00 +0800 From: Hu Tao Message-ID: <20130726025800.GD10249@localhost.localdomain> References: <1374707812-21404-1-git-send-email-afaerber@suse.de> <1374707812-21404-8-git-send-email-afaerber@suse.de> MIME-Version: 1.0 In-Reply-To: <1374707812-21404-8-git-send-email-afaerber@suse.de> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH qom-next for-1.6 7/8] pl110: QOM'ify pl110, pl110_versatile and pl111 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Andreas =?utf-8?Q?F=C3=A4rber?= Cc: qemu-devel@nongnu.org On Thu, Jul 25, 2013 at 01:16:51AM +0200, Andreas F=C3=A4rber wrote: > Let pl110=5Fversatile and pl111 inherit from pl110 and use PL110() cast; > set their version index in an instance=5Finit. >=20 > Signed-off-by: Andreas F=C3=A4rber > --- > hw/display/pl110.c | 71 ++++++++++++++++++++++--------------------------= ------ > 1 file changed, 29 insertions(+), 42 deletions(-) >=20 =20 <...> > -static int pl110=5Finit(SysBusDevice *dev) > +static int pl110=5Finit(SysBusDevice *sbd) > { > - PL110State *s =3D FROM=5FSYSBUS(PL110State, dev); > + DeviceState *dev =3D DEVICE(sbd); > + PL110State *s =3D PL110(dev); > =20 > memory=5Fregion=5Finit=5Fio(&s->iomem, OBJECT(s), &pl110=5Fops, s, "= pl110", 0x1000); > - sysbus=5Finit=5Fmmio(dev, &s->iomem); > - sysbus=5Finit=5Firq(dev, &s->irq); > - qdev=5Finit=5Fgpio=5Fin(&s->busdev.qdev, pl110=5Fmux=5Fctrl=5Fset, 1= ); > - s->con =3D graphic=5Fconsole=5Finit(DEVICE(dev), &pl110=5Fgfx=5Fops,= s); > + sysbus=5Finit=5Fmmio(sbd, &s->iomem); > + sysbus=5Finit=5Firq(sbd, &s->irq); > + qdev=5Finit=5Fgpio=5Fin(dev, pl110=5Fmux=5Fctrl=5Fset, 1); > + s->con =3D graphic=5Fconsole=5Finit(dev, &pl110=5Fgfx=5Fops, s); > return 0; Would it be better to explicitly set PL110 version? I know PL110 is 0, but it's not like a normal variable which is always good to be initialized to 0, assuming a version number is bad. (This is not a problem of this patch) > } > =20 > -static int pl110=5Fversatile=5Finit(SysBusDevice *dev) > +static void pl110=5Fversatile=5Finit(Object *obj) > { > - PL110State *s =3D FROM=5FSYSBUS(PL110State, dev); > + PL110State *s =3D PL110(obj); > + > s->version =3D PL110=5FVERSATILE; > - return pl110=5Finit(dev); > } =