[git pull] drm for rc1

James Simmons jsimmons at infradead.org
Wed Jan 12 04:49:39 PST 2011


> Am 12.01.2011 00:28, schrieb Linus Torvalds:
> > On Tue, Jan 11, 2011 at 3:20 PM, Christian Borntraeger
> > <borntraeger at de.ibm.com> wrote:
> >>
> >> Now nouveau framebuffer is completely broken on my T61p (01:00.0 VGA compatible controller: nVidia Corporation G84M [Quadro FX 570M] (rev a1))
> >> During startup the framebuffer shows only stripes and a blank
> >> screen after suspend/resume.
> >> I also see lots of TRAP messages. (see below).
> >> X11 seems to work fine though...
> > 
> > Can you try to bisect?
> 
> dfe63bb0ad9810db13aab0058caba97866e0a681 is the first bad commit
> commit dfe63bb0ad9810db13aab0058caba97866e0a681
> Author: James Simmons <jsimmons at infradead.org>
> Date:   Thu Dec 23 16:40:37 2010 +0000
> 
>     drm: Update fbdev fb_fix_screeninfo
> 
> 
> Reverting this on top of todays git also fixes my problem.

I see the problem. Nouveau for some hardware does a accelerated 
clearing of the screen before we register the framebuffer. The above patch 
does fix a real issue so please don't revert it. Can you try this patch.

diff --git a/drivers/gpu/drm/nouveau/nouveau_fbcon.c b/drivers/gpu/drm/nouveau/nouveau_fbcon.c
index a26d047..4ef24d6 100644
--- a/drivers/gpu/drm/nouveau/nouveau_fbcon.c
+++ b/drivers/gpu/drm/nouveau/nouveau_fbcon.c
@@ -359,6 +359,8 @@ 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;
 	drm_fb_helper_fill_var(info, &nfbdev->helper, sizes->fb_width, sizes->fb_height);
 
 	/* Set aperture base/size for vesafb takeover */





More information about the dri-devel mailing list