*BSD News Article 35502


Return to BSD News archive

Newsgroups: comp.os.386bsd.questions
Path: sserve!newshost.anu.edu.au!munnari.oz.au!foxhound.dsto.gov.au!fang.dsto.gov.au!yoyo.aarnet.edu.au!news.adelaide.edu.au!news.cs.su.oz.au!harbinger.cc.monash.edu.au!msuinfo!agate!howland.reston.ans.net!EU.net!Germany.EU.net!netmbx.de!zrz.TU-Berlin.DE!zib-berlin.de!news.belwue.de!delos.stgt.sub.org!luva!migieger
From: migieger@luva.stgt.sub.org (Michael Giegerich)
Subject: Re: FreeBSD, 16 to 32MB unrecognized on EISA machine
References: <348au2$bd@csnews.cs.colorado.edu> <348efq$l1v@orion.cc.andrews.edu>
Organization: private FreeBSD site
Date: Sun, 4 Sep 1994 09:37:11 GMT
Message-ID: <CvLMqD.7Is@luva.stgt.sub.org>
Lines: 68

In article <348efq$l1v@orion.cc.andrews.edu>,
Andrew Gillham <gillham@andrews.edu> wrote:
>In article <348au2$bd@csnews.cs.colorado.edu> rickcole@redwood.cs.Colorado.EDU (Rick Cole) writes:
>>
>>I recently saw someone ask this same question, but can't find it now.
>>Upgrading from 16 to 32MB mem. on a Dell EISA machine with an EISA
>>SCSI controller.  The new 16MB are not recognized/used.  However,
>>boot-up does give some indication that it is there (first line of
>>boot-up says "386bsd  ... at ... 639/31744" or somesuch), and my CMOS
>>setup says it's there, and DOS thinks it's there, but I still get
>>"Testing 15MB" only.  Ideas?  -Rick
>
>I have the same problem on a Dell 466SE.  Dell must store the
>extended memory differently in the CMOS.  I ended up having to

Me too. With a Dell 425TE - It's their Phoenix BIOS, it stores
only 15 MB of extended memory.
One Dell employee told me they are doing this for compatibility
reasons...

>"hardcode" my RAM in /sys/arch/i386/i386/machdep.c (this is netbsd)
>The line looks like:
>	biosextmem = (rtcin(RTC_EXTHI)<<8) | (rtcin(RTC_EXTLO));
>You change it to be:
>	biosextmem = 31 * 1024; /* 31MB of extended, 1MB of base */
>Or '63 * 1024', etc..

Did the same for FreeBSD-1.0.2 when I added memory to 20 MB total.
Here the patches for *two* files:

*** usr/src/sys/i386/boot/bios.S-1.0.2	Fri Nov  5 08:36:04 1993
--- usr/src/sys/i386/boot/bios.S	Sun Jan 30 11:10:18 1994
***************
*** 317,322 ****
--- 317,325 ----
  	int	$0x15
  	cli
  
+ 	xor	%ax, %ax			#
+ 	movb	$0x4c, %ah			# hardcoded 19M ext. memory
+ 
  xdone:
  	mov	%eax, %ebx
  

*** usr/src/sys/i386/i386/machdep.c-1.0.2	Sun Dec 12 00:24:34 1993
--- usr/src/sys/i386/i386/machdep.c	Sun Jan 30 10:56:43 1994
***************
*** 1071,1076 ****
--- 1071,1079 ----
  	 */
  	biosbasemem = rtcin(RTC_BASELO)+ (rtcin(RTC_BASEHI)<<8);
  	biosextmem = rtcin(RTC_EXTLO)+ (rtcin(RTC_EXTHI)<<8);
+ 
+ 	biosextmem = 0x4c00;	/* hardcoded 19M ext. memory */
+ 
  /*printf("bios base %d ext %d ", biosbasemem, biosextmem);*/
  
  	/*


Hope this helps,
-Michael
-- 
------------------------------+------------------------------
Michael Giegerich             | migieger@luva.lb.bawue.de
                              | (migieger@luva.stgt.sub.org)
------------------------------+------------------------------