From: "Andreas Färber" <afaerber@suse.de>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
Michael Walle <michael@walle.cc>, Jan Kiszka <jan.kiszka@web.de>,
qemu-devel@nongnu.org, patches@linaro.org
Subject: Re: [Qemu-devel] [PATCH v2 2/5] musicpal: qdevify musicpal-misc
Date: Mon, 04 Mar 2013 12:22:40 +0100 [thread overview]
Message-ID: <51348400.3010001@suse.de> (raw)
In-Reply-To: <1361812142-26640-3-git-send-email-peter.maydell@linaro.org>
Am 25.02.2013 18:08, schrieb Peter Maydell:
> Make musicpal-misc into its own (trivial) qdev device, so we
> can get rid of the abuse of sysbus_add_memory().
>
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> hw/musicpal.c | 28 +++++++++++++++++++++++-----
> 1 file changed, 23 insertions(+), 5 deletions(-)
>
> diff --git a/hw/musicpal.c b/hw/musicpal.c
> index 272cb80..042b7f1 100644
> --- a/hw/musicpal.c
> +++ b/hw/musicpal.c
> @@ -1031,6 +1031,15 @@ static const TypeInfo mv88w8618_flashcfg_info = {
>
> #define MP_BOARD_REVISION 0x31
>
> +typedef struct {
> + SysBusDevice busdev;
I believe I asked for this field to be named parent_obj, is there a
compatibility reason (macro?) to keep the old-style naming?
Otherwise looks good.
Andreas
> + MemoryRegion iomem;
> +} MusicPalMiscState;
> +
> +#define TYPE_MUSICPAL_MISC "musicpal-misc"
> +#define MUSICPAL_MISC(obj) \
> + OBJECT_CHECK(MusicPalMiscState, (obj), TYPE_MUSICPAL_MISC)
> +
> static uint64_t musicpal_misc_read(void *opaque, hwaddr offset,
> unsigned size)
> {
> @@ -1054,15 +1063,23 @@ static const MemoryRegionOps musicpal_misc_ops = {
> .endianness = DEVICE_NATIVE_ENDIAN,
> };
>
> -static void musicpal_misc_init(SysBusDevice *dev)
> +static void musicpal_misc_init(Object *obj)
> {
> - MemoryRegion *iomem = g_new(MemoryRegion, 1);
> + SysBusDevice *sd = SYS_BUS_DEVICE(obj);
> + MusicPalMiscState *s = MUSICPAL_MISC(obj);
>
> - memory_region_init_io(iomem, &musicpal_misc_ops, NULL,
> + memory_region_init_io(&s->iomem, &musicpal_misc_ops, NULL,
> "musicpal-misc", MP_MISC_SIZE);
> - sysbus_add_memory(dev, MP_MISC_BASE, iomem);
> + sysbus_init_mmio(sd, &s->iomem);
> }
>
> +static const TypeInfo musicpal_misc_info = {
> + .name = TYPE_MUSICPAL_MISC,
> + .parent = TYPE_SYS_BUS_DEVICE,
> + .instance_init = musicpal_misc_init,
> + .instance_size = sizeof(MusicPalMiscState),
> +};
> +
> /* WLAN register offsets */
> #define MP_WLAN_MAGIC1 0x11c
> #define MP_WLAN_MAGIC2 0x124
> @@ -1612,7 +1629,7 @@ static void musicpal_init(QEMUMachineInitArgs *args)
>
> sysbus_create_simple("mv88w8618_wlan", MP_WLAN_BASE, NULL);
>
> - musicpal_misc_init(SYS_BUS_DEVICE(dev));
> + sysbus_create_simple(TYPE_MUSICPAL_MISC, MP_MISC_BASE, NULL);
>
> dev = sysbus_create_simple("musicpal_gpio", MP_GPIO_BASE, pic[MP_GPIO_IRQ]);
> i2c_dev = sysbus_create_simple("gpio_i2c", -1, NULL);
> @@ -1692,6 +1709,7 @@ static void musicpal_register_types(void)
> type_register_static(&musicpal_lcd_info);
> type_register_static(&musicpal_gpio_info);
> type_register_static(&musicpal_key_info);
> + type_register_static(&musicpal_misc_info);
> }
>
> type_init(musicpal_register_types)
>
--
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
next prev parent reply other threads:[~2013-03-04 11:22 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1361812142-26640-1-git-send-email-peter.maydell@linaro.org>
[not found] ` <1361812142-26640-2-git-send-email-peter.maydell@linaro.org>
2013-03-04 2:23 ` [Qemu-devel] [PATCH v2 1/5] sysbus: make SysBusDeviceClass::init optional Peter Crosthwaite
[not found] ` <1361812142-26640-3-git-send-email-peter.maydell@linaro.org>
2013-03-04 3:22 ` [Qemu-devel] [PATCH v2 2/5] musicpal: qdevify musicpal-misc Peter Crosthwaite
2013-03-04 11:22 ` Andreas Färber [this message]
2013-03-04 11:53 ` Peter Maydell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51348400.3010001@suse.de \
--to=afaerber@suse.de \
--cc=jan.kiszka@web.de \
--cc=michael@walle.cc \
--cc=patches@linaro.org \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.