From owner-freebsd-hackers Sat Dec 14 19:47:22 1996 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.4/8.8.4) id TAA18326 for hackers-outgoing; Sat, 14 Dec 1996 19:47:22 -0800 (PST) Received: from nic.follonett.no (nic.follonett.no [194.198.43.10]) by freefall.freebsd.org (8.8.4/8.8.4) with ESMTP id TAA18317 for ; Sat, 14 Dec 1996 19:47:18 -0800 (PST) Received: (from uucp@localhost) by nic.follonett.no (8.8.3/8.8.3) with UUCP id EAA22560; Sun, 15 Dec 1996 04:45:18 +0100 (MET) Received: from oo7 (oo7.dimaga.com [192.0.0.65]) by dimaga.com (8.7.5/8.7.2) with SMTP id EAA20536; Sun, 15 Dec 1996 04:46:48 +0100 (MET) Message-Id: <3.0.32.19961215044615.00925dd0@dimaga.com> X-Sender: eivind@dimaga.com X-Mailer: Windows Eudora Pro Version 3.0 (32) Date: Sun, 15 Dec 1996 04:46:16 +0100 To: Tony Overfield From: Eivind Eklund Subject: Re: MAXMEM was: Re: 2.1.6 on Compaq Prosignia 500 (2.1.5 worked) Cc: hackers@freebsd.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk At 08:24 PM 12/14/96 -0600, you wrote: >At 07:32 PM 12/12/96 +0100, Eivind Eklund wrote: >>>options "MAXMEM=65536" # 64 MB memory >>due to Compaq (and Dell) using an extremely irritating aspect of the EISA >>standard, and saying that they have 16MB in RTC-memory. > >I think you're irritated about the wrong thing. The RTC-memory >cannot (in any standardized way) indicate more than ~65MB of >system memory. This means that bypassing the BIOS and groping >around in the RTC-memory is a dead-end solution. > >There are standardized BIOS calls to obtain the correct amount of >memory, even when it exceeds 65 MB. I think the boot loader should >make these BIOS calls and pass the correct information to the kernel. The problem is that these BIOS calls are (to my knowledge; I'm no BIOS/PC hardware guru) only are guaranteed available on EISA computers, and only work from protected mode. To do this "properly" requires both a check to see if the computer has an EISA bus (which is in no way guaranteed - EISA seems to be dying), a switch to protected mode, and a fetch of the value. Few operating systems seems to do this "correctly". As examples, both Novell and SCO need this to be specified as an option. The reason I called it extremely irritating wasn't that I consider a BIOS call for getting amount of memory a bad idea - it was the fact that this is implemented as a protected mode call which only work if you've got EISA, instead of an extension that could be easily detected and called for any clone. I certainly agree that it would be nice for the boot code to detect this. I even looked at implementing it when the problem came up, but found it to be beyond what I wanted to learn about PC hardware. -- Eivind Eklund gopher://nic.follonett.no:79/0eivind Work: eivind@dimaga.com http://www.dimaga.com/ Home: perhaps@yes.no http://maybes.yes.no/perhaps/ All of the above is a product of either your or my imagination, and not official.