Date: Sat, 24 Oct 1998 13:18:24 +1000 From: David Dawes <dawes@rf900.physics.usyd.edu.au> To: Mike Smith <mike@smith.net.au> Cc: Greg Lehey <grog@lemis.com>, Jason Thorpe <thorpej@nas.nasa.gov>, Nick Hibma <nick.hibma@jrc.it>, FreeBSD hackers mailing list <hackers@FreeBSD.ORG> Subject: Re: multi-user: multiple consoles in FreeBSD Message-ID: <19981024131824.D21689@rf900.physics.usyd.edu.au> In-Reply-To: <199810231840.LAA00564@dingo.cdrom.com>; from Mike Smith on Fri, Oct 23, 1998 at 11:40:55AM -0700 References: <19981023133006.D20302@rf900.physics.usyd.edu.au> <199810231840.LAA00564@dingo.cdrom.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Oct 23, 1998 at 11:40:55AM -0700, Mike Smith wrote: >> The PCI spec doesn't provide a device-independent way of remapping the >> VGA compatibility resources. They are not relocatable in the sense of >> normal PCI resources defined through the base address registers. In my >> experience, most PCI BIOSs disable memory and I/O access for secondary >> VGA-compatible cards by clearing the appropriate bits in the PCI command >> register. > >Hmm, Ok, I'm obvoiusly out of whack here. This would imply that there's >not an alternate set of mappings that can be enabled to access the same >register sets in any "standard" fashion? Right. >> We (XFree86) are currently grappling with these issues for our multi-head >> support in 4.0. One thing we're hoping to do is multiplex access to >> fixed resources like the VGA-compatiblity registers when needed and when >> they can be disabled but not relocated. If on some OSs the video BIOS >> could be called by the X server, it may help with initialisation issues. >> It might be even better of the OS took care of this at boot time. > >Hmm. I'm working around this area at the moment, although Kazu is >definitely the authority on the matter. I presume you're referring to >something like: > > - Disable primary VGA compatibility mappings > - Disable primary VGA BIOS mapping > - Foreach non-primary video adapter > - Enable VGA compatibility mappings > - Enable VGA BIOS mapping > - Make BIOS initialisation call(s) > - Disable VGA compatibility mappings > - Disable VGA BIOS mapping > - Ensable primary VGA compatibility mappings > - Ensable primary VGA BIOS mapping > >as well as providing some mechanism for nominating which card of the >set should be mapped at any given time? Yes, that's the basic idea. I don't know if you need to remap the BIOS itself. In the cases I've seen the BIOS address for secondary cards is mapped at a high address in the standard PCI way and maybe it can be run from where it is?. It usually defaults to "decode disabled" so you would need to enable PCI MEM and BIOS decode. >Any ideas as to whether card BIOSses would respond well to having their >initialisation code called in v86 mode rather than real mode? I think >this sort of approach could be quite viable. I don't know. It is definitely worth a try. David To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19981024131824.D21689>