From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:32934) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gQ26K-0005D1-OY for qemu-devel@nongnu.org; Thu, 22 Nov 2018 22:25:53 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gQ26H-0001iC-LG for qemu-devel@nongnu.org; Thu, 22 Nov 2018 22:25:52 -0500 Received: from cmccmta1.chinamobile.com ([221.176.66.79]:55449) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gQ26G-0001cR-SU for qemu-devel@nongnu.org; Thu, 22 Nov 2018 22:25:49 -0500 References: <20181119120820.29878-1-maozhongyi@cmss.chinamobile.com> <20181119120820.29878-7-maozhongyi@cmss.chinamobile.com> From: maozy Message-ID: <045237dd-e33f-ae9e-eec0-0b46c822faed@cmss.chinamobile.com> Date: Fri, 23 Nov 2018 11:25:40 +0800 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 06/22] dma/puv3_dma: Convert sysbus initfunction to realize function List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: QEMU Developers , Guan Xuetao , Zhang Shengju On 11/20/18 10:46 PM, Peter Maydell wrote: > On 19 November 2018 at 12:08, Mao Zhongyi > wrote: >> Use DeviceClass rather than SysBusDeviceClass in >> puv3_dma_class_init(). >> >> Cc: gxt@mprc.pku.edu.cn >> >> Signed-off-by: Mao Zhongyi >> Signed-off-by: Zhang Shengju >> --- >> hw/dma/puv3_dma.c | 10 ++++------ >> 1 file changed, 4 insertions(+), 6 deletions(-) >> >> diff --git a/hw/dma/puv3_dma.c b/hw/dma/puv3_dma.c >> index b97a6c1767..c89eade029 100644 >> --- a/hw/dma/puv3_dma.c >> +++ b/hw/dma/puv3_dma.c >> @@ -76,7 +76,7 @@ static const MemoryRegionOps puv3_dma_ops = { >> .endianness = DEVICE_NATIVE_ENDIAN, >> }; >> >> -static int puv3_dma_init(SysBusDevice *dev) >> +static void puv3_dma_realize(DeviceState *dev, Error **errp) >> { >> PUV3DMAState *s = PUV3_DMA(dev); >> int i; >> @@ -87,16 +87,14 @@ static int puv3_dma_init(SysBusDevice *dev) >> >> memory_region_init_io(&s->iomem, OBJECT(s), &puv3_dma_ops, s, "puv3_dma", >> PUV3_REGS_OFFSET); >> - sysbus_init_mmio(dev, &s->iomem); >> - >> - return 0; >> + sysbus_init_mmio(SYS_BUS_DEVICE(dev), &s->iomem); >> } >> >> static void puv3_dma_class_init(ObjectClass *klass, void *data) >> { >> - SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); >> + DeviceClass *dc = DEVICE_CLASS(klass); >> >> - sdc->init = puv3_dma_init; >> + dc->realize = puv3_dma_realize; >> } >> >> static const TypeInfo puv3_dma_info = { > > Reviewed-by: Peter Maydell > > (I note that this device is missing a reset function and is > instead resetting in its init/realize function, but that's a > separate bug. It's also missing vmstate.) OK, I will fix it later in a separate patch. Thanks, Mao > > thanks > -- PMM >