[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-devel:11528] Bug#57129: kernel-image-2.2.14-compact: [PATCH] Please include vga16fb and diable it by default.



Package: kernel-image-2.2.14-compact
Version: 2.2.14-1
Severity: normal

I don't know if this is fit to compact flavor, but I wish if it were.

Please consider to include the following patch from Hatta. This is required
to build the boot-floppies with the support for Japanese characters.

 # Hatta is one of our long waiting applicants. He has been waiting for
 # about one year after sending his first mail.

We require the kernel with vga16fb to display Japanese (and maybe KR or GB)
characters on vfb console. Hatta posted the patch to include vga16fb and
to disable that feature unless kernel option is specified.

Can you check if you can include that patch to your package of kernel-image-compact ?

# I add "X-Debbugs-CC" to debian-boot list as well as Hatta and devel@JP,
# becase they are all related to this.

In <20000130171915K.hattas@xxxxxxxxxxxxxxxxxxxxxx>,
 at Date: Sun, 30 Jan 2000 17:19:15 +0900,
  on Subject: [PATCH] Please include vga16fb and diable it by default.,
   Hatta Shuzo <hattas@xxxxxxxxxxxxxxxxxxxxxx> writes:

hattas> Hi.
hattas> 
hattas> <For i386 arch only>
hattas> Please apply a patch attached this mail, and make a kernel image with
hattas> CONFIG_FB_VGA16, CONFIG_FBCON_VGA_PLANES and
hattas> CONFIG_FB_VGA16_DISABLE_BY_DEFAULT = y. 
hattas> This patch disables vga16fb unless some boot parameter is
hattas> specified. If a user turn on his/her machine, a kernel applied this
hattas> patch will boot the machine up like a kernel does not include vga16fb.
hattas> so it is harmless to every user, i think.
hattas> Provide vga16fb enabled kernel image, please. i want the version for
hattas> building Japanese version of boot-floppies.
hattas> 
hattas> Thanks,
hattas> -- 
hattas> Hatta Shuzo
hattas> hattas@debian.or.jp / hattas@xxxxxxxxxxxxxxxxxxxxxx

diff -u -r kernel-source-2.2.14.orig/Documentation/Configure.help kernel-source-2.2.14/Documentation/Configure.help
--- kernel-source-2.2.14.orig/Documentation/Configure.help	Wed Jan 12 11:23:22 2000
+++ kernel-source-2.2.14/Documentation/Configure.help	Sat Jan 29 03:53:19 2000
@@ -1860,6 +1860,11 @@
   This is the frame buffer device driver for VGA 16 color graphic
   cards. Say Y if you have such a card.
 
+Disable VGA 16-color graphics console by default
+CONFIG_FB_VGA16_DISABLE_BY_DEFAULT
+  This option will disable VGA 16-color graphics console at boot time
+  unless video=vga16:on is specified.
+
 Backward compatibility mode for Xpmac
 CONFIG_FB_COMPAT_XPMAC
   If you use the Xpmac X server (common with mklinux), you'll need to
diff -u -r kernel-source-2.2.14.orig/drivers/video/Config.in kernel-source-2.2.14/drivers/video/Config.in
--- kernel-source-2.2.14.orig/drivers/video/Config.in	Wed Jan  5 03:12:22 2000
+++ kernel-source-2.2.14/drivers/video/Config.in	Sat Jan 29 04:05:35 2000
@@ -74,6 +74,9 @@
   if [ "$ARCH" = "i386" ]; then
     bool 'VESA VGA graphics console' CONFIG_FB_VESA
     bool 'VGA 16-color graphics console' CONFIG_FB_VGA16
+    if [ "$CONFIG_EXPERIMENTAL" = "y" -a "$CONFIG_FB_VGA16" = "y" ]; then
+      bool '  Disable VGA 16-color graphics console by default' CONFIG_FB_VGA16_DISABLE_BY_DEFAULT
+    fi
     define_bool CONFIG_VIDEO_SELECT y
   fi
   if [ "$CONFIG_VISWS" = "y" ]; then
diff -u -r kernel-source-2.2.14.orig/drivers/video/vga16fb.c kernel-source-2.2.14/drivers/video/vga16fb.c
--- kernel-source-2.2.14.orig/drivers/video/vga16fb.c	Wed Jan  5 03:12:22 2000
+++ kernel-source-2.2.14/drivers/video/vga16fb.c	Sat Jan 29 04:11:14 2000
@@ -193,6 +193,10 @@
 
 static int             currcon   = 0;
 
+#ifdef CONFIG_FB_VGA16_DISABLE_BY_DEFAULT
+static int    vga16fb_enabled = 0;
+#endif
+
 /* --------------------------------------------------------------------- */
 
 	/*
@@ -816,6 +820,10 @@
 	for(this_opt=strtok(options,","); this_opt; this_opt=strtok(NULL,",")) {
 		if (!*this_opt) continue;
 		
+#ifdef CONFIG_FB_VGA16_DISABLE_BY_DEFAULT
+		if (!strcmp(this_opt, "on"))
+			vga16fb_enabled = 1;
+#endif
 		if (!strncmp(this_opt, "font:", 5))
 			strcpy(vga16fb.fb_info.fontname, this_opt+5);
 	}
@@ -1014,6 +1022,12 @@
 
 	printk("vga16fb: initializing\n");
 
+#ifdef CONFIG_FB_VGA16_DISABLE_BY_DEFAULT
+	if (!vga16fb_enabled) {
+                printk(KERN_NOTICE "vga16fb: disabled on user request.\n");
+		return;
+	}
+#endif
         vga16fb.video_vbase = ioremap((unsigned long)0xa0000, 65536);
 	printk("vga16fb: mapped to 0x%p\n", vga16fb.video_vbase);
 

-- 
  Taketoshi Sano: <sano@debian.org>,<sano@debian.or.jp>,<kgh12351@xxxxxxxxxxx>