All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PULL 0/4] Audio 20181029 patches
@ 2018-10-29 13:37 Gerd Hoffmann
  2018-10-29 13:37 ` [Qemu-devel] [PULL 1/4] hw: AC97: make it more QOMconventional Gerd Hoffmann
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Gerd Hoffmann @ 2018-10-29 13:37 UTC (permalink / raw)
  To: qemu-devel; +Cc: Jan Kiszka, qemu-arm, Gerd Hoffmann, Peter Maydell

The following changes since commit 285278ca785f5fa9a570927e1c0958a2ca2b2150:

  Merge remote-tracking branch 'remotes/famz/tags/testing-pull-request' into staging (2018-10-27 19:55:08 +0100)

are available in the git repository at:

  git://git.kraxel.org/qemu tags/audio-20181029-pull-request

for you to fetch changes up to d436d4e7a50a7c4fddc0569c2107fe5eaf0e1fbc:

  audio: use TYPE_MV88W8618_AUDIO instead of hardcoded string (2018-10-29 13:50:15 +0100)

----------------------------------------------------------------
audio: qom cleanups.

----------------------------------------------------------------

Li Qiang (1):
  hw: AC97: make it more QOMconventional

Mao Zhongyi (3):
  audio: use TYPE_WM8750 instead of a hardcoded string
  audio: use object link instead of qdev property to pass wm8750
    reference
  audio: use TYPE_MV88W8618_AUDIO instead of hardcoded string

 include/hw/audio/wm8750.h  |  1 +
 hw/arm/musicpal.c          |  5 +++--
 hw/audio/ac97.c            | 12 ++++++++----
 hw/audio/marvell_88w8618.c | 14 ++++++--------
 4 files changed, 18 insertions(+), 14 deletions(-)

-- 
2.9.3

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

* [Qemu-devel] [PULL 1/4] hw: AC97: make it more QOMconventional
  2018-10-29 13:37 [Qemu-devel] [PULL 0/4] Audio 20181029 patches Gerd Hoffmann
@ 2018-10-29 13:37 ` Gerd Hoffmann
  2018-10-29 13:37 ` [Qemu-devel] [PULL 2/4] audio: use TYPE_WM8750 instead of a hardcoded string Gerd Hoffmann
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Gerd Hoffmann @ 2018-10-29 13:37 UTC (permalink / raw)
  To: qemu-devel; +Cc: Jan Kiszka, qemu-arm, Gerd Hoffmann, Peter Maydell, Li Qiang

From: Li Qiang <liq3ea@163.com>

Signed-off-by: Li Qiang <liq3ea@163.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-id: 20181013060809.52496-1-liq3ea@163.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/audio/ac97.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/hw/audio/ac97.c b/hw/audio/ac97.c
index 337402e9c6..d799533aa9 100644
--- a/hw/audio/ac97.c
+++ b/hw/audio/ac97.c
@@ -123,6 +123,10 @@ enum {
 
 #define MUTE_SHIFT 15
 
+#define TYPE_AC97 "AC97"
+#define AC97(obj) \
+    OBJECT_CHECK(AC97LinkState, (obj), TYPE_AC97)
+
 #define REC_MASK 7
 enum {
     REC_MIC = 0,
@@ -1340,7 +1344,7 @@ static void ac97_on_reset (DeviceState *dev)
 
 static void ac97_realize(PCIDevice *dev, Error **errp)
 {
-    AC97LinkState *s = DO_UPCAST (AC97LinkState, dev, dev);
+    AC97LinkState *s = AC97(dev);
     uint8_t *c = s->dev.config;
 
     /* TODO: no need to override */
@@ -1389,7 +1393,7 @@ static void ac97_realize(PCIDevice *dev, Error **errp)
 
 static void ac97_exit(PCIDevice *dev)
 {
-    AC97LinkState *s = DO_UPCAST(AC97LinkState, dev, dev);
+    AC97LinkState *s = AC97(dev);
 
     AUD_close_in(&s->card, s->voice_pi);
     AUD_close_out(&s->card, s->voice_po);
@@ -1399,7 +1403,7 @@ static void ac97_exit(PCIDevice *dev)
 
 static int ac97_init (PCIBus *bus)
 {
-    pci_create_simple (bus, -1, "AC97");
+    pci_create_simple(bus, -1, TYPE_AC97);
     return 0;
 }
 
@@ -1427,7 +1431,7 @@ static void ac97_class_init (ObjectClass *klass, void *data)
 }
 
 static const TypeInfo ac97_info = {
-    .name          = "AC97",
+    .name          = TYPE_AC97,
     .parent        = TYPE_PCI_DEVICE,
     .instance_size = sizeof (AC97LinkState),
     .class_init    = ac97_class_init,
-- 
2.9.3

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

* [Qemu-devel] [PULL 2/4] audio: use TYPE_WM8750 instead of a hardcoded string
  2018-10-29 13:37 [Qemu-devel] [PULL 0/4] Audio 20181029 patches Gerd Hoffmann
  2018-10-29 13:37 ` [Qemu-devel] [PULL 1/4] hw: AC97: make it more QOMconventional Gerd Hoffmann
@ 2018-10-29 13:37 ` Gerd Hoffmann
  2018-10-29 13:37 ` [Qemu-devel] [PULL 3/4] audio: use object link instead of qdev property to pass wm8750 reference Gerd Hoffmann
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Gerd Hoffmann @ 2018-10-29 13:37 UTC (permalink / raw)
  To: qemu-devel
  Cc: Jan Kiszka, qemu-arm, Gerd Hoffmann, Peter Maydell, Mao Zhongyi

From: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>

Cc: Jan Kiszka <jan.kiszka@web.de>
Cc: Peter Maydell <peter.maydell@linaro.org>
Cc: Gerd Hoffmann <kraxel@redhat.com>

Signed-off-by: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-id: 20181022074050.19638-2-maozhongyi@cmss.chinamobile.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/arm/musicpal.c          | 2 +-
 hw/audio/marvell_88w8618.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/hw/arm/musicpal.c b/hw/arm/musicpal.c
index c807010e83..3dafb41b0b 100644
--- a/hw/arm/musicpal.c
+++ b/hw/arm/musicpal.c
@@ -1695,7 +1695,7 @@ static void musicpal_init(MachineState *machine)
     wm8750_dev = i2c_create_slave(i2c, TYPE_WM8750, MP_WM_ADDR);
     dev = qdev_create(NULL, "mv88w8618_audio");
     s = SYS_BUS_DEVICE(dev);
-    qdev_prop_set_ptr(dev, "wm8750", wm8750_dev);
+    qdev_prop_set_ptr(dev, TYPE_WM8750, wm8750_dev);
     qdev_init_nofail(dev);
     sysbus_mmio_map(s, 0, MP_AUDIO_BASE);
     sysbus_connect_irq(s, 0, pic[MP_AUDIO_IRQ]);
diff --git a/hw/audio/marvell_88w8618.c b/hw/audio/marvell_88w8618.c
index e546892d3c..cf6ce6979b 100644
--- a/hw/audio/marvell_88w8618.c
+++ b/hw/audio/marvell_88w8618.c
@@ -280,7 +280,7 @@ static const VMStateDescription mv88w8618_audio_vmsd = {
 };
 
 static Property mv88w8618_audio_properties[] = {
-    DEFINE_PROP_PTR("wm8750", mv88w8618_audio_state, wm),
+    DEFINE_PROP_PTR(TYPE_WM8750, mv88w8618_audio_state, wm),
     {/* end of list */},
 };
 
-- 
2.9.3

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

* [Qemu-devel] [PULL 3/4] audio: use object link instead of qdev property to pass wm8750 reference
  2018-10-29 13:37 [Qemu-devel] [PULL 0/4] Audio 20181029 patches Gerd Hoffmann
  2018-10-29 13:37 ` [Qemu-devel] [PULL 1/4] hw: AC97: make it more QOMconventional Gerd Hoffmann
  2018-10-29 13:37 ` [Qemu-devel] [PULL 2/4] audio: use TYPE_WM8750 instead of a hardcoded string Gerd Hoffmann
@ 2018-10-29 13:37 ` Gerd Hoffmann
  2018-10-29 13:37 ` [Qemu-devel] [PULL 4/4] audio: use TYPE_MV88W8618_AUDIO instead of hardcoded string Gerd Hoffmann
  2018-10-29 17:03 ` [Qemu-devel] [PULL 0/4] Audio 20181029 patches Peter Maydell
  4 siblings, 0 replies; 6+ messages in thread
From: Gerd Hoffmann @ 2018-10-29 13:37 UTC (permalink / raw)
  To: qemu-devel
  Cc: Jan Kiszka, qemu-arm, Gerd Hoffmann, Peter Maydell, Mao Zhongyi

From: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>

According to qdev-properties.h, properties of pointer type should
be avoided, it seems a link type property is a good substitution.

Cc: Jan Kiszka <jan.kiszka@web.de>
Cc: Peter Maydell <peter.maydell@linaro.org>
Cc: Gerd Hoffmann <kraxel@redhat.com>

Signed-off-by: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-id: 20181022074050.19638-3-maozhongyi@cmss.chinamobile.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/arm/musicpal.c          |  3 ++-
 hw/audio/marvell_88w8618.c | 13 ++++++-------
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/hw/arm/musicpal.c b/hw/arm/musicpal.c
index 3dafb41b0b..ac266f9253 100644
--- a/hw/arm/musicpal.c
+++ b/hw/arm/musicpal.c
@@ -1695,7 +1695,8 @@ static void musicpal_init(MachineState *machine)
     wm8750_dev = i2c_create_slave(i2c, TYPE_WM8750, MP_WM_ADDR);
     dev = qdev_create(NULL, "mv88w8618_audio");
     s = SYS_BUS_DEVICE(dev);
-    qdev_prop_set_ptr(dev, TYPE_WM8750, wm8750_dev);
+    object_property_set_link(OBJECT(dev), OBJECT(wm8750_dev),
+                             TYPE_WM8750, NULL);
     qdev_init_nofail(dev);
     sysbus_mmio_map(s, 0, MP_AUDIO_BASE);
     sysbus_connect_irq(s, 0, pic[MP_AUDIO_IRQ]);
diff --git a/hw/audio/marvell_88w8618.c b/hw/audio/marvell_88w8618.c
index cf6ce6979b..1c7080e844 100644
--- a/hw/audio/marvell_88w8618.c
+++ b/hw/audio/marvell_88w8618.c
@@ -15,6 +15,7 @@
 #include "hw/i2c/i2c.h"
 #include "hw/audio/wm8750.h"
 #include "audio/audio.h"
+#include "qapi/error.h"
 
 #define MP_AUDIO_SIZE           0x00001000
 
@@ -252,6 +253,11 @@ static void mv88w8618_audio_init(Object *obj)
     memory_region_init_io(&s->iomem, obj, &mv88w8618_audio_ops, s,
                           "audio", MP_AUDIO_SIZE);
     sysbus_init_mmio(dev, &s->iomem);
+
+    object_property_add_link(OBJECT(dev), "wm8750", TYPE_WM8750,
+                             (Object **) &s->wm,
+                             qdev_prop_allow_set_link_before_realize,
+                             0, &error_abort);
 }
 
 static void mv88w8618_audio_realize(DeviceState *dev, Error **errp)
@@ -279,11 +285,6 @@ static const VMStateDescription mv88w8618_audio_vmsd = {
     }
 };
 
-static Property mv88w8618_audio_properties[] = {
-    DEFINE_PROP_PTR(TYPE_WM8750, mv88w8618_audio_state, wm),
-    {/* end of list */},
-};
-
 static void mv88w8618_audio_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
@@ -291,8 +292,6 @@ static void mv88w8618_audio_class_init(ObjectClass *klass, void *data)
     dc->realize = mv88w8618_audio_realize;
     dc->reset = mv88w8618_audio_reset;
     dc->vmsd = &mv88w8618_audio_vmsd;
-    dc->props = mv88w8618_audio_properties;
-    /* Reason: pointer property "wm8750" */
     dc->user_creatable = false;
 }
 
-- 
2.9.3

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

* [Qemu-devel] [PULL 4/4] audio: use TYPE_MV88W8618_AUDIO instead of hardcoded string
  2018-10-29 13:37 [Qemu-devel] [PULL 0/4] Audio 20181029 patches Gerd Hoffmann
                   ` (2 preceding siblings ...)
  2018-10-29 13:37 ` [Qemu-devel] [PULL 3/4] audio: use object link instead of qdev property to pass wm8750 reference Gerd Hoffmann
@ 2018-10-29 13:37 ` Gerd Hoffmann
  2018-10-29 17:03 ` [Qemu-devel] [PULL 0/4] Audio 20181029 patches Peter Maydell
  4 siblings, 0 replies; 6+ messages in thread
From: Gerd Hoffmann @ 2018-10-29 13:37 UTC (permalink / raw)
  To: qemu-devel
  Cc: Jan Kiszka, qemu-arm, Gerd Hoffmann, Peter Maydell, Mao Zhongyi,
	Philippe Mathieu-Daudé

From: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>

Cc: Jan Kiszka <jan.kiszka@web.de>
Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Cc: Peter Maydell <peter.maydell@linaro.org>

Signed-off-by: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-id: 20181022074050.19638-4-maozhongyi@cmss.chinamobile.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 include/hw/audio/wm8750.h  | 1 +
 hw/arm/musicpal.c          | 2 +-
 hw/audio/marvell_88w8618.c | 1 -
 3 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/hw/audio/wm8750.h b/include/hw/audio/wm8750.h
index 84e7a119bb..e12cb886d1 100644
--- a/include/hw/audio/wm8750.h
+++ b/include/hw/audio/wm8750.h
@@ -17,6 +17,7 @@
 #include "hw/hw.h"
 
 #define TYPE_WM8750 "wm8750"
+#define TYPE_MV88W8618_AUDIO "mv88w8618_audio"
 
 typedef void data_req_cb(void *opaque, int free_out, int free_in);
 
diff --git a/hw/arm/musicpal.c b/hw/arm/musicpal.c
index ac266f9253..9648b3af44 100644
--- a/hw/arm/musicpal.c
+++ b/hw/arm/musicpal.c
@@ -1693,7 +1693,7 @@ static void musicpal_init(MachineState *machine)
     }
 
     wm8750_dev = i2c_create_slave(i2c, TYPE_WM8750, MP_WM_ADDR);
-    dev = qdev_create(NULL, "mv88w8618_audio");
+    dev = qdev_create(NULL, TYPE_MV88W8618_AUDIO);
     s = SYS_BUS_DEVICE(dev);
     object_property_set_link(OBJECT(dev), OBJECT(wm8750_dev),
                              TYPE_WM8750, NULL);
diff --git a/hw/audio/marvell_88w8618.c b/hw/audio/marvell_88w8618.c
index 1c7080e844..6600ab4851 100644
--- a/hw/audio/marvell_88w8618.c
+++ b/hw/audio/marvell_88w8618.c
@@ -39,7 +39,6 @@
 #define MP_AUDIO_CLOCK_24MHZ    (1 << 9)
 #define MP_AUDIO_MONO           (1 << 14)
 
-#define TYPE_MV88W8618_AUDIO "mv88w8618_audio"
 #define MV88W8618_AUDIO(obj) \
     OBJECT_CHECK(mv88w8618_audio_state, (obj), TYPE_MV88W8618_AUDIO)
 
-- 
2.9.3

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

* Re: [Qemu-devel] [PULL 0/4] Audio 20181029 patches
  2018-10-29 13:37 [Qemu-devel] [PULL 0/4] Audio 20181029 patches Gerd Hoffmann
                   ` (3 preceding siblings ...)
  2018-10-29 13:37 ` [Qemu-devel] [PULL 4/4] audio: use TYPE_MV88W8618_AUDIO instead of hardcoded string Gerd Hoffmann
@ 2018-10-29 17:03 ` Peter Maydell
  4 siblings, 0 replies; 6+ messages in thread
From: Peter Maydell @ 2018-10-29 17:03 UTC (permalink / raw)
  To: Gerd Hoffmann; +Cc: QEMU Developers, Jan Kiszka, qemu-arm

On 29 October 2018 at 13:37, Gerd Hoffmann <kraxel@redhat.com> wrote:
> The following changes since commit 285278ca785f5fa9a570927e1c0958a2ca2b2150:
>
>   Merge remote-tracking branch 'remotes/famz/tags/testing-pull-request' into staging (2018-10-27 19:55:08 +0100)
>
> are available in the git repository at:
>
>   git://git.kraxel.org/qemu tags/audio-20181029-pull-request
>
> for you to fetch changes up to d436d4e7a50a7c4fddc0569c2107fe5eaf0e1fbc:
>
>   audio: use TYPE_MV88W8618_AUDIO instead of hardcoded string (2018-10-29 13:50:15 +0100)
>
> ----------------------------------------------------------------
> audio: qom cleanups.
>
> ----------------------------------------------------------------
>
> Li Qiang (1):
>   hw: AC97: make it more QOMconventional
>
> Mao Zhongyi (3):
>   audio: use TYPE_WM8750 instead of a hardcoded string
>   audio: use object link instead of qdev property to pass wm8750
>     reference
>   audio: use TYPE_MV88W8618_AUDIO instead of hardcoded string
>
>  include/hw/audio/wm8750.h  |  1 +
>  hw/arm/musicpal.c          |  5 +++--
>  hw/audio/ac97.c            | 12 ++++++++----
>  hw/audio/marvell_88w8618.c | 14 ++++++--------
>  4 files changed, 18 insertions(+), 14 deletions(-)
>
Applied, thanks.

-- PMM

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

end of thread, other threads:[~2018-10-29 17:03 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-29 13:37 [Qemu-devel] [PULL 0/4] Audio 20181029 patches Gerd Hoffmann
2018-10-29 13:37 ` [Qemu-devel] [PULL 1/4] hw: AC97: make it more QOMconventional Gerd Hoffmann
2018-10-29 13:37 ` [Qemu-devel] [PULL 2/4] audio: use TYPE_WM8750 instead of a hardcoded string Gerd Hoffmann
2018-10-29 13:37 ` [Qemu-devel] [PULL 3/4] audio: use object link instead of qdev property to pass wm8750 reference Gerd Hoffmann
2018-10-29 13:37 ` [Qemu-devel] [PULL 4/4] audio: use TYPE_MV88W8618_AUDIO instead of hardcoded string Gerd Hoffmann
2018-10-29 17:03 ` [Qemu-devel] [PULL 0/4] Audio 20181029 patches Peter Maydell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.