On Sat, Apr 10, 2010 at 09:55:34PM +0200, marcin.slusarz@xxxxxxxxx wrote: > Currently vesafb/efifb/... is kicked when hardware driver is registering > framebuffer. To do it hardware must be fully functional, so there's a short > window between start of initialisation and framebuffer registration when > two drivers touch the hardware. Unfortunately sometimes it breaks nouveau > initialisation. > > Fix it by kicking firmware driver(s) before we start touching the hardware. > > Reported-by: Didier Spaier <didier.spaier@xxxxxxx> > Signed-off-by: Marcin Slusarz <marcin.slusarz@xxxxxxxxx> > Cc: Ben Skeggs <bskeggs@xxxxxxxxxx> > Cc: Dave Airlie <airlied@xxxxxxxxxx> > Cc: Peter Jones <pjones@xxxxxxxxxx> > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > --- With this little patch below: Tested-by: Didier Spaier <didier.spaier@xxxxxxx> --- diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c index f5297a0..42ae782 100644 --- a/drivers/video/fbmem.c +++ b/drivers/video/fbmem.c @@ -1524,6 +1524,7 @@ void remove_conflicting_framebuffers(struct apertures_struct *a, const char *nam } } } +EXPORT_SYMBOL(remove_conflicting_framebuffers); /** * register_framebuffer - registers a frame buffer device -- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html