/* -*- Mode: C; tab-width: 4; indent-tabs-mode: 't; c-basic-offset: 4 -*-
*
* Name : $RCSfile: kernmem.h $
*
* Copyright : 2001,2002 by Imagination Technologies Limited.
* All rights reserved.
* No part of this software, either material or conceptual
* may be copied or distributed, transmitted, transcribed,
* stored in a retrieval system or translated into any
* human or computer language in any form by any means,
* electronic, mechanical, manual or other-wise, or
* disclosed to third parties without the express written
* permission of:
* Imagination Technologies Limited,
* HomePark Industrial Estate,
* Kings Langley,
* Hertfordshire,
* WD4 8LZ,
* UK
*
* Description : Declares functions providing contiguous kernel memory
* allocations under Linux.
*
* Platform : Linux
*
* Version : $Revision: 1.2 $
*
**************************************************************************/
typedef struct tag_KernelAllocRec
{
struct tag_KernelAllocRec* pNext;
unsigned long pkvPageAlignedContigMem;
unsigned long nBytes;
unsigned long nOrder;
} KERNEL_ALLOC_REC, *PKERNEL_ALLOC_REC;
/* Allocate kernel memory and mark it as reserved */
void* kernel_allocate_reserve(unsigned long nBytes);
/* Unreserve & deallocate kernel memory */
void kernel_deallocate_unreserve(unsigned long pkvPageAlignedContigMem);
/* kernel_memory_cleanup - Frees any remaining memory allocations */
void kernel_memory_cleanup(void);
|