Subject says it all - works as a module, but can't be compiled into the
kernel because of duplicate definitions, caused by several files including
matroxfb_base.h which in turn defines global_disp.

Patch attached.

LLaP
bero

--- linux/drivers/video/matrox/matroxfb_base.h.bero     Fri Jan 26 13:39:54 2001
+++ linux/drivers/video/matrox/matroxfb_base.h  Fri Jan 26 13:40:22 2001
@@ -589,7 +589,11 @@
 #else
 
 extern struct matrox_fb_info matroxfb_global_mxinfo;
+#ifdef MODULE
 struct display global_disp;
+#else
+extern struct display global_disp;
+#endif
 
 #define ACCESS_FBINFO(x) (matroxfb_global_mxinfo.x)
 #define ACCESS_FBINFO2(info, x) (matroxfb_global_mxinfo.x)
--- linux/drivers/video/matrox/matroxfb_base.c.bero     Fri Jan 26 13:40:40 2001
+++ linux/drivers/video/matrox/matroxfb_base.c  Fri Jan 26 13:41:29 2001
@@ -98,6 +98,10 @@
 #include <linux/matroxfb.h>
 #include <asm/uaccess.h>
 
+#ifndef MODULE
+struct display global_disp;
+#endif
+ 
 #ifdef CONFIG_PPC
 unsigned char nvram_read_byte(int);
 static int default_vmode = VMODE_NVRAM;

Reply via email to