2 * BK Id: SCCS/s.mem_pieces.h 1.7 06/05/01 21:22:06 paulus
5 * Copyright (c) 1996 Paul Mackerras <paulus@cs.anu.edu.au>
6 * Changes to accomodate Power Macintoshes.
7 * Cort Dougan <cort@cs.nmt.edu>
9 * Grant Erickson <grant@lcse.umn.edu>
10 * General rework and split from mm/init.c.
12 * Module name: mem_pieces.h
15 * Routines and data structures for manipulating and representing
16 * phyiscal memory extents (i.e. address/length pairs).
20 #ifndef __MEM_PIECES_H__
21 #define __MEM_PIECES_H__
30 /* Type Definitions */
32 #define MEM_PIECES_MAX 32
36 struct reg_property regions[MEM_PIECES_MAX];
39 /* Function Prototypes */
41 extern void *mem_pieces_find(unsigned int size, unsigned int align);
42 extern void mem_pieces_remove(struct mem_pieces *mp, unsigned int start,
43 unsigned int size, int must_exist);
44 extern void mem_pieces_append(struct mem_pieces *mp, unsigned int start,
46 extern void mem_pieces_coalesce(struct mem_pieces *mp);
47 extern void mem_pieces_sort(struct mem_pieces *mp);
53 #endif /* __MEM_PIECES_H__ */