\hypertarget{mempriv_8h}{
\section{mempriv.h File Reference}
\label{mempriv_8h}\index{mempriv.h@{mempriv.h}}
}
Private MEM package definitions.  


{\tt \#include \char`\"{}MEM/MEM\_\-map.h\char`\"{}}\par
{\tt \#include \char`\"{}MSG/MSG\_\-pubdefs.h\char`\"{}}\par


Include dependency graph for mempriv.h:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=142pt]{mempriv_8h__incl}
\end{center}
\end{figure}


This graph shows which files directly or indirectly include this file:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=185pt]{mempriv_8h__dep__incl}
\end{center}
\end{figure}
\subsection*{Data Structures}
\begin{CompactItemize}
\item 
struct \hyperlink{struct__mem__mapEntry}{\_\-mem\_\-map\-Entry}
\begin{CompactList}\small\item\em Memory map entry. \item\end{CompactList}\end{CompactItemize}
\subsection*{Defines}
\begin{CompactItemize}
\item 
\hypertarget{mempriv_8h_a0}{
\#define \hyperlink{mempriv_8h_a0}{TRUE}\ (1)}
\label{mempriv_8h_a0}

\begin{CompactList}\small\item\em Boolean true. \item\end{CompactList}\item 
\hypertarget{mempriv_8h_a1}{
\#define \hyperlink{mempriv_8h_a1}{FALSE}\ (0)}
\label{mempriv_8h_a1}

\begin{CompactList}\small\item\em Boolean false. \item\end{CompactList}\item 
\hypertarget{mempriv_8h_a2}{
\#define \hyperlink{mempriv_8h_a2}{MIN}(a, b)\ (((a) $<$ (b) ) ? (a) : (b))}
\label{mempriv_8h_a2}

\begin{CompactList}\small\item\em Standard definition for data minimum. \item\end{CompactList}\item 
\hypertarget{mempriv_8h_a3}{
\#define \hyperlink{mempriv_8h_a3}{MAX}(a, b)\ (((a) $>$ (b) ) ? (a) : (b))}
\label{mempriv_8h_a3}

\begin{CompactList}\small\item\em Standard definition for data maximum. \item\end{CompactList}\item 
\#define \hyperlink{mempriv_8h_a4}{MEM\_\-MSG}(\_\-status,)\ \_\-msg\_\-report ((\_\-status), 0, \_\-\_\-VA\_\-ARGS\_\-\_\-)
\begin{CompactList}\small\item\em MSG signaller. \item\end{CompactList}\end{CompactItemize}
\subsection*{Typedefs}
\begin{CompactItemize}
\item 
\hypertarget{mempriv_8h_a5}{
typedef \hyperlink{struct__mem__mapEntry}{\_\-mem\_\-map\-Entry} \hyperlink{mempriv_8h_a5}{mem\_\-map\-Entry}}
\label{mempriv_8h_a5}

\begin{CompactList}\small\item\em Typedef for struct \hyperlink{struct__mem__mapEntry}{\_\-mem\_\-map\-Entry}. \item\end{CompactList}\end{CompactItemize}
\subsection*{Functions}
\begin{CompactItemize}
\item 
unsigned int \hyperlink{mempriv_8h_a6}{Mem\_\-Validate\-Memory\-Range} (const \hyperlink{struct__MEM__Descriptor}{MEM\_\-Descriptor} $\ast$md, const \hyperlink{MEM__map_8h_a12}{MEM\_\-map\-Access\-Type} access\-Type, const \hyperlink{struct__mem__mapEntry}{mem\_\-map\-Entry} $\ast$$\ast$map\-Entry)
\begin{CompactList}\small\item\em Validate memory descriptor against memory map table. \item\end{CompactList}\item 
void $\ast$ \hyperlink{mempriv_8h_a7}{Mem\_\-Write\-Register\-Set} (void $\ast$data\_\-p, void $\ast$mask\_\-p)
\begin{CompactList}\small\item\em Write CPU registers. \item\end{CompactList}\end{CompactItemize}


\subsection{Detailed Description}
Private MEM package definitions. 

Interface to functions that are private to the MEM package.



\footnotesize\begin{verbatim}
  CVS $Id: mempriv.h,v 1.7 2004/12/08 17:42:44 dmay Exp $
  \end{verbatim}\normalsize


\subsection{Define Documentation}
\hypertarget{mempriv_8h_a4}{
\index{mempriv.h@{mempriv.h}!MEM_MSG@{MEM\_\-MSG}}
\index{MEM_MSG@{MEM\_\-MSG}!mempriv.h@{mempriv.h}}
\subsubsection[MEM\_\-MSG]{\setlength{\rightskip}{0pt plus 5cm}\#define MEM\_\-MSG(\_\-status)\ \_\-msg\_\-report ((\_\-status), 0, \_\-\_\-VA\_\-ARGS\_\-\_\-)}}
\label{mempriv_8h_a4}


MSG signaller. 

(\_\-status, ...) 

Configuration-dependent message signaller. For boot configuration, returns \_\-status. For application configuration, calls \_\-msg\_\-report().

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em \_\-status}]The variable holding the status code. \item[{\em ...}]The message specific parameter values. \end{description}
\end{Desc}


\subsection{Function Documentation}
\hypertarget{mempriv_8h_a6}{
\index{mempriv.h@{mempriv.h}!Mem_ValidateMemoryRange@{Mem\_\-ValidateMemoryRange}}
\index{Mem_ValidateMemoryRange@{Mem\_\-ValidateMemoryRange}!mempriv.h@{mempriv.h}}
\subsubsection[Mem\_\-ValidateMemoryRange]{\setlength{\rightskip}{0pt plus 5cm}unsigned int Mem\_\-Validate\-Memory\-Range (const \hyperlink{struct__MEM__Descriptor}{MEM\_\-Descriptor} $\ast$ {\em md}, const \hyperlink{MEM__map_8h_a12}{MEM\_\-map\-Access\-Type} {\em access\-Type}, const \hyperlink{struct__mem__mapEntry}{mem\_\-map\-Entry} $\ast$$\ast$ {\em map\-Entry})}}
\label{mempriv_8h_a6}


Validate memory descriptor against memory map table. 

This function verifies that a memory descriptor is valid for a given set of access types. Potential access types are specified in {\em access\-Type\/} as a bitfield. If at least one of the access types specified is legal for the memory descriptor, a handle to the appropriate memory map entry is passed back for future use. If, instead, the caller wants to know if $\ast$all$\ast$ specified access types are valid, then this function must be called once for each type.

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em md}]Pointer to memory descriptor to be validated. \item[{\em access\-Type}]Bitfield of types of accesses to validate. \item[{\em map\-Entry}]Pointer to location to return map table entry handle.\end{description}
\end{Desc}
\begin{Desc}
\item[Return values:]
\begin{description}
\item[{\em MEM\_\-SUCCESS}]md is OK for access\-Type. \item[{\em MEM\_\-OUTOFRNG}]md does not fit in any memory map. \item[{\em MEM\_\-BADMAP}]md does not contain a legal memory map type. \item[{\em MEM\_\-BADACC}]access\-Type is not legal for md. \end{description}
\end{Desc}
\hypertarget{mempriv_8h_a7}{
\index{mempriv.h@{mempriv.h}!Mem_WriteRegisterSet@{Mem\_\-WriteRegisterSet}}
\index{Mem_WriteRegisterSet@{Mem\_\-WriteRegisterSet}!mempriv.h@{mempriv.h}}
\subsubsection[Mem\_\-WriteRegisterSet]{\setlength{\rightskip}{0pt plus 5cm}void $\ast$ Mem\_\-Write\-Register\-Set (void $\ast$ {\em data\_\-p}, void $\ast$ {\em mask\_\-p})}}
\label{mempriv_8h_a7}


Write CPU registers. 

Writes a subset of the CPU registers.

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em data\_\-p}]Pointer to array of data values to write. \item[{\em mask\_\-p}]Pointer to array of mask values to apply to the data.\end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]Sum of {\em data\_\-p\/} and the number of bytes written. \end{Desc}
