From rfg@monkeys.com Wed Oct 27 17:42:36 1999
Return-Path: <rfg@monkeys.com>
Received: from monkeys.com (i180.value.net [206.14.136.180])
	by hub.freebsd.org (Postfix) with ESMTP id 0024214C3D
	for <FreeBSD-gnats-submit@freebsd.org>; Wed, 27 Oct 1999 17:42:23 -0700 (PDT)
	(envelope-from rfg@monkeys.com)
Received: (from rfg@localhost)
	by monkeys.com (8.9.3/8.9.3) id RAA64504;
	Wed, 27 Oct 1999 17:42:20 -0700 (PDT)
Message-Id: <199910280042.RAA64504@monkeys.com>
Date: Wed, 27 Oct 1999 17:42:20 -0700 (PDT)
From: "Ronald F. Guilmette" <rfg@monkeys.com>
Reply-To: rfg@monkeys.com (Ronald F. Guilmette)
To: FreeBSD-gnats-submit@freebsd.org
Subject: Non-kernel programs have little/no control over VGA/VESA devices
X-Send-Pr-Version: 3.2

>Number:         14566
>Category:       kern
>Synopsis:       Non-kernel programs have little/no control over VGA/VESA devices
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Wed Oct 27 17:50:00 PDT 1999
>Closed-Date:    Sat Jul 30 01:10:15 GMT 2005
>Last-Modified:  Sat Jul 30 01:10:15 GMT 2005
>Originator:     Ronald F. Guilmette
>Release:        FreeBSD 3.3-RELEASE i386
>Organization:
E-Scrub Technologies, Inc.
>Environment:

>Description:

	I typed `man 4 vga' and was surprised to find that there doesn't
	seem to be even so much as single ioctl() control call for manipu-
	lating vga devices(!)

	What the hay!?

	Then I went and started perusing the kernel vga driver sources.  There
	is a LOT of functionality in there for various stuff (e.g. diddling
	cursor, getting its location, setting border color, loading fonts,
	and on and on) and it seems to me that all of that functionality
	should be brought out and made directly available in user land.
	No?

	More specifically, I personally would like to be able to get at
	the VESA functionality.  In particular , I'd like to be able to
	switch my monitor into power-saving VESA "standby" mode.

	Surely, there ought to be an ioctl() for THAT!

	Oh yes, and if this gets fixed, and if all of the functionality is
	ever made available at the user level, PLEASE also create a file
	called /usr/include/vgaio.h and put all of the IOCTL control code
	definitions in it.  Thanks.

	P.S.  I'd really _like_ to go and rag on the Xfree86 people and
	tell them to get their you-know-what together, and that they should
	be supporting the VESA "standby" power-saving mode in their X servers,
	but how can I do that when the FreeBSD kernel doesn't even permit
	user-land processes to get at this bit of hardware functionality?

>How-To-Repeat:

	man 4 vga

>Fix:

	Jump in your time machine and fast forward to the future, when, I'm
	sure, all of this functionality will be directly available in user
	land. :-)

>Release-Note:
>Audit-Trail:

From: Alexey Zelkin <phantom@FreeBSD.ORG>
To: "Ronald F. Guilmette" <rfg@monkeys.com>
Cc: FreeBSD-gnats-submit@FreeBSD.ORG
Subject: Re: kern/14566: Non-kernel programs have little/no control over VGA/VESA devices
Date: Thu, 28 Oct 1999 14:51:55 +0400

 hi,
 
 On Wed, Oct 27, 1999 at 05:42:20PM -0700, Ronald F. Guilmette wrote:
 > 
 > >Number:         14566
 > >Category:       kern
 > >Synopsis:       Non-kernel programs have little/no control over VGA/VESA devices
 
 Please refer to vgl(3) manpage. It describes VGA library.
 
 PS: I'll add refernce to this library to vga(4) soon. Thanks for report!
 
 -- 
 /* Alexey Zelkin                       && phantom@cris.net    */
 /* Tavric National University          && phantom@crimea.edu  */
 /* http://www.ccssu.crimea.ua/~phantom && phantom@FreeBSD.org */
 

From: "Ronald F. Guilmette" <rfg@monkeys.com>
To: Alexey Zelkin <phantom@FreeBSD.org>
Cc: FreeBSD-gnats-submit@FreeBSD.org
Subject: Re: kern/14566: Non-kernel programs have little/no control over VGA/VESA devices 
Date: Thu, 28 Oct 1999 13:21:27 -0700

 In message <19991028145155.B357@scorpion.crimea.ua>, you wrote:
 
 >hi,
 >
 >On Wed, Oct 27, 1999 at 05:42:20PM -0700, Ronald F. Guilmette wrote:
 >> 
 >> >Number:         14566
 >> >Category:       kern
 >> >Synopsis:       Non-kernel programs have little/no control over VGA/VESA de
 >vices
 >
 >Please refer to vgl(3) manpage. It describes VGA library.
 >
 >PS: I'll add refernce to this library to vga(4) soon. Thanks for report!
 
 Thank you for your response.
 
 Yes, the vgl(3) library contains functions which implement the kinds of
 things that I was talking about, and yes, there should be a reference to
 vgl(3) _somewhere_ on the vga(4) man page.
 
 However, I think that my bug report is still very valid.
 
 The vgl(3) library is an ordinary, user-level library, properly documented
 in Section 3 of the manual.  But the functionality it provides *must* be
 implemented in terms of some lower-level (kernel) capabilities.  Those
 lower level (direct hardware control) capabilities are obviously available
 in user land (or else the vgl(3) library could not have been built) but I
 still don't know how _I_, as a programmer, can get at those lower level
 capabilities directly.
 
 But I would like to know.  And I think that it makes sense for the kernel
 to export these lower level capabilities as ioctl() calls which are then
 implemented by the vga driver (not by the higher-level syscons driver).
 
 Well, that's my opinion anyway.
 
 As I mentioned, the code for implementing all of these fun things _does_
 seem to be present in the kernel's vga driver.  Now its just a matter of
 attaching each one of those internal vga driver functions to some special
 (new?) ioctl() code.
 
Responsible-Changed-From-To: freebsd-bugs->yokota 
Responsible-Changed-By: phantom 
Responsible-Changed-When: Sat Dec 25 09:32:51 PST 1999 
Responsible-Changed-Why:  
Yokota's area 
State-Changed-From-To: open->feedback 
State-Changed-By: linimon 
State-Changed-When: Thu Aug 26 03:25:41 GMT 2004 
State-Changed-Why:  
Is this still a problem with modern versions of FreeBSD? 


Responsible-Changed-From-To: yokota->freebsd-bugs 
Responsible-Changed-By: linimon 
Responsible-Changed-When: Thu Aug 26 03:25:41 GMT 2004 
Responsible-Changed-Why:  
With bugmeister hat on, reassign from inactive committer. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=14566 
State-Changed-From-To: feedback->closed 
State-Changed-By: kris 
State-Changed-When: Sat Jul 30 01:10:07 GMT 2005 
State-Changed-Why:  
Feedback timeout 

http://www.freebsd.org/cgi/query-pr.cgi?pr=14566 
>Unformatted:
