[PATCH 3/3] drm/i915: allocate framebuffer cmap

From: Clemens Ladisch
Date: Mon Nov 02 2009 - 02:42:48 EST


Without an allocated colormap, FBIOGETCMAP fails. This would make
programs restore an all-black colormap ("links -g") or fail to work
altogether ("mplayer -vo fbdev2").

Signed-off-by: Clemens Ladisch <clemens@xxxxxxxxxx>
---
Untested.

--- linux-2.6/drivers/gpu/drm/i915/intel_fb.c
+++ linux-2.6/drivers/gpu/drm/i915/intel_fb.c
@@ -227,6 +227,10 @@ static int intelfb_create(struct drm_dev

fb->fbdev = info;

+ ret = fb_alloc_cmap(&info->cmap, 256, 0);
+ if (ret)
+ goto out_unpin;
+
par->intel_fb = intel_fb;

/* To allow resizeing without swapping buffers */
@@ -270,6 +274,7 @@ int intelfb_remove(struct drm_device *de
iounmap(info->screen_base);
if (info->par)
drm_fb_helper_free(&par->helper);
+ fb_dealloc_cmap(&info->cmap);
framebuffer_release(info);
}


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/