qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm
@ 2016-03-07  7:05 xiaoqiang zhao
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 1/9] hw/arm: QOM'ify armv7m.c xiaoqiang zhao
                   ` (9 more replies)
  0 siblings, 10 replies; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-07  7:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: robh, qemu-arm, peter.maydell

This patch set trying to QOM'ify code under hw/arm directory.
As previous patches to hw/timer/*, we use instance_init instead of
the SysBus's init function. 


xiaoqiang zhao (9):
  hw/arm: QOM'ify armv7m.c
  hw/arm: QOM'ify highbank.c
  hw/arm: QOM'ify integratorcp.c
  hw/arm: QOM'ify pxa2xx.c
  hw/arm: QOM'ify pxa2xx_pic.c
  hw/arm: QOM'ify spitz.c
  hw/arm: QOM'ify stellaris.c
  hw/arm: QOM'ify strongarm.c
  hw/arm: QOM'ify versatilepb.c

 hw/arm/armv7m.c       | 11 ++++-----
 hw/arm/highbank.c     | 12 ++++------
 hw/arm/integratorcp.c | 32 ++++++++++---------------
 hw/arm/pxa2xx.c       | 26 +++++++++-----------
 hw/arm/pxa2xx_pic.c   |  7 ------
 hw/arm/spitz.c        | 23 +++++++-----------
 hw/arm/stellaris.c    | 48 ++++++++++++++++++-------------------
 hw/arm/strongarm.c    | 66 ++++++++++++++++++++++-----------------------------
 hw/arm/versatilepb.c  | 13 +++++-----
 9 files changed, 100 insertions(+), 138 deletions(-)

-- 
2.1.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [Qemu-devel] [PATCH 1/9] hw/arm: QOM'ify armv7m.c
  2016-03-07  7:05 [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm xiaoqiang zhao
@ 2016-03-07  7:05 ` xiaoqiang zhao
  2016-03-16 11:51   ` Peter Maydell
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 2/9] hw/arm: QOM'ify highbank.c xiaoqiang zhao
                   ` (8 subsequent siblings)
  9 siblings, 1 reply; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-07  7:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: robh, qemu-arm, peter.maydell

Drop the use of old SysBus init function and use instance_init

Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/arm/armv7m.c | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/hw/arm/armv7m.c b/hw/arm/armv7m.c
index ed7d97f..139247e 100644
--- a/hw/arm/armv7m.c
+++ b/hw/arm/armv7m.c
@@ -129,14 +129,14 @@ typedef struct {
     uint32_t base;
 } BitBandState;
 
-static int bitband_init(SysBusDevice *dev)
+static void bitband_init(Object *obj)
 {
-    BitBandState *s = BITBAND(dev);
+    BitBandState *s = BITBAND(obj);
+    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &bitband_ops, &s->base,
+    memory_region_init_io(&s->iomem, obj, &bitband_ops, &s->base,
                           "bitband", 0x02000000);
     sysbus_init_mmio(dev, &s->iomem);
-    return 0;
 }
 
 static void armv7m_bitband_init(void)
@@ -241,9 +241,7 @@ static Property bitband_properties[] = {
 static void bitband_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = bitband_init;
     dc->props = bitband_properties;
 }
 
@@ -251,6 +249,7 @@ static const TypeInfo bitband_info = {
     .name          = TYPE_BITBAND,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(BitBandState),
+    .instance_init = bitband_init,
     .class_init    = bitband_class_init,
 };
 
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [Qemu-devel] [PATCH 2/9] hw/arm: QOM'ify highbank.c
  2016-03-07  7:05 [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm xiaoqiang zhao
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 1/9] hw/arm: QOM'ify armv7m.c xiaoqiang zhao
@ 2016-03-07  7:05 ` xiaoqiang zhao
  2016-03-07 17:40   ` Peter Crosthwaite
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 3/9] hw/arm: QOM'ify integratorcp.c xiaoqiang zhao
                   ` (7 subsequent siblings)
  9 siblings, 1 reply; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-07  7:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: robh, qemu-arm, peter.maydell

Drop the use of old SysBus init function and use instance_init

Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/arm/highbank.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/hw/arm/highbank.c b/hw/arm/highbank.c
index e25cf5e..8f38dff 100644
--- a/hw/arm/highbank.c
+++ b/hw/arm/highbank.c
@@ -167,23 +167,20 @@ static void highbank_regs_reset(DeviceState *dev)
     s->regs[0x43] = 0x05F40121;
 }
 
-static int highbank_regs_init(SysBusDevice *dev)
+static void highbank_regs_init(Object *obj)
 {
-    HighbankRegsState *s = HIGHBANK_REGISTERS(dev);
+    HighbankRegsState *s = HIGHBANK_REGISTERS(obj);
+    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &hb_mem_ops, s->regs,
+    memory_region_init_io(&s->iomem, obj, &hb_mem_ops, s->regs,
                           "highbank_regs", 0x1000);
     sysbus_init_mmio(dev, &s->iomem);
-
-    return 0;
 }
 
 static void highbank_regs_class_init(ObjectClass *klass, void *data)
 {
-    SysBusDeviceClass *sbc = SYS_BUS_DEVICE_CLASS(klass);
     DeviceClass *dc = DEVICE_CLASS(klass);
 
-    sbc->init = highbank_regs_init;
     dc->desc = "Calxeda Highbank registers";
     dc->vmsd = &vmstate_highbank_regs;
     dc->reset = highbank_regs_reset;
@@ -193,6 +190,7 @@ static const TypeInfo highbank_regs_info = {
     .name          = TYPE_HIGHBANK_REGISTERS,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(HighbankRegsState),
+    .instance_init = highbank_regs_init,
     .class_init    = highbank_regs_class_init,
 };
 
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [Qemu-devel] [PATCH 3/9] hw/arm: QOM'ify integratorcp.c
  2016-03-07  7:05 [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm xiaoqiang zhao
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 1/9] hw/arm: QOM'ify armv7m.c xiaoqiang zhao
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 2/9] hw/arm: QOM'ify highbank.c xiaoqiang zhao
@ 2016-03-07  7:05 ` xiaoqiang zhao
  2016-03-16 11:47   ` Peter Maydell
  2016-09-18 11:43   ` Peter Maydell
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 4/9] hw/arm: QOM'ify pxa2xx.c xiaoqiang zhao
                   ` (6 subsequent siblings)
  9 siblings, 2 replies; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-07  7:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: robh, qemu-arm, peter.maydell

* Drop the use of old SysBus init function and use instance_init
* Remove the empty 'icp_pic_class_init' from Typeinfo

Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/arm/integratorcp.c | 32 ++++++++++++--------------------
 1 file changed, 12 insertions(+), 20 deletions(-)

diff --git a/hw/arm/integratorcp.c b/hw/arm/integratorcp.c
index c6656a8..782201a 100644
--- a/hw/arm/integratorcp.c
+++ b/hw/arm/integratorcp.c
@@ -239,9 +239,10 @@ static const MemoryRegionOps integratorcm_ops = {
     .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
-static int integratorcm_init(SysBusDevice *dev)
+static void integratorcm_init(Object *obj)
 {
-    IntegratorCMState *s = INTEGRATOR_CM(dev);
+    IntegratorCMState *s = INTEGRATOR_CM(obj);
+    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
 
     s->cm_osc = 0x01000048;
     /* ??? What should the high bits of this value be?  */
@@ -266,17 +267,16 @@ static int integratorcm_init(SysBusDevice *dev)
     s->cm_init = 0x00000112;
     s->cm_refcnt_offset = muldiv64(qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL), 24,
                                    1000);
-    memory_region_init_ram(&s->flash, OBJECT(s), "integrator.flash", 0x100000,
+    memory_region_init_ram(&s->flash, obj, "integrator.flash", 0x100000,
                            &error_fatal);
     vmstate_register_ram_global(&s->flash);
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &integratorcm_ops, s,
+    memory_region_init_io(&s->iomem, obj, &integratorcm_ops, s,
                           "integratorcm", 0x00800000);
     sysbus_init_mmio(dev, &s->iomem);
 
     integratorcm_do_remap(s);
     /* ??? Save/restore.  */
-    return 0;
 }
 
 /* Integrator/CP hardware emulation.  */
@@ -391,18 +391,18 @@ static const MemoryRegionOps icp_pic_ops = {
     .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
-static int icp_pic_init(SysBusDevice *sbd)
+static void icp_pic_init(Object *obj)
 {
-    DeviceState *dev = DEVICE(sbd);
-    icp_pic_state *s = INTEGRATOR_PIC(dev);
+    DeviceState *dev = DEVICE(obj);
+    icp_pic_state *s = INTEGRATOR_PIC(obj);
+    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
 
     qdev_init_gpio_in(dev, icp_pic_set_irq, 32);
     sysbus_init_irq(sbd, &s->parent_irq);
     sysbus_init_irq(sbd, &s->parent_fiq);
-    memory_region_init_io(&s->iomem, OBJECT(s), &icp_pic_ops, s,
+    memory_region_init_io(&s->iomem, obj, &icp_pic_ops, s,
                           "icp-pic", 0x00800000);
     sysbus_init_mmio(sbd, &s->iomem);
-    return 0;
 }
 
 /* CP control registers.  */
@@ -627,9 +627,7 @@ static Property core_properties[] = {
 static void core_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = integratorcm_init;
     dc->props = core_properties;
 }
 
@@ -637,21 +635,15 @@ static const TypeInfo core_info = {
     .name          = TYPE_INTEGRATOR_CM,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(IntegratorCMState),
+    .instance_init = integratorcm_init,
     .class_init    = core_class_init,
 };
 
-static void icp_pic_class_init(ObjectClass *klass, void *data)
-{
-    SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass);
-
-    sdc->init = icp_pic_init;
-}
-
 static const TypeInfo icp_pic_info = {
     .name          = TYPE_INTEGRATOR_PIC,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(icp_pic_state),
-    .class_init    = icp_pic_class_init,
+    .instance_init = icp_pic_init,
 };
 
 static const TypeInfo icp_ctrl_regs_info = {
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [Qemu-devel] [PATCH 4/9] hw/arm: QOM'ify pxa2xx.c
  2016-03-07  7:05 [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm xiaoqiang zhao
                   ` (2 preceding siblings ...)
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 3/9] hw/arm: QOM'ify integratorcp.c xiaoqiang zhao
@ 2016-03-07  7:05 ` xiaoqiang zhao
  2016-03-16 11:56   ` Peter Maydell
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 5/9] hw/arm: QOM'ify pxa2xx_pic.c xiaoqiang zhao
                   ` (5 subsequent siblings)
  9 siblings, 1 reply; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-07  7:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: robh, qemu-arm, peter.maydell

Drop the use of old SysBus init function and use instance_init

Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/arm/pxa2xx.c | 26 +++++++++++---------------
 1 file changed, 11 insertions(+), 15 deletions(-)

diff --git a/hw/arm/pxa2xx.c b/hw/arm/pxa2xx.c
index ff6ac7a..8bdffca 100644
--- a/hw/arm/pxa2xx.c
+++ b/hw/arm/pxa2xx.c
@@ -1103,9 +1103,10 @@ static const MemoryRegionOps pxa2xx_rtc_ops = {
     .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
-static int pxa2xx_rtc_init(SysBusDevice *dev)
+static void pxa2xx_rtc_init(Object *obj)
 {
-    PXA2xxRTCState *s = PXA2XX_RTC(dev);
+    PXA2xxRTCState *s = PXA2XX_RTC(obj);
+    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
     struct tm tm;
     int wom;
 
@@ -1134,11 +1135,9 @@ static int pxa2xx_rtc_init(SysBusDevice *dev)
 
     sysbus_init_irq(dev, &s->rtc_irq);
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &pxa2xx_rtc_ops, s,
+    memory_region_init_io(&s->iomem, obj, &pxa2xx_rtc_ops, s,
                           "pxa2xx-rtc", 0x10000);
     sysbus_init_mmio(dev, &s->iomem);
-
-    return 0;
 }
 
 static void pxa2xx_rtc_pre_save(void *opaque)
@@ -1191,9 +1190,7 @@ static const VMStateDescription vmstate_pxa2xx_rtc_regs = {
 static void pxa2xx_rtc_sysbus_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = pxa2xx_rtc_init;
     dc->desc = "PXA2xx RTC Controller";
     dc->vmsd = &vmstate_pxa2xx_rtc_regs;
 }
@@ -1202,6 +1199,7 @@ static const TypeInfo pxa2xx_rtc_sysbus_info = {
     .name          = TYPE_PXA2XX_RTC,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(PXA2xxRTCState),
+    .instance_init = pxa2xx_rtc_init,
     .class_init    = pxa2xx_rtc_sysbus_class_init,
 };
 
@@ -1497,19 +1495,18 @@ PXA2xxI2CState *pxa2xx_i2c_init(hwaddr base,
     return s;
 }
 
-static int pxa2xx_i2c_initfn(SysBusDevice *sbd)
+static void pxa2xx_i2c_initfn(Object *obj)
 {
-    DeviceState *dev = DEVICE(sbd);
-    PXA2xxI2CState *s = PXA2XX_I2C(dev);
+    DeviceState *dev = DEVICE(obj);
+    PXA2xxI2CState *s = PXA2XX_I2C(obj);
+    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
 
     s->bus = i2c_init_bus(dev, "i2c");
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &pxa2xx_i2c_ops, s,
+    memory_region_init_io(&s->iomem, obj, &pxa2xx_i2c_ops, s,
                           "pxa2xx-i2c", s->region_size);
     sysbus_init_mmio(sbd, &s->iomem);
     sysbus_init_irq(sbd, &s->irq);
-
-    return 0;
 }
 
 I2CBus *pxa2xx_i2c_bus(PXA2xxI2CState *s)
@@ -1526,9 +1523,7 @@ static Property pxa2xx_i2c_properties[] = {
 static void pxa2xx_i2c_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = pxa2xx_i2c_initfn;
     dc->desc = "PXA2xx I2C Bus Controller";
     dc->vmsd = &vmstate_pxa2xx_i2c;
     dc->props = pxa2xx_i2c_properties;
@@ -1538,6 +1533,7 @@ static const TypeInfo pxa2xx_i2c_info = {
     .name          = TYPE_PXA2XX_I2C,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(PXA2xxI2CState),
+    .instance_init = pxa2xx_i2c_initfn,
     .class_init    = pxa2xx_i2c_class_init,
 };
 
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [Qemu-devel] [PATCH 5/9] hw/arm: QOM'ify pxa2xx_pic.c
  2016-03-07  7:05 [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm xiaoqiang zhao
                   ` (3 preceding siblings ...)
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 4/9] hw/arm: QOM'ify pxa2xx.c xiaoqiang zhao
@ 2016-03-07  7:05 ` xiaoqiang zhao
  2016-03-16 11:35   ` Peter Maydell
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 7/9] hw/arm: QOM'ify stellaris.c xiaoqiang zhao
                   ` (4 subsequent siblings)
  9 siblings, 1 reply; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-07  7:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: robh, qemu-arm, peter.maydell

Remove the empty 'pxa2xx_pic_initfn' and it's
setup code in the 'pxa2xx_pic_class_init'

Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/arm/pxa2xx_pic.c | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/hw/arm/pxa2xx_pic.c b/hw/arm/pxa2xx_pic.c
index 8a39b1c..9e08c55 100644
--- a/hw/arm/pxa2xx_pic.c
+++ b/hw/arm/pxa2xx_pic.c
@@ -308,17 +308,10 @@ static VMStateDescription vmstate_pxa2xx_pic_regs = {
     },
 };
 
-static int pxa2xx_pic_initfn(SysBusDevice *dev)
-{
-    return 0;
-}
-
 static void pxa2xx_pic_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = pxa2xx_pic_initfn;
     dc->desc = "PXA2xx PIC";
     dc->vmsd = &vmstate_pxa2xx_pic_regs;
 }
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [Qemu-devel] [PATCH 7/9] hw/arm: QOM'ify stellaris.c
  2016-03-07  7:05 [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm xiaoqiang zhao
                   ` (4 preceding siblings ...)
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 5/9] hw/arm: QOM'ify pxa2xx_pic.c xiaoqiang zhao
@ 2016-03-07  7:05 ` xiaoqiang zhao
  2016-03-16 11:54   ` Peter Maydell
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 8/9] hw/arm: QOM'ify strongarm.c xiaoqiang zhao
                   ` (3 subsequent siblings)
  9 siblings, 1 reply; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-07  7:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: robh, qemu-arm, peter.maydell

* Drop the use of old SysBus init function and use instance_init
* Use DeviceClass::vmsd instead of 'vmstate_register' function

Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/arm/stellaris.c | 48 ++++++++++++++++++++++++------------------------
 1 file changed, 24 insertions(+), 24 deletions(-)

diff --git a/hw/arm/stellaris.c b/hw/arm/stellaris.c
index de8dbb2..cc0e0ae 100644
--- a/hw/arm/stellaris.c
+++ b/hw/arm/stellaris.c
@@ -315,23 +315,22 @@ static const VMStateDescription vmstate_stellaris_gptm = {
     }
 };
 
-static int stellaris_gptm_init(SysBusDevice *sbd)
+static void stellaris_gptm_init(Object *obj)
 {
-    DeviceState *dev = DEVICE(sbd);
-    gptm_state *s = STELLARIS_GPTM(dev);
+    DeviceState *dev = DEVICE(obj);
+    gptm_state *s = STELLARIS_GPTM(obj);
+    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
 
     sysbus_init_irq(sbd, &s->irq);
     qdev_init_gpio_out(dev, &s->trigger, 1);
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &gptm_ops, s,
+    memory_region_init_io(&s->iomem, obj, &gptm_ops, s,
                           "gptm", 0x1000);
     sysbus_init_mmio(sbd, &s->iomem);
 
     s->opaque[0] = s->opaque[1] = s;
     s->timer[0] = timer_new_ns(QEMU_CLOCK_VIRTUAL, gptm_tick, &s->opaque[0]);
     s->timer[1] = timer_new_ns(QEMU_CLOCK_VIRTUAL, gptm_tick, &s->opaque[1]);
-    vmstate_register(dev, -1, &vmstate_stellaris_gptm, s);
-    return 0;
 }
 
 
@@ -872,23 +871,22 @@ static const VMStateDescription vmstate_stellaris_i2c = {
     }
 };
 
-static int stellaris_i2c_init(SysBusDevice *sbd)
+static void stellaris_i2c_init(Object *obj)
 {
-    DeviceState *dev = DEVICE(sbd);
-    stellaris_i2c_state *s = STELLARIS_I2C(dev);
+    DeviceState *dev = DEVICE(obj);
+    stellaris_i2c_state *s = STELLARIS_I2C(obj);
+    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
     I2CBus *bus;
 
     sysbus_init_irq(sbd, &s->irq);
     bus = i2c_init_bus(dev, "i2c");
     s->bus = bus;
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &stellaris_i2c_ops, s,
+    memory_region_init_io(&s->iomem, obj, &stellaris_i2c_ops, s,
                           "i2c", 0x1000);
     sysbus_init_mmio(sbd, &s->iomem);
     /* ??? For now we only implement the master interface.  */
     stellaris_i2c_reset(s);
-    vmstate_register(dev, -1, &vmstate_stellaris_i2c, s);
-    return 0;
 }
 
 /* Analogue to Digital Converter.  This is only partially implemented,
@@ -1159,23 +1157,22 @@ static const VMStateDescription vmstate_stellaris_adc = {
     }
 };
 
-static int stellaris_adc_init(SysBusDevice *sbd)
+static void stellaris_adc_init(Object *obj)
 {
-    DeviceState *dev = DEVICE(sbd);
-    stellaris_adc_state *s = STELLARIS_ADC(dev);
+    DeviceState *dev = DEVICE(obj);
+    stellaris_adc_state *s = STELLARIS_ADC(obj);
+    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
     int n;
 
     for (n = 0; n < 4; n++) {
         sysbus_init_irq(sbd, &s->irq[n]);
     }
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &stellaris_adc_ops, s,
+    memory_region_init_io(&s->iomem, obj, &stellaris_adc_ops, s,
                           "adc", 0x1000);
     sysbus_init_mmio(sbd, &s->iomem);
     stellaris_adc_reset(s);
     qdev_init_gpio_in(dev, stellaris_adc_trigger, 1);
-    vmstate_register(dev, -1, &vmstate_stellaris_adc, s);
-    return 0;
 }
 
 static
@@ -1424,43 +1421,46 @@ machine_init(stellaris_machine_init)
 
 static void stellaris_i2c_class_init(ObjectClass *klass, void *data)
 {
-    SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass);
+    DeviceClass *dc = DEVICE_CLASS(klass);
 
-    sdc->init = stellaris_i2c_init;
+    dc->vmsd = &vmstate_stellaris_i2c;
 }
 
 static const TypeInfo stellaris_i2c_info = {
     .name          = TYPE_STELLARIS_I2C,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(stellaris_i2c_state),
+    .instance_init = stellaris_i2c_init,
     .class_init    = stellaris_i2c_class_init,
 };
 
 static void stellaris_gptm_class_init(ObjectClass *klass, void *data)
 {
-    SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass);
+    DeviceClass *dc = DEVICE_CLASS(klass);
 
-    sdc->init = stellaris_gptm_init;
+    dc->vmsd = &vmstate_stellaris_gptm;
 }
 
 static const TypeInfo stellaris_gptm_info = {
     .name          = TYPE_STELLARIS_GPTM,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(gptm_state),
+    .instance_init = stellaris_gptm_init,
     .class_init    = stellaris_gptm_class_init,
 };
 
 static void stellaris_adc_class_init(ObjectClass *klass, void *data)
 {
-    SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass);
+    DeviceClass *dc = DEVICE_CLASS(klass);
 
-    sdc->init = stellaris_adc_init;
+    dc->vmsd = &vmstate_stellaris_adc;
 }
 
 static const TypeInfo stellaris_adc_info = {
     .name          = TYPE_STELLARIS_ADC,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(stellaris_adc_state),
+    .instance_init = stellaris_adc_init,
     .class_init    = stellaris_adc_class_init,
 };
 
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [Qemu-devel] [PATCH 8/9] hw/arm: QOM'ify strongarm.c
  2016-03-07  7:05 [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm xiaoqiang zhao
                   ` (5 preceding siblings ...)
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 7/9] hw/arm: QOM'ify stellaris.c xiaoqiang zhao
@ 2016-03-07  7:05 ` xiaoqiang zhao
  2016-03-16 11:50   ` Peter Maydell
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 9/9] hw/arm: QOM'ify versatilepb.c xiaoqiang zhao
                   ` (2 subsequent siblings)
  9 siblings, 1 reply; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-07  7:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: robh, qemu-arm, peter.maydell

Drop the use of old SysBus init function and use instance_init

Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/arm/strongarm.c | 66 +++++++++++++++++++++++-------------------------------
 1 file changed, 28 insertions(+), 38 deletions(-)

diff --git a/hw/arm/strongarm.c b/hw/arm/strongarm.c
index 3b17a21..78f58c6 100644
--- a/hw/arm/strongarm.c
+++ b/hw/arm/strongarm.c
@@ -177,19 +177,18 @@ static const MemoryRegionOps strongarm_pic_ops = {
     .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
-static int strongarm_pic_initfn(SysBusDevice *sbd)
+static void strongarm_pic_initfn(Object *obj)
 {
-    DeviceState *dev = DEVICE(sbd);
-    StrongARMPICState *s = STRONGARM_PIC(dev);
+    DeviceState *dev = DEVICE(obj);
+    StrongARMPICState *s = STRONGARM_PIC(obj);
+    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
 
     qdev_init_gpio_in(dev, strongarm_pic_set_irq, SA_PIC_SRCS);
-    memory_region_init_io(&s->iomem, OBJECT(s), &strongarm_pic_ops, s,
+    memory_region_init_io(&s->iomem, obj, &strongarm_pic_ops, s,
                           "pic", 0x1000);
     sysbus_init_mmio(sbd, &s->iomem);
     sysbus_init_irq(sbd, &s->irq);
     sysbus_init_irq(sbd, &s->fiq);
-
-    return 0;
 }
 
 static int strongarm_pic_post_load(void *opaque, int version_id)
@@ -215,9 +214,7 @@ static VMStateDescription vmstate_strongarm_pic_regs = {
 static void strongarm_pic_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = strongarm_pic_initfn;
     dc->desc = "StrongARM PIC";
     dc->vmsd = &vmstate_strongarm_pic_regs;
 }
@@ -226,6 +223,7 @@ static const TypeInfo strongarm_pic_info = {
     .name          = TYPE_STRONGARM_PIC,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(StrongARMPICState),
+    .instance_init = strongarm_pic_initfn,
     .class_init    = strongarm_pic_class_init,
 };
 
@@ -379,9 +377,10 @@ static const MemoryRegionOps strongarm_rtc_ops = {
     .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
-static int strongarm_rtc_init(SysBusDevice *dev)
+static void strongarm_rtc_init(Object *obj)
 {
-    StrongARMRTCState *s = STRONGARM_RTC(dev);
+    StrongARMRTCState *s = STRONGARM_RTC(obj);
+    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
     struct tm tm;
 
     s->rttr = 0x0;
@@ -398,11 +397,9 @@ static int strongarm_rtc_init(SysBusDevice *dev)
     sysbus_init_irq(dev, &s->rtc_irq);
     sysbus_init_irq(dev, &s->rtc_hz_irq);
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &strongarm_rtc_ops, s,
+    memory_region_init_io(&s->iomem, obj, &strongarm_rtc_ops, s,
                           "rtc", 0x10000);
     sysbus_init_mmio(dev, &s->iomem);
-
-    return 0;
 }
 
 static void strongarm_rtc_pre_save(void *opaque)
@@ -441,9 +438,7 @@ static const VMStateDescription vmstate_strongarm_rtc_regs = {
 static void strongarm_rtc_sysbus_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = strongarm_rtc_init;
     dc->desc = "StrongARM RTC Controller";
     dc->vmsd = &vmstate_strongarm_rtc_regs;
 }
@@ -452,6 +447,7 @@ static const TypeInfo strongarm_rtc_sysbus_info = {
     .name          = TYPE_STRONGARM_RTC,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(StrongARMRTCState),
+    .instance_init = strongarm_rtc_init,
     .class_init    = strongarm_rtc_sysbus_class_init,
 };
 
@@ -644,16 +640,17 @@ static DeviceState *strongarm_gpio_init(hwaddr base,
     return dev;
 }
 
-static int strongarm_gpio_initfn(SysBusDevice *sbd)
+static void strongarm_gpio_initfn(Object *obj)
 {
-    DeviceState *dev = DEVICE(sbd);
-    StrongARMGPIOInfo *s = STRONGARM_GPIO(dev);
+    DeviceState *dev = DEVICE(obj);
+    StrongARMGPIOInfo *s = STRONGARM_GPIO(obj);
+    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
     int i;
 
     qdev_init_gpio_in(dev, strongarm_gpio_set, 28);
     qdev_init_gpio_out(dev, s->handler, 28);
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &strongarm_gpio_ops, s,
+    memory_region_init_io(&s->iomem, obj, &strongarm_gpio_ops, s,
                           "gpio", 0x1000);
 
     sysbus_init_mmio(sbd, &s->iomem);
@@ -661,8 +658,6 @@ static int strongarm_gpio_initfn(SysBusDevice *sbd)
         sysbus_init_irq(sbd, &s->irqs[i]);
     }
     sysbus_init_irq(sbd, &s->irqX);
-
-    return 0;
 }
 
 static const VMStateDescription vmstate_strongarm_gpio_regs = {
@@ -685,9 +680,7 @@ static const VMStateDescription vmstate_strongarm_gpio_regs = {
 static void strongarm_gpio_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = strongarm_gpio_initfn;
     dc->desc = "StrongARM GPIO controller";
     dc->vmsd = &vmstate_strongarm_gpio_regs;
 }
@@ -696,6 +689,7 @@ static const TypeInfo strongarm_gpio_info = {
     .name          = TYPE_STRONGARM_GPIO,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(StrongARMGPIOInfo),
+    .instance_init = strongarm_gpio_initfn,
     .class_init    = strongarm_gpio_class_init,
 };
 
@@ -822,20 +816,19 @@ static const MemoryRegionOps strongarm_ppc_ops = {
     .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
-static int strongarm_ppc_init(SysBusDevice *sbd)
+static void strongarm_ppc_init(Object *obj)
 {
-    DeviceState *dev = DEVICE(sbd);
-    StrongARMPPCInfo *s = STRONGARM_PPC(dev);
+    DeviceState *dev = DEVICE(obj);
+    StrongARMPPCInfo *s = STRONGARM_PPC(obj);
+    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
 
     qdev_init_gpio_in(dev, strongarm_ppc_set, 22);
     qdev_init_gpio_out(dev, s->handler, 22);
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &strongarm_ppc_ops, s,
+    memory_region_init_io(&s->iomem, obj, &strongarm_ppc_ops, s,
                           "ppc", 0x1000);
 
     sysbus_init_mmio(sbd, &s->iomem);
-
-    return 0;
 }
 
 static const VMStateDescription vmstate_strongarm_ppc_regs = {
@@ -857,9 +850,7 @@ static const VMStateDescription vmstate_strongarm_ppc_regs = {
 static void strongarm_ppc_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = strongarm_ppc_init;
     dc->desc = "StrongARM PPC controller";
     dc->vmsd = &vmstate_strongarm_ppc_regs;
 }
@@ -868,6 +859,7 @@ static const TypeInfo strongarm_ppc_info = {
     .name          = TYPE_STRONGARM_PPC,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(StrongARMPPCInfo),
+    .instance_init = strongarm_ppc_init,
     .class_init    = strongarm_ppc_class_init,
 };
 
@@ -1229,11 +1221,12 @@ static const MemoryRegionOps strongarm_uart_ops = {
     .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
-static int strongarm_uart_init(SysBusDevice *dev)
+static void strongarm_uart_init(Object *obj)
 {
-    StrongARMUARTState *s = STRONGARM_UART(dev);
+    StrongARMUARTState *s = STRONGARM_UART(obj);
+    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &strongarm_uart_ops, s,
+    memory_region_init_io(&s->iomem, obj, &strongarm_uart_ops, s,
                           "uart", 0x10000);
     sysbus_init_mmio(dev, &s->iomem);
     sysbus_init_irq(dev, &s->irq);
@@ -1248,8 +1241,6 @@ static int strongarm_uart_init(SysBusDevice *dev)
                         strongarm_uart_event,
                         s);
     }
-
-    return 0;
 }
 
 static void strongarm_uart_reset(DeviceState *dev)
@@ -1319,9 +1310,7 @@ static Property strongarm_uart_properties[] = {
 static void strongarm_uart_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = strongarm_uart_init;
     dc->desc = "StrongARM UART controller";
     dc->reset = strongarm_uart_reset;
     dc->vmsd = &vmstate_strongarm_uart_regs;
@@ -1332,6 +1321,7 @@ static const TypeInfo strongarm_uart_info = {
     .name          = TYPE_STRONGARM_UART,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(StrongARMUARTState),
+    .instance_init = strongarm_uart_init,
     .class_init    = strongarm_uart_class_init,
 };
 
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [Qemu-devel] [PATCH 9/9] hw/arm: QOM'ify versatilepb.c
  2016-03-07  7:05 [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm xiaoqiang zhao
                   ` (6 preceding siblings ...)
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 8/9] hw/arm: QOM'ify strongarm.c xiaoqiang zhao
@ 2016-03-07  7:05 ` xiaoqiang zhao
  2016-03-16 11:39   ` Peter Maydell
  2016-03-16  2:34 ` [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm zxq_yx_007
  2016-03-16 11:31 ` Peter Maydell
  9 siblings, 1 reply; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-07  7:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: robh, qemu-arm, peter.maydell

Drop the use of old SysBus init function and use instance_init

Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/arm/versatilepb.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/hw/arm/versatilepb.c b/hw/arm/versatilepb.c
index d061f0f..a2411e3 100644
--- a/hw/arm/versatilepb.c
+++ b/hw/arm/versatilepb.c
@@ -150,10 +150,11 @@ static const MemoryRegionOps vpb_sic_ops = {
     .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
-static int vpb_sic_init(SysBusDevice *sbd)
+static void vpb_sic_init(Object *obj)
 {
-    DeviceState *dev = DEVICE(sbd);
-    vpb_sic_state *s = VERSATILE_PB_SIC(dev);
+    DeviceState *dev = DEVICE(obj);
+    vpb_sic_state *s = VERSATILE_PB_SIC(obj);
+    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
     int i;
 
     qdev_init_gpio_in(dev, vpb_sic_set_irq, 32);
@@ -161,10 +162,9 @@ static int vpb_sic_init(SysBusDevice *sbd)
         sysbus_init_irq(sbd, &s->parent[i]);
     }
     s->irq = 31;
-    memory_region_init_io(&s->iomem, OBJECT(s), &vpb_sic_ops, s,
+    memory_region_init_io(&s->iomem, obj, &vpb_sic_ops, s,
                           "vpb-sic", 0x1000);
     sysbus_init_mmio(sbd, &s->iomem);
-    return 0;
 }
 
 /* Board init.  */
@@ -424,9 +424,7 @@ machine_init(versatile_machine_init)
 static void vpb_sic_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = vpb_sic_init;
     dc->vmsd = &vmstate_vpb_sic;
 }
 
@@ -434,6 +432,7 @@ static const TypeInfo vpb_sic_info = {
     .name          = TYPE_VERSATILE_PB_SIC,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(vpb_sic_state),
+    .instance_init = vpb_sic_init,
     .class_init    = vpb_sic_class_init,
 };
 
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 2/9] hw/arm: QOM'ify highbank.c
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 2/9] hw/arm: QOM'ify highbank.c xiaoqiang zhao
@ 2016-03-07 17:40   ` Peter Crosthwaite
  2016-03-08  1:50     ` hitmoon
  0 siblings, 1 reply; 28+ messages in thread
From: Peter Crosthwaite @ 2016-03-07 17:40 UTC (permalink / raw)
  To: xiaoqiang zhao
  Cc: Rob Herring, qemu-arm, qemu-devel@nongnu.org Developers,
	Peter Maydell

On Sun, Mar 6, 2016 at 11:05 PM, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> Drop the use of old SysBus init function and use instance_init
>
> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>

Reviewed-by: Peter Crosthwaite <crosthwaite.peter@gmail.com>

(just this one as I have done some highbank work recently - I cant do
the whole series).

Regards,
Peter

> ---
>  hw/arm/highbank.c | 12 +++++-------
>  1 file changed, 5 insertions(+), 7 deletions(-)
>
> diff --git a/hw/arm/highbank.c b/hw/arm/highbank.c
> index e25cf5e..8f38dff 100644
> --- a/hw/arm/highbank.c
> +++ b/hw/arm/highbank.c
> @@ -167,23 +167,20 @@ static void highbank_regs_reset(DeviceState *dev)
>      s->regs[0x43] = 0x05F40121;
>  }
>
> -static int highbank_regs_init(SysBusDevice *dev)
> +static void highbank_regs_init(Object *obj)
>  {
> -    HighbankRegsState *s = HIGHBANK_REGISTERS(dev);
> +    HighbankRegsState *s = HIGHBANK_REGISTERS(obj);
> +    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
>
> -    memory_region_init_io(&s->iomem, OBJECT(s), &hb_mem_ops, s->regs,
> +    memory_region_init_io(&s->iomem, obj, &hb_mem_ops, s->regs,
>                            "highbank_regs", 0x1000);
>      sysbus_init_mmio(dev, &s->iomem);
> -
> -    return 0;
>  }
>
>  static void highbank_regs_class_init(ObjectClass *klass, void *data)
>  {
> -    SysBusDeviceClass *sbc = SYS_BUS_DEVICE_CLASS(klass);
>      DeviceClass *dc = DEVICE_CLASS(klass);
>
> -    sbc->init = highbank_regs_init;
>      dc->desc = "Calxeda Highbank registers";
>      dc->vmsd = &vmstate_highbank_regs;
>      dc->reset = highbank_regs_reset;
> @@ -193,6 +190,7 @@ static const TypeInfo highbank_regs_info = {
>      .name          = TYPE_HIGHBANK_REGISTERS,
>      .parent        = TYPE_SYS_BUS_DEVICE,
>      .instance_size = sizeof(HighbankRegsState),
> +    .instance_init = highbank_regs_init,
>      .class_init    = highbank_regs_class_init,
>  };
>
> --
> 2.1.4
>
>
>

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 2/9] hw/arm: QOM'ify highbank.c
  2016-03-07 17:40   ` Peter Crosthwaite
@ 2016-03-08  1:50     ` hitmoon
  0 siblings, 0 replies; 28+ messages in thread
From: hitmoon @ 2016-03-08  1:50 UTC (permalink / raw)
  To: Peter Crosthwaite
  Cc: Rob Herring, qemu-arm, qemu-devel@nongnu.org Developers,
	Peter Maydell



在 2016年03月08日 01:40, Peter Crosthwaite 写道:
> On Sun, Mar 6, 2016 at 11:05 PM, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
>> Drop the use of old SysBus init function and use instance_init
>>
>> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
> Reviewed-by: Peter Crosthwaite <crosthwaite.peter@gmail.com>
>
> (just this one as I have done some highbank work recently - I cant do
> the whole series).
>
> Regards,
> Peter
>
>> ---
>>   hw/arm/highbank.c | 12 +++++-------
>>   1 file changed, 5 insertions(+), 7 deletions(-)
>>
>> diff --git a/hw/arm/highbank.c b/hw/arm/highbank.c
>> index e25cf5e..8f38dff 100644
>> --- a/hw/arm/highbank.c
>> +++ b/hw/arm/highbank.c
>> @@ -167,23 +167,20 @@ static void highbank_regs_reset(DeviceState *dev)
>>       s->regs[0x43] = 0x05F40121;
>>   }
>>
>> -static int highbank_regs_init(SysBusDevice *dev)
>> +static void highbank_regs_init(Object *obj)
>>   {
>> -    HighbankRegsState *s = HIGHBANK_REGISTERS(dev);
>> +    HighbankRegsState *s = HIGHBANK_REGISTERS(obj);
>> +    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
>>
>> -    memory_region_init_io(&s->iomem, OBJECT(s), &hb_mem_ops, s->regs,
>> +    memory_region_init_io(&s->iomem, obj, &hb_mem_ops, s->regs,
>>                             "highbank_regs", 0x1000);
>>       sysbus_init_mmio(dev, &s->iomem);
>> -
>> -    return 0;
>>   }
>>
>>   static void highbank_regs_class_init(ObjectClass *klass, void *data)
>>   {
>> -    SysBusDeviceClass *sbc = SYS_BUS_DEVICE_CLASS(klass);
>>       DeviceClass *dc = DEVICE_CLASS(klass);
>>
>> -    sbc->init = highbank_regs_init;
>>       dc->desc = "Calxeda Highbank registers";
>>       dc->vmsd = &vmstate_highbank_regs;
>>       dc->reset = highbank_regs_reset;
>> @@ -193,6 +190,7 @@ static const TypeInfo highbank_regs_info = {
>>       .name          = TYPE_HIGHBANK_REGISTERS,
>>       .parent        = TYPE_SYS_BUS_DEVICE,
>>       .instance_size = sizeof(HighbankRegsState),
>> +    .instance_init = highbank_regs_init,
>>       .class_init    = highbank_regs_class_init,
>>   };
>>
>> --
>> 2.1.4
>>
>>
>>
Thanks for your reply, Peter !

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm
  2016-03-07  7:05 [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm xiaoqiang zhao
                   ` (7 preceding siblings ...)
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 9/9] hw/arm: QOM'ify versatilepb.c xiaoqiang zhao
@ 2016-03-16  2:34 ` zxq_yx_007
  2016-03-16 11:31 ` Peter Maydell
  9 siblings, 0 replies; 28+ messages in thread
From: zxq_yx_007 @ 2016-03-16  2:34 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: robh, qemu-arm, qemu-devel, peter.maydell


At 2016-03-07 15:05:41, "xiaoqiang zhao" <zxq_yx_007@163.com> wrote:
>This patch set trying to QOM'ify code under hw/arm directory.
>As previous patches to hw/timer/*, we use instance_init instead of
>the SysBus's init function. 
>
>
>xiaoqiang zhao (9):
>  hw/arm: QOM'ify armv7m.c
>  hw/arm: QOM'ify highbank.c
>  hw/arm: QOM'ify integratorcp.c
>  hw/arm: QOM'ify pxa2xx.c
>  hw/arm: QOM'ify pxa2xx_pic.c
>  hw/arm: QOM'ify spitz.c
>  hw/arm: QOM'ify stellaris.c
>  hw/arm: QOM'ify strongarm.c
>  hw/arm: QOM'ify versatilepb.c
>
> hw/arm/armv7m.c       | 11 ++++-----
> hw/arm/highbank.c     | 12 ++++------
> hw/arm/integratorcp.c | 32 ++++++++++---------------
> hw/arm/pxa2xx.c       | 26 +++++++++-----------
> hw/arm/pxa2xx_pic.c   |  7 ------
> hw/arm/spitz.c        | 23 +++++++-----------
> hw/arm/stellaris.c    | 48 ++++++++++++++++++-------------------
> hw/arm/strongarm.c    | 66 ++++++++++++++++++++++-----------------------------
> hw/arm/versatilepb.c  | 13 +++++-----
> 9 files changed, 100 insertions(+), 138 deletions(-)
>
>-- 
>2.1.4

>
ping !

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm
  2016-03-07  7:05 [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm xiaoqiang zhao
                   ` (8 preceding siblings ...)
  2016-03-16  2:34 ` [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm zxq_yx_007
@ 2016-03-16 11:31 ` Peter Maydell
  2016-03-16 12:00   ` Peter Maydell
  9 siblings, 1 reply; 28+ messages in thread
From: Peter Maydell @ 2016-03-16 11:31 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: Rob Herring, qemu-arm, QEMU Developers

On 7 March 2016 at 07:05, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> This patch set trying to QOM'ify code under hw/arm directory.
> As previous patches to hw/timer/*, we use instance_init instead of
> the SysBus's init function.
>
>
> xiaoqiang zhao (9):
>   hw/arm: QOM'ify armv7m.c
>   hw/arm: QOM'ify highbank.c
>   hw/arm: QOM'ify integratorcp.c
>   hw/arm: QOM'ify pxa2xx.c
>   hw/arm: QOM'ify pxa2xx_pic.c
>   hw/arm: QOM'ify spitz.c
>   hw/arm: QOM'ify stellaris.c
>   hw/arm: QOM'ify strongarm.c
>   hw/arm: QOM'ify versatilepb.c

A general note -- since these aren't bug fixes and we're in soft
freeze now, I don't think we should put them in until 2.6 is out.
I'll review the patches in a second, though.

thanks
-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 5/9] hw/arm: QOM'ify pxa2xx_pic.c
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 5/9] hw/arm: QOM'ify pxa2xx_pic.c xiaoqiang zhao
@ 2016-03-16 11:35   ` Peter Maydell
  0 siblings, 0 replies; 28+ messages in thread
From: Peter Maydell @ 2016-03-16 11:35 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: Rob Herring, qemu-arm, QEMU Developers

On 7 March 2016 at 07:05, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> Remove the empty 'pxa2xx_pic_initfn' and it's
> setup code in the 'pxa2xx_pic_class_init'
>
> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

thanks
-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 9/9] hw/arm: QOM'ify versatilepb.c
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 9/9] hw/arm: QOM'ify versatilepb.c xiaoqiang zhao
@ 2016-03-16 11:39   ` Peter Maydell
  0 siblings, 0 replies; 28+ messages in thread
From: Peter Maydell @ 2016-03-16 11:39 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: Rob Herring, qemu-arm, QEMU Developers

On 7 March 2016 at 07:05, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> Drop the use of old SysBus init function and use instance_init
>
> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
> ---
>  hw/arm/versatilepb.c | 13 ++++++-------
>  1 file changed, 6 insertions(+), 7 deletions(-)

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

Followup cleanups you could do for the vpb_sic code:
 * move it out of hw/arm/versatilepb.c into a new hw/intc/vpb_sic.c
 * implement a reset method

thanks
-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 3/9] hw/arm: QOM'ify integratorcp.c
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 3/9] hw/arm: QOM'ify integratorcp.c xiaoqiang zhao
@ 2016-03-16 11:47   ` Peter Maydell
  2016-09-18 11:43   ` Peter Maydell
  1 sibling, 0 replies; 28+ messages in thread
From: Peter Maydell @ 2016-03-16 11:47 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: Rob Herring, qemu-arm, QEMU Developers

On 7 March 2016 at 07:05, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> * Drop the use of old SysBus init function and use instance_init
> * Remove the empty 'icp_pic_class_init' from Typeinfo
>
> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

Possible follow-up cleanups:
 * move the integrator_pic code into hw/intc/integrator_pic.c
 * move the icp-ctrl-regs code into hw/misc/integrator_control.c
 * move the integrator_core code into hw/misc/integrator_core.c
 * implement reset methods for these devices
 * implement migration state via a VMState struct for these devices

thanks
-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 8/9] hw/arm: QOM'ify strongarm.c
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 8/9] hw/arm: QOM'ify strongarm.c xiaoqiang zhao
@ 2016-03-16 11:50   ` Peter Maydell
  0 siblings, 0 replies; 28+ messages in thread
From: Peter Maydell @ 2016-03-16 11:50 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: Rob Herring, qemu-arm, QEMU Developers

On 7 March 2016 at 07:05, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> Drop the use of old SysBus init function and use instance_init
>
> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
> ---

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

Again, followup cleanups are possible to move these devices
out of the board file and into their own source files in the
appropriate subdirectories of hw/, and to add reset methods
to the devices which are missing them.

thanks
-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 1/9] hw/arm: QOM'ify armv7m.c
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 1/9] hw/arm: QOM'ify armv7m.c xiaoqiang zhao
@ 2016-03-16 11:51   ` Peter Maydell
  0 siblings, 0 replies; 28+ messages in thread
From: Peter Maydell @ 2016-03-16 11:51 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: Rob Herring, qemu-arm, QEMU Developers

On 7 March 2016 at 07:05, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> Drop the use of old SysBus init function and use instance_init
>
> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
> ---
>  hw/arm/armv7m.c | 11 +++++------
>  1 file changed, 5 insertions(+), 6 deletions(-)

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

thanks
-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 7/9] hw/arm: QOM'ify stellaris.c
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 7/9] hw/arm: QOM'ify stellaris.c xiaoqiang zhao
@ 2016-03-16 11:54   ` Peter Maydell
  0 siblings, 0 replies; 28+ messages in thread
From: Peter Maydell @ 2016-03-16 11:54 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: Rob Herring, qemu-arm, QEMU Developers

On 7 March 2016 at 07:05, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> * Drop the use of old SysBus init function and use instance_init
> * Use DeviceClass::vmsd instead of 'vmstate_register' function
>
> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
> ---
>  hw/arm/stellaris.c | 48 ++++++++++++++++++++++++------------------------
>  1 file changed, 24 insertions(+), 24 deletions(-)

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

Followup cleanups:
 * implement proper reset methods
 * move code for each device into its own file in the right
   subdirectory of hw/

thanks
-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 4/9] hw/arm: QOM'ify pxa2xx.c
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 4/9] hw/arm: QOM'ify pxa2xx.c xiaoqiang zhao
@ 2016-03-16 11:56   ` Peter Maydell
  0 siblings, 0 replies; 28+ messages in thread
From: Peter Maydell @ 2016-03-16 11:56 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: Rob Herring, qemu-arm, QEMU Developers

On 7 March 2016 at 07:05, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> Drop the use of old SysBus init function and use instance_init
>
> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
> ---
>  hw/arm/pxa2xx.c | 26 +++++++++++---------------
>  1 file changed, 11 insertions(+), 15 deletions(-)

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

Again, more cleanups are possible on these devices...

thanks
-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm
  2016-03-16 11:31 ` Peter Maydell
@ 2016-03-16 12:00   ` Peter Maydell
  2016-03-16 12:06     ` xiaoqiang zhao
  2016-03-31  1:48     ` xiaoqiang zhao
  0 siblings, 2 replies; 28+ messages in thread
From: Peter Maydell @ 2016-03-16 12:00 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: Rob Herring, qemu-arm, QEMU Developers

On 16 March 2016 at 11:31, Peter Maydell <peter.maydell@linaro.org> wrote:
> A general note -- since these aren't bug fixes and we're in soft
> freeze now, I don't think we should put them in until 2.6 is out.
> I'll review the patches in a second, though.

Well, the patches all look good -- ping me after 2.6 is out to
apply them to target-arm.next then.

Where I've noted possible further cleanups, that's intended as
an "if you like writing cleanup patches" thing -- you don't need
to try to do them as part of this patch series.

thanks
-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm
  2016-03-16 12:00   ` Peter Maydell
@ 2016-03-16 12:06     ` xiaoqiang zhao
  2016-03-31  1:48     ` xiaoqiang zhao
  1 sibling, 0 replies; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-16 12:06 UTC (permalink / raw)
  To: Peter Maydell; +Cc: Rob Herring, qemu-arm, QEMU Developers



> 在 2016年3月16日,20:00,Peter Maydell <peter.maydell@linaro.org> 写道:
> 
>> On 16 March 2016 at 11:31, Peter Maydell <peter.maydell@linaro.org> wrote:
>> A general note -- since these aren't bug fixes and we're in soft
>> freeze now, I don't think we should put them in until 2.6 is out.
>> I'll review the patches in a second, though.
> 
> Well, the patches all look good -- ping me after 2.6 is out to
> apply them to target-arm.next then.
> 
> Where I've noted possible further cleanups, that's intended as
> an "if you like writing cleanup patches" thing -- you don't need
> to try to do them as part of this patch series.
> 
> thanks
> -- PMM

Okay.  Happy to contribute! 
Thanks!

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm
  2016-03-16 12:00   ` Peter Maydell
  2016-03-16 12:06     ` xiaoqiang zhao
@ 2016-03-31  1:48     ` xiaoqiang zhao
  2016-03-31  8:05       ` Peter Maydell
  1 sibling, 1 reply; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-31  1:48 UTC (permalink / raw)
  To: Peter Maydell; +Cc: Rob Herring, qemu-arm, QEMU Developers


在 2016年03月16日 20:00, Peter Maydell 写道:
> On 16 March 2016 at 11:31, Peter Maydell <peter.maydell@linaro.org> wrote:
>> A general note -- since these aren't bug fixes and we're in soft
>> freeze now, I don't think we should put them in until 2.6 is out.
>> I'll review the patches in a second, though.
> Well, the patches all look good -- ping me after 2.6 is out to
> apply them to target-arm.next then.
>
> Where I've noted possible further cleanups, that's intended as
> an "if you like writing cleanup patches" thing -- you don't need
> to try to do them as part of this patch series.
>
> thanks
> -- PMM
ping !

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm
  2016-03-31  1:48     ` xiaoqiang zhao
@ 2016-03-31  8:05       ` Peter Maydell
  2016-03-31  8:15         ` xiaoqiang zhao
  0 siblings, 1 reply; 28+ messages in thread
From: Peter Maydell @ 2016-03-31  8:05 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: Rob Herring, qemu-arm, QEMU Developers

On 31 March 2016 at 02:48, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
>
> 在 2016年03月16日 20:00, Peter Maydell 写道:
>>
>> On 16 March 2016 at 11:31, Peter Maydell <peter.maydell@linaro.org> wrote:
>>>
>>> A general note -- since these aren't bug fixes and we're in soft
>>> freeze now, I don't think we should put them in until 2.6 is out.
>>> I'll review the patches in a second, though.
>>
>> Well, the patches all look good -- ping me after 2.6 is out to
>> apply them to target-arm.next then.
>>
>> Where I've noted possible further cleanups, that's intended as
>> an "if you like writing cleanup patches" thing -- you don't need
>> to try to do them as part of this patch series.

> ping !

I suggested you ping me after 2.6 is out, which won't be til the
end of April or thereabouts.

thanks
-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm
  2016-03-31  8:05       ` Peter Maydell
@ 2016-03-31  8:15         ` xiaoqiang zhao
  2016-05-12  1:46           ` 赵小强
  0 siblings, 1 reply; 28+ messages in thread
From: xiaoqiang zhao @ 2016-03-31  8:15 UTC (permalink / raw)
  To: Peter Maydell; +Cc: Rob Herring, qemu-arm, QEMU Developers



> 在 2016年3月31日,16:05,Peter Maydell <peter.maydell@linaro.org> 写道:
> 
>> On 31 March 2016 at 02:48, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
>> 
>>> 在 2016年03月16日 20:00, Peter Maydell 写道:
>>> 
>>>> On 16 March 2016 at 11:31, Peter Maydell <peter.maydell@linaro.org> wrote:
>>>> 
>>>> A general note -- since these aren't bug fixes and we're in soft
>>>> freeze now, I don't think we should put them in until 2.6 is out.
>>>> I'll review the patches in a second, though.
>>> 
>>> Well, the patches all look good -- ping me after 2.6 is out to
>>> apply them to target-arm.next then.
>>> 
>>> Where I've noted possible further cleanups, that's intended as
>>> an "if you like writing cleanup patches" thing -- you don't need
>>> to try to do them as part of this patch series.
> 
>> ping !
> 
> I suggested you ping me after 2.6 is out, which won't be til the
> end of April or thereabouts.
> 
> thanks
> -- PMM

Ok!2.6rc misleads me!

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm
  2016-03-31  8:15         ` xiaoqiang zhao
@ 2016-05-12  1:46           ` 赵小强
  2016-05-13 15:34             ` Peter Maydell
  0 siblings, 1 reply; 28+ messages in thread
From: 赵小强 @ 2016-05-12  1:46 UTC (permalink / raw)
  To: xiaoqiang zhao
  Cc: Peter Maydell, QEMU Developers, qemu-arm, Andrew Zaborowski,
	Rob Herring


在 2016-03-31 16:15:17,"xiaoqiang zhao" <zxq_yx_007@163.com> 写道:
>
>
>> 在 2016年3月31日,16:05,Peter Maydell <peter.maydell@linaro.org> 写道:
>> 
>>> On 31 March 2016 at 02:48, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
>>> 
>>>> 在 2016年03月16日 20:00, Peter Maydell 写道:
>>>> 
>>>>> On 16 March 2016 at 11:31, Peter Maydell <peter.maydell@linaro.org> wrote:
>>>>> 
>>>>> A general note -- since these aren't bug fixes and we're in soft
>>>>> freeze now, I don't think we should put them in until 2.6 is out.
>>>>> I'll review the patches in a second, though.
>>>> 
>>>> Well, the patches all look good -- ping me after 2.6 is out to
>>>> apply them to target-arm.next then.
>>>> 
>>>> Where I've noted possible further cleanups, that's intended as
>>>> an "if you like writing cleanup patches" thing -- you don't need
>>>> to try to do them as part of this patch series.
>> 
>>> ping !
>> 
>> I suggested you ping me after 2.6 is out, which won't be til the
>> end of April or thereabouts.
>> 
>> thanks
>> -- PMM
>
>Ok!2.6rc misleads me!

ping ;-)

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm
  2016-05-12  1:46           ` 赵小强
@ 2016-05-13 15:34             ` Peter Maydell
  0 siblings, 0 replies; 28+ messages in thread
From: Peter Maydell @ 2016-05-13 15:34 UTC (permalink / raw)
  To: 赵小强
  Cc: QEMU Developers, qemu-arm, Andrew Zaborowski, Rob Herring

On 12 May 2016 at 02:46, 赵小强 <zxq_yx_007@163.com> wrote:
>
> 在 2016-03-31 16:15:17,"xiaoqiang zhao" <zxq_yx_007@163.com> 写道:
>>
>>
>>> 在 2016年3月31日,16:05,Peter Maydell <peter.maydell@linaro.org> 写道:
>>>
>>>> On 31 March 2016 at 02:48, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
>>>>
>>>>> 在 2016年03月16日 20:00, Peter Maydell 写道:
>>>>>
>>>>>> On 16 March 2016 at 11:31, Peter Maydell <peter.maydell@linaro.org> wrote:
>>>>>>
>>>>>> A general note -- since these aren't bug fixes and we're in soft
>>>>>> freeze now, I don't think we should put them in until 2.6 is out.
>>>>>> I'll review the patches in a second, though.
>>>>>
>>>>> Well, the patches all look good -- ping me after 2.6 is out to
>>>>> apply them to target-arm.next then.
>>>>>
>>>>> Where I've noted possible further cleanups, that's intended as
>>>>> an "if you like writing cleanup patches" thing -- you don't need
>>>>> to try to do them as part of this patch series.
>>>
>>>> ping !
>>>
>>> I suggested you ping me after 2.6 is out, which won't be til the
>>> end of April or thereabouts.
>>>
>>> thanks
>>> -- PMM
>>
>>Ok!2.6rc misleads me!
>
> ping ;-)

These are now all in master; thanks.

-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [Qemu-devel] [PATCH 3/9] hw/arm: QOM'ify integratorcp.c
  2016-03-07  7:05 ` [Qemu-devel] [PATCH 3/9] hw/arm: QOM'ify integratorcp.c xiaoqiang zhao
  2016-03-16 11:47   ` Peter Maydell
@ 2016-09-18 11:43   ` Peter Maydell
  1 sibling, 0 replies; 28+ messages in thread
From: Peter Maydell @ 2016-09-18 11:43 UTC (permalink / raw)
  To: xiaoqiang zhao; +Cc: QEMU Developers, qemu-arm, Andrew Zaborowski, Rob Herring

On 7 March 2016 at 07:05, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> * Drop the use of old SysBus init function and use instance_init
> * Remove the empty 'icp_pic_class_init' from Typeinfo
>
> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>

Hi Xiaoqiang; this commit has been reported as causing a regression:
https://bugs.launchpad.net/bugs/1624726

Do you have time to have a look into that?

thanks
-- PMM

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2016-09-18 11:43 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-07  7:05 [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm xiaoqiang zhao
2016-03-07  7:05 ` [Qemu-devel] [PATCH 1/9] hw/arm: QOM'ify armv7m.c xiaoqiang zhao
2016-03-16 11:51   ` Peter Maydell
2016-03-07  7:05 ` [Qemu-devel] [PATCH 2/9] hw/arm: QOM'ify highbank.c xiaoqiang zhao
2016-03-07 17:40   ` Peter Crosthwaite
2016-03-08  1:50     ` hitmoon
2016-03-07  7:05 ` [Qemu-devel] [PATCH 3/9] hw/arm: QOM'ify integratorcp.c xiaoqiang zhao
2016-03-16 11:47   ` Peter Maydell
2016-09-18 11:43   ` Peter Maydell
2016-03-07  7:05 ` [Qemu-devel] [PATCH 4/9] hw/arm: QOM'ify pxa2xx.c xiaoqiang zhao
2016-03-16 11:56   ` Peter Maydell
2016-03-07  7:05 ` [Qemu-devel] [PATCH 5/9] hw/arm: QOM'ify pxa2xx_pic.c xiaoqiang zhao
2016-03-16 11:35   ` Peter Maydell
2016-03-07  7:05 ` [Qemu-devel] [PATCH 7/9] hw/arm: QOM'ify stellaris.c xiaoqiang zhao
2016-03-16 11:54   ` Peter Maydell
2016-03-07  7:05 ` [Qemu-devel] [PATCH 8/9] hw/arm: QOM'ify strongarm.c xiaoqiang zhao
2016-03-16 11:50   ` Peter Maydell
2016-03-07  7:05 ` [Qemu-devel] [PATCH 9/9] hw/arm: QOM'ify versatilepb.c xiaoqiang zhao
2016-03-16 11:39   ` Peter Maydell
2016-03-16  2:34 ` [Qemu-devel] [PATCH 0/9] some QOM'ify work under hw/arm zxq_yx_007
2016-03-16 11:31 ` Peter Maydell
2016-03-16 12:00   ` Peter Maydell
2016-03-16 12:06     ` xiaoqiang zhao
2016-03-31  1:48     ` xiaoqiang zhao
2016-03-31  8:05       ` Peter Maydell
2016-03-31  8:15         ` xiaoqiang zhao
2016-05-12  1:46           ` 赵小强
2016-05-13 15:34             ` Peter Maydell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).