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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [redboot/] [current/] [cdl/] [redboot.cdl] - Blame information for rev 838

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

Line No. Rev Author Line
1 786 skrzyp
# ====================================================================
2
#
3
#      redboot.cdl
4
#
5
#      Redboot package 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, 2003, 2004, 2005, 2006, 2008, 2009 Free Software Foundation, 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
16
## version.
17
##
18
## eCos is distributed in the hope that it will be useful, but WITHOUT
19
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20
## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
21
## for more details.
22
##
23
## You should have received a copy of the GNU General Public License
24
## along with eCos; if not, write to the Free Software Foundation, Inc.,
25
## 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
26
##
27
## As a special exception, if other files instantiate templates or use
28
## macros or inline functions from this file, or you compile this file
29
## and link it with other works to produce a work based on this file,
30
## this file does not by itself cause the resulting work to be covered by
31
## the GNU General Public License. However the source code for this file
32
## must still be made available in accordance with section (3) of the GNU
33
## General Public License v2.
34
##
35
## This exception does not invalidate any other reasons why a work based
36
## on this file might be covered by the GNU General Public License.
37
## -------------------------------------------
38
## ####ECOSGPLCOPYRIGHTEND####
39
# ====================================================================
40
######DESCRIPTIONBEGIN####
41
#
42
# Author(s):      gthomas
43
# Original data:  gthomas
44
# Contributors:   Philippe Robin, Andrew Lunn, tkoeller
45
# Date:           2000-05-01
46
#
47
#####DESCRIPTIONEND####
48
#
49
# ====================================================================
50
cdl_package CYGPKG_REDBOOT {
51
    display       "Redboot ROM monitor"
52
    doc           redboot-guide/redboot-guide.html
53
    define_header redboot.h
54
    description   "
55
           This package supports the Redboot \[stand-alone debug monitor\]
56
           using eCos as the underlying board support mechanism."
57
 
58
    # Use of separate interrupt stack causes problems when running
59
    # programs as they can end up trashing RedBoot's stack
60
    requires { CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK == 0 }
61
 
62
    # Since the CYGDAT_REDBOOT_CONSOLE_DEV setting ends up in the platform
63
    # HAL header, we need to include that here (via hal.h).
64
    define_proc {
65
        puts $::cdl_header "#include "
66
    }
67
 
68
    cdl_component CYGSEM_REDBOOT_ELF {
69
        flavor bool
70
        display       "Include support for ELF file format"
71
        default_value 1
72
 
73
        cdl_option CYGOPT_REDBOOT_ELF_VIRTUAL_ADDRESS {
74
            display "Use the virtual address in the ELF headers"
75
            flavor bool
76
            default_value 0
77
            description "
78
                The ELF headers contain both a virtual and a physical address
79
                for where code/data should be loaded. By default the physical
80
                address is used but sometimes it is necassary to use the
81
                virtual address because of bugy toolchains"
82
        }
83
    }
84
 
85
 
86
    cdl_interface CYGINT_REDBOOT_LOAD_METHOD {
87
        display "Methods of loading images using redboot"
88
    }
89
 
90
    cdl_component CYGBLD_BUILD_REDBOOT {
91
        display "Build Redboot ROM ELF image"
92
        default_value 0
93
        requires CYGPKG_INFRA
94
        requires CYGPKG_ISOINFRA
95
 
96
        requires ! CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
97
        requires ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
98
        requires ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
99
        requires CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
100
        requires CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
101
 
102
        requires CYGINT_ISO_STRING_MEMFUNCS
103
        requires CYGINT_ISO_STRING_STRFUNCS
104
        requires CYGINT_REDBOOT_LOAD_METHOD
105
 
106
        cdl_option CYGBLD_BUILD_REDBOOT_WITH_GDB {
107
            display       "Include GDB support in RedBoot"
108
            no_define
109
            default_value 1
110
            active_if     CYGINT_HAL_DEBUG_GDB_STUBS
111
            requires      CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
112
            requires      CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
113
            description "
114
              RedBoot normally includes support for the GDB debugging
115
              protocols. This option allows this to be disabled which
116
              may yield a substantial savings in terms of code and memory
117
              usage by RedBoot."
118
        }
119
 
120
        cdl_option CYGBLD_BUILD_REDBOOT_WITH_THREADS {
121
            display "Threads debugging support"
122
            no_define
123
            description "
124
              Enabling this option will include special code in the
125
              GDB stubs to support debugging of threaded programs.  In
126
              the case of eCos programs, this support allows GDB to
127
              have complete access to the eCos threads in the
128
              program."
129
            active_if { CYG_HAL_STARTUP != "RAM" }
130
            requires  CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
131
        }
132
 
133
        cdl_option CYGDAT_REDBOOT_CUSTOM_VERSION {
134
            display        "Customized version string"
135
            flavor         booldata
136
            default_value  0
137
            description    "
138
              Use this option to define a customized version \"string\" for
139
              RedBoot.  Note: this value is only cosmetic, displayed by the
140
              \"version\" command, but is useful for providing site specific
141
              information about the RedBoot configuration."
142
        }
143
 
144
        cdl_option CYGNUM_REDBOOT_CMD_LINE_EDITING {
145
            display          "Enable command line editing"
146
            flavor           data
147
            default_value    16
148
            description      "
149
               If this option is non-zero, RedBoot will remember the
150
               last N command lines.  These lines may be reused.
151
               Enabling this history will also enable rudimentary
152
               editting of the lines themselves."
153
        }
154
 
155
        cdl_option CYGSEM_REDBOOT_CMD_LINE_ANSI_SEQUENCES {
156
            display          "Enable command line editing using ANSI arrows, etc"
157
            flavor           bool
158
            default_value    1
159
            active_if        CYGNUM_REDBOOT_CMD_LINE_EDITING != 0
160
            description      "
161
               If this option is enabled, RedBoot will accept standard ANSI key
162
               sequences for cursor movement (along with the emacs style keys)."
163
        }
164
 
165
        cdl_option CYGBLD_REDBOOT_CMD_LINE_HISTORY {
166
            display        "Enable history command and expansion"
167
            requires       { CYGNUM_REDBOOT_CMD_LINE_EDITING > 0 }
168
            flavor         bool
169
            default_value  1
170
            description  "
171
              Enabling this option will allow RedBoot to provide a
172
              history command to list previous commands. Also enables
173
              history expansion via '!'  character similar to bash
174
              shell."
175
        }
176
 
177
        cdl_option CYGBLD_REDBOOT_MAX_MEM_SEGMENTS {
178
            display        "Number of unique RAM segments on platform"
179
            flavor         data
180
            default_value  1
181
            description  "
182
              Change this option to be the number of memory segments which are
183
              supported by the platform.  If the value is greater than 1, then
184
              a platform specific function must provide information about the
185
              additional segments."
186
        }
187
 
188
        cdl_component CYGBLD_BUILD_REDBOOT_WITH_ZLIB {
189
            display       "Include support gzip/zlib decompression"
190
            active_if     CYGPKG_COMPRESS_ZLIB
191
            default_value 1
192
            implements    CYGINT_COMPRESS_ZLIB_LOCAL_ALLOC
193
            compile       decompress.c
194
 
195
            cdl_option CYGNUM_REDBOOT_LOAD_ZLIB_BUFFER {
196
                display       "Size of zlib decompression buffer"
197
                flavor        data
198
                default_value 64
199
                legal_values  5 to 256
200
                description   "
201
                    This is the size of the buffer filled with incoming data
202
                    during load before calls are made to the decompressor
203
                    function. For ethernet downloads this can be made bigger
204
                    (at the cost of memory), but for serial downloads on slow
205
                    processors it may be necessary to reduce the size to
206
                    avoid serial overruns. zlib appears to bail out if less
207
                    than five bytes are available initially so this is the
208
                    minimum."
209
            }
210
            cdl_option CYGPRI_REDBOOT_ZLIB_FLASH {
211
                 display       "Support compression of Flash images"
212
                 active_if     CYGPKG_REDBOOT_FLASH
213
                 active_if     !CYGSEM_IO_FLASH_READ_INDIRECT
214
                 calculated    1
215
                 description   "
216
                        This CDL indicates whether flash images can
217
                        be decompressed from gzip/zlib format into RAM."
218
            }
219
 
220
            cdl_option CYGBLD_BUILD_REDBOOT_WITH_GUNZIP {
221
                 display       "Include GZIP uncompress command"
222
                 default_value 0
223
                 description   "
224
                        Enable this option to include a 'gunzip' command
225
                        to uncompress GZIP compressed data."
226
                 compile -library=libextras.a gunzip.c
227
            }
228
        }
229
 
230
        cdl_option CYGBLD_BUILD_REDBOOT_WITH_XYZMODEM {
231
            display       "Include support for xyzModem downloads"
232
            doc           ref/download-command.html
233
            no_define
234
            default_value 1
235
            implements    CYGINT_REDBOOT_LOAD_METHOD
236
            compile -library=libextras.a xyzModem.c
237
        }
238
 
239
        cdl_option CYGBLD_REDBOOT_LOAD_INTO_FLASH {
240
            display       "Allow the load-command write into Flash."
241
            default_value 0
242
            active_if     CYGPKG_REDBOOT_FLASH
243
            requires      CYGSEM_REDBOOT_VALIDATE_USER_RAM_LOADS
244
            compile       flash_load.c
245
            description "
246
                Write images direct to Flash via the load command.
247
                We assume anything which is invalid RAM is flash, hence
248
                the requires statement"
249
        }
250
        cdl_option CYGBLD_BUILD_REDBOOT_WITH_CKSUM {
251
            display       "Include POSIX checksum command"
252
            doc           ref/cksum-command.html
253
            default_value 1
254
            requires      CYGPKG_CRC
255
            compile -library=libextras.a cksum.c
256
        }
257
 
258
        cdl_option CYGBLD_BUILD_REDBOOT_WITH_MFILL {
259
            display       "Include memory fill command"
260
            doc           ref/mfill-command.html
261
            default_value 1
262
            compile -library=libextras.a mfill.c
263
        }
264
 
265
        cdl_option CYGBLD_BUILD_REDBOOT_WITH_MCMP {
266
            display       "Include memory compare command"
267
            doc           ref/mcmp-command.html
268
            default_value 1
269
            compile -library=libextras.a mcmp.c
270
        }
271
 
272
        cdl_option CYGBLD_BUILD_REDBOOT_WITH_MCOPY {
273
            display       "Include memory copy command"
274
            doc           ref/mcopy-command.html
275
            default_value 1
276
            compile -library=libextras.a mcopy.c
277
        }
278
 
279
        cdl_option CYGBLD_BUILD_REDBOOT_WITH_DUMP {
280
            display       "Include memory dump command"
281
            doc           ref/dump-command.html
282
            default_value 1
283
            compile -library=libextras.a dump.c
284
        }
285
 
286
        cdl_option CYGBLD_BUILD_REDBOOT_WITH_CACHES {
287
            display       "Include cache command"
288
            doc           ref/cache-command.html
289
            default_value 1
290
            compile -library=libextras.a caches.c
291
        }
292
 
293
        cdl_option CYGBLD_BUILD_REDBOOT_WITH_EXEC {
294
            display       "Include exec command"
295
            doc           ref/exec-command.html
296
            default_value 1
297
            # Implemented within the platform HAL
298
        }
299
 
300
        cdl_option CYGBLD_BUILD_REDBOOT_WITH_IOMEM {
301
            display       "Include I/O Memory commands 'iopeek' and 'iopoke'"
302
            default_value 0
303
            compile -library=libextras.a iomem.c
304
        }
305
 
306
        no_define
307
        description "
308
            This option enables the building of the Redboot ELF image.
309
            The image may require further relocation or symbol
310
            stripping before being converted to a binary image.
311
            This is handled by a rule in the target CDL."
312
 
313
 
314
        cdl_option CYGDBG_REDBOOT_TICK_GRANULARITY {
315
            display          "Granularity of timer/ticks"
316
            flavor           data
317
            legal_values     { 50 100 250 500 1000 }
318
            default_value    250
319
            description      "
320
                This option controls the granularity of the timers.
321
                Faster CPUs can afford higher granularity (lower values)
322
                which should give higher network performance since the stack
323
                is purely polled."
324
        }
325
 
326
        compile main.c
327
        compile misc_funs.c io.c parse.c ticks.c syscall.c alias.c
328
        compile -library=libextras.a load.c
329
 
330
        make -priority 320 {
331
            /bin/redboot.elf : $(PREFIX)/lib/target.ld $(PREFIX)/lib/vectors.o $(PREFIX)/lib/libtarget.a $(PREFIX)/lib/libextras.a
332
                    @sh -c "mkdir -p $(dir $@)"
333
                    $(CC) -c $(INCLUDE_PATH) $(ACTUAL_CFLAGS) -o $(PREFIX)/lib/version.o $(REPOSITORY)/$(PACKAGE)/src/version.c
334
                    $(CC) $(LDFLAGS) -L$(PREFIX)/lib -Ttarget.ld -o $@ $(PREFIX)/lib/version.o
335
        }
336
 
337
        cdl_component CYGPKG_REDBOOT_NETWORKING {
338
            display       "Redboot Networking"
339
            flavor        bool
340
            active_if     CYGPKG_IO_ETH_DRIVERS
341
            default_value 1
342
            implements    CYGINT_REDBOOT_LOAD_METHOD
343
            compile net/udp.c net/ip.c net/pktbuf.c net/cksum.c
344
            compile net/enet.c net/icmp.c net/tcp.c net/timers.c net/arp.c
345
            compile net/inet_addr.c
346
            compile -library=libextras.a net/ping.c net/net_io.c
347
            description "This option includes networking support in RedBoot."
348
            define_proc {
349
                puts $::cdl_system_header "#define CYGNUM_HAL_VIRTUAL_VECTOR_AUX_CHANNELS 1"
350
            }
351
 
352
            cdl_option CYGDBG_REDBOOT_NET_DEBUG {
353
                display          "Print net debug information"
354
                flavor           bool
355
                default_value    0
356
                description      "
357
                    This option is overriden by the configuration stored
358
                    in flash."
359
            }
360
 
361
            cdl_option CYGSEM_REDBOOT_NET_TFTP_DOWNLOAD {
362
                display          "Support TFTP for download"
363
                flavor           bool
364
                default_value    1
365
                compile          -library=libextras.a net/tftp_client.c
366
                description      "
367
                    This option enables the use of the TFTP protocol for
368
                    download"
369
            }
370
 
371
            cdl_option CYGSEM_REDBOOT_NET_HTTP_DOWNLOAD {
372
                display          "Support HTTP for download"
373
                flavor           bool
374
                default_value    1
375
                compile          -library=libextras.a net/http_client.c
376
                description      "
377
                    This option enables the use of the HTTP protocol for
378
                    download"
379
            }
380
 
381
            cdl_component CYGDAT_REDBOOT_DEFAULT_IP_ADDR {
382
                display          "Default IP address"
383
                flavor           booldata
384
                default_value    CYGSEM_REDBOOT_FLASH_CONFIG ? 0 : \
385
                                    { "0, 0, 0, 0" }
386
                description      "
387
                    This IP address is the default used by RedBoot if
388
                    a BOOTP/DHCP server does not respond. The numbers
389
                    should be separated by *commas*, and not dots. If
390
                    an IP address is configured into the Flash
391
                    configuration, that will be used in preference."
392
 
393
                cdl_option CYGDAT_REDBOOT_DEFAULT_BOOTP_SERVER_IP_ADDR {
394
                     display           "Default bootp server"
395
                     flavor            booldata
396
                     default_value     CYGSEM_REDBOOT_FLASH_CONFIG ? 0 : \
397
                                          { "0, 0, 0, 0" }
398
                     description       "
399
                          This IP address is the default server
400
                          address used by RedBoot if a BOOTP/DHCP
401
                          server does not respond. The numbers should
402
                          be separated by *commas*, and not dots. If
403
                          an IP address is configured into the Flash
404
                          configuration, that will be used in
405
                          preference."
406
                }
407
            }
408
 
409
            cdl_component CYGPKG_REDBOOT_NETWORKING_BOOTP {
410
                display          "Enable BOOTP/DHCP support"
411
                flavor           bool
412
                default_value    1
413
                compile          net/bootp.c
414
                description      "
415
                    Use BOOTP/DHCP protocol to obtain pertinent IP
416
                    addresses, such as the client, server, gateway,
417
                    etc."
418
 
419
                cdl_component CYGSEM_REDBOOT_NETWORKING_DHCP {
420
                    display          "Enable DHCP in addition to BOOTP support"
421
                    flavor           bool
422
                    default_value    1
423
                    description      "
424
                    Enables DHCP protocol in addition to BOOTP.  If not enabled,
425
                    only BOOTP will be suported."
426
                }
427
 
428
                cdl_component CYGSEM_REDBOOT_NETWORKING_BOOTP_VERBOSE {
429
                    display          "Enable verbose output from BOOTP/DHCP code"
430
                    flavor           bool
431
                    default_value    0
432
                    description      "
433
                    Enable more verbose output from BOOTP/DHCP that logs rx/tx
434
                    packet types and state-machine transitions."
435
                }
436
 
437
                cdl_option CYGSEM_REDBOOT_DEFAULT_NO_BOOTP {
438
                    display          "Do not try to use BOOTP/DHCP"
439
                    flavor           bool
440
                    default_value    0
441
                    description      "
442
                         By default Redboot tries to use BOOTP/DHCP to
443
                         get an IP address when BOOTP/DHCP support is
444
                         present in Redboot. If there's no BOOTP/DHCP
445
                         server on your network use this option to
446
                         avoid waiting for the BOOTP/DHCP timeouts and
447
                         retries. This option is overriden by the
448
                         configuration stored in flash."
449
                }
450
            }
451
 
452
            cdl_component CYGSEM_REDBOOT_NETWORKING_USE_GATEWAY {
453
                display          "Use a gateway for non-local IP traffic"
454
                flavor           bool
455
                default_value    1
456
                description      "
457
                  Enabling this option will allow the RedBoot networking
458
                stack to use a \[single\] gateway to reach a non-local
459
                IP address.  If disabled, RedBoot will only be able to
460
                reach nodes on the same subnet."
461
 
462
                cdl_component CYGDAT_REDBOOT_DEFAULT_GATEWAY_IP_ADDR {
463
                    display          "Default gateway IP address"
464
                    flavor           booldata
465
                    default_value    CYGSEM_REDBOOT_FLASH_CONFIG ? 0 : \
466
                                        { "0, 0, 0, 0" }
467
                    description      "
468
                        This IP address is the default used by RedBoot
469
                        if a BOOTP/DHCP server does not respond. The
470
                        numbers should be separated by *commas*, and
471
                        not dots. If an IP address is configured into
472
                        the Flash configuration, that will be used in
473
                        preference."
474
                }
475
 
476
                cdl_component CYGDAT_REDBOOT_DEFAULT_IP_ADDR_MASK {
477
                    display          "Default IP address mask"
478
                    flavor           booldata
479
                    default_value    CYGSEM_REDBOOT_FLASH_CONFIG ? 0 : \
480
                                        { "255, 255, 255, 0" }
481
                    description      "
482
                        This IP address mask is the default used by
483
                        RedBoot if a BOOTP/DHCP server does not
484
                        respond. The numbers should be separated by
485
                        *commas*, and not dots. If an IP address is
486
                        configured into the Flash configuration, that
487
                        will be used in preference."
488
                }
489
            }
490
 
491
            cdl_option CYGNUM_REDBOOT_NETWORKING_TCP_PORT {
492
                display          "TCP port to listen for incoming connections"
493
                flavor           data
494
                default_value    9000
495
                description      "
496
                   RedBoot will 'listen' on this port for incoming TCP
497
                   connections. This allows outside connections to be made
498
                   to the platform, either for GDB or RedBoot commands."
499
            }
500
 
501
            cdl_option CYGNUM_REDBOOT_NETWORKING_MAX_PKTBUF {
502
                display          "Number of \[network\] packet buffers"
503
                flavor           data
504
                default_value    4
505
                legal_values     3 to 8
506
                description      "
507
                   RedBoot may need to buffer network data to support
508
                   various connections.  This option allows control
509
                   over the number of such buffered packets, and in
510
                   turn, controls the amount of memory used by RedBoot
511
                   (which is not available to user applications).
512
                   Each packet buffer takes up about 1514 bytes.
513
                   Note: there is little need to make this larger than
514
                   the default."
515
            }
516
 
517
            cdl_component CYGPKG_REDBOOT_NETWORKING_DNS {
518
                display         "DNS support"
519
                default_value   1
520
                active_if       CYGPKG_NS_DNS
521
                requires        !CYGPKG_NS_DNS_BUILD
522
                compile         net/dns.c
523
                description     "
524
                    When this option is enabled, RedBoot will be built with
525
                    support for DNS, allowing use of hostnames on the command
526
                    line."
527
 
528
                cdl_option CYGPKG_REDBOOT_NETWORKING_DNS_IP {
529
                    display         "Default DNS IP"
530
                    flavor          data
531
                    active_if       !CYGSEM_REDBOOT_FLASH_CONFIG
532
                    default_value   { "0.0.0.0" }
533
                    description "
534
                      This option sets the IP of the default DNS. The IP can be
535
                      changed at runtime as well."
536
                }
537
 
538
                cdl_option CYGNUM_REDBOOT_NETWORKING_DNS_TIMEOUT {
539
                    display         "Timeout in DNS lookup"
540
                    flavor          data
541
                    default_value   10
542
                    description "
543
                      This option sets the timeout used when looking up an
544
                      address via the DNS. Default is 10 seconds."
545
                }
546
 
547
                cdl_component CYGPKG_REDBOOT_NETWORKING_DNS_WITH_DOMAIN {
548
                    display         "Support the use of a domain name"
549
                    flavor          bool
550
                    default_value   0
551
                    description     "
552
                       This option controls if Redboot supports domain
553
                       names when performing DNS lookups"
554
 
555
                    cdl_option    CYGPKG_REDBOOT_NETWORKING_DNS_DEFAULT_DOMAIN {
556
                        display         "Default DNS domain"
557
                        flavor          booldata
558
                        default_value   0
559
                        description "
560
                            This option sets the default DNS domain name.
561
                            This value will be overwritten by the value in
562
                            flash or a domain returned by DHCP"
563
                    }
564
 
565
                    cdl_option    CYGPKG_REDBOOT_NETWORKING_DNS_FCONFIG_DOMAIN {
566
                        display         "Get DNS domain from Flash"
567
                        flavor          bool
568
                        active_if       CYGSEM_REDBOOT_FLASH_CONFIG
569
                        default_value   0
570
                        description "
571
                            This option enables getting the domain name
572
                            from the flash configuration. This can later be
573
                            overwritten by a value learnt from DHCP"
574
                    }
575
 
576
                    cdl_option    CYGPKG_REDBOOT_NETWORKING_DNS_DHCP_DOMAIN {
577
                        display         "Use DNS domain from DHCP"
578
                        flavor          bool
579
                        default_value   0
580
                        description "
581
                            This option enables the use of the domain name
582
                            returned by DHCP."
583
                    }
584
 
585
                    cdl_option CYGNUM_REDBOOT_NETWORK_DNS_DOMAIN_BUFSIZE {
586
                        display         "BOOTP/DHCP DNS domain buffer size"
587
                        flavor          data
588
                        default_value   32
589
                        description "
590
                           This options sets the size of the static
591
                           buffer used by BOOTP/DHCP to store the DNS
592
                           domain name. The domain name will not be
593
                           set if the buffer is too small to hold it."
594
                    }
595
                }
596
            }
597
 
598
            cdl_option CYGDAT_REDBOOT_DEFAULT_NETWORK_DEVICE {
599
                display         "Default network device driver"
600
                flavor          data
601
                active_if       { CYGHWR_NET_DRIVERS > 1 }
602
                default_value   { "\"\"" }
603
                description     "
604
                    This is the name of the default network device to use."
605
            }
606
 
607
            cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
608
                display         "Initialize only one net device"
609
                flavor          bool
610
                active_if       { CYGHWR_NET_DRIVERS > 1 }
611
                default_value   0
612
                description     "
613
                    This option tells RedBoot to stop initializing network
614
                    devices when it finds the first device which is
615
                    successfully initialized. The default behavior causes
616
                    all network devices to be initialized."
617
            }
618
        }
619
 
620
        cdl_option CYGPKG_REDBOOT_ANY_CONSOLE {
621
            display       "Let RedBoot use any I/O channel for its console."
622
            flavor        bool
623
            default_value 1
624
            description   "
625
              If this option is enabled then RedBoot will attempt to use all
626
              defined serial I/O channels for its console device.  Once input
627
              arrives at one of these channels then the console will use only
628
              that port."
629
        }
630
 
631
        cdl_option CYGSEM_REDBOOT_VARIABLE_BAUD_RATE {
632
            display       "Let RedBoot adjust the baud off the serial console."
633
            flavor        bool
634
            default_value 1
635
            active_if     CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT
636
            description   "
637
              If this option is enabled then RedBoot will support commands
638
              to set and query the baud rate on the selected console."
639
        }
640
 
641
        cdl_option CYGSEM_REDBOOT_PLF_STARTUP {
642
            display       "Run a platform specific startup function."
643
            flavor        bool
644
            default_value 0
645
            description   "
646
              If this option is enabled then RedBoot will execute a platform
647
              specific startup function before entering into its command line
648
              processing.  This allows the platform to perform any special
649
              setups before RedBoot actually starts running.  Note: the entire
650
              RedBoot environment will already be initialized at this point."
651
        }
652
 
653
        cdl_option CYGSEM_REDBOOT_PLF_ESA_VALIDATE {
654
            display       "Run a platform specific ESA validation function."
655
            flavor        bool
656
            default_value 0
657
            description   "
658
              If this option is enabled then RedBoot will execute a platform
659
              specific function to validate an ethernet ESA.  This would be
660
              useful if the address must conform to standards set by the
661
              hardware manufacturer, etc."
662
        }
663
 
664
        cdl_option CYGPKG_REDBOOT_MAX_CMD_LINE {
665
            display       "Maximum command line length"
666
            flavor        data
667
            default_value 256
668
            description   "
669
              This option allows control over how long the CLI command line
670
              should be.  This space will be allocated statically
671
              rather than from RedBoot's stack."
672
        }
673
 
674
        cdl_option CYGNUM_REDBOOT_CLI_IDLE_TIMEOUT {
675
            display       "Command processing idle timeout (ms)"
676
            flavor        data
677
            default_value 10
678
            description   "
679
              This option controls the timeout period before the
680
              command processing is considered 'idle'.  Making this
681
              number smaller will cause idle processing to take place
682
              more often, etc.  The default value of 10ms is a reasonable
683
              tradeoff between responsiveness and overhead."
684
        }
685
 
686
        cdl_option CYGSEM_REDBOOT_VALIDATE_USER_RAM_LOADS {
687
            display       "Validate RAM addresses during load"
688
            flavor        bool
689
            default_value 1
690
            description   "
691
 
692
              This option controls whether or not RedBoot will make
693
              sure that memory being used by the \"load\" command is
694
              in fact in user RAM.  Leaving the option enabled makes
695
              for a safer environment, but this check may not be valid
696
              on all platforms, thus the ability to disable it.
697
              ** Disable this only with great care **"
698
        }
699
 
700
        cdl_option CYGNUM_REDBOOT_FLASH_BASE {
701
            display       "Base address of flash device redboot should use"
702
            flavor        booldata
703
            description   "
704
                This option controls how redboot finds the flash
705
                device. Setting this option to an address will
706
                cause redboot to use that address as the base of the
707
                flash device."
708
        }
709
 
710
        cdl_component CYGPKG_REDBOOT_FLASH {
711
            display       "Allow RedBoot to support FLASH programming"
712
            flavor        bool
713
            default_value 1
714
            active_if     CYGHWR_IO_FLASH_DEVICE
715
            description   "
716
              If this option is enabled then RedBoot will provide commands
717
              to manage images in FLASH memory.  These images can be loaded
718
              into memory for execution or executed in place."
719
            compile -library=libextras.a flash.c
720
 
721
            cdl_option CYGOPT_REDBOOT_FLASH_BYTEORDER {
722
                display         "Byte order used to store info in flash."
723
                flavor          data
724
                default_value   { "NATURAL" }
725
                legal_values    {"NATURAL" "MSBFIRST" "LSBFIRST" }
726
                description "
727
                    This option controls the byte ordering used to store
728
                    the FIS directory info and flash config info."
729
            }
730
 
731
            cdl_option CYGOPT_REDBOOT_FIS {
732
                display         "RedBoot Flash Image System support"
733
                default_value   1
734
                doc             ref/flash-image-system.html
735
                description "
736
                    This option enables the Flash Image System commands
737
                    and support within RedBoot.  If disabled, simple Flash
738
                    access commands such as \"fis write\" will still exist.
739
                    This option would be disabled for targets that need simple
740
                    FLASH manipulation, but do not have the need or space for
741
                    complete image management."
742
            }
743
 
744
            cdl_option CYGDAT_REDBOOT_FIS_MAX_FREE_CHUNKS {
745
                display        "Max number of chunks of free space to manage"
746
                flavor         booldata
747
                default_value  32
748
                description    "
749
 
750
                  If this option is defined then \"fis free\" will
751
                  rely on the FIS directory to determine what space is
752
                  free within the FLASH.  This option controls the
753
                  maximum number of free segment which can be handled
754
                  (typically this number is small).  If this option is
755
                  not enabled, the the archaic behaviour of actually
756
                  scanning the FLASH for erased sectors (unreliable)
757
                  will be used to determine what's free and what's
758
                  not."
759
            }
760
 
761
            cdl_component CYGPKG_REDBOOT_FIS_CONTENTS {
762
                display       "Flash Image System default directory contents"
763
                active_if     CYGOPT_REDBOOT_FIS
764
                calculated    1
765
 
766
                cdl_option CYGNUM_REDBOOT_FIS_DIRECTORY_BLOCK {
767
                    display         "Flash block containing the Directory"
768
                    flavor          data
769
                    default_value   (-1)
770
                    description "
771
                      Which block of flash should hold the directory
772
                      information. Positive numbers are absolute block
773
                      numbers.  Negative block numbers count backwards
774
                      from the last block.  eg 2 means block 2, -2
775
                      means the last but one block."
776
                }
777
 
778
                cdl_component CYGOPT_REDBOOT_REDUNDANT_FIS {
779
                    display         "Redundant Flash Image System Directory Support"
780
                    default_value   0
781
                    requires { 0 == CYGSEM_REDBOOT_FLASH_COMBINED_FIS_AND_CONFIG }
782
                    description "
783
                              This option enables the use of a redundant FIS
784
                              directory within RedBoot.  If enabled a flash block
785
                              will be reserved for a second copy of the fis
786
                              directory. Doing this allow for power failure safe
787
                              updates of the directory by the application."
788
 
789
                    cdl_option CYGNUM_REDBOOT_FIS_REDUNDANT_DIRECTORY_BLOCK {
790
                        display         "Flash block containing the backup Directory"
791
                        flavor          data
792
                        default_value   (-3)
793
                        requires { CYGNUM_REDBOOT_FIS_REDUNDANT_DIRECTORY_BLOCK !=
794
                                   CYGNUM_REDBOOT_FIS_DIRECTORY_BLOCK }
795
                        description "
796
                                 Which block of flash should hold the redundant
797
                                 directory information. Positive numbers are
798
                                 absolute block numbers. Negative block numbers
799
                                 count backwards from the last block. eg 2 means
800
                                 block 2, -2 means the last but one block."
801
                    }
802
                }
803
 
804
                cdl_option CYGOPT_REDBOOT_FIS_RESERVED_BASE {
805
                    display         "Pseudo-file to describe reserved area"
806
                    active_if       { 0 != CYGNUM_REDBOOT_FLASH_RESERVED_BASE }
807
                    default_value   1
808
                    description "
809
                        If an area of FLASH is reserved, it is informative to
810
                        have a fis entry describing it.  This option controls
811
                        creation of such an entry by default in the fis init
812
                        command."
813
                }
814
 
815
                cdl_option CYGOPT_REDBOOT_FIS_REDBOOT {
816
                    display         "File to describe RedBoot boot image"
817
                    default_value   1
818
                    description "
819
                        Normally a ROM-startup RedBoot image is first in the
820
                        FLASH, and the system boots using that image.  This
821
                        option controls creation of an entry describing it in
822
                        the fis init command.  It might be disabled if a
823
                        platform has an immutable boot image of its own, where
824
                        we use a POST-startup RedBoot instead, which performs
825
                        less board initialization."
826
                }
827
 
828
                cdl_component CYGOPT_REDBOOT_FIS_REDBOOT_POST {
829
                    display         "File to describe RedBoot POST-compatible image"
830
                    default_value   !CYGOPT_REDBOOT_FIS_REDBOOT
831
                    description "
832
                        This option controls creation of an entry describing a
833
                        POST-startup RedBoot image in the fis init command.
834
                        Not all platforms support POST-startup.  A platform
835
                        might have both for testing purposes, where the
836
                        eventual user would substitute their own POST code for
837
                        the initial ROM-startup RedBoot, and then jump to the
838
                        POST-compatible RedBoot immediately following."
839
                    cdl_option CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET {
840
                        display    "Offset of POST image from FLASH start"
841
                        flavor     booldata
842
                        default_value 0
843
                        requires   { CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET >= \
844
                                     CYGBLD_REDBOOT_FLASH_BOOT_OFFSET }
845
                        description "
846
                        This option specifies the offset for a POST image from
847
                        the start of FLASH.  If unset, then the fis entry
848
                        describing the POST image will be placed where
849
                        convenient."
850
                    }
851
                }
852
 
853
                cdl_option CYGOPT_REDBOOT_FIS_REDBOOT_BACKUP {
854
                    display         "File to describe RedBoot backup image"
855
                    default_value   0
856
                    description "
857
                        This option controls creation of an entry describing a
858
                        backup RedBoot image in the fis init command.
859
                        Conventionally a RAM-startup RedBoot image is kept
860
                        under this name for use in updating the ROM-based
861
                        RedBoot that boots the board."
862
                }
863
 
864
                cdl_option CYGOPT_REDBOOT_FIS_DIRECTORY_ARM_SIB_ID {
865
                    display         "Include ARM SIB ID in FIS"
866
                    default_value   0
867
                    description "
868
                      If set, this option will cause the last 5 words of
869
                      the FIS to include the special ID needed for the
870
                      flash to be recognized as a reserved area for RedBoot
871
                      by an ARM BootRom monitor."
872
                }
873
 
874
                cdl_option CYGNUM_REDBOOT_FIS_DIRECTORY_ENTRY_SIZE {
875
                    display         "Size of FIS directory entry"
876
                    flavor              data
877
                    default_value   256
878
                    description "
879
                      The FIS directory is limited to one single flash
880
                      sector. If your flash has tiny sectors, you may wish
881
                      to reduce this value in order to get more slots in
882
                      the FIS directory."
883
                }
884
 
885
                cdl_option CYGNUM_REDBOOT_FIS_DIRECTORY_ENTRY_COUNT {
886
                    display         "Number of FIS directory entries"
887
                    flavor          data
888
                    default_value   8
889
                    description "
890
                      The FIS directory normally occupies a single flash
891
                      sector. Adjusting this value can allow for more than
892
                      one flash sector to be used, which is useful if your
893
                      sectors are very small."
894
                }
895
 
896
                cdl_option CYGBLD_REDBOOT_MIN_IMAGE_SIZE {
897
                    display       "Maximum RedBoot image size"
898
                    flavor        data
899
                    default_value { CYGOPT_REDBOOT_FIS_REDBOOT ? 0x20000 : 0 }
900
                    description "
901
                      This option controls the maximum length reserved
902
                      for the RedBoot boot image in the FIS table.
903
                      This should be a multiple of the flash's erase
904
                      block size."
905
                }
906
 
907
                cdl_option CYGBLD_REDBOOT_FLASH_BOOT_OFFSET {
908
                    display       "Offset from start of FLASH to RedBoot boot image"
909
                    flavor        data
910
                    default_value CYGNUM_REDBOOT_FLASH_RESERVED_BASE
911
                    requires      { CYGNUM_REDBOOT_FLASH_RESERVED_BASE <= \
912
                                    CYGBLD_REDBOOT_FLASH_BOOT_OFFSET }
913
                    description "
914
                      This option controls where the RedBoot boot image is
915
                      located relative to the start of FLASH."
916
                }
917
 
918
                cdl_option CYGNUM_REDBOOT_FLASH_RESERVED_BASE {
919
                    display       "Size of reserved area at start of FLASH"
920
                    flavor        data
921
                    default_value 0
922
                    description "
923
                      This option reserves an area at the start of
924
                      FLASH where RedBoot will never interfere; it is
925
                      expected that this area contains
926
                      (non-RedBoot-based) POST code or some other boot
927
                      monitor that executes before RedBoot."
928
                }
929
 
930
                cdl_option CYGNUM_REDBOOT_FLASH_RESERVED_DEVICES {
931
                    display         "List of Flash devices that are reserved"
932
                    flavor          booldata
933
                    default_value   0
934
                    description     "This option lists the base addresses of any Flash
935
                                     devices that should not be managed by the flash
936
                                     image system. In particular, this means that these
937
                                     devices will not be considered when looking for free
938
                                     space in which to create new files. It should consist
939
                                     of a comma-separated list of (virtual) addresses."
940
                }
941
            }
942
 
943
            cdl_option CYGSEM_REDBOOT_FLASH_LOCK_SPECIAL {
944
                display       "Keep all RedBoot FLASH data blocks locked."
945
                flavor        bool
946
                default_value 1
947
                active_if     { CYGHWR_IO_FLASH_BLOCK_LOCKING != 0 }
948
                description "
949
                  When this option is enabled, RedBoot will keep configuration
950
                  data and the FIS directory blocks implicitly locked.  While
951
                  this is somewhat safer, it does add overhead during updates."
952
            }
953
 
954
            cdl_option CYGSEM_REDBOOT_FIS_CRC_CHECK {
955
                display       "Use CRC checksums on FIS images."
956
                flavor        bool
957
                default_value 1
958
                requires      CYGPKG_CRC
959
                description "
960
                  When this option is enabled, RedBoot will use CRC checksums
961
                  when reading and writing flash images."
962
            }
963
 
964
            cdl_interface CYGINT_REDBOOT_ARM_FLASH_SIB_SUPPORTED {
965
                display       "ARM FLASH drivers support SIB flash block structure"
966
                active_if     CYGPKG_HAL_ARM
967
                description   "This interface is implemented by a flash driver
968
                               to indicate that it supports the ARM SIB flash
969
                               block structure"
970
            }
971
 
972
            cdl_option CYGHWR_REDBOOT_ARM_FLASH_SIB {
973
                display       "Use ARM SIB flash block structure"
974
                flavor        bool
975
                active_if     CYGINT_REDBOOT_ARM_FLASH_SIB_SUPPORTED
976
                default_value 1
977
                description "
978
                  This option is used to interpret ARM Flash System
979
                  information blocks."
980
            }
981
        }
982
 
983
        cdl_component CYGSEM_REDBOOT_FLASH_CONFIG {
984
            display       "Keep RedBoot configuration data in FLASH"
985
            flavor        bool
986
            default_value { CYGPKG_IO_FLASH != 0 }
987
            compile       fconfig.c
988
            description "
989
              When this option is enabled, RedBoot will keep configuration
990
              data in a separate block of FLASH memory.  This data will
991
              include such items as the node IP address or startup scripts."
992
 
993
            cdl_option CYGNUM_REDBOOT_FLASH_CONFIG_SIZE {
994
                display       "Length of configuration data in FLASH"
995
                flavor        data
996
                default_value 4096
997
                description "
998
                  This option is used to control the amount of memory and FLASH
999
                  to be used for configuration options (persistent storage)."
1000
            }
1001
 
1002
            cdl_option CYGHWR_REDBOOT_FLASH_CONFIG_MEDIA {
1003
                display       "Style of media used for persistent data storage"
1004
                flavor        data
1005
                legal_values  { "FLASH" "EEPROM" }
1006
                default_value { "FLASH" }
1007
                description "
1008
                  Persistent data storage can either be held in 'norma' FLASH
1009
                  or some other device (represented by the 'EEPROM' choice).
1010
                  The different styles utilize different access methods."
1011
            }
1012
 
1013
            cdl_option CYGSEM_REDBOOT_FLASH_COMBINED_FIS_AND_CONFIG {
1014
                display       "Merged config data and FIS directory"
1015
                flavor        bool
1016
                active_if     { CYGOPT_REDBOOT_FIS && \
1017
                               (CYGHWR_REDBOOT_FLASH_CONFIG_MEDIA == "FLASH") }
1018
                default_value 1
1019
                description "
1020
                  If this option is set, then the FIS directory and FLASH
1021
                  configuration database will be stored in the same physical
1022
                  FLASH block."
1023
            }
1024
 
1025
            cdl_option CYGNUM_REDBOOT_FLASH_CONFIG_BLOCK {
1026
                display       "Which block of flash to use"
1027
                flavor         data
1028
                default_value  (-2)
1029
                description "
1030
                  Which block of flash should hold the configuration
1031
                  information. Positive numbers are absolute block numbers.
1032
                  Negative block numbers count backwards from the last block.
1033
                  eg 2 means block 2, -2 means the last but one block."
1034
            }
1035
 
1036
            cdl_option CYGSEM_REDBOOT_FLASH_ALIASES {
1037
                display       "Support simple macros/aliases in FLASH"
1038
                flavor        bool
1039
                default_value 1
1040
                description "
1041
                  This option is used to allow support for simple text-based
1042
                  macros (aliases).  These aliases are kept in the FLASH
1043
                  configuration data (persistent storage)."
1044
            }
1045
 
1046
            cdl_option CYGNUM_REDBOOT_FLASH_STRING_SIZE {
1047
                display       "Length of strings in FLASH configuration data"
1048
                flavor        data
1049
                default_value 128
1050
                description "
1051
                  This option is used to control the amount of memory
1052
                  and FLASH to be used for string configuration
1053
                  options (persistent storage)."
1054
            }
1055
 
1056
            cdl_option CYGNUM_REDBOOT_FLASH_SCRIPT_SIZE {
1057
                display       "Length of configuration script(s) in FLASH"
1058
                flavor        data
1059
                default_value 512
1060
                description "
1061
                  This option is used to control the amount of memory and
1062
                  FLASH to be used for configuration options (persistent
1063
                  storage)."
1064
            }
1065
 
1066
            cdl_option CYGSEM_REDBOOT_FLASH_CONFIG_READONLY_FALLBACK {
1067
                display       "Fallback to read-only FLASH configuration"
1068
                flavor        bool
1069
                default_value { (CYGHWR_REDBOOT_FLASH_CONFIG_MEDIA == "FLASH") }
1070
                description "
1071
                  This option will cause the configuration information to
1072
                  revert to the readonly information stored in the FLASH.
1073
                  The option only takes effect after
1074
                    1) the config_ok flag has been set to be true,
1075
                       indicating that at one time the copy in RAM was valid;
1076
                  and
1077
                    2) the information in RAM has been verified to be invalid"
1078
 
1079
            }
1080
        }
1081
 
1082
        cdl_component CYGPKG_REDBOOT_FILEIO {
1083
            display       "Allow RedBoot to support fileio"
1084
            flavor        bool
1085
            default_value 1
1086
            active_if     CYGPKG_IO_FILEIO
1087
            requires      CYGPKG_IO
1088
            description   "
1089
              If this option is enabled then RedBoot will provide commands
1090
              to load files from fileio file systems such as JFFS2."
1091
            compile -library=libextras.a fs/fileio.c
1092
 
1093
            cdl_option CYGBLD_REDBOOT_FILEIO_WITH_LS {
1094
                display       "Include an ls command"
1095
                flavor        bool
1096
                default_value 1
1097
                description   "
1098
                   If this option is enabled a simple ls command will be
1099
                   included in redboot so the contents of a directory
1100
                   can be listed"
1101
            }
1102
        }
1103
 
1104
        cdl_component CYGPKG_REDBOOT_DISK {
1105
            display       "Allow RedBoot to support disks"
1106
            flavor        bool
1107
            default_value 1
1108
            description   "
1109
              If this option is enabled then RedBoot will provide commands
1110
              to load disk files."
1111
 
1112
            cdl_option CYGSEM_REDBOOT_DISK {
1113
                display   "Include Redboot commands for disk access"
1114
                default_value { CYGINT_REDBOOT_DISK_DRIVERS != 0 }
1115
                compile -library=libextras.a fs/disk.c
1116
            }
1117
 
1118
            cdl_interface CYGINT_REDBOOT_DISK_DRIVERS {
1119
                display  "Hardware drivers for disk-type devices"
1120
            }
1121
 
1122
            cdl_option CYGNUM_REDBOOT_MAX_DISKS {
1123
                display       "Maximum number of supported disks"
1124
                flavor        data
1125
                default_value 4
1126
                description "
1127
                  This option controls the number of disks supported by
1128
                  RedBoot."
1129
            }
1130
 
1131
            cdl_option CYGNUM_REDBOOT_MAX_PARTITIONS {
1132
                display       "Maximum number of partitions per disk"
1133
                flavor        data
1134
                default_value 8
1135
                description "
1136
                  This option controls the maximum number of supported
1137
                  partitions per disk."
1138
            }
1139
 
1140
            cdl_component CYGSEM_REDBOOT_DISK_IDE {
1141
                display       "Support IDE disks."
1142
                flavor        bool
1143
                default_value 1
1144
                active_if     { CYGINT_HAL_PLF_IF_IDE != 0 }
1145
                description "
1146
                  When this option is enabled, RedBoot will support IDE disks."
1147
                compile -library=libextras.a fs/ide.c
1148
                implements    CYGINT_REDBOOT_DISK_DRIVERS
1149
 
1150
                cdl_option CYGSEM_REDBOOT_DISK_IDE_VMWARE {
1151
                    display       "Work with VMware virtual disks"
1152
                    flavor        bool
1153
                    default_value 0
1154
                    description "
1155
                        This option controls the disk driver behavior at
1156
                        ide-init"
1157
                }
1158
            }
1159
 
1160
            cdl_component CYGSEM_REDBOOT_DISK_EXT2FS {
1161
                display       "Support Linux second extended filesystems."
1162
                flavor        bool
1163
                default_value 1
1164
                description "
1165
                  When this option is enabled, RedBoot will support EXT2
1166
                  filesystems."
1167
                compile -library=libextras.a fs/e2fs.c
1168
            }
1169
 
1170
            cdl_component CYGSEM_REDBOOT_DISK_ISO9660 {
1171
                display       "Support ISO9660 filesystems."
1172
                flavor        bool
1173
                calculated    0
1174
                description "
1175
                  When this option is enabled, RedBoot will support ISO9660
1176
                  filesystems."
1177
                compile -library=libextras.a fs/iso9660fs.c
1178
            }
1179
        }
1180
 
1181
        cdl_component CYGPKG_REDBOOT_BOOT_SCRIPT {
1182
            display         "Boot scripting"
1183
            doc             ref/persistent-state-flash.html
1184
            flavor          none
1185
            no_define
1186
            description     "
1187
                    This contains options related to RedBoot's boot script
1188
                    functionality."
1189
 
1190
            cdl_option CYGFUN_REDBOOT_BOOT_SCRIPT {
1191
                    display         "Boot scripting enabled"
1192
                    flavor          bool
1193
                    active_if       { CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT || \
1194
                                      CYGSEM_REDBOOT_FLASH_CONFIG }
1195
                    calculated      1
1196
                    description "
1197
                      This option controls whether RedBoot boot script
1198
                      functionality is enabled."
1199
            }
1200
 
1201
            cdl_option CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT {
1202
                    display         "Use default RedBoot boot script"
1203
                    flavor          booldata
1204
                    default_value   0
1205
                    description "
1206
                      If enabled, this option will tell RedBoot to use the
1207
                      value of this option as a default boot script."
1208
            }
1209
 
1210
            cdl_option CYGNUM_REDBOOT_BOOT_SCRIPT_TIMEOUT_RESOLUTION {
1211
                display       "Resolution (in ms) for script timeout value."
1212
                flavor        data
1213
                default_value 1000
1214
                description "
1215
                  This option controls the resolution of the script
1216
                  timeout.  The value is specified in milliseconds
1217
                  (ms), thus to have the script timeout be defined in
1218
                  terms of tenths of seconds, use 100."
1219
            }
1220
 
1221
            cdl_option CYGNUM_REDBOOT_BOOT_SCRIPT_DEFAULT_TIMEOUT {
1222
                display       "Script default timeout value"
1223
                flavor        data
1224
                default_value 10
1225
                description "
1226
                  This option is used to set the default timeout for startup
1227
                  scripts, when they are enabled."
1228
            }
1229
        }
1230
 
1231
        cdl_option CYGSEM_REDBOOT_RTC {
1232
            display      "Support RTC for time & date functions"
1233
            active_if    { CYGPKG_IO_WALLCLOCK }
1234
            default_value 1
1235
            description  "
1236
              When this option is enabled, RedBoot will support commands to
1237
              query and set the real time clock (time and date)"
1238
            compile -library=libextras.a time_date.cxx
1239
        }
1240
 
1241
        cdl_option CYGPRI_REDBOOT_ROM_MONITOR {
1242
            display      "Behave like a ROM monitor"
1243
            active_if    { CYG_HAL_STARTUP == "ROM" || \
1244
                           CYG_HAL_STARTUP == "ROMRAM" }
1245
            requires     CYGSEM_HAL_ROM_MONITOR
1246
            calculated   1
1247
            no_define
1248
            description  "
1249
              Enabling this option will allow RedBoot to provide ROM
1250
              monitor-style services to programs which it executes."
1251
        }
1252
 
1253
        cdl_component CYGSEM_REDBOOT_BSP_SYSCALLS {
1254
            display       "Allow RedBoot to handle GNUPro application 'syscalls'."
1255
            flavor        bool
1256
            default_value 0
1257
            description   "
1258
              If this option is enabled then RedBoot will install a
1259
              syscall handler to support debugging of applications
1260
              based on GNUPro newlib/bsp."
1261
 
1262
            cdl_option CYGSEM_REDBOOT_BSP_SYSCALLS_GPROF {
1263
                display "Support additional syscalls for 'gprof' profiling"
1264
                flavor  bool
1265
                default_value 1
1266
                active_if       { 0 < CYGINT_REDBOOT_BSP_SYSCALLS_GPROF_SUPPORT }
1267
                description "
1268
                    Support additional syscalls to support a periodic callback
1269
                    function for histogram-style profiling, and an enquire/set
1270
                    of the tick rate.
1271
                    The application must use the GNUPro newlib facilities
1272
                    to set this up."
1273
            }
1274
 
1275
            cdl_interface CYGINT_REDBOOT_BSP_SYSCALLS_GPROF_SUPPORT {
1276
                display "Does the HAL support 'gprof' profiling?"
1277
                no_define
1278
            }
1279
 
1280
            cdl_option CYGOPT_REDBOOT_BSP_SYSCALLS_EXIT_WITHOUT_TRAP {
1281
                display "Do not raise SIGTRAP when program exits"
1282
                default_value 0
1283
                description "
1284
                    For some (single shot) newlib based programs,
1285
                    exiting and returning a termination status may be
1286
                    the normal expected behavior."
1287
            }
1288
        }
1289
 
1290
        cdl_component CYGOPT_REDBOOT_FIS_ZLIB_COMMON_BUFFER {
1291
            display             "Use a common buffer for Zlib and FIS"
1292
            flavor              bool
1293
            active_if           { CYGBLD_BUILD_REDBOOT_WITH_ZLIB && \
1294
                              CYGOPT_REDBOOT_FIS }
1295
            default_value       0
1296
            description         "
1297
                Use a common memory buffer for both the zlib workspace
1298
                and FIS directory operations. This can save a substantial
1299
                amount of RAM, especially when flash sectors are large."
1300
 
1301
            cdl_option CYGNUM_REDBOOT_FIS_ZLIB_COMMON_BUFFER_SIZE {
1302
                display             "Size of Zlib/FIS common buffer"
1303
                flavor              data
1304
                default_value   0xc000
1305
                legal_values    0x4000 to 0x80000000
1306
                description     "
1307
                    Size of common buffer to allocate. Must be at least the
1308
                    size of one flash sector."
1309
            }
1310
        }
1311
 
1312
        cdl_component CYGMEM_REDBOOT_WORKSPACE_HEAP {
1313
            display             "Allocate heap in RedBoot workspace"
1314
            flavor              bool
1315
            active_if           CYGPKG_MEMALLOC
1316
            active_if           CYGPKG_MEMALLOC_MALLOC_ALLOCATORS
1317
            default_value       0
1318
            description         "
1319
                    If the MEMALLOC package is present, it usually allocates
1320
                    the whole of memory not used by the program to the heap.
1321
                    In RedBoot this is not a good idea, since we need space to
1322
                    load application programs. Setting this option causes RedBoot
1323
                    to allocate the heap at the top of RAM by reserving part of
1324
                    RedBoot's workspace memory, leaving the rest of memory free."
1325
 
1326
            cdl_option CYGMEM_REDBOOT_WORKSPACE_HEAP_SIZE {
1327
                display         "Size of RedBoot heap"
1328
                flavor          data
1329
                default_value   0x10000
1330
                legal_values    0x4000 to 0x80000000
1331
                description     "
1332
                    Size of RedBoot heap. This defines how much memory is to be
1333
                    allocated for the heap."
1334
            }
1335
        }
1336
 
1337
        cdl_option CYGNUM_REDBOOT_GETC_BUFFER {
1338
            display       "Buffer size in getc when loading images"
1339
            flavor        data
1340
            default_value { CYGPKG_REDBOOT_FILEIO ? 4096 : 256 }
1341
            description   "
1342
                When loading images a buffer is used between redboot and the
1343
                underlying storage medium, eg a filesystem, or a socket etc.
1344
                The size of this buffer can have a big impart on load speed."
1345
        }
1346
 
1347
    }
1348
}
1349
 
1350
# EOF redboot.cdl

powered by: WebSVN 2.1.0

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