OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [services/] [memalloc/] [common/] [v2_0/] [include/] [kapidata.h] - Blame information for rev 600

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 27 unneback
#ifndef CYGONCE_MEMALLOC_KAPIDATA_H
2
#define CYGONCE_MEMALLOC_KAPIDATA_H
3
 
4
/*==========================================================================
5
//
6
//      kapidata.h
7
//
8
//      Memory allocator portion of kernel C API
9
//
10
//==========================================================================
11
//####ECOSGPLCOPYRIGHTBEGIN####
12
// -------------------------------------------
13
// This file is part of eCos, the Embedded Configurable Operating System.
14
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
15
//
16
// eCos is free software; you can redistribute it and/or modify it under
17
// the terms of the GNU General Public License as published by the Free
18
// Software Foundation; either version 2 or (at your option) any later version.
19
//
20
// eCos is distributed in the hope that it will be useful, but WITHOUT ANY
21
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
22
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
23
// for more details.
24
//
25
// You should have received a copy of the GNU General Public License along
26
// with eCos; if not, write to the Free Software Foundation, Inc.,
27
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
28
//
29
// As a special exception, if other files instantiate templates or use macros
30
// or inline functions from this file, or you compile this file and link it
31
// with other works to produce a work based on this file, this file does not
32
// by itself cause the resulting work to be covered by the GNU General Public
33
// License. However the source code for this file must still be made available
34
// in accordance with section (3) of the GNU General Public License.
35
//
36
// This exception does not invalidate any other reasons why a work based on
37
// this file might be covered by the GNU General Public License.
38
//
39
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
40
// at http://sources.redhat.com/ecos/ecos-license/
41
// -------------------------------------------
42
//####ECOSGPLCOPYRIGHTEND####
43
//==========================================================================
44
//#####DESCRIPTIONBEGIN####
45
//
46
// Author(s):    jlarmour
47
// Contributors:
48
// Date:         2000-06-12
49
// Purpose:      Memory allocator data for kernel C API
50
// Description:  This is intentionally only to be included via
51
//               <cyg/kernel/kapi.h>
52
// Usage:        This file should not be used directly - instead it should
53
//               be used via <cyg/kernel/kapi.h>
54
//
55
//
56
//####DESCRIPTIONEND####
57
//
58
//========================================================================*/
59
 
60
#include <pkgconf/memalloc.h>
61
 
62
/*---------------------------------------------------------------------------*/
63
 
64
/* This corresponds to the extra fields provided by the mempoolt template
65
   not the actual size of the template in any given instance. */
66
typedef struct cyg_mempoolt {
67
    cyg_threadqueue queue;
68
} cyg_mempoolt;
69
 
70
 
71
struct cyg_mempool_var_memdq {
72
    struct cyg_mempool_var_memdq *prev, *next;
73
    cyg_int32 size;
74
};
75
 
76
struct cyg_mempool_var {
77
    struct cyg_mempool_var_memdq head;
78
    cyg_uint8  *obase;
79
    cyg_int32  osize;
80
    cyg_uint8  *bottom;
81
    cyg_uint8  *top;
82
    cyg_int32  alignment;
83
    cyg_int32  freemem;
84
    cyg_mempoolt mempoolt;
85
};
86
 
87
struct cyg_mempool_fix {
88
    cyg_uint32 *bitmap;
89
    cyg_int32 maptop;
90
    cyg_uint8  *mempool;
91
    cyg_int32 numblocks;
92
    cyg_int32 freeblocks;
93
    cyg_int32 blocksize;
94
    cyg_int32 firstfree;
95
    cyg_uint8  *top;
96
    cyg_mempoolt mempoolt;
97
};
98
 
99
#endif /* ifndef CYGONCE_MEMALLOC_KAPIDATA_H */
100
/* EOF kapidata.h */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.