Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 Jul 1998 16:31:58 +0200
From:      Johan Karlsson <k@numeri.campus.luth.se>
To:        freebsd-hackers@FreeBSD.ORG
Subject:   Special memory board on ISA bus
Message-ID:  <199807161431.QAA27635@numeri.campus.luth.se>

next in thread | raw e-mail | index | archive | help
Hi
 
I have a special memory board on the ISA bus that responds to addresses from 
BOARD_BASE up to BOARD_BASE+BOARD_MASK. 

Now I need to make sure that the memory manager in FreeBSD does not use this 
part of the memory address space. Is there an "easy" way to do this or do I 
have to rewrite init386 in /usr/src/sys/i386/i386/machdep.c to ensure that it 
will not use the board.

I also need to make sure that the cache is not used when I read/write to my 
board. To do this one can use the MTRR:s (Memory Type Range Registers). 
These registers only exists in a P6 cpu.
(see http://www.intel.com/design/pro/manuals/
"Intel Architecture Software Developer's Manual, Volume 3: System Programming 
Guide" Chapter 9)
I have noticed that FBSD detects the existens of MTRR:s but it does not seem 
to use it anywhere.

Is there any support in FBSD to set these registers?
Any suggestions on how I should handle uncachable memory in FreeBSD?


BTW I've been using FBSD-stable for 2 years but I have never needed to change 
anything in the kernel before. Please keep that in mind when replying.

Any help appreciated.


/K

- -- 
Johan Karlsson		mailto:k@numeri.campus.luth.se
SWEDEN


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?199807161431.QAA27635>