From 7ff67f2872ddd15908f789ec9bdb76e8211d6431 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Mon, 28 Jun 2004 00:48:51 +0000 Subject: Separate out off-screen allocation from Init. Fix Enable to update off-screen addresses. Wrap RandR to update off-screen addresses. Set off_screen_base and memory_size fields correctly. --- hw/kdrive/fbdev/fbdev.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'hw/kdrive/fbdev/fbdev.c') diff --git a/hw/kdrive/fbdev/fbdev.c b/hw/kdrive/fbdev/fbdev.c index d904a4aa1..44a95d19e 100644 --- a/hw/kdrive/fbdev/fbdev.c +++ b/hw/kdrive/fbdev/fbdev.c @@ -333,14 +333,14 @@ fbdevMapFramebuffer (KdScreenInfo *screen) screen->width = priv->var.xres; screen->height = priv->var.yres; screen->memory_base = (CARD8 *) (priv->fb); - screen->memory_size = 0; - screen->off_screen_base = 0; + screen->memory_size = priv->fix.smem_len; if (scrpriv->shadow) { if (!KdShadowFbAlloc (screen, 0, scrpriv->randr & (RR_Rotate_90|RR_Rotate_270))) return FALSE; + screen->off_screen_base = screen->memory_size; } else { @@ -348,6 +348,7 @@ fbdevMapFramebuffer (KdScreenInfo *screen) screen->fb[0].pixelStride = (priv->fix.line_length * 8 / priv->var.bits_per_pixel); screen->fb[0].frameBuffer = (CARD8 *) (priv->fb); + screen->off_screen_base = screen->fb[0].byteStride * screen->height; } return TRUE; -- cgit v1.2.3