From: "Antonino A. Daplas" <adaplas@hotpop.com>

This patch contains cleanups under drivers/video/ including:
- make some needlessly global code static
- the following was needlessly EXPORT_SYMBOL'ed:
  - fbcon.c: fb_con
  - fbmon.c: get_EDID_from_firmware (completely unused)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/arch/frv/kernel/setup.c        |    3 ---
 25-akpm/drivers/video/console/fbcon.c  |   26 ++++++++++++--------------
 25-akpm/drivers/video/console/fbcon.h  |    1 -
 25-akpm/drivers/video/console/mdacon.c |    4 ++--
 25-akpm/drivers/video/fbmon.c          |   20 +-------------------
 25-akpm/drivers/video/modedb.c         |    4 ++--
 25-akpm/drivers/video/vga16fb.c        |   24 ++++++++++++------------
 25-akpm/include/linux/console.h        |    1 -
 8 files changed, 29 insertions(+), 54 deletions(-)

diff -puN arch/frv/kernel/setup.c~fbdev-cleanups-in-drivers-video-part-2 arch/frv/kernel/setup.c
--- 25/arch/frv/kernel/setup.c~fbdev-cleanups-in-drivers-video-part-2	2005-03-13 13:33:59.000000000 -0800
+++ 25-akpm/arch/frv/kernel/setup.c	2005-03-13 13:33:59.000000000 -0800
@@ -65,9 +65,6 @@ static void __init setup_uclinux_memory(
 
 #ifdef CONFIG_CONSOLE
 extern struct consw *conswitchp;
-#ifdef CONFIG_FRAMEBUFFER
-extern struct consw fb_con;
-#endif
 #endif
 
 #ifdef CONFIG_MB93090_MB00
diff -puN drivers/video/console/fbcon.c~fbdev-cleanups-in-drivers-video-part-2 drivers/video/console/fbcon.c
--- 25/drivers/video/console/fbcon.c~fbdev-cleanups-in-drivers-video-part-2	2005-03-13 13:33:59.000000000 -0800
+++ 25-akpm/drivers/video/console/fbcon.c	2005-03-13 13:33:59.000000000 -0800
@@ -107,15 +107,15 @@ enum {
 };
 
 struct display fb_display[MAX_NR_CONSOLES];
-signed char con2fb_map[MAX_NR_CONSOLES];
-signed char con2fb_map_boot[MAX_NR_CONSOLES];
+static signed char con2fb_map[MAX_NR_CONSOLES];
+static signed char con2fb_map_boot[MAX_NR_CONSOLES];
 static int logo_height;
 static int logo_lines;
 /* logo_shown is an index to vc_cons when >= 0; otherwise follows FBCON_LOGO
    enums.  */
 static int logo_shown = FBCON_LOGO_CANSHOW;
 /* Software scrollback */
-int fbcon_softback_size = 32768;
+static int fbcon_softback_size = 32768;
 static unsigned long softback_buf, softback_curr;
 static unsigned long softback_in;
 static unsigned long softback_top, softback_end;
@@ -130,6 +130,8 @@ static char fontname[40];
 /* current fb_info */
 static int info_idx = -1;
 
+static const struct consw fb_con;
+
 #define CM_SOFTBACK	(8)
 
 #define advance_row(p, delta) (unsigned short *)((unsigned long)(p) + (delta) * vc->vc_size_row)
@@ -309,7 +311,8 @@ static void cursor_timer_handler(unsigne
 	mod_timer(&ops->cursor_timer, jiffies + HZ/5);
 }
 
-int __init fb_console_setup(char *this_opt)
+#ifndef MODULE
+static int __init fb_console_setup(char *this_opt)
 {
 	char *options;
 	int i, j;
@@ -363,6 +366,7 @@ int __init fb_console_setup(char *this_o
 }
 
 __setup("fbcon=", fb_console_setup);
+#endif
 
 static int search_fb_in_map(int idx)
 {
@@ -1117,7 +1121,7 @@ static int scrollback_phys_max = 0;
 static int scrollback_max = 0;
 static int scrollback_current = 0;
 
-int update_var(int con, struct fb_info *info)
+static int update_var(int con, struct fb_info *info)
 {
 	if (con == ((struct fbcon_ops *)info->fbcon_par)->currcon)
 		return fb_pan_display(info, &info->var);
@@ -2724,7 +2728,7 @@ static int fbcon_event_notify(struct not
  *  The console `switch' structure for the frame buffer based console
  */
 
-const struct consw fb_con = {
+static const struct consw fb_con = {
 	.owner			= THIS_MODULE,
 	.con_startup 		= fbcon_startup,
 	.con_init 		= fbcon_init,
@@ -2754,7 +2758,7 @@ static struct notifier_block fbcon_event
 	.notifier_call	= fbcon_event_notify,
 };
 
-int __init fb_console_init(void)
+static int __init fb_console_init(void)
 {
 	int i;
 
@@ -2782,7 +2786,7 @@ module_init(fb_console_init);
 
 #ifdef MODULE
 
-void __exit fb_console_exit(void)
+static void __exit fb_console_exit(void)
 {
 	acquire_console_sem();
 	fb_unregister_client(&fbcon_event_notifier);
@@ -2794,10 +2798,4 @@ module_exit(fb_console_exit);
 
 #endif
 
-/*
- *  Visible symbols for modules
- */
-
-EXPORT_SYMBOL(fb_con);
-
 MODULE_LICENSE("GPL");
diff -puN drivers/video/console/fbcon.h~fbdev-cleanups-in-drivers-video-part-2 drivers/video/console/fbcon.h
--- 25/drivers/video/console/fbcon.h~fbdev-cleanups-in-drivers-video-part-2	2005-03-13 13:33:59.000000000 -0800
+++ 25-akpm/drivers/video/console/fbcon.h	2005-03-13 13:33:59.000000000 -0800
@@ -157,7 +157,6 @@ struct fbcon_ops {
 #define SCROLL_REDRAW	   0x004
 #define SCROLL_PAN_REDRAW  0x005
 
-extern int fb_console_init(void);
 #ifdef CONFIG_FB_TILEBLITTING
 extern void fbcon_set_tileops(struct vc_data *vc, struct fb_info *info,
 			      struct display *p, struct fbcon_ops *ops);
diff -puN drivers/video/console/mdacon.c~fbdev-cleanups-in-drivers-video-part-2 drivers/video/console/mdacon.c
--- 25/drivers/video/console/mdacon.c~fbdev-cleanups-in-drivers-video-part-2	2005-03-13 13:33:59.000000000 -0800
+++ 25-akpm/drivers/video/console/mdacon.c	2005-03-13 13:33:59.000000000 -0800
@@ -564,7 +564,7 @@ static int mdacon_scroll(struct vc_data 
  *  The console `switch' structure for the MDA based console
  */
 
-const struct consw mda_con = {
+static const struct consw mda_con = {
 	.owner =		THIS_MODULE,
 	.con_startup =		mdacon_startup,
 	.con_init =		mdacon_init,
@@ -591,7 +591,7 @@ int __init mda_console_init(void)
 	return take_over_console(&mda_con, mda_first_vc-1, mda_last_vc-1, 0);
 }
 
-void __exit mda_console_exit(void)
+static void __exit mda_console_exit(void)
 {
 	give_up_console(&mda_con);
 }
diff -puN drivers/video/fbmon.c~fbdev-cleanups-in-drivers-video-part-2 drivers/video/fbmon.c
--- 25/drivers/video/fbmon.c~fbdev-cleanups-in-drivers-video-part-2	2005-03-13 13:33:59.000000000 -0800
+++ 25-akpm/drivers/video/fbmon.c	2005-03-13 13:33:59.000000000 -0800
@@ -74,10 +74,9 @@ static struct broken_edid brokendb[] = {
 	},
 };
 
-const unsigned char edid_v1_header[] = { 0x00, 0xff, 0xff, 0xff,
+static const unsigned char edid_v1_header[] = { 0x00, 0xff, 0xff, 0xff,
 	0xff, 0xff, 0xff, 0x00
 };
-const unsigned char edid_v1_descriptor_flag[] = { 0x00, 0x00 };
 
 static void copy_string(unsigned char *c, unsigned char *s)
 {
@@ -872,18 +871,6 @@ void fb_edid_to_monspecs(unsigned char *
 	DPRINTK("========================================\n");
 }
 
-char *get_EDID_from_firmware(struct device *dev)
-{
-	unsigned char *pedid = NULL;
-
-#if defined(CONFIG_EDID_FIRMWARE) && defined(CONFIG_X86)
-	pedid = edid_info.dummy;
-	if (!pedid)
-		return NULL;
-#endif
-	return pedid;
-}
-
 /* 
  * VESA Generalized Timing Formula (GTF) 
  */
@@ -1193,10 +1180,6 @@ void fb_edid_to_monspecs(unsigned char *
 {
 	specs = NULL;
 }
-char *get_EDID_from_firmware(struct device *dev)
-{
-	return NULL;
-}
 void fb_destroy_modedb(struct fb_videomode *modedb)
 {
 }
@@ -1270,7 +1253,6 @@ int fb_validate_mode(const struct fb_var
 
 EXPORT_SYMBOL(fb_parse_edid);
 EXPORT_SYMBOL(fb_edid_to_monspecs);
-EXPORT_SYMBOL(get_EDID_from_firmware);
 
 EXPORT_SYMBOL(fb_get_mode);
 EXPORT_SYMBOL(fb_validate_mode);
diff -puN drivers/video/modedb.c~fbdev-cleanups-in-drivers-video-part-2 drivers/video/modedb.c
--- 25/drivers/video/modedb.c~fbdev-cleanups-in-drivers-video-part-2	2005-03-13 13:33:59.000000000 -0800
+++ 25-akpm/drivers/video/modedb.c	2005-03-13 13:33:59.000000000 -0800
@@ -404,8 +404,8 @@ static int my_atoi(const char *name)
  *
  */
 
-int fb_try_mode(struct fb_var_screeninfo *var, struct fb_info *info,
-		const struct fb_videomode *mode, unsigned int bpp)
+static int fb_try_mode(struct fb_var_screeninfo *var, struct fb_info *info,
+		       const struct fb_videomode *mode, unsigned int bpp)
 {
     int err = 0;
 
diff -puN drivers/video/vga16fb.c~fbdev-cleanups-in-drivers-video-part-2 drivers/video/vga16fb.c
--- 25/drivers/video/vga16fb.c~fbdev-cleanups-in-drivers-video-part-2	2005-03-13 13:33:59.000000000 -0800
+++ 25-akpm/drivers/video/vga16fb.c	2005-03-13 13:33:59.000000000 -0800
@@ -874,7 +874,7 @@ static int vga16fb_blank(int blank, stru
 	return 0;
 }
 
-void vga_8planes_fillrect(struct fb_info *info, const struct fb_fillrect *rect)
+static void vga_8planes_fillrect(struct fb_info *info, const struct fb_fillrect *rect)
 {
 	u32 dx = rect->dx, width = rect->width;
         char oldindex = getindex();
@@ -928,7 +928,7 @@ void vga_8planes_fillrect(struct fb_info
         setindex(oldindex);
 }
 
-void vga16fb_fillrect(struct fb_info *info, const struct fb_fillrect *rect)
+static void vga16fb_fillrect(struct fb_info *info, const struct fb_fillrect *rect)
 {
 	int x, x2, y2, vxres, vyres, width, height, line_ofs;
 	char __iomem *dst;
@@ -1003,7 +1003,7 @@ void vga16fb_fillrect(struct fb_info *in
 	}
 }
 
-void vga_8planes_copyarea(struct fb_info *info, const struct fb_copyarea *area)
+static void vga_8planes_copyarea(struct fb_info *info, const struct fb_copyarea *area)
 {
         char oldindex = getindex();
         char oldmode = setmode(0x41);
@@ -1058,7 +1058,7 @@ void vga_8planes_copyarea(struct fb_info
         setindex(oldindex);
 }
 
-void vga16fb_copyarea(struct fb_info *info, const struct fb_copyarea *area)
+static void vga16fb_copyarea(struct fb_info *info, const struct fb_copyarea *area)
 {
 	u32 dx = area->dx, dy = area->dy, sx = area->sx, sy = area->sy; 
 	int x, x2, y2, old_dx, old_dy, vxres, vyres;
@@ -1166,7 +1166,7 @@ static unsigned int transl_l[] =
 #endif
 #endif
 
-void vga_8planes_imageblit(struct fb_info *info, const struct fb_image *image)
+static void vga_8planes_imageblit(struct fb_info *info, const struct fb_image *image)
 {
         char oldindex = getindex();
         char oldmode = setmode(0x40);
@@ -1197,7 +1197,7 @@ void vga_8planes_imageblit(struct fb_inf
         setindex(oldindex);
 }
 
-void vga_imageblit_expand(struct fb_info *info, const struct fb_image *image)
+static void vga_imageblit_expand(struct fb_info *info, const struct fb_image *image)
 {
 	char __iomem *where = info->screen_base + (image->dx/8) +
 		image->dy * info->fix.line_length;
@@ -1261,7 +1261,7 @@ void vga_imageblit_expand(struct fb_info
 	}
 }
 
-void vga_imageblit_color(struct fb_info *info, const struct fb_image *image) 
+static void vga_imageblit_color(struct fb_info *info, const struct fb_image *image)
 {
 	/*
 	 * Draw logo 
@@ -1306,7 +1306,7 @@ void vga_imageblit_color(struct fb_info 
 	}
 }
 				
-void vga16fb_imageblit(struct fb_info *info, const struct fb_image *image)
+static void vga16fb_imageblit(struct fb_info *info, const struct fb_image *image)
 {
 	if (image->depth == 1)
 		vga_imageblit_expand(info, image);
@@ -1329,7 +1329,8 @@ static struct fb_ops vga16fb_ops = {
 	.fb_cursor      = soft_cursor,
 };
 
-int vga16fb_setup(char *options)
+#ifndef MODULE
+static int vga16fb_setup(char *options)
 {
 	char *this_opt;
 	
@@ -1341,8 +1342,9 @@ int vga16fb_setup(char *options)
 	}
 	return 0;
 }
+#endif
 
-int __init vga16fb_init(void)
+static int __init vga16fb_init(void)
 {
 	int i;
 	int ret;
@@ -1427,9 +1429,7 @@ static void __exit vga16fb_exit(void)
     /* XXX unshare VGA regions */
 }
 
-#ifdef MODULE
 MODULE_LICENSE("GPL");
-#endif
 module_init(vga16fb_init);
 module_exit(vga16fb_exit);
 
diff -puN include/linux/console.h~fbdev-cleanups-in-drivers-video-part-2 include/linux/console.h
--- 25/include/linux/console.h~fbdev-cleanups-in-drivers-video-part-2	2005-03-13 13:33:59.000000000 -0800
+++ 25-akpm/include/linux/console.h	2005-03-13 13:33:59.000000000 -0800
@@ -59,7 +59,6 @@ struct consw {
 extern const struct consw *conswitchp;
 
 extern const struct consw dummy_con;	/* dummy console buffer */
-extern const struct consw fb_con;	/* frame buffer based console */
 extern const struct consw vga_con;	/* VGA text console */
 extern const struct consw newport_con;	/* SGI Newport console  */
 extern const struct consw prom_con;	/* SPARC PROM console */
_