From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:52826) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tfauo-0003FI-Ci for qemu-devel@nongnu.org; Mon, 03 Dec 2012 13:38:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Tfaui-0001HV-Ct for qemu-devel@nongnu.org; Mon, 03 Dec 2012 13:38:50 -0500 Received: from mailout2.w1.samsung.com ([210.118.77.12]:19507) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tfaui-0001HO-78 for qemu-devel@nongnu.org; Mon, 03 Dec 2012 13:38:44 -0500 Received: from eucpsbgm1.samsung.com (unknown [203.254.199.244]) by mailout2.w1.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0MEG00FFVX8W10C0@mailout2.w1.samsung.com> for qemu-devel@nongnu.org; Mon, 03 Dec 2012 18:41:20 +0000 (GMT) Received: from [106.109.9.127] by eusync3.samsung.com (Oracle Communications Messaging Server 7u4-23.01(7.0.4.23.0) 64bit (built Aug 10 2011)) with ESMTPA id <0MEG00BW2X4GLU00@eusync3.samsung.com> for qemu-devel@nongnu.org; Mon, 03 Dec 2012 18:38:41 +0000 (GMT) Date: Mon, 03 Dec 2012 22:38:40 +0400 From: Igor Mitsyanko In-reply-to: <1354417042-8818-3-git-send-email-andreas.faerber@web.de> Message-id: <50BCF1B0.2050407@samsung.com> MIME-version: 1.0 Content-type: text/plain; charset=UTF-8; format=flowed Content-transfer-encoding: QUOTED-PRINTABLE References: <1354417042-8818-1-git-send-email-andreas.faerber@web.de> <1354417042-8818-3-git-send-email-andreas.faerber@web.de> Subject: Re: [Qemu-devel] [PATCH RFT 2/5] usb/ehci: Move capsbase and opregbase into SysBus EHCI class Reply-To: i.mitsyanko@samsung.com List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?UTF-8?B?QW5kcmVhcyBGw6RyYmVy?= Cc: peter.crosthwaite@xilinx.com, walimisdev@gmail.com, qemu-devel@nongnu.org, kraxel@redhat.com On 12/02/2012 06:57 AM, Andreas F=C3=A4rber wrote: > This allows specific derived models to use different values. > > Signed-off-by: Andreas F=C3=A4rber > --- > hw/usb/hcd-ehci-sysbus.c | 26 ++++++++++++++++++++++++-- > 1 Datei ge=C3=A4ndert, 24 Zeilen hinzugef=C3=BCgt(+), 2 Zeilen en= tfernt(-) > > diff --git a/hw/usb/hcd-ehci-sysbus.c b/hw/usb/hcd-ehci-sysbus.c > index c7b68b2..38e82bb 100644 > --- a/hw/usb/hcd-ehci-sysbus.c > +++ b/hw/usb/hcd-ehci-sysbus.c > @@ -21,6 +21,17 @@ > #define TYPE_SYS_BUS_EHCI "sysbus-ehci-usb" > #define SYS_BUS_EHCI(obj) \ > OBJECT_CHECK(EHCISysBusState, (obj), TYPE_SYS_BUS_EHCI) > +#define SYS_BUS_EHCI_CLASS(class) \ > + OBJECT_CLASS_CHECK(SysBusEHCIClass, (class), TYPE_SYS_BUS_EHCI= ) > +#define SYS_BUS_EHCI_GET_CLASS(obj) \ > + OBJECT_GET_CLASS(SysBusEHCIClass, (obj), TYPE_SYS_BUS_EHCI) > + > +typedef struct SysBusEHCIClass { > + SysBusDeviceClass parent_class; > + > + uint16_t capsbase; > + uint16_t opregbase; > +} SysBusEHCIClass; > > typedef struct EHCISysBusState { > SysBusDevice parent_obj; > @@ -46,10 +57,11 @@ static Property ehci_sysbus_properties[] =3D { > static int usb_ehci_sysbus_initfn(SysBusDevice *dev) > { > EHCISysBusState *i =3D SYS_BUS_EHCI(dev); > + SysBusEHCIClass *sec =3D SYS_BUS_EHCI_GET_CLASS(dev); > EHCIState *s =3D &i->ehci; > > - s->capsbase =3D 0x100; > - s->opregbase =3D 0x140; > + s->capsbase =3D sec->capsbase; > + s->opregbase =3D sec->opregbase; > s->dma =3D &dma_context_memory; > > usb_ehci_initfn(s, DEVICE(dev)); > @@ -74,11 +86,21 @@ static const TypeInfo ehci_type_info =3D { > .instance_size =3D sizeof(EHCISysBusState), > .abstract =3D true, > .class_init =3D ehci_sysbus_class_init, > + .class_size =3D sizeof(SysBusEHCIClass), > }; > > +static void ehci_xlnx_class_init(ObjectClass *oc, void *data) > +{ > + SysBusEHCIClass *sec =3D SYS_BUS_EHCI_CLASS(oc); > + > + sec->capsbase =3D 0x100; > + sec->opregbase =3D 0x140; > +} > + > static const TypeInfo ehci_xlnx_type_info =3D { > .name =3D "xlnx,ps7-usb", > .parent =3D TYPE_SYS_BUS_EHCI, > + .class_init =3D ehci_xlnx_class_init, > }; > > static void ehci_sysbus_register_types(void) > Reviewed-by: Igor Mitsyanko --=20 Mitsyanko Igor ASWG, Moscow R&D center, Samsung Electronics email: i.mitsyanko@samsung.com