Am 24.07.2013 09:48, schrieb Andreas Färber: > Signed-off-by: Andreas Färber <afaer...@suse.de> > --- > hw/arm/musicpal.c | 15 +++++++++++---- > 1 file changed, 11 insertions(+), 4 deletions(-) > > diff --git a/hw/arm/musicpal.c b/hw/arm/musicpal.c > index 293ab26..e7efed9 100644 > --- a/hw/arm/musicpal.c > +++ b/hw/arm/musicpal.c > @@ -461,8 +461,15 @@ static const TypeInfo mv88w8618_eth_info = { > > #define MP_LCD_TEXTCOLOR 0xe0e0ff /* RRGGBB */ > > +#define TYPE_MUSICPAL_LCD "musicpal_lcd" > +#define MUSICPAL_LCD(obj) \ > + OBJECT_CHECK(musicpal_lcd_state, (obj), TYPE_MUSICPAL_LCD) > + > typedef struct musicpal_lcd_state { > - SysBusDevice busdev; > + /*< private >*/ > + SysBusDevice parent_obj; > + /*< public >*/ > + > MemoryRegion iomem; > uint32_t brightness; > uint32_t mode; > @@ -615,7 +622,7 @@ static const GraphicHwOps musicpal_gfx_ops = { > > static int musicpal_lcd_init(SysBusDevice *dev) > { > - musicpal_lcd_state *s = FROM_SYSBUS(musicpal_lcd_state, dev); > + musicpal_lcd_state *s = MUSICPAL_LCD(dev); > > s->brightness = 7; > [snip]
Needs the following addition: diff --git a/hw/arm/musicpal.c b/hw/arm/musicpal.c index 6065051..9174b87 100644 --- a/hw/arm/musicpal.c +++ b/hw/arm/musicpal.c @@ -621,20 +621,21 @@ static const GraphicHwOps musicpal_gfx_ops = { .gfx_update = lcd_refresh, }; -static int musicpal_lcd_init(SysBusDevice *dev) +static int musicpal_lcd_init(SysBusDevice *sbd) { + DeviceState *dev = DEVICE(sbd); musicpal_lcd_state *s = MUSICPAL_LCD(dev); s->brightness = 7; memory_region_init_io(&s->iomem, OBJECT(s), &musicpal_lcd_ops, s, "musicpal-lcd", MP_LCD_SIZE); - sysbus_init_mmio(dev, &s->iomem); + sysbus_init_mmio(sbd, &s->iomem); - s->con = graphic_console_init(DEVICE(dev), &musicpal_gfx_ops, s); + s->con = graphic_console_init(dev, &musicpal_gfx_ops, s); qemu_console_resize(s->con, 128*3, 64*3); - qdev_init_gpio_in(&dev->qdev, musicpal_lcd_gpio_brigthness_in, 3); + qdev_init_gpio_in(dev, musicpal_lcd_gpio_brigthness_in, 3); return 0; } -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg