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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [fs/] [ram/] [v2_0/] [cdl/] [ramfs.cdl] - Blame information for rev 174

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 27 unneback
# ====================================================================
2
#
3
#      ramfs.cdl
4
#
5
#      RAM Filesystem configuration data
6
#
7
# ====================================================================
8
#####ECOSGPLCOPYRIGHTBEGIN####
9
## -------------------------------------------
10
## This file is part of eCos, the Embedded Configurable Operating System.
11
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
12
##
13
## eCos is free software; you can redistribute it and/or modify it under
14
## the terms of the GNU General Public License as published by the Free
15
## Software Foundation; either version 2 or (at your option) any later version.
16
##
17
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
18
## WARRANTY; without even the implied warranty of MERCHANTABILITY or
19
## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
20
## for more details.
21
##
22
## You should have received a copy of the GNU General Public License along
23
## with eCos; if not, write to the Free Software Foundation, Inc.,
24
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
25
##
26
## As a special exception, if other files instantiate templates or use macros
27
## or inline functions from this file, or you compile this file and link it
28
## with other works to produce a work based on this file, this file does not
29
## by itself cause the resulting work to be covered by the GNU General Public
30
## License. However the source code for this file must still be made available
31
## in accordance with section (3) of the GNU General Public License.
32
##
33
## This exception does not invalidate any other reasons why a work based on
34
## this file might be covered by the GNU General Public License.
35
##
36
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
37
## at http://sources.redhat.com/ecos/ecos-license/
38
## -------------------------------------------
39
#####ECOSGPLCOPYRIGHTEND####
40
# ====================================================================
41
######DESCRIPTIONBEGIN####
42
#
43
# Author(s):      nickg
44
# Original data:  nickg
45
# Contributors:
46
# Date:           2000-08-01
47
#
48
#####DESCRIPTIONEND####
49
#
50
# ====================================================================
51
 
52
cdl_package CYGPKG_FS_RAM {
53
    display        "RAM filesystem"
54
    doc            ref/fileio.html
55
    include_dir    cyg/ramfs
56
 
57
    requires       CYGPKG_IO_FILEIO
58
 
59
    requires       CYGPKG_ISOINFRA
60
    requires       CYGPKG_ERROR
61
    requires       CYGINT_ISO_ERRNO
62
    requires       CYGINT_ISO_ERRNO_CODES
63
 
64
    implements     CYGINT_IO_FILEIO_FS
65
 
66
    compile        -library=libextras.a ramfs.c
67
 
68
    # ----------------------------------------------------------------------
69
    # Simple allocation mechanism using malloc()
70
 
71
    cdl_component CYGPKG_FS_RAM_SIMPLE {
72
        display    "Simple, malloc() based, implementation"
73
        requires   { CYGINT_ISO_MALLOC != 0 }
74
        default_value 1
75
        active_if      !CYGPKG_FS_RAM_BLOCKS
76
 
77
        cdl_option     CYGNUM_RAMFS_REALLOC_INCREMENT {
78
            display       "Size of file data storage increment"
79
            flavor        data
80
            default_value 256
81
            legal_values  64 to 32768
82
            description   "This option controls the size of the increment to a file data
83
                           storage block."
84
        }
85
 
86
    }
87
 
88
    # ----------------------------------------------------------------------
89
    # Block based allocation, using either malloc() or a private block
90
    # pool.
91
 
92
    cdl_component CYGPKG_FS_RAM_BLOCKS {
93
        display        "Block-based RAM filesystem allocation"
94
        default_value  0
95
        active_if      !CYGPKG_FS_RAM_SIMPLE
96
 
97
 
98
        cdl_option     CYGNUM_RAMFS_BLOCK_SIZE {
99
            display       "Size of file data storage block"
100
            flavor        data
101
            default_value 256
102
            legal_values  64 to 32768
103
            description   "This option controls the size of a data storage block."
104
        }
105
 
106
        cdl_option     CYGNUM_RAMFS_BLOCKS_DIRECT {
107
            display       "Directly referenced data storage blocks"
108
            flavor        data
109
            default_value 8
110
            legal_values  0 to 32
111
            description   "This option controls the number of data storage blocks that
112
                           are referenced directly from a file or directory node."
113
        }
114
 
115
        cdl_option     CYGNUM_RAMFS_BLOCKS_INDIRECT1 {
116
            display       "Single level indirect data storage blocks"
117
            flavor        data
118
            default_value 1
119
            legal_values  0 to 32
120
            description   "This option controls the number of single level indirect storage
121
                           blocks that are referenced from a file or directory node."
122
        }
123
 
124
        cdl_option     CYGNUM_RAMFS_BLOCKS_INDIRECT2 {
125
            display       "Two level indirect data storage blocks"
126
            flavor        data
127
            default_value 1
128
            legal_values  0 to 32
129
            description   "This option controls the number of two level indirect storage
130
                           blocks that are referenced from a file or directory node."
131
        }
132
 
133
        cdl_component CYGPKG_FS_RAM_BLOCKS_ARRAY {
134
            display       "Use block array rather than malloc()"
135
            default_value 0
136
            description   "This option controls whether the blocks are allocated from
137
                           an array of blocks rather from the heap using malloc()."
138
 
139
            cdl_option CYGPKG_FS_RAM_BLOCKS_ARRAY_EXTERN {
140
                display         "Block array is external"
141
                default_value 0
142
                description     "This option controls whether the block array is
143
                                 defined by the RAMFS package or whether it is provided
144
                                 by an external component. The latter option may be
145
                                 useful when the RAM file system is to be put into a
146
                                 special memory area."
147
            }
148
 
149
            cdl_option CYGPKG_FS_RAM_BLOCKS_ARRAY_NAME {
150
                display         "Name of external block array"
151
                active_if       CYGPKG_FS_RAM_BLOCKS_ARRAY_EXTERN
152
                flavor          data
153
                default_value   "cyg_ramfs_block_array"
154
                description     "This option controls what the symbol name of the external
155
                                 block array will be."
156
            }
157
 
158
            cdl_option CYGNUM_FS_RAM_BLOCKS_ARRAY_SIZE {
159
                display         "Size of blocks array"
160
                flavor          data
161
                default_value   128
162
                legal_values    1 to 9999999999
163
                description     "The number of blocks in the array. The total size of
164
                                 the array will be this value times the block size."
165
            }
166
        }
167
    }
168
 
169
    cdl_option     CYGNUM_RAMFS_DIRENT_SIZE {
170
        display       "Directory entry size"
171
        flavor        data
172
        default_value 32
173
        legal_values  16 to { CYGNUM_RAMFS_BLOCK_SIZE ? CYGNUM_RAMFS_BLOCK_SIZE : 128 }
174
        description   "This option controls the number of two level indirect storage
175
                       blocks that are referenced from a file or directory node."
176
    }
177
 
178
    # ----------------------------------------------------------------
179
    # Tests
180
 
181
    cdl_option CYGPKG_FS_RAM_TESTS {
182
        display "RAM FS tests"
183
        flavor  data
184
        no_define
185
        calculated { "tests/fileio1.c" }
186
            description   "
187
                This option specifies the set of tests for the RAM FS package."
188
        }
189
 
190
}
191
 
192
# End of ramfs.cdl

powered by: WebSVN 2.1.0

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