Am 12.01.2011 14:32, schrieb James Simmons:
Okay. The nouveau driver also uses the pitch as well. It really should be using the pitch field from drm_framebuffer instead of the line_length from fb_fix_screeninfo. This patch is just to make sure this is the issue. I will submit another patch later that uses drm_fb_framebuffer's pitch field. As for the visual unfortunely their is no real mapping between drm and fbdev.
diff --git a/drivers/gpu/drm/nouveau/nouveau_fbcon.c b/drivers/gpu/drm/nouveau/nouveau_fbcon.c index a26d047..de3b067 100644 --- a/drivers/gpu/drm/nouveau/nouveau_fbcon.c +++ b/drivers/gpu/drm/nouveau/nouveau_fbcon.c @@ -359,6 +359,9 @@ nouveau_fbcon_create(struct nouveau_fbdev *nfbdev, info->screen_base = nvbo_kmap_obj_iovirtual(nouveau_fb->nvbo); info->screen_size = size;
info->fix.visual = fb->depth == 8 ? FB_VISUAL_PSEUDOCOLOR :
FB_VISUAL_TRUECOLOR;
info->fix.line_length = fb->pitch; drm_fb_helper_fill_var(info, &nfbdev->helper, sizes->fb_width, sizes->fb_height);
/* Set aperture base/size for vesafb takeover */
That fixes _my_ nouveau frame buffer regression.