vga(4): Remove a bogus check.
authorSascha Wildner <saw@online.de>
Mon, 11 Jul 2011 17:44:46 +0000 (19:44 +0200)
committerSascha Wildner <saw@online.de>
Mon, 11 Jul 2011 17:53:59 +0000 (19:53 +0200)
These are the remains of a larger chunk of code that I removed in
4e193d20. It was used to determine whether a MGA, CGA, EGA or VGA
was present in the box. I left the check in at the time because I
thought, why not?

However, ASpeed's VGA BIOS (at least as found on some Tyan S8230*
series motherboards) seems to have some flaws and ends up returning
0xf instead of 0x9. This caused vga(4) initialization to fail early
in the boot and no kernel messages would go to the screen.

Since the only thing that interests us is whether a VGA is present
or not, remove this check. There are other tests later on that will
detect what we want (such as checking the CRTC's address).

Reported-by: Francois Tigeot <ftigeot@wolfpond.org>
sys/dev/video/fb/vga.c

index b859b64..29fdf50 100644 (file)
@@ -638,24 +638,6 @@ probe_adapters(void)
        return 1;
     vga_init_done = TRUE;
 
-    /*
-     * Check BIOS data area.
-     * The VGA BIOS has more sophisticated mechanism and has this 
-     * information in BIOSDATA_DCCINDEX (40:8a), but it also maintains 
-     * compatibility with the EGA BIOS by updating BIOSDATA_VIDEOSWITCH.
-     */
-
-    /* 
-     * XXX: we don't use BIOSDATA_EQUIPMENT, since it is not a dead
-     * copy of RTC_EQUIPMENT.  Bits 4 and 5 of ETC_EQUIPMENT are
-     * zeros for VGA.  However, VGA BIOS sets these bits in
-     * BIOSDATA_EQUIPMENT according to the monitor type detected.
-     */
-#ifndef VGA_NO_BIOS
-    if ((readb(BIOS_PADDRTOVADDR(0x488)) & 0x0f) != 0x09)
-           return 0;
-#endif /* VGA_NO_BIOS */
-
     if (verify_adapter(&biosadapter) != 0)
        return 0;