summaryrefslogtreecommitdiff
path: root/ecos/packages/devs/disk/synth/current/cdl/synthdisk.cdl
blob: 80101b07873fb11027d950bacb9baa12adc8d5d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
# ====================================================================
#
#      synthdisk.cdl
#
#      Synthetic target disk package.
#
# ====================================================================
## ####ECOSGPLCOPYRIGHTBEGIN####                                            
## -------------------------------------------                              
## This file is part of eCos, the Embedded Configurable Operating System.   
## Copyright (C) 2003, 2004 Free Software Foundation, Inc.                  
##
## eCos is free software; you can redistribute it and/or modify it under    
## the terms of the GNU General Public License as published by the Free     
## Software Foundation; either version 2 or (at your option) any later      
## version.                                                                 
##
## eCos is distributed in the hope that it will be useful, but WITHOUT      
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or    
## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License    
## for more details.                                                        
##
## You should have received a copy of the GNU General Public License        
## along with eCos; if not, write to the Free Software Foundation, Inc.,    
## 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.            
##
## As a special exception, if other files instantiate templates or use      
## macros or inline functions from this file, or you compile this file      
## and link it with other works to produce a work based on this file,       
## this file does not by itself cause the resulting work to be covered by   
## the GNU General Public License. However the source code for this file    
## must still be made available in accordance with section (3) of the GNU   
## General Public License v2.                                               
##
## This exception does not invalidate any other reasons why a work based    
## on this file might be covered by the GNU General Public License.         
## -------------------------------------------                              
## ####ECOSGPLCOPYRIGHTEND####                                              
# ====================================================================
######DESCRIPTIONBEGIN####
#
# Author(s):      savin
# Contributors:
# Date:           2003-06-18
#
#####DESCRIPTIONEND####
# ====================================================================

cdl_package CYGPKG_DEVS_DISK_ECOSYNTH {
    display     "Synthetic target disk driver"
    
    parent      CYGPKG_IO_DISK_DEVICES
    active_if   CYGPKG_IO_DISK
    active_if   CYGPKG_HAL_SYNTH

    define_proc {
        puts $::cdl_system_header "/***** Synthdisk driver proc output start *****/"
        puts $::cdl_system_header "#define CYGDAT_DEVS_DISK_CFG <pkgconf/devs_disk_ecosynth.h>"
        puts $::cdl_system_header "/***** Synthdisk driver proc output end  *****/"        
    }

    cdl_component CYGVAR_DEVS_DISK_ECOSYNTH_DISK0 {
    	display         "Provide disk 0 device"
        flavor          bool
        default_value   0
        description     "Synthetic disk 0 driver."
        
        cdl_option CYGDAT_IO_DISK_ECOSYNTH_DISK0_NAME {
            display       "Device name for ecosynth disk 0 device"
            flavor        data
            default_value {"\"/dev/synthdisk0/\""}
            description   "This is the device name used to access this
                           device in eCos. Note that the trailing slash
                           character must be present."
        }

        cdl_option CYGDAT_IO_DISK_ECOSYNTH_DISK0_FILENAME {
            display       "Linux file name for ecosynth disk 0 device"
            flavor        data
            default_value {"\"disk0.img\""}
            description   "This is the name of the file in the Linux filesystem that
                           the driver will use to simulate a real disk. It should have
                           been formatted with a DOS filesystem image before being used.
                           The driver may also be pointed at real devices. For example
                           setting this option to \"/dev/fd\" will cause the driver to access
                           any real floppy disk inserted in the host's floppy drive."
        }

        cdl_option CYGNUM_IO_DISK_ECOSYNTH_DISK0_SIZE {
            display       "Size in bytes for ecosynth disk 0"
            flavor        data
            default_value 10240000
            legal_values  512 to 99999999
            requires      { (CYGNUM_IO_DISK_ECOSYNTH_DISK0_SIZE % 512) == 0 }
            description   "
                This option specifies the size in bytes used
                for the ecosynth disk 0 device."
        }

        cdl_option CYGIMP_IO_DISK_ECOSYNTH_DISK0_MBR {
            display       "Expect MBR in synth disk 0 image"
            flavor        bool
            default_value 0
            description   "
                This option controls the scanning of MBR in synthetic
                disk 0 image."
        }
        
        cdl_option CYGIMP_IO_DISK_ECOSYNTH_DISK0_CYLINDERS {
            display       "Number of cylinders on synth disk 0"
            flavor        data
            default_value 0
            active_if     CYGIMP_IO_DISK_ECOSYNTH_DISK0_MBR
            description   "
                This option controls the number of cylinders on
                synthetic disk 0. It is only needed if
                CYGIMP_IO_DISK_ECOSYNTH_DISK0_MBR is set."
        }
        
        cdl_option CYGIMP_IO_DISK_ECOSYNTH_DISK0_HEADS {
            display       "Number of heads on synth disk 0"
            flavor        data
            default_value 0
            active_if     CYGIMP_IO_DISK_ECOSYNTH_DISK0_MBR
            description   "
                This option controls the number of heads on
                synthetic disk 0. It is only needed if
                CYGIMP_IO_DISK_ECOSYNTH_DISK0_MBR is set."
        }
       
        cdl_option CYGIMP_IO_DISK_ECOSYNTH_DISK0_SECTORS {
            display       "Number of sectors per track on synth disk 0"
            flavor        data
            default_value 0
            active_if     CYGIMP_IO_DISK_ECOSYNTH_DISK0_MBR
            description   "
                This option controls the number of sectors per track on
                synthetic disk 0.It is only needed if
                CYGIMP_IO_DISK_ECOSYNTH_DISK0_MBR is set."
        }
    }

    cdl_component CYGPKG_DEVS_DISK_ECOSYNTH_OPTIONS {
    	display     "Build options"
	    active_if   { CYGVAR_DEVS_DISK_ECOSYNTH_DISK0 }
	    flavor      none
	    compile     -library=libextras.a synthdisk.c
	    description "
	        Package-specific build options including control over compiler
	        flags used only in building this package."

	    cdl_option CYGPKG_DEVS_DISK_ECOSYNTH_CFLAGS_ADD {
            display "Additional compiler flags"
            flavor  data
            no_define
            default_value { "" }
            description   "
                This option modifies the set of compiler flags for
                building this package. These flags are used in addition
                to the set of global flags."
	    }
        cdl_option CYGPKG_DEVS_DISK_ECOSYNTH_CFLAGS_REMOVE {
            display "Suppressed compiler flags"
            flavor  data
            no_define
            default_value { "" }
            description   "
                This option modifies the set of compiler flags for
                building this package. These flags are removed from
                the set of global flags if present."
        }
    }
}