1/*====================================================================2* os_tlb.h3*4* Copyright 1995, Silicon Graphics, Inc.5* All Rights Reserved.6*7* This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics,8* Inc.; the contents of this file may not be disclosed to third9* parties, copied or duplicated in any form, in whole or in part,10* without the prior written permission of Silicon Graphics, Inc.11*12* RESTRICTED RIGHTS LEGEND:13* Use, duplication or disclosure by the Government is subject to14* restrictions as set forth in subdivision (c)(1)(ii) of the Rights15* in Technical Data and Computer Software clause at DFARS16* 252.227-7013, and/or in similar or successor clauses in the FAR,17* DOD or NASA FAR Supplement. Unpublished - rights reserved under the18* Copyright Laws of the United States.19*====================================================================*/2021/*---------------------------------------------------------------------*22Copyright (C) 1998 Nintendo. (Originated by SGI)2324$RCSfile: os_tlb.h,v $25$Revision: 1.1 $26$Date: 1998/10/09 08:01:20 $27*---------------------------------------------------------------------*/2829#ifndef _OS_TLB_H_30#define _OS_TLB_H_3132#ifdef _LANGUAGE_C_PLUS_PLUS33extern "C" {34#endif3536#include <PR/ultratypes.h>3738#if defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS)3940/**************************************************************************41*42* Type definitions43*44*/4546typedef u32 OSPageMask;474849#endif /* defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS) */5051/**************************************************************************52*53* Global definitions54*55*/5657/*58* Page size argument for TLB routines59*/60#define OS_PM_4K 0x000000061#define OS_PM_16K 0x000600062#define OS_PM_64K 0x001e00063#define OS_PM_256K 0x007e00064#define OS_PM_1M 0x01fe00065#define OS_PM_4M 0x07fe00066#define OS_PM_16M 0x1ffe000676869#if defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS)7071/**************************************************************************72*73* Macro definitions74*75*/767778/**************************************************************************79*80* Extern variables81*82*/838485/**************************************************************************86*87* Function prototypes88*89*/9091/* TLB management routines */9293extern void osMapTLB(s32, OSPageMask, void *, u32, u32, s32);94extern void osMapTLBRdb(void);95extern void osUnmapTLB(s32);96extern void osUnmapTLBAll(void);97extern void osSetTLBASID(s32);9899100#endif /* defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS) */101102#ifdef _LANGUAGE_C_PLUS_PLUS103}104#endif105106#endif /* !_OS_TLB_H_ */107108109