qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 10/16] hw/timer: QOM'ify m48txx_sysbus (pass 2)
@ 2016-02-16 11:10 xiaoqiang zhao
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 11/16] hw/timer: QOM'ify milkymist_sysctl xiaoqiang zhao
                   ` (5 more replies)
  0 siblings, 6 replies; 16+ messages in thread
From: xiaoqiang zhao @ 2016-02-16 11:10 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, e.voevodin, xiaoqiang zhao, mark.cave-ayland,
	michael, qemu-arm, edgar.iglesias, gxt, afaerber

assign DeviceClass::vmsd instead of using vmstate_register function

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/timer/m48t59.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/hw/timer/m48t59.c b/hw/timer/m48t59.c
index 3c683aa..b0cf79d 100644
--- a/hw/timer/m48t59.c
+++ b/hw/timer/m48t59.c
@@ -742,8 +742,6 @@ static void m48t59_realize_common(M48t59State *s, Error **errp)
         s->wd_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, &watchdog_cb, s);
     }
     qemu_get_timedate(&s->alarm, 0);
-
-    vmstate_register(NULL, -1, &vmstate_m48t59, s);
 }
 
 static void m48t59_isa_realize(DeviceState *dev, Error **errp)
@@ -822,6 +820,7 @@ static void m48txx_isa_class_init(ObjectClass *klass, void *data)
     dc->realize = m48t59_isa_realize;
     dc->reset = m48t59_reset_isa;
     dc->props = m48t59_isa_properties;
+    dc->vmsd = &vmstate_m48t59;
     nc->read = m48txx_isa_read;
     nc->write = m48txx_isa_write;
     nc->toggle_lock = m48txx_isa_toggle_lock;
@@ -866,6 +865,7 @@ static void m48txx_sysbus_class_init(ObjectClass *klass, void *data)
     dc->realize = m48t59_realize;
     dc->reset = m48t59_reset_sysbus;
     dc->props = m48t59_sysbus_properties;
+    dc->vmsd = &vmstate_m48t59;
     nc->read = m48txx_sysbus_read;
     nc->write = m48txx_sysbus_write;
     nc->toggle_lock = m48txx_sysbus_toggle_lock;
-- 
2.1.4

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

* [Qemu-devel] [PATCH v3 11/16] hw/timer: QOM'ify milkymist_sysctl
  2016-02-16 11:10 [Qemu-devel] [PATCH v3 10/16] hw/timer: QOM'ify m48txx_sysbus (pass 2) xiaoqiang zhao
@ 2016-02-16 11:10 ` xiaoqiang zhao
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 12/16] hw/timer: QOM'ify pl031 xiaoqiang zhao
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 16+ messages in thread
From: xiaoqiang zhao @ 2016-02-16 11:10 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, e.voevodin, xiaoqiang zhao, mark.cave-ayland,
	michael, qemu-arm, edgar.iglesias, gxt, afaerber

* split the old SysBus init function into an instance_init
  and a Device realize function
* use DeviceClass::realize instead of SysBusDeviceClass::init

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/timer/milkymist-sysctl.c | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

diff --git a/hw/timer/milkymist-sysctl.c b/hw/timer/milkymist-sysctl.c
index 5f29480..30a4bc4 100644
--- a/hw/timer/milkymist-sysctl.c
+++ b/hw/timer/milkymist-sysctl.c
@@ -270,9 +270,10 @@ static void milkymist_sysctl_reset(DeviceState *d)
     s->regs[R_GPIO_IN] = s->strappings;
 }
 
-static int milkymist_sysctl_init(SysBusDevice *dev)
+static void milkymist_sysctl_init(Object *obj)
 {
-    MilkymistSysctlState *s = MILKYMIST_SYSCTL(dev);
+    MilkymistSysctlState *s = MILKYMIST_SYSCTL(obj);
+    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
 
     sysbus_init_irq(dev, &s->gpio_irq);
     sysbus_init_irq(dev, &s->timer0_irq);
@@ -282,14 +283,18 @@ static int milkymist_sysctl_init(SysBusDevice *dev)
     s->bh1 = qemu_bh_new(timer1_hit, s);
     s->ptimer0 = ptimer_init(s->bh0);
     s->ptimer1 = ptimer_init(s->bh1);
-    ptimer_set_freq(s->ptimer0, s->freq_hz);
-    ptimer_set_freq(s->ptimer1, s->freq_hz);
 
-    memory_region_init_io(&s->regs_region, OBJECT(s), &sysctl_mmio_ops, s,
+    memory_region_init_io(&s->regs_region, obj, &sysctl_mmio_ops, s,
             "milkymist-sysctl", R_MAX * 4);
     sysbus_init_mmio(dev, &s->regs_region);
+}
 
-    return 0;
+static void milkymist_sysctl_realize(DeviceState *dev, Error **errp)
+{
+    MilkymistSysctlState *s = MILKYMIST_SYSCTL(dev);
+
+    ptimer_set_freq(s->ptimer0, s->freq_hz);
+    ptimer_set_freq(s->ptimer1, s->freq_hz);
 }
 
 static const VMStateDescription vmstate_milkymist_sysctl = {
@@ -319,9 +324,8 @@ static Property milkymist_sysctl_properties[] = {
 static void milkymist_sysctl_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = milkymist_sysctl_init;
+    dc->realize = milkymist_sysctl_realize;
     dc->reset = milkymist_sysctl_reset;
     dc->vmsd = &vmstate_milkymist_sysctl;
     dc->props = milkymist_sysctl_properties;
@@ -331,6 +335,7 @@ static const TypeInfo milkymist_sysctl_info = {
     .name          = TYPE_MILKYMIST_SYSCTL,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(MilkymistSysctlState),
+    .instance_init = milkymist_sysctl_init,
     .class_init    = milkymist_sysctl_class_init,
 };
 
-- 
2.1.4

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

* [Qemu-devel] [PATCH v3 12/16] hw/timer: QOM'ify pl031
  2016-02-16 11:10 [Qemu-devel] [PATCH v3 10/16] hw/timer: QOM'ify m48txx_sysbus (pass 2) xiaoqiang zhao
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 11/16] hw/timer: QOM'ify milkymist_sysctl xiaoqiang zhao
@ 2016-02-16 11:10 ` xiaoqiang zhao
  2016-02-18 13:02   ` Peter Maydell
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 13/16] hw/timer: QOM'ify puv3_ost xiaoqiang zhao
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 16+ messages in thread
From: xiaoqiang zhao @ 2016-02-16 11:10 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, e.voevodin, xiaoqiang zhao, mark.cave-ayland,
	michael, qemu-arm, edgar.iglesias, gxt, afaerber

assign pl031_init to pl031_info.instance_init and drop the
SysBusDeviceClass::init

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/timer/pl031.c | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/hw/timer/pl031.c b/hw/timer/pl031.c
index d99d18c..3ccb2cb 100644
--- a/hw/timer/pl031.c
+++ b/hw/timer/pl031.c
@@ -192,12 +192,13 @@ static const MemoryRegionOps pl031_ops = {
     .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
-static int pl031_init(SysBusDevice *dev)
+static void pl031_init(Object *obj)
 {
-    PL031State *s = PL031(dev);
+    PL031State *s = PL031(obj);
+    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
     struct tm tm;
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &pl031_ops, s, "pl031", 0x1000);
+    memory_region_init_io(&s->iomem, obj, &pl031_ops, s, "pl031", 0x1000);
     sysbus_init_mmio(dev, &s->iomem);
 
     sysbus_init_irq(dev, &s->irq);
@@ -206,7 +207,6 @@ static int pl031_init(SysBusDevice *dev)
         qemu_clock_get_ns(rtc_clock) / get_ticks_per_sec();
 
     s->timer = timer_new_ns(rtc_clock, pl031_interrupt, s);
-    return 0;
 }
 
 static void pl031_pre_save(void *opaque)
@@ -249,9 +249,7 @@ static const VMStateDescription vmstate_pl031 = {
 static void pl031_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = pl031_init;
     dc->vmsd = &vmstate_pl031;
 }
 
@@ -259,6 +257,7 @@ static const TypeInfo pl031_info = {
     .name          = TYPE_PL031,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(PL031State),
+    .instance_init = pl031_init,
     .class_init    = pl031_class_init,
 };
 
-- 
2.1.4

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

* [Qemu-devel] [PATCH v3 13/16] hw/timer: QOM'ify puv3_ost
  2016-02-16 11:10 [Qemu-devel] [PATCH v3 10/16] hw/timer: QOM'ify m48txx_sysbus (pass 2) xiaoqiang zhao
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 11/16] hw/timer: QOM'ify milkymist_sysctl xiaoqiang zhao
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 12/16] hw/timer: QOM'ify pl031 xiaoqiang zhao
@ 2016-02-16 11:10 ` xiaoqiang zhao
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 14/16] hw/timer: QOM'ify pxa2xx_timer xiaoqiang zhao
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 16+ messages in thread
From: xiaoqiang zhao @ 2016-02-16 11:10 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, e.voevodin, xiaoqiang zhao, mark.cave-ayland,
	michael, qemu-arm, edgar.iglesias, gxt, afaerber

assign puv3_ost_init to puv3_ost_info.instance_init
and drop the SysBusDeviceClass::init

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/timer/puv3_ost.c | 18 +++++-------------
 1 file changed, 5 insertions(+), 13 deletions(-)

diff --git a/hw/timer/puv3_ost.c b/hw/timer/puv3_ost.c
index 93650b7..72c87ba 100644
--- a/hw/timer/puv3_ost.c
+++ b/hw/timer/puv3_ost.c
@@ -113,9 +113,10 @@ static void puv3_ost_tick(void *opaque)
     }
 }
 
-static int puv3_ost_init(SysBusDevice *dev)
+static void puv3_ost_init(Object *obj)
 {
-    PUV3OSTState *s = PUV3_OST(dev);
+    PUV3OSTState *s = PUV3_OST(obj);
+    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
 
     s->reg_OIER = 0;
     s->reg_OSSR = 0;
@@ -128,25 +129,16 @@ static int puv3_ost_init(SysBusDevice *dev)
     s->ptimer = ptimer_init(s->bh);
     ptimer_set_freq(s->ptimer, 50 * 1000 * 1000);
 
-    memory_region_init_io(&s->iomem, OBJECT(s), &puv3_ost_ops, s, "puv3_ost",
+    memory_region_init_io(&s->iomem, obj, &puv3_ost_ops, s, "puv3_ost",
             PUV3_REGS_OFFSET);
     sysbus_init_mmio(dev, &s->iomem);
-
-    return 0;
-}
-
-static void puv3_ost_class_init(ObjectClass *klass, void *data)
-{
-    SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass);
-
-    sdc->init = puv3_ost_init;
 }
 
 static const TypeInfo puv3_ost_info = {
     .name = TYPE_PUV3_OST,
     .parent = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(PUV3OSTState),
-    .class_init = puv3_ost_class_init,
+    .instance_init = puv3_ost_init,
 };
 
 static void puv3_ost_register_type(void)
-- 
2.1.4

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

* [Qemu-devel] [PATCH v3 14/16] hw/timer: QOM'ify pxa2xx_timer
  2016-02-16 11:10 [Qemu-devel] [PATCH v3 10/16] hw/timer: QOM'ify m48txx_sysbus (pass 2) xiaoqiang zhao
                   ` (2 preceding siblings ...)
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 13/16] hw/timer: QOM'ify puv3_ost xiaoqiang zhao
@ 2016-02-16 11:10 ` xiaoqiang zhao
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 15/16] hw/timer: QOM'ify slavio_timer xiaoqiang zhao
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 16/16] hw/timer: QOM'ify tusb6010 xiaoqiang zhao
  5 siblings, 0 replies; 16+ messages in thread
From: xiaoqiang zhao @ 2016-02-16 11:10 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, e.voevodin, xiaoqiang zhao, mark.cave-ayland,
	michael, qemu-arm, edgar.iglesias, gxt, afaerber

* split the old SysBus init function into an instance_init
  and a Device realize function
* use DeviceClass::realize instead of SysBusDeviceClass::init

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/timer/pxa2xx_timer.c | 36 +++++++++++++++++++++---------------
 1 file changed, 21 insertions(+), 15 deletions(-)

diff --git a/hw/timer/pxa2xx_timer.c b/hw/timer/pxa2xx_timer.c
index 0daa69c..33449e6 100644
--- a/hw/timer/pxa2xx_timer.c
+++ b/hw/timer/pxa2xx_timer.c
@@ -433,10 +433,10 @@ static int pxa25x_timer_post_load(void *opaque, int version_id)
     return 0;
 }
 
-static int pxa2xx_timer_init(SysBusDevice *dev)
+static void pxa2xx_timer_init(Object *obj)
 {
-    PXA2xxTimerInfo *s = PXA2XX_TIMER(dev);
-    int i;
+    PXA2xxTimerInfo *s = PXA2XX_TIMER(obj);
+    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
 
     s->irq_enabled = 0;
     s->oldclock = 0;
@@ -444,16 +444,28 @@ static int pxa2xx_timer_init(SysBusDevice *dev)
     s->lastload = qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL);
     s->reset3 = 0;
 
+    memory_region_init_io(&s->iomem, obj, &pxa2xx_timer_ops, s,
+                          "pxa2xx-timer", 0x00001000);
+    sysbus_init_mmio(dev, &s->iomem);
+}
+
+static void pxa2xx_timer_realize(DeviceState *dev, Error **errp)
+{
+    PXA2xxTimerInfo *s = PXA2XX_TIMER(dev);
+    SysBusDevice *sbd = SYS_BUS_DEVICE(dev);
+    int i;
+
     for (i = 0; i < 4; i ++) {
         s->timer[i].value = 0;
-        sysbus_init_irq(dev, &s->timer[i].irq);
+        sysbus_init_irq(sbd, &s->timer[i].irq);
         s->timer[i].info = s;
         s->timer[i].num = i;
         s->timer[i].qtimer = timer_new_ns(QEMU_CLOCK_VIRTUAL,
-                        pxa2xx_timer_tick, &s->timer[i]);
+                                          pxa2xx_timer_tick, &s->timer[i]);
     }
+
     if (s->flags & (1 << PXA2XX_TIMER_HAVE_TM4)) {
-        sysbus_init_irq(dev, &s->irq4);
+        sysbus_init_irq(sbd, &s->irq4);
 
         for (i = 0; i < 8; i ++) {
             s->tm4[i].tm.value = 0;
@@ -462,15 +474,9 @@ static int pxa2xx_timer_init(SysBusDevice *dev)
             s->tm4[i].freq = 0;
             s->tm4[i].control = 0x0;
             s->tm4[i].tm.qtimer = timer_new_ns(QEMU_CLOCK_VIRTUAL,
-                        pxa2xx_timer_tick4, &s->tm4[i]);
+                                               pxa2xx_timer_tick4, &s->tm4[i]);
         }
     }
-
-    memory_region_init_io(&s->iomem, OBJECT(s), &pxa2xx_timer_ops, s,
-                          "pxa2xx-timer", 0x00001000);
-    sysbus_init_mmio(dev, &s->iomem);
-
-    return 0;
 }
 
 static const VMStateDescription vmstate_pxa2xx_timer0_regs = {
@@ -573,9 +579,8 @@ static const TypeInfo pxa27x_timer_dev_info = {
 static void pxa2xx_timer_class_init(ObjectClass *oc, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(oc);
-    SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(oc);
 
-    sdc->init = pxa2xx_timer_init;
+    dc->realize  = pxa2xx_timer_realize;
     dc->vmsd = &vmstate_pxa2xx_timer_regs;
 }
 
@@ -583,6 +588,7 @@ static const TypeInfo pxa2xx_timer_type_info = {
     .name          = TYPE_PXA2XX_TIMER,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(PXA2xxTimerInfo),
+    .instance_init = pxa2xx_timer_init,
     .abstract      = true,
     .class_init    = pxa2xx_timer_class_init,
 };
-- 
2.1.4

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

* [Qemu-devel] [PATCH v3 15/16] hw/timer: QOM'ify slavio_timer
  2016-02-16 11:10 [Qemu-devel] [PATCH v3 10/16] hw/timer: QOM'ify m48txx_sysbus (pass 2) xiaoqiang zhao
                   ` (3 preceding siblings ...)
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 14/16] hw/timer: QOM'ify pxa2xx_timer xiaoqiang zhao
@ 2016-02-16 11:10 ` xiaoqiang zhao
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 16/16] hw/timer: QOM'ify tusb6010 xiaoqiang zhao
  5 siblings, 0 replies; 16+ messages in thread
From: xiaoqiang zhao @ 2016-02-16 11:10 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, e.voevodin, xiaoqiang zhao, mark.cave-ayland,
	michael, qemu-arm, edgar.iglesias, gxt, afaerber

rename slavio_timer_init1 to slavio_timer_init and assign
it to slavio_timer_info.instance_init, then we drop the
SysBusDeviceClass::init

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/timer/slavio_timer.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/hw/timer/slavio_timer.c b/hw/timer/slavio_timer.c
index fb3e08b..b2c9364 100644
--- a/hw/timer/slavio_timer.c
+++ b/hw/timer/slavio_timer.c
@@ -373,9 +373,10 @@ static void slavio_timer_reset(DeviceState *d)
     s->cputimer_mode = 0;
 }
 
-static int slavio_timer_init1(SysBusDevice *dev)
+static void slavio_timer_init(Object *obj)
 {
-    SLAVIO_TIMERState *s = SLAVIO_TIMER(dev);
+    SLAVIO_TIMERState *s = SLAVIO_TIMER(obj);
+    SysBusDevice *dev = SYS_BUS_DEVICE(obj);
     QEMUBH *bh;
     unsigned int i;
     TimerContext *tc;
@@ -394,14 +395,12 @@ static int slavio_timer_init1(SysBusDevice *dev)
 
         size = i == 0 ? SYS_TIMER_SIZE : CPU_TIMER_SIZE;
         snprintf(timer_name, sizeof(timer_name), "timer-%i", i);
-        memory_region_init_io(&tc->iomem, OBJECT(s), &slavio_timer_mem_ops, tc,
+        memory_region_init_io(&tc->iomem, obj, &slavio_timer_mem_ops, tc,
                               timer_name, size);
         sysbus_init_mmio(dev, &tc->iomem);
 
         sysbus_init_irq(dev, &s->cputimer[i].irq);
     }
-
-    return 0;
 }
 
 static Property slavio_timer_properties[] = {
@@ -412,9 +411,7 @@ static Property slavio_timer_properties[] = {
 static void slavio_timer_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = slavio_timer_init1;
     dc->reset = slavio_timer_reset;
     dc->vmsd = &vmstate_slavio_timer;
     dc->props = slavio_timer_properties;
@@ -424,6 +421,7 @@ static const TypeInfo slavio_timer_info = {
     .name          = TYPE_SLAVIO_TIMER,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(SLAVIO_TIMERState),
+    .instance_init = slavio_timer_init,
     .class_init    = slavio_timer_class_init,
 };
 
-- 
2.1.4

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

* [Qemu-devel] [PATCH v3 16/16] hw/timer: QOM'ify tusb6010
  2016-02-16 11:10 [Qemu-devel] [PATCH v3 10/16] hw/timer: QOM'ify m48txx_sysbus (pass 2) xiaoqiang zhao
                   ` (4 preceding siblings ...)
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 15/16] hw/timer: QOM'ify slavio_timer xiaoqiang zhao
@ 2016-02-16 11:10 ` xiaoqiang zhao
  2016-02-18 13:48   ` Peter Maydell
  5 siblings, 1 reply; 16+ messages in thread
From: xiaoqiang zhao @ 2016-02-16 11:10 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, e.voevodin, xiaoqiang zhao, mark.cave-ayland,
	michael, qemu-arm, edgar.iglesias, gxt, afaerber

assign tusb6010_init to tusb6010_info.instance_init and drop
the SysBusDeviceClass::init

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
---
 hw/timer/tusb6010.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/hw/timer/tusb6010.c b/hw/timer/tusb6010.c
index 9f6af90..205127c 100644
--- a/hw/timer/tusb6010.c
+++ b/hw/timer/tusb6010.c
@@ -776,29 +776,27 @@ static void tusb6010_reset(DeviceState *dev)
     musb_reset(s->musb);
 }
 
-static int tusb6010_init(SysBusDevice *sbd)
+static void tusb6010_init(Object *obj)
 {
-    DeviceState *dev = DEVICE(sbd);
-    TUSBState *s = TUSB(dev);
+    DeviceState *dev = DEVICE(obj);
+    TUSBState *s = TUSB(obj);
+    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
 
     s->otg_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_otg_tick, s);
     s->pwr_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_power_tick, s);
-    memory_region_init_io(&s->iomem[1], OBJECT(s), &tusb_async_ops, s,
+    memory_region_init_io(&s->iomem[1], obj, &tusb_async_ops, s,
                           "tusb-async", UINT32_MAX);
     sysbus_init_mmio(sbd, &s->iomem[0]);
     sysbus_init_mmio(sbd, &s->iomem[1]);
     sysbus_init_irq(sbd, &s->irq);
     qdev_init_gpio_in(dev, tusb6010_irq, musb_irq_max + 1);
     s->musb = musb_init(dev, 1);
-    return 0;
 }
 
 static void tusb6010_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
-    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
 
-    k->init = tusb6010_init;
     dc->reset = tusb6010_reset;
 }
 
@@ -806,6 +804,7 @@ static const TypeInfo tusb6010_info = {
     .name          = TYPE_TUSB6010,
     .parent        = TYPE_SYS_BUS_DEVICE,
     .instance_size = sizeof(TUSBState),
+    .instance_init = tusb6010_init,
     .class_init    = tusb6010_class_init,
 };
 
-- 
2.1.4

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

* Re: [Qemu-devel] [PATCH v3 12/16] hw/timer: QOM'ify pl031
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 12/16] hw/timer: QOM'ify pl031 xiaoqiang zhao
@ 2016-02-18 13:02   ` Peter Maydell
  2016-02-18 14:26     ` zxq_yx_007
  0 siblings, 1 reply; 16+ messages in thread
From: Peter Maydell @ 2016-02-18 13:02 UTC (permalink / raw)
  To: xiaoqiang zhao
  Cc: Evgeny Voevodin, Mark Cave-Ayland, QEMU Developers,
	Michael Walle, qemu-arm, Edgar E. Iglesias, Guan Xuetao,
	Andreas Färber

On 16 February 2016 at 11:10, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> assign pl031_init to pl031_info.instance_init and drop the
> SysBusDeviceClass::init
>
> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>

I didn't review this patch! Please be more careful
about only applying reviewed-by: tags to the correct
patches when you're sending out new versions. (You seem
to have got this wrong for some of the others in this
series too.)

thanks
-- PMM

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

* Re: [Qemu-devel] [PATCH v3 16/16] hw/timer: QOM'ify tusb6010
  2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 16/16] hw/timer: QOM'ify tusb6010 xiaoqiang zhao
@ 2016-02-18 13:48   ` Peter Maydell
  2016-02-18 14:27     ` zxq_yx_007
  2016-02-19 11:02     ` hitmoon
  0 siblings, 2 replies; 16+ messages in thread
From: Peter Maydell @ 2016-02-18 13:48 UTC (permalink / raw)
  To: xiaoqiang zhao
  Cc: Evgeny Voevodin, Mark Cave-Ayland, QEMU Developers,
	Michael Walle, qemu-arm, Edgar E. Iglesias, Guan Xuetao,
	Andreas Färber

On 16 February 2016 at 11:10, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
> assign tusb6010_init to tusb6010_info.instance_init and drop
> the SysBusDeviceClass::init
>
> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>

(Again, I didn't review this patch.)

> ---
>  hw/timer/tusb6010.c | 13 ++++++-------
>  1 file changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/hw/timer/tusb6010.c b/hw/timer/tusb6010.c
> index 9f6af90..205127c 100644
> --- a/hw/timer/tusb6010.c
> +++ b/hw/timer/tusb6010.c
> @@ -776,29 +776,27 @@ static void tusb6010_reset(DeviceState *dev)
>      musb_reset(s->musb);
>  }
>
> -static int tusb6010_init(SysBusDevice *sbd)
> +static void tusb6010_init(Object *obj)
>  {
> -    DeviceState *dev = DEVICE(sbd);
> -    TUSBState *s = TUSB(dev);
> +    DeviceState *dev = DEVICE(obj);
> +    TUSBState *s = TUSB(obj);
> +    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
>
>      s->otg_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_otg_tick, s);
>      s->pwr_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_power_tick, s);
> -    memory_region_init_io(&s->iomem[1], OBJECT(s), &tusb_async_ops, s,
> +    memory_region_init_io(&s->iomem[1], obj, &tusb_async_ops, s,
>                            "tusb-async", UINT32_MAX);
>      sysbus_init_mmio(sbd, &s->iomem[0]);
>      sysbus_init_mmio(sbd, &s->iomem[1]);
>      sysbus_init_irq(sbd, &s->irq);
>      qdev_init_gpio_in(dev, tusb6010_irq, musb_irq_max + 1);
>      s->musb = musb_init(dev, 1);
> -    return 0;
>  }
>
>  static void tusb6010_class_init(ObjectClass *klass, void *data)
>  {
>      DeviceClass *dc = DEVICE_CLASS(klass);
> -    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
>
> -    k->init = tusb6010_init;
>      dc->reset = tusb6010_reset;
>  }
>
> @@ -806,6 +804,7 @@ static const TypeInfo tusb6010_info = {
>      .name          = TYPE_TUSB6010,
>      .parent        = TYPE_SYS_BUS_DEVICE,
>      .instance_size = sizeof(TUSBState),
> +    .instance_init = tusb6010_init,
>      .class_init    = tusb6010_class_init,
>  };

This patch seems to break "make check":

TEST: tests/device-introspect-test... (pid=6070)
  /arm/device/introspect/list:                                         OK
  /arm/device/introspect/none:                                         OK
  /arm/device/introspect/abstract:                                     OK
  /arm/device/introspect/concrete:                                     **
ERROR:/home/petmay01/linaro/qemu-from-laptop/qemu/qom/object.c:1576:object_get_canonical_path_component:
assertion failed: (obj->parent != NULL)
Broken pipe
FAIL
GTester: last random seed: R02S57c9475befd55374bcf61f6f190cd8ad
(pid=6093)
FAIL: tests/device-introspect-test

thanks
-- PMM

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

* Re: [Qemu-devel] [PATCH v3 12/16] hw/timer: QOM'ify pl031
  2016-02-18 13:02   ` Peter Maydell
@ 2016-02-18 14:26     ` zxq_yx_007
  2016-02-18 14:31       ` Peter Maydell
  0 siblings, 1 reply; 16+ messages in thread
From: zxq_yx_007 @ 2016-02-18 14:26 UTC (permalink / raw)
  To: peter.maydell
  Cc: e.voevodin, mark.cave-ayland, qemu-devel, michael, qemu-arm,
	edgar.iglesias, gxt, afaerber

[-- Attachment #1: Type: text/plain, Size: 826 bytes --]


Thanks Peter!
Sorry for that!I will correct this in next version. I also have one question:Why the patch I have sent to this list does not have a title begin with "[Qemu-devel]" ?



2016年2月18日 星期四 +0800 21:02 发件人 peter.maydell@linaro.org  <peter.maydell@linaro.org>:
>On 16 February 2016 at 11:10, xiaoqiang zhao < zxq_yx_007@163.com > wrote:
>> assign pl031_init to pl031_info.instance_init and drop the
>> SysBusDeviceClass::init
>>
>> Reviewed-by: Peter Maydell < peter.maydell@linaro.org >
>> Signed-off-by: xiaoqiang zhao < zxq_yx_007@163.com >
>
>I didn't review this patch! Please be more careful
>about only applying reviewed-by: tags to the correct
>patches when you're sending out new versions. (You seem
>to have got this wrong for some of the others in this
>series too.)
>
>thanks
>-- PMM

[-- Attachment #2: Type: text/html, Size: 1833 bytes --]

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

* Re: [Qemu-devel] [PATCH v3 16/16] hw/timer: QOM'ify tusb6010
  2016-02-18 13:48   ` Peter Maydell
@ 2016-02-18 14:27     ` zxq_yx_007
  2016-02-19 11:02     ` hitmoon
  1 sibling, 0 replies; 16+ messages in thread
From: zxq_yx_007 @ 2016-02-18 14:27 UTC (permalink / raw)
  To: peter.maydell
  Cc: e.voevodin, mark.cave-ayland, qemu-devel, michael, qemu-arm,
	edgar.iglesias, gxt, afaerber

[-- Attachment #1: Type: text/plain, Size: 2979 bytes --]


Ok, I will take a look!



2016年2月18日 星期四 +0800 21:48 发件人 peter.maydell@linaro.org  <peter.maydell@linaro.org>:
>On 16 February 2016 at 11:10, xiaoqiang zhao < zxq_yx_007@163.com > wrote:
>> assign tusb6010_init to tusb6010_info.instance_init and drop
>> the SysBusDeviceClass::init
>>
>> Reviewed-by: Peter Maydell < peter.maydell@linaro.org >
>> Signed-off-by: xiaoqiang zhao < zxq_yx_007@163.com >
>
>(Again, I didn't review this patch.)
>
>> ---
>>  hw/timer/tusb6010.c | 13 ++++++-------
>>  1 file changed, 6 insertions(+), 7 deletions(-)
>>
>> diff --git a/hw/timer/tusb6010.c b/hw/timer/tusb6010.c
>> index 9f6af90..205127c 100644
>> --- a/hw/timer/tusb6010.c
>> +++ b/hw/timer/tusb6010.c
>> @@ -776,29 +776,27 @@ static void tusb6010_reset(DeviceState *dev)
>>      musb_reset(s->musb);
>>  }
>>
>> -static int tusb6010_init(SysBusDevice *sbd)
>> +static void tusb6010_init(Object *obj)
>>  {
>> -    DeviceState *dev = DEVICE(sbd);
>> -    TUSBState *s = TUSB(dev);
>> +    DeviceState *dev = DEVICE(obj);
>> +    TUSBState *s = TUSB(obj);
>> +    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
>>
>>      s->otg_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_otg_tick, s);
>>      s->pwr_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_power_tick, s);
>> -    memory_region_init_io(&s->iomem[1], OBJECT(s), &tusb_async_ops, s,
>> +    memory_region_init_io(&s->iomem[1], obj, &tusb_async_ops, s,
>>                            "tusb-async", UINT32_MAX);
>>      sysbus_init_mmio(sbd, &s->iomem[0]);
>>      sysbus_init_mmio(sbd, &s->iomem[1]);
>>      sysbus_init_irq(sbd, &s->irq);
>>      qdev_init_gpio_in(dev, tusb6010_irq, musb_irq_max + 1);
>>      s->musb = musb_init(dev, 1);
>> -    return 0;
>>  }
>>
>>  static void tusb6010_class_init(ObjectClass *klass, void *data)
>>  {
>>      DeviceClass *dc = DEVICE_CLASS(klass);
>> -    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
>>
>> -    k->init = tusb6010_init;
>>      dc->reset = tusb6010_reset;
>>  }
>>
>> @@ -806,6 +804,7 @@ static const TypeInfo tusb6010_info = {
>>      .name          = TYPE_TUSB6010,
>>      .parent        = TYPE_SYS_BUS_DEVICE,
>>      .instance_size = sizeof(TUSBState),
>> +    .instance_init = tusb6010_init,
>>      .class_init    = tusb6010_class_init,
>>  };
>
>This patch seems to break "make check":
>
>TEST: tests/device-introspect-test... (pid=6070)
>  /arm/device/introspect/list:                                         OK
>  /arm/device/introspect/none:                                         OK
>  /arm/device/introspect/abstract:                                     OK
>  /arm/device/introspect/concrete:                                     **
>ERROR:/home/petmay01/linaro/qemu-from-laptop/qemu/qom/object.c:1576:object_get_canonical_path_component:
>assertion failed: (obj->parent != NULL)
>Broken pipe
>FAIL
>GTester: last random seed: R02S57c9475befd55374bcf61f6f190cd8ad
>(pid=6093)
>FAIL: tests/device-introspect-test
>
>thanks
>-- PMM

[-- Attachment #2: Type: text/html, Size: 4401 bytes --]

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

* Re: [Qemu-devel] [PATCH v3 12/16] hw/timer: QOM'ify pl031
  2016-02-18 14:26     ` zxq_yx_007
@ 2016-02-18 14:31       ` Peter Maydell
  2016-02-18 14:44         ` [Qemu-devel] 回复:Re: Re[2]: " zxq_yx_007
  0 siblings, 1 reply; 16+ messages in thread
From: Peter Maydell @ 2016-02-18 14:31 UTC (permalink / raw)
  To: xiaoqiang zhao
  Cc: Evgeny Voevodin, Mark Cave-Ayland, QEMU Developers,
	Michael Walle, qemu-arm, Edgar E. Iglesias, Guan Xuetao,
	Andreas Färber

On 18 February 2016 at 14:26,  <zxq_yx_007@163.com> wrote:
> Thanks Peter!
> Sorry for that!I will correct this in next version. I also have one
> question:Why the patch I have sent to this list does not have a title begin
> with "[Qemu-devel]" ?

It depends entirely which copy you see. For example the list
archive's copy does:
https://lists.nongnu.org/archive/html/qemu-devel/2016-02/msg03400.html

If your mail client sees the copy that went via the mailing list
server first, that's the subject you'll see. If it sees some other
copy first (perhaps you were personally cc'd on the mail, or if
you sent the mail yourself there's the copy you actually sent)
then it won't have the subject tag. If it was sent to several
mailing lists then you might first see the copy from one of the
other lists with that list's tag.

(PS: please don't top-post list email.)

thanks
-- PMM

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

* [Qemu-devel] 回复:Re: Re[2]: [PATCH v3 12/16] hw/timer: QOM'ify pl031
  2016-02-18 14:31       ` Peter Maydell
@ 2016-02-18 14:44         ` zxq_yx_007
  0 siblings, 0 replies; 16+ messages in thread
From: zxq_yx_007 @ 2016-02-18 14:44 UTC (permalink / raw)
  To: Peter Maydell
  Cc: Evgeny Voevodin, Mark Cave-Ayland, QEMU Developers,
	Michael Walle, qemu-arm, Edgar E. Iglesias, Guan Xuetao,
	Andreas Färber

[-- Attachment #1: Type: text/plain, Size: 954 bytes --]

What "top-post" mean?
在2016年02月18日 22:31,Peter Maydell 写道:
On 18 February 2016 at 14:26,  <zxq_yx_007@163.com> wrote:
> Thanks Peter!
> Sorry for that!I will correct this in next version. I also have one
> question:Why the patch I have sent to this list does not have a title begin
> with "[Qemu-devel]" ?

It depends entirely which copy you see. For example the list
archive's copy does:
https://lists.nongnu.org/archive/html/qemu-devel/2016-02/msg03400.html

If your mail client sees the copy that went via the mailing list
server first, that's the subject you'll see. If it sees some other
copy first (perhaps you were personally cc'd on the mail, or if
you sent the mail yourself there's the copy you actually sent)
then it won't have the subject tag. If it was sent to several
mailing lists then you might first see the copy from one of the
other lists with that list's tag.

(PS: please don't top-post list email.)

thanks
-- PMM

[-- Attachment #2: Type: text/html, Size: 1842 bytes --]

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

* Re: [Qemu-devel] [PATCH v3 16/16] hw/timer: QOM'ify tusb6010
  2016-02-18 13:48   ` Peter Maydell
  2016-02-18 14:27     ` zxq_yx_007
@ 2016-02-19 11:02     ` hitmoon
  2016-02-19 11:37       ` Peter Maydell
  1 sibling, 1 reply; 16+ messages in thread
From: hitmoon @ 2016-02-19 11:02 UTC (permalink / raw)
  To: Peter Maydell
  Cc: Evgeny Voevodin, Mark Cave-Ayland, QEMU Developers,
	Michael Walle, qemu-arm, Edgar E. Iglesias, Guan Xuetao,
	Andreas Färber



在 2016年02月18日 21:48, Peter Maydell 写道:
> On 16 February 2016 at 11:10, xiaoqiang zhao <zxq_yx_007@163.com> wrote:
>> assign tusb6010_init to tusb6010_info.instance_init and drop
>> the SysBusDeviceClass::init
>>
>> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
>> Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com>
> (Again, I didn't review this patch.)
>
>> ---
>>   hw/timer/tusb6010.c | 13 ++++++-------
>>   1 file changed, 6 insertions(+), 7 deletions(-)
>>
>> diff --git a/hw/timer/tusb6010.c b/hw/timer/tusb6010.c
>> index 9f6af90..205127c 100644
>> --- a/hw/timer/tusb6010.c
>> +++ b/hw/timer/tusb6010.c
>> @@ -776,29 +776,27 @@ static void tusb6010_reset(DeviceState *dev)
>>       musb_reset(s->musb);
>>   }
>>
>> -static int tusb6010_init(SysBusDevice *sbd)
>> +static void tusb6010_init(Object *obj)
>>   {
>> -    DeviceState *dev = DEVICE(sbd);
>> -    TUSBState *s = TUSB(dev);
>> +    DeviceState *dev = DEVICE(obj);
>> +    TUSBState *s = TUSB(obj);
>> +    SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
>>
>>       s->otg_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_otg_tick, s);
>>       s->pwr_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_power_tick, s);
>> -    memory_region_init_io(&s->iomem[1], OBJECT(s), &tusb_async_ops, s,
>> +    memory_region_init_io(&s->iomem[1], obj, &tusb_async_ops, s,
>>                             "tusb-async", UINT32_MAX);
>>       sysbus_init_mmio(sbd, &s->iomem[0]);
>>       sysbus_init_mmio(sbd, &s->iomem[1]);
>>       sysbus_init_irq(sbd, &s->irq);
>>       qdev_init_gpio_in(dev, tusb6010_irq, musb_irq_max + 1);
>>       s->musb = musb_init(dev, 1);
>> -    return 0;
>>   }
>>
>>   static void tusb6010_class_init(ObjectClass *klass, void *data)
>>   {
>>       DeviceClass *dc = DEVICE_CLASS(klass);
>> -    SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
>>
>> -    k->init = tusb6010_init;
>>       dc->reset = tusb6010_reset;
>>   }
>>
>> @@ -806,6 +804,7 @@ static const TypeInfo tusb6010_info = {
>>       .name          = TYPE_TUSB6010,
>>       .parent        = TYPE_SYS_BUS_DEVICE,
>>       .instance_size = sizeof(TUSBState),
>> +    .instance_init = tusb6010_init,
>>       .class_init    = tusb6010_class_init,
>>   };
> This patch seems to break "make check":
>
> TEST: tests/device-introspect-test... (pid=6070)
>    /arm/device/introspect/list:                                         OK
>    /arm/device/introspect/none:                                         OK
>    /arm/device/introspect/abstract:                                     OK
>    /arm/device/introspect/concrete:                                     **
> ERROR:/home/petmay01/linaro/qemu-from-laptop/qemu/qom/object.c:1576:object_get_canonical_path_component:
> assertion failed: (obj->parent != NULL)
> Broken pipe
> FAIL
> GTester: last random seed: R02S57c9475befd55374bcf61f6f190cd8ad
> (pid=6093)
> FAIL: tests/device-introspect-test
>
> thanks
> -- PMM
Hi: peter
After some debug, I found

  s->musb = musb_init(dev, 1);

must be called in SysBus' init. Otherwise it will break the
  "/arm/device/introspect/concrete" check test.

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

* Re: [Qemu-devel] [PATCH v3 16/16] hw/timer: QOM'ify tusb6010
  2016-02-19 11:02     ` hitmoon
@ 2016-02-19 11:37       ` Peter Maydell
  2016-02-19 11:49         ` xiaoqiang zhao
  0 siblings, 1 reply; 16+ messages in thread
From: Peter Maydell @ 2016-02-19 11:37 UTC (permalink / raw)
  To: hitmoon
  Cc: Evgeny Voevodin, Mark Cave-Ayland, QEMU Developers,
	Michael Walle, qemu-arm, Edgar E. Iglesias, Guan Xuetao,
	Andreas Färber

On 19 February 2016 at 11:02, hitmoon <zxq_yx_007@163.com> wrote:
> Hi: peter
> After some debug, I found
>
>  s->musb = musb_init(dev, 1);
>
> must be called in SysBus' init. Otherwise it will break the
>  "/arm/device/introspect/concrete" check test.

Mmm, I thought this might be related to the MUSB code.
I think this device cannot be converted properly to current
QOM standards until the MUSB code which it relies on has
been converted first.

(Also, tusb6010 is a USB controller so it shouldn't be in
hw/timer in the first place...)

thanks
-- PMM

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

* Re: [Qemu-devel] [PATCH v3 16/16] hw/timer: QOM'ify tusb6010
  2016-02-19 11:37       ` Peter Maydell
@ 2016-02-19 11:49         ` xiaoqiang zhao
  0 siblings, 0 replies; 16+ messages in thread
From: xiaoqiang zhao @ 2016-02-19 11:49 UTC (permalink / raw)
  To: Peter Maydell
  Cc: Evgeny Voevodin, Mark Cave-Ayland, QEMU Developers,
	Michael Walle, qemu-arm, Edgar E. Iglesias, Guan Xuetao,
	Andreas Färber



> 在 2016年2月19日,19:37,Peter Maydell <peter.maydell@linaro.org> 写道:
> 
> Mmm, I thought this might be related to the MUSB code.
> I think this device cannot be converted properly to current
> QOM standards until the MUSB code which it relies on has
> been converted first.

Reasonable !

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

end of thread, other threads:[~2016-02-19 11:51 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-02-16 11:10 [Qemu-devel] [PATCH v3 10/16] hw/timer: QOM'ify m48txx_sysbus (pass 2) xiaoqiang zhao
2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 11/16] hw/timer: QOM'ify milkymist_sysctl xiaoqiang zhao
2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 12/16] hw/timer: QOM'ify pl031 xiaoqiang zhao
2016-02-18 13:02   ` Peter Maydell
2016-02-18 14:26     ` zxq_yx_007
2016-02-18 14:31       ` Peter Maydell
2016-02-18 14:44         ` [Qemu-devel] 回复:Re: Re[2]: " zxq_yx_007
2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 13/16] hw/timer: QOM'ify puv3_ost xiaoqiang zhao
2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 14/16] hw/timer: QOM'ify pxa2xx_timer xiaoqiang zhao
2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 15/16] hw/timer: QOM'ify slavio_timer xiaoqiang zhao
2016-02-16 11:10 ` [Qemu-devel] [PATCH v3 16/16] hw/timer: QOM'ify tusb6010 xiaoqiang zhao
2016-02-18 13:48   ` Peter Maydell
2016-02-18 14:27     ` zxq_yx_007
2016-02-19 11:02     ` hitmoon
2016-02-19 11:37       ` Peter Maydell
2016-02-19 11:49         ` xiaoqiang zhao

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).