aboutsummaryrefslogtreecommitdiff
path: root/hw/pl110.c
diff options
context:
space:
mode:
authorpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2008-07-01 16:24:38 +0000
committerpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2008-07-01 16:24:38 +0000
commitc60e08d9c6bbace33c04dab2b5cacbc42e2e3d47 (patch)
treebe6d94159b698760acaec329da228a44c2ce415f /hw/pl110.c
parentea334207a3152e5e4fee4cb82a76233fd43fa14d (diff)
Implement resolution switching in common console code.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4812 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/pl110.c')
-rw-r--r--hw/pl110.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/hw/pl110.c b/hw/pl110.c
index 7f450851a1..2437185f63 100644
--- a/hw/pl110.c
+++ b/hw/pl110.c
@@ -30,6 +30,8 @@ enum pl110_bppmode
typedef struct {
uint32_t base;
DisplayState *ds;
+ QEMUConsole *console;
+
/* The Versatile/PB uses a slightly modified PL110 controller. */
int versatile;
uint32_t timing[4];
@@ -270,7 +272,7 @@ static void pl110_resize(pl110_state *s, int width, int height)
{
if (width != s->cols || height != s->rows) {
if (pl110_enabled(s)) {
- dpy_resize(s->ds, width, height);
+ qemu_console_resize(s->console, width, height);
}
}
s->cols = width;
@@ -387,7 +389,7 @@ static void pl110_write(void *opaque, target_phys_addr_t offset,
s->cr = val;
s->bpp = (val >> 1) & 7;
if (pl110_enabled(s)) {
- dpy_resize(s->ds, s->cols, s->rows);
+ qemu_console_resize(s->console, s->cols, s->rows);
}
break;
case 10: /* LCDICR */
@@ -425,8 +427,9 @@ void *pl110_init(DisplayState *ds, uint32_t base, qemu_irq irq,
s->ds = ds;
s->versatile = versatile;
s->irq = irq;
- graphic_console_init(ds, pl110_update_display, pl110_invalidate_display,
- NULL, NULL, s);
+ s->console = graphic_console_init(ds, pl110_update_display,
+ pl110_invalidate_display,
+ NULL, NULL, s);
/* ??? Save/restore. */
return s;
}