Date: Wed, 25 May 2005 02:03:48 +0800 From: "Charlie &" <root@gmail.com> To: FreeBSD-gnats-submit@FreeBSD.org Subject: i386/81445: [patch] Make VESA work on VMWare Message-ID: <200505241802.j4OI2IRG020136@mail.synology.com> Resent-Message-ID: <200505241810.j4OIA24V097671@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 81445 >Category: i386 >Synopsis: [patch] Make VESA work on VMWare >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-i386 >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue May 24 18:10:02 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Jia-Shiun Li <jiashiun@gmail.com> >Release: FreeBSD 6.0-CURRENT i386 >Organization: n/a >Environment: System: FreeBSD jsli-x4 6.0-CURRENT FreeBSD 6.0-CURRENT #4: Wed May 18 19:55:37 CST 2005 root@jsli-x4.synology.com:/usr/obj/usr/src/sys/x4 i386 >Description: VESA driver in current source tree checks the NONVGA flag of VESA information block when loading. If this flag is set it will refuse to initialize. Most VESA adapters do not set this flag, but the virtual display adapter in VMWare does. As a result VESA cannot be used on VMWare. http://lists.freebsd.org/mailman/htdig/freebsd-current/2005-March/047559.html >How-To-Repeat: Boot verbose and type the following command under shell: # kldload vesa will result: VESA: information block 56 45 53 41 00 02 f0 5a 00 c0 03 00 00 00 a9 5f 00 c0 00 01 00 02 e4 5a 00 c0 cd 5a 00 c0 c9 5a 00 c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 module_register_init: MOD_LOAD (vesa, 0xc178c138, 0) error 6 >Fix: --- vesa.diff begins here --- Index: src/sys/i386/isa/vesa.c =================================================================== RCS file: /home/ncvs/src/sys/i386/isa/vesa.c,v retrieving revision 1.50 diff -b -u -r1.50 vesa.c --- src/sys/i386/isa/vesa.c 4 Mar 2005 00:53:03 -0000 1.50 +++ src/sys/i386/isa/vesa.c 20 May 2005 07:27:07 -0000 @@ -652,8 +652,6 @@ printf("VESA: information block\n"); dump_buffer(buf, 64); } - if (vesa_adp_info->v_flags & V_NONVGA) - return 1; if (vesa_adp_info->v_version < 0x0102) { printf("VESA: VBE version %d.%d is not supported; " "version 1.2 or later is required.\n", --- vesa.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200505241802.j4OI2IRG020136>