MTRR_ADD

Section: (9)
Updated: 17 July 2003
Index Return to Main Contents

 

NAME

mtrr_add - Add a memory type region  

SYNOPSIS

int mtrr_add (unsigned long base, unsigned long size, unsigned int type, char increment);  

ARGUMENTS

base
Physical base address of region
size
Physical size of region
type
Type of MTRR desired
increment
If this is true do usage counting on the region
 

DESCRIPTION

Memory type region registers control the caching on newer Intel and non Intel processors. This function allows drivers to request an MTRR is added. The details and hardware specifics of each processor's implementation are hidden from the caller, but nevertheless the caller should expect to need to provide a power of two size on an equivalent power of two boundary.

If the region cannot be added either because all regions are in use or the CPU cannot support it a negative value is returned. On success the register number for this entry is returned, but should be treated as a cookie only.

On a multiprocessor machine the changes are made to all processors. This is required on x86 by the Intel processors.

The available types are

MTRR_TYPE_UNCACHABLE - No caching

MTRR_TYPE_WRBACK - Write data back in bursts whenever

MTRR_TYPE_WRCOMB - Write data back soon but allow bursts

MTRR_TYPE_WRTHROUGH - Cache reads but not writes  

BUGS

Needs a quiet flag for the cases where drivers do not mind failures and do not wish system log messages to be sent.  

ABOUT THIS DOCUMENT

This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

For more details see the file COPYING in the source distribution of Linux.

If you have comments on the formatting of this manpage, then please contact Michael Still (mikal@stillhq.com).

This documentation was generated with kernel version 2.5.75.


 

Index

NAME
SYNOPSIS
ARGUMENTS
DESCRIPTION
BUGS
ABOUT THIS DOCUMENT

This document was created by man2html, using the manual pages.
Time: 03:31:03 GMT, July 17, 2003