Added TX25 bootsplash support
authorlothar <lothar>
Fri, 29 Oct 2010 12:16:21 +0000 (12:16 +0000)
committerlothar <lothar>
Fri, 29 Oct 2010 12:16:21 +0000 (12:16 +0000)
config/TX25-40x0.ecc [deleted file]
packages/hal/arm/mx25/karo/v1_0/cdl/hal_arm_tx25.cdl
packages/hal/arm/mx25/karo/v1_0/include/hal_platform_setup.h
packages/hal/arm/mx25/karo/v1_0/include/karo_tx25.h
packages/hal/arm/mx25/karo/v1_0/include/plf_mmap.h
packages/hal/arm/mx25/var/v2_0/include/hal_soc.h
packages/hal/arm/mx25/var/v2_0/src/cmds.c
packages/hal/arm/mx25/var/v2_0/src/soc_diag.c

diff --git a/config/TX25-40x0.ecc b/config/TX25-40x0.ecc
deleted file mode 100644 (file)
index 371788c..0000000
+++ /dev/null
@@ -1,10259 +0,0 @@
-# eCos saved configuration
-
-# ---- commands --------------------------------------------------------
-# This section contains information about the savefile format.
-# It should not be edited. Any modifications made to this section
-# may make it impossible for the configuration tools to read
-# the savefile.
-
-cdl_savefile_version 1;
-cdl_savefile_command cdl_savefile_version {};
-cdl_savefile_command cdl_savefile_command {};
-cdl_savefile_command cdl_configuration { description hardware template package };
-cdl_savefile_command cdl_package { value_source user_value wizard_value inferred_value };
-cdl_savefile_command cdl_component { value_source user_value wizard_value inferred_value };
-cdl_savefile_command cdl_option { value_source user_value wizard_value inferred_value };
-cdl_savefile_command cdl_interface { value_source user_value wizard_value inferred_value };
-
-# ---- toplevel --------------------------------------------------------
-# This section defines the toplevel configuration object. The only
-# values that can be changed are the name of the configuration and
-# the description field. It is not possible to modify the target,
-# the template or the set of packages simply by editing the lines
-# below because these changes have wide-ranging effects. Instead
-# the appropriate tools should be used to make such modifications.
-
-cdl_configuration eCos {
-    description "" ;
-
-    # These fields should not be modified.
-    hardware    tx25karo ;
-    template    redboot ;
-    package -hardware CYGPKG_HAL_ARM current ;
-    package -hardware CYGPKG_HAL_ARM_MX25 current ;
-    package -hardware CYGPKG_HAL_ARM_TX25KARO current ;
-    package -template CYGPKG_HAL current ;
-    package -template CYGPKG_INFRA current ;
-    package -template CYGPKG_REDBOOT current ;
-    package -template CYGPKG_ISOINFRA current ;
-    package -template CYGPKG_LIBC_STRING current ;
-    package -template CYGPKG_CRC current ;
-    package -hardware CYGPKG_IO_ETH_DRIVERS current ;
-    package -hardware CYGPKG_DEVS_ETH_ARM_TX25 current ;
-    package -hardware CYGPKG_DEVS_ETH_FEC current ;
-    package -hardware CYGPKG_COMPRESS_ZLIB current ;
-    package -hardware CYGPKG_IO_FLASH current ;
-    package -hardware CYGPKG_DEVS_FLASH_ONMXC current ;
-    package -template CYGPKG_MEMALLOC current ;
-    package -template CYGPKG_DEVS_ETH_PHY current ;
-    package -template CYGPKG_LIBC_I18N current ;
-    package -template CYGPKG_LIBC_STDLIB current ;
-    package -template CYGPKG_ERROR current ;
-};
-
-# ---- conflicts -------------------------------------------------------
-# There are no conflicts.
-
-# ---- contents --------------------------------------------------------
-# >
-# >
-# Global build options
-# Global build options including control over
-# compiler flags, linker flags and choice of toolchain.
-#
-cdl_component CYGBLD_GLOBAL_OPTIONS {
-    # There is no associated value.
-
-    # The following properties are affected by this value
-};
-
-# >
-# Global command prefix
-# This option specifies the command prefix used when
-# invoking the build tools.
-#
-cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value arm-926ejs-linux-gnu
-    # value_source default
-    # Default value: arm-926ejs-linux-gnu
-};
-
-# Global compiler flags
-# This option controls the global compiler flags which are used to
-# compile all packages by default. Individual packages may define
-# options which override these global flags.
-#
-cdl_option CYGBLD_GLOBAL_CFLAGS {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "-mcpu=arm9 -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -O2 -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe"
-    # value_source default
-    # Default value: "-mcpu=arm9 -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -O2 -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe"
-    # Requires: CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS
-    #     CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS
-    #     Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -Werror") 
-    # option CYGBLD_INFRA_CFLAGS_PIPE
-    #     Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -pipe") 
-};
-
-# Global linker flags
-# This option controls the global linker flags. Individual
-# packages may define options which override these global flags.
-#
-cdl_option CYGBLD_GLOBAL_LDFLAGS {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "-Wl,--gc-sections -Wl,-static -O2 -nostdlib"
-    # value_source default
-    # Default value: "-Wl,--gc-sections -Wl,-static -O2 -nostdlib"
-};
-
-# Build common GDB stub ROM image
-# Unless a target board has specific requirements to the
-# stub implementation, it can use a simple common stub.
-# This option, which gets enabled by platform HALs as
-# appropriate, controls the building of the common stub.
-#
-cdl_option CYGBLD_BUILD_COMMON_GDB_STUBS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
-    #   --> 0
-};
-
-# <
-# ISO C library string functions
-# doc: ref/libc.html
-# This package provides string functions specified by the
-# ISO C standard - ISO/IEC 9899:1990.
-#
-cdl_package CYGPKG_LIBC_STRING {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-    # Requires:  CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER ==  "<cyg/libc/string/string.h>" 
-    #     CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == <cyg/libc/string/string.h>
-    #   --> 1
-    # Requires:  CYGBLD_ISO_STRING_MEMFUNCS_HEADER ==  "<cyg/libc/string/string.h>" 
-    #     CYGBLD_ISO_STRING_MEMFUNCS_HEADER == <cyg/libc/string/string.h>
-    #   --> 1
-    # Requires:  CYGBLD_ISO_STRING_STRFUNCS_HEADER ==  "<cyg/libc/string/string.h>" 
-    #     CYGBLD_ISO_STRING_STRFUNCS_HEADER == <cyg/libc/string/string.h>
-    #   --> 1
-    # Requires:  CYGBLD_ISO_STRTOK_R_HEADER ==  "<cyg/libc/string/string.h>" 
-    #     CYGBLD_ISO_STRTOK_R_HEADER == <cyg/libc/string/string.h>
-    #   --> 1
-    # Requires: CYGPKG_ISOINFRA
-    #     CYGPKG_ISOINFRA == current
-    #   --> 1
-};
-
-# >
-# Inline versions of <string.h> functions
-# This option chooses whether some of the
-# particularly simple string functions from
-# <string.h> are available as inline
-# functions. This may improve performance, and as
-# the functions are small, may even improve code
-# size.
-#
-cdl_option CYGIMP_LIBC_STRING_INLINES {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Optimize string functions for code size
-# This option tries to reduce string function
-# code size at the expense of execution speed. The
-# same effect can be produced if the code is
-# compiled with the -Os option to the compiler.
-#
-cdl_option CYGIMP_LIBC_STRING_PREFER_SMALL_TO_FAST {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Provide BSD compatibility functions
-# Enabling this option causes various compatibility functions
-# commonly found in the BSD UNIX operating system to be included.
-# These are functions such as bzero, bcmp, bcopy, bzero, strcasecmp,
-# strncasecmp, index, rindex and swab.
-#
-cdl_option CYGFUN_LIBC_STRING_BSD_FUNCS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 1
-    # Requires:  CYGBLD_ISO_STRING_BSD_FUNCS_HEADER ==  "<cyg/libc/string/bsdstring.h>" 
-    #     CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == <cyg/libc/string/bsdstring.h>
-    #   --> 1
-    # Requires: CYGINT_ISO_CTYPE
-    #     CYGINT_ISO_CTYPE == 1
-    #   --> 1
-};
-
-# strtok
-# These options control the behaviour of the
-# strtok() and strtok_r() string tokenization
-# functions.
-#
-cdl_component CYGPKG_LIBC_STRING_STRTOK {
-    # There is no associated value.
-};
-
-# >
-# Per-thread strtok()
-# This option controls whether the string function
-# strtok() has its state recorded on a per-thread
-# basis rather than global. If this option is
-# disabled, some per-thread space can be saved.
-# Note there is also a POSIX-standard strtok_r()
-# function to achieve a similar effect with user
-# support. Enabling this option will use one slot
-# of kernel per-thread data. You should ensure you
-# have enough slots configured for all your
-# per-thread data.
-#
-cdl_option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_KERNEL
-    #     CYGPKG_KERNEL (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: CYGVAR_KERNEL_THREADS_DATA
-    #     CYGVAR_KERNEL_THREADS_DATA (unknown) == 0
-    #   --> 0
-    # Requires: CYGVAR_KERNEL_THREADS_DATA
-    #     CYGVAR_KERNEL_THREADS_DATA (unknown) == 0
-    #   --> 0
-};
-
-# Tracing level
-# Trace verbosity level for debugging the <string.h>
-# functions strtok() and strtok_r(). Increase this
-# value to get additional trace output.
-#
-cdl_option CYGNUM_LIBC_STRING_STRTOK_TRACE_LEVEL {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Legal values: 0 to 1
-};
-
-# <
-# strdup
-# This option indicates whether strdup() is to be supported.
-#
-cdl_option CYGFUN_LIBC_STRING_STRDUP {
-    # ActiveIf constraint: CYGINT_ISO_MALLOC
-    #     CYGINT_ISO_MALLOC == 1
-    #   --> 1
-
-    # Calculated value: 1
-    # Flavor: bool
-    # Current value: 1
-};
-
-# C library string functions build options
-# Package specific build options including control over
-# compiler flags used only in building this package,
-# and details of which tests are built.
-#
-cdl_component CYGPKG_LIBC_STRING_OPTIONS {
-    # There is no associated value.
-};
-
-# >
-# Additional compiler flags
-# This option modifies the set of compiler flags for
-# building the C library. These flags are used in addition
-# to the set of global flags.
-#
-cdl_option CYGPKG_LIBC_STRING_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "-fno-rtti -Woverloaded-virtual"
-    # value_source default
-    # Default value: "-fno-rtti -Woverloaded-virtual"
-};
-
-# Suppressed compiler flags
-# This option modifies the set of compiler flags for
-# building the C library. These flags are removed from
-# the set of global flags if present.
-#
-cdl_option CYGPKG_LIBC_STRING_CFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -Wno-pointer-sign
-    # value_source default
-    # Default value: -Wno-pointer-sign
-};
-
-# C library string function tests
-# This option specifies the set of tests for the C library
-# string functions.
-#
-cdl_option CYGPKG_LIBC_STRING_TESTS {
-    # Calculated value:  "tests/memchr tests/memcmp1 tests/memcmp2 tests/memcpy1 tests/memcpy2 tests/memmove1 tests/memmove2 tests/memset tests/strcat1 tests/strcat2 tests/strchr tests/strcmp1 tests/strcmp2 tests/strcoll1 tests/strcoll2 tests/strcpy1 tests/strcpy2 tests/strcspn tests/strcspn tests/strlen tests/strncat1 tests/strncat2 tests/strncpy1 tests/strncpy2 tests/strpbrk tests/strrchr tests/strspn tests/strstr tests/strtok tests/strxfrm1 tests/strxfrm2" 
-    # Flavor: data
-    # Current_value: tests/memchr tests/memcmp1 tests/memcmp2 tests/memcpy1 tests/memcpy2 tests/memmove1 tests/memmove2 tests/memset tests/strcat1 tests/strcat2 tests/strchr tests/strcmp1 tests/strcmp2 tests/strcoll1 tests/strcoll2 tests/strcpy1 tests/strcpy2 tests/strcspn tests/strcspn tests/strlen tests/strncat1 tests/strncat2 tests/strncpy1 tests/strncpy2 tests/strpbrk tests/strrchr tests/strspn tests/strstr tests/strtok tests/strxfrm1 tests/strxfrm2
-};
-
-# <
-# <
-# Common ethernet support
-# doc: ref/io-eth-drv-generic.html
-# Platform independent ethernet drivers
-#
-cdl_package CYGPKG_IO_ETH_DRIVERS {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-
-    # The following properties are affected by this value
-    # component CYGPKG_REDBOOT_NETWORKING
-    #     ActiveIf: CYGPKG_IO_ETH_DRIVERS
-    # package CYGPKG_DEVS_ETH_ARM_TX25
-    #     ActiveIf: CYGPKG_IO_ETH_DRIVERS
-    # package CYGPKG_DEVS_ETH_FEC
-    #     ActiveIf: CYGPKG_IO_ETH_DRIVERS
-    # package CYGPKG_DEVS_ETH_PHY
-    #     ActiveIf: CYGPKG_IO_ETH_DRIVERS
-};
-
-# >
-# Network drivers
-#
-cdl_interface CYGHWR_NET_DRIVERS {
-    # Implemented by CYGPKG_DEVS_ETH_FEC, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-    # option CYGDAT_REDBOOT_DEFAULT_NETWORK_DEVICE
-    #     ActiveIf:  CYGHWR_NET_DRIVERS > 1 
-    # option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE
-    #     ActiveIf:  CYGHWR_NET_DRIVERS > 1 
-};
-
-# Driver supports multicast addressing
-# This interface defines whether or not a driver can handle
-# requests for multicast addressing.
-#
-cdl_interface CYGINT_IO_ETH_MULTICAST {
-    # Implemented by CYGPKG_DEVS_ETH_FEC, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-};
-
-# Support printing driver debug information
-# Selecting this option will include code to allow the driver to
-# print lots of information on diagnostic output such as full
-# packet dumps.
-#
-cdl_component CYGDBG_IO_ETH_DRIVERS_DEBUG {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# >
-# Driver debug output verbosity
-# The value of this option indicates the default verbosity
-# level of debugging output. 0 means no debugging output
-# is made by default. Higher values indicate higher verbosity.
-# The verbosity level may also be changed at run time by
-# changing the variable cyg_io_eth_net_debug.
-#
-cdl_option CYGDBG_IO_ETH_DRIVERS_DEBUG_VERBOSITY {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# <
-# Size of scatter-gather I/O lists
-# A scatter-gather list is used to pass requests to/from
-# the physical device driver.  This list can typically be
-# small, as the data is normally already packed into reasonable
-# chunks.
-#
-cdl_option CYGNUM_IO_ETH_DRIVERS_SG_LIST_SIZE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 32
-    # value_source default
-    # Default value: 32
-};
-
-# Support for standard eCos TCP/IP stack.
-#
-cdl_component CYGPKG_IO_ETH_DRIVERS_NET {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_NET
-    #     CYGPKG_NET (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires: CYGINT_ISO_STRING_STRFUNCS
-    #     CYGINT_ISO_STRING_STRFUNCS == 1
-    #   --> 1
-};
-
-# >
-# Warn when there are no more mbufs
-# Warnings about running out of mbufs are printed to the
-# diagnostic output channel via diag_printf() if this option
-# is enabled.  Mbufs are the network stack's basic dynamic
-# memory objects that hold all packets in transit; running
-# out is bad for performance but not fatal, not a crash.
-# You might want to turn off the warnings to preserve realtime
-# properties of the system even in extremis.
-#
-cdl_component CYGPKG_IO_ETH_DRIVERS_WARN_NO_MBUFS {
-    # This option is not active
-    # The parent CYGPKG_IO_ETH_DRIVERS_NET is not active
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Simulate network failures for testing
-# This package contains a suite of simulated failure modes
-# for the ethernet device layer, including dropping and/or
-# corrupting received packets, dropping packets queued for
-# transmission, and simulating a complete network break.
-# It requires the kernel as a source of time information.
-#
-cdl_component CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES {
-    # This option is not active
-    # The parent CYGPKG_IO_ETH_DRIVERS_NET is not active
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# >
-# Drop incoming packets (percentage)
-#
-cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_DROP_RX {
-    # This option is not active
-    # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is not active
-    # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled
-
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 1 10
-    # value_source default
-    # Default value: 1 10
-    # Legal values: 10 50 80
-};
-
-# Corrupt incoming packets (percentage)
-#
-cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_CORRUPT_RX {
-    # This option is not active
-    # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is not active
-    # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled
-
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 1 10
-    # value_source default
-    # Default value: 1 10
-    # Legal values: 10 50 80
-};
-
-# Drop outgoing packets (percentage)
-#
-cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_DROP_TX {
-    # This option is not active
-    # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is not active
-    # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled
-
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 1 10
-    # value_source default
-    # Default value: 1 10
-    # Legal values: 10 50 80
-};
-
-# Simulate a line cut from time to time
-# This option causes the system to drop all packets for a
-# short random period (10s of seconds), and then act
-# normally for up to 4 times that long.  This simulates your
-# sysadmin fiddling with plugs in the network switch
-# cupboard.
-#
-cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_LINE_CUT {
-    # This option is not active
-    # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is not active
-    # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# <
-# <
-# Support for stand-alone network stack.
-#
-cdl_component CYGPKG_IO_ETH_DRIVERS_STAND_ALONE {
-    # ActiveIf constraint: !CYGPKG_NET
-    #     CYGPKG_NET (unknown) == 0
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires: CYGINT_ISO_STRING_MEMFUNCS
-    #     CYGINT_ISO_STRING_MEMFUNCS == 1
-    #   --> 1
-};
-
-# >
-# Pass packets to an alternate stack
-# Define this to allow packets seen by this layer to be
-# passed on to the previous logical layer, i.e. when
-# stand-alone processing replaces system (eCos) processing.
-#
-cdl_option CYGSEM_IO_ETH_DRIVERS_PASS_PACKETS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  0 != CYGPKG_REDBOOT_NETWORKING 
-    #     CYGPKG_REDBOOT_NETWORKING == 1
-    #   --> 1
-};
-
-# Number of [network] buffers
-# This option is used to allocate space to buffer incoming network
-# packets.  These buffers are used to hold data until they can be
-# logically processed by higher layers.
-#
-cdl_option CYGNUM_IO_ETH_DRIVERS_NUM_PKT {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 4
-    # value_source default
-    # Default value: 4
-    # Legal values: 2 to 32
-};
-
-# Show driver warnings
-# Selecting this option will allows the stand-alone ethernet driver
-# to display warnings on the system console when incoming network
-# packets are being discarded due to lack of buffer space.
-#
-cdl_option CYGSEM_IO_ETH_DRIVERS_WARN {
-    # ActiveIf constraint: CYGPKG_REDBOOT
-    #     CYGPKG_REDBOOT == current
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# <
-# Support for lwIP network stack.
-#
-cdl_component CYGPKG_IO_ETH_DRIVERS_LWIP {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_NET_LWIP
-    #     CYGPKG_NET_LWIP (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires: !CYGPKG_NET
-    #     CYGPKG_NET (unknown) == 0
-    #   --> 1
-};
-
-# Interrupt support required
-# This interface is used to indicate to the low
-# level device drivers that interrupt driven operation
-# is required by higher layers.
-#
-cdl_interface CYGINT_IO_ETH_INT_SUPPORT_REQUIRED {
-    # Implemented by CYGPKG_IO_ETH_DRIVERS_NET, inactive, enabled
-    # Implemented by CYGPKG_IO_ETH_DRIVERS_LWIP, inactive, enabled
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-
-    # The following properties are affected by this value
-};
-
-# Common ethernet support build options
-#
-cdl_component CYGPKG_IO_ETH_DRIVERS_OPTIONS {
-    # There is no associated value.
-};
-
-# >
-# Additional compiler flags
-# This option modifies the set of compiler flags for
-# building the common ethernet support package. These flags are used in addition
-# to the set of global flags.
-#
-cdl_option CYGPKG_IO_ETH_DRIVERS_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "-D_KERNEL -D__ECOS"
-    # value_source default
-    # Default value: "-D_KERNEL -D__ECOS"
-};
-
-# <
-# Ethernet driver for Ka-Ro electronics TX25 processor module
-#
-cdl_package CYGPKG_DEVS_ETH_ARM_TX25 {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # ActiveIf constraint: CYGPKG_IO_ETH_DRIVERS
-    #     CYGPKG_IO_ETH_DRIVERS == current
-    #   --> 1
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-};
-
-# >
-# FEC ethernet driver required
-#
-cdl_interface CYGINT_DEVS_ETH_FEC_REQUIRED {
-    # Implemented by CYGPKG_DEVS_ETH_ARM_MXCBOARD_ETH0, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-    # package CYGPKG_DEVS_ETH_FEC
-    #     ActiveIf: CYGINT_DEVS_ETH_FEC_REQUIRED
-};
-
-# Ka-Ro TX25 ethernet port driver
-# This option includes the ethernet device driver for the
-# MXC Board port.
-#
-cdl_component CYGPKG_DEVS_ETH_ARM_MXCBOARD_ETH0 {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires: CYGSEM_REDBOOT_PLF_ESA_VALIDATE
-    #     CYGSEM_REDBOOT_PLF_ESA_VALIDATE == 1
-    #   --> 1
-    # Requires: CYGHWR_DEVS_ETH_PHY_LAN8700
-    #     CYGHWR_DEVS_ETH_PHY_LAN8700 == 1
-    #   --> 1
-};
-
-# >
-# Device name for the ETH0 ethernet driver
-# This option sets the name of the ethernet device.
-#
-cdl_option CYGDAT_DEVS_ETH_ARM_MXCBOARD_ETH0_NAME {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "\"eth0\""
-    # value_source default
-    # Default value: "\"eth0\""
-};
-
-# OUI part of MAC address
-# This option sets OUI part (manufacturer ID) of the MAC address
-# for validation.
-#
-cdl_option CYGDAT_DEVS_ETH_ARM_TX25KARO_OUI {
-    # ActiveIf constraint: CYGSEM_REDBOOT_PLF_ESA_VALIDATE
-    #     CYGSEM_REDBOOT_PLF_ESA_VALIDATE == 1
-    #   --> 1
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "{ 0x00, 0x0c, 0xc6 }"
-    # value_source default
-    # Default value: "{ 0x00, 0x0c, 0xc6 }"
-};
-
-# <
-# <
-# Driver for fast ethernet controller.
-# Driver for fast ethernet controller.
-#
-cdl_package CYGPKG_DEVS_ETH_FEC {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # ActiveIf constraint: CYGPKG_IO_ETH_DRIVERS
-    #     CYGPKG_IO_ETH_DRIVERS == current
-    #   --> 1
-    # ActiveIf constraint: CYGINT_DEVS_ETH_FEC_REQUIRED
-    #     CYGINT_DEVS_ETH_FEC_REQUIRED == 1
-    #   --> 1
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-};
-
-# >
-# MXC FEC ethernet driver build options
-#
-cdl_component CYGPKG_DEVS_ETH_FEC_OPTIONS {
-    # There is no associated value.
-};
-
-# >
-# Additional compiler flags
-# This option modifies the set of compiler flags for
-# building the Cirrus Logic ethernet driver package.
-# These flags are used in addition
-# to the set of global flags.
-#
-cdl_option CYGPKG_DEVS_ETH_FEC_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "-D_KERNEL -D__ECOS"
-    # value_source default
-    # Default value: "-D_KERNEL -D__ECOS"
-};
-
-# <
-# <
-# Ethernet transceiver (PHY) support
-# API for ethernet PHY devices
-#
-cdl_package CYGPKG_DEVS_ETH_PHY {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # ActiveIf constraint: CYGPKG_IO_ETH_DRIVERS
-    #     CYGPKG_IO_ETH_DRIVERS == current
-    #   --> 1
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT == 1
-    #   --> 1
-};
-
-# >
-# Enable driver debugging
-# Enables the diagnostic debug messages on the
-# console device.
-#
-cdl_option CYGDBG_DEVS_ETH_PHY {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Time period (seconds) to wait for auto-negotiation
-# The length of time to wait for auto-negotiation to complete
-# before giving up and declaring the link dead/missing.
-#
-cdl_option CYGINT_DEVS_ETH_PHY_AUTO_NEGOTIATION_TIME {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 5
-    # value_source default
-    # Default value: 5
-};
-
-# NSDP83847
-# Include support for National Semiconductor DP83847 DsPHYTER II
-#
-cdl_option CYGHWR_DEVS_ETH_PHY_DP83847 {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# AMD 79C874
-# Include support for AMD 79C874 NetPHY
-#
-cdl_option CYGHWR_DEVS_ETH_PHY_AM79C874 {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Intel LXT972
-# Include support for Intel LXT972xxx PHY
-#
-cdl_option CYGHWR_DEVS_ETH_PHY_INLXT972 {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# ICS 1890
-# Include support for ICS 1890 PHY
-#
-cdl_option CYGHWR_DEVS_ETH_PHY_ICS1890 {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# ICS 1892
-# Include support for ICS 1892 PHY
-#
-cdl_option CYGHWR_DEVS_ETH_PHY_ICS1892 {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# ICS 1893
-# Include support for ICS 1893 and 1893AF PHY
-#
-cdl_option CYGHWR_DEVS_ETH_PHY_ICS1893 {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Davicom DM9161A
-# Include support for the Davicom DM9161A PHY
-#
-cdl_option CYGHWR_DEVS_ETH_PHY_DM9161A {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Micrel KS8721
-# Include support for the Micrel KS8721 PHY
-#
-cdl_option CYGHWR_DEVS_ETH_PHY_KS8721 {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# SMSC LAN8700
-# Include support for SMSC LAN8700 NetPHY
-#
-cdl_option CYGHWR_DEVS_ETH_PHY_LAN8700 {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # The inferred value should not be edited directly.
-    inferred_value 1
-    # value_source inferred
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # component CYGPKG_DEVS_ETH_ARM_MXCBOARD_ETH0
-    #     Requires: CYGHWR_DEVS_ETH_PHY_LAN8700
-};
-
-# <
-# <
-# ISO C library internationalization functions
-# doc: ref/libc.html
-# This package provides internationalization functions specified by the
-# ISO C standard - ISO/IEC 9899:1990. These include locale-related
-# functionality and <ctype.h> functionality.
-#
-cdl_package CYGPKG_LIBC_I18N {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-    # Requires: CYGPKG_ISOINFRA
-    #     CYGPKG_ISOINFRA == current
-    #   --> 1
-};
-
-# >
-# Supported locales
-# These options determine which locales other than the "C" locale
-# are supported and hence contribute to the size of the executable.
-#
-cdl_component CYGPKG_LIBC_I18N_LOCALES {
-    # There is no associated value.
-};
-
-# >
-# Support for multiple locales required
-#
-cdl_interface CYGINT_LIBC_I18N_MB_REQUIRED {
-    # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_SJIS, active, disabled
-    # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_JIS, active, disabled
-    # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_EUCJP, active, disabled
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER ==  "<cyg/libc/i18n/mb.h>" 
-    #     CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER == 0
-    #   --> 0
-
-    # The following properties are affected by this value
-};
-
-# C-SJIS locale support
-# This option controls if the "C-SJIS" locale will be
-# supported by setlocale().  The locale is a hybrid locale
-# that is mostly the "C" locale with Japanese SJIS multibyte
-# support added.
-#
-cdl_option CYGFUN_LIBC_I18N_LOCALE_C_SJIS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
-    #     LegalValues:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff 
-    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
-    #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  
-};
-
-# C-JIS locale support
-# This option controls if the "C-JIS" locale will be
-# supported by setlocale().  The locale is a hybrid locale
-# that is mostly the "C" locale with Japanese JIS multibyte
-# support added.
-#
-cdl_option CYGFUN_LIBC_I18N_LOCALE_C_JIS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
-    #     LegalValues:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff 
-    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
-    #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  
-};
-
-# C-EUCJP locale support
-# This option controls if the "C-EUCJP" locale will be
-# supported by setlocale().  The locale is a hybrid locale
-# that is mostly the "C" locale with Japanese EUCJP multibyte
-# support added.
-#
-cdl_option CYGFUN_LIBC_I18N_LOCALE_C_EUCJP {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
-    #     LegalValues:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff 
-    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
-    #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  
-};
-
-# <
-# Newlib's ctype implementation
-# This option enables the implementation of the ctype functions
-# that comes with newlib. It is table driven and therefore
-# exhibits different performance characteristics. It also offers
-# a limited amount of binary compatibility
-# with newlib so that programs linked against newlib ctype/locale
-# do not need to be recompiled when linked with eCos.
-#
-cdl_option CYGPKG_LIBC_I18N_NEWLIB_CTYPE {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires:  CYGBLD_ISO_CTYPE_HEADER ==  "<cyg/libc/i18n/newlibctype.h>" 
-    #     CYGBLD_ISO_CTYPE_HEADER == <cyg/libc/i18n/ctype.inl>
-    #   --> 0
-};
-
-# Per-thread multibyte state
-# This option controls whether the multibyte character
-# handling functions mblen(), mbtowc(), and wctomb(),
-# have their state recorded on a per-thread
-# basis rather than global. If this option is
-# disabled, some per-thread space can be saved.
-# Enabling this option will use three slots
-# of kernel per-thread data. You should ensure you
-# have enough slots configured for all your
-# per-thread data.
-#
-cdl_option CYGSEM_LIBC_I18N_PER_THREAD_MB {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_KERNEL
-    #     CYGPKG_KERNEL (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value:  CYGVAR_KERNEL_THREADS_DATA != 0 
-    #     CYGVAR_KERNEL_THREADS_DATA (unknown) == 0
-    #   --> 0
-    # Requires: CYGVAR_KERNEL_THREADS_DATA
-    #     CYGVAR_KERNEL_THREADS_DATA (unknown) == 0
-    #   --> 0
-};
-
-# Size of locale name strings
-# This option controls the maximum size of
-# locale names and is used, among other things
-# to instantiate a static string used
-# as a return value from the
-# setlocale() function. When requesting the
-# current locale settings with LC_ALL, a string
-# must be constructed to contain this data, rather
-# than just returning a constant string. This
-# string data is stored in the static string.
-# This depends on the length of locale names,
-# hence this option. If just the C locale is
-# present, this option can be set as low as 2.
-#
-cdl_option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 2
-    # value_source default
-    # Default value:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  
-    #     CYGFUN_LIBC_I18N_LOCALE_C_EUCJP == 0
-    #     CYGFUN_LIBC_I18N_LOCALE_C_SJIS == 0
-    #     CYGFUN_LIBC_I18N_LOCALE_C_JIS == 0
-    #   --> 2
-    # Legal values:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff 
-    #     CYGFUN_LIBC_I18N_LOCALE_C_EUCJP == 0
-    #     CYGFUN_LIBC_I18N_LOCALE_C_SJIS == 0
-    #     CYGFUN_LIBC_I18N_LOCALE_C_JIS == 0
-};
-
-# Inline versions of <ctype.h> functions
-# This option chooses whether the simple character
-# classification and conversion functions (e.g.
-# isupper(), isalpha(), toupper(), etc.)
-# from <ctype.h> are available as inline
-# functions. This may improve performance and as
-# the functions are small, may even improve code
-# size.
-#
-cdl_option CYGIMP_LIBC_I18N_CTYPE_INLINES {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires:  CYGBLD_ISO_CTYPE_HEADER ==  "<cyg/libc/i18n/ctype.inl>" 
-    #     CYGBLD_ISO_CTYPE_HEADER == <cyg/libc/i18n/ctype.inl>
-    #   --> 1
-};
-
-# C library i18n functions build options
-# Package specific build options including control over
-# compiler flags used only in building this package,
-# and details of which tests are built.
-#
-cdl_component CYGPKG_LIBC_I18N_OPTIONS {
-    # There is no associated value.
-};
-
-# >
-# Additional compiler flags
-# This option modifies the set of compiler flags for
-# building the C library. These flags are used in addition
-# to the set of global flags.
-#
-cdl_option CYGPKG_LIBC_I18N_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "-fno-rtti -Woverloaded-virtual"
-    # value_source default
-    # Default value: "-fno-rtti -Woverloaded-virtual"
-};
-
-# Suppressed compiler flags
-# This option modifies the set of compiler flags for
-# building the C library. These flags are removed from
-# the set of global flags if present.
-#
-cdl_option CYGPKG_LIBC_I18N_CFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -Wno-pointer-sign
-    # value_source default
-    # Default value: -Wno-pointer-sign
-};
-
-# C library i18n function tests
-# This option specifies the set of tests for the C library
-# i18n functions.
-#
-cdl_option CYGPKG_LIBC_I18N_TESTS {
-    # Calculated value:  "tests/ctype tests/setlocale tests/i18nmb" 
-    # Flavor: data
-    # Current_value: tests/ctype tests/setlocale tests/i18nmb
-};
-
-# <
-# <
-# ISO C library general utility functions
-# doc: ref/libc.html
-# This package provides general utility functions in <stdlib.h>
-# as specified by the ISO C standard - ISO/IEC 9899:1990.
-#
-cdl_package CYGPKG_LIBC_STDLIB {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-    # Requires: CYGPKG_ISOINFRA
-    #     CYGPKG_ISOINFRA == current
-    #   --> 1
-    # Requires: CYGINT_ISO_CTYPE
-    #     CYGINT_ISO_CTYPE == 1
-    #   --> 1
-    # Requires: CYGINT_ISO_STRING_STRFUNCS
-    #     CYGINT_ISO_STRING_STRFUNCS == 1
-    #   --> 1
-};
-
-# >
-# Inline versions of <stdlib.h> functions
-# This option chooses whether some of the
-# particularly simple standard utility functions
-# from <stdlib.h> are available as inline
-# functions. This may improve performance, and as
-# the functions are small, may even improve code
-# size.
-#
-cdl_component CYGIMP_LIBC_STDLIB_INLINES {
-    # There is no associated value.
-};
-
-# >
-# abs() / labs()
-#
-cdl_option CYGIMP_LIBC_STDLIB_INLINE_ABS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires:  CYGBLD_ISO_STDLIB_ABS_HEADER ==  "<cyg/libc/stdlib/abs.inl>" 
-    #     CYGBLD_ISO_STDLIB_ABS_HEADER == <cyg/libc/stdlib/abs.inl>
-    #   --> 1
-};
-
-# div() / ldiv()
-#
-cdl_option CYGIMP_LIBC_STDLIB_INLINE_DIV {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires:  CYGBLD_ISO_STDLIB_DIV_HEADER ==  "<cyg/libc/stdlib/div.inl>" 
-    #     CYGBLD_ISO_STDLIB_DIV_HEADER == <cyg/libc/stdlib/div.inl>
-    #   --> 1
-};
-
-# atof() / atoi() / atol()
-#
-cdl_option CYGIMP_LIBC_STDLIB_INLINE_ATOX {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires:  CYGBLD_ISO_STDLIB_STRCONV_HEADER ==  "<cyg/libc/stdlib/atox.inl>" 
-    #     CYGBLD_ISO_STDLIB_STRCONV_HEADER == <cyg/libc/stdlib/atox.inl>
-    #   --> 1
-};
-
-# <
-# Random number generation
-# These options control the behaviour of the
-# functions rand(), srand() and rand_r()
-#
-cdl_component CYGPKG_LIBC_RAND {
-    # There is no associated value.
-};
-
-# >
-# Per-thread random seed
-# doc: ref/libc-thread-safety.html
-# This option controls whether the pseudo-random
-# number generation functions rand() and srand()
-# have their state recorded on a per-thread
-# basis rather than global. If this option is
-# disabled, some per-thread space can be saved.
-# Note there is also a POSIX-standard rand_r()
-# function to achieve a similar effect with user
-# support. Enabling this option will use one slot
-# of kernel per-thread data. You should ensure you
-# have enough slots configured for all your
-# per-thread data.
-#
-cdl_option CYGSEM_LIBC_PER_THREAD_RAND {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires: CYGVAR_KERNEL_THREADS_DATA
-    #     CYGVAR_KERNEL_THREADS_DATA (unknown) == 0
-    #   --> 0
-};
-
-# Random number seed
-# This selects the initial random number seed for
-# rand()'s pseudo-random number generator. For
-# strict ISO standard compliance, this should be 1,
-# as per section 7.10.2.2 of the standard.
-#
-cdl_option CYGNUM_LIBC_RAND_SEED {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Legal values: 0 to 0x7fffffff
-};
-
-# Tracing level
-# Trace verbosity level for debugging the rand(),
-# srand() and rand_r() functions. Increase this
-# value to get additional trace output.
-#
-cdl_option CYGNUM_LIBC_RAND_TRACE_LEVEL {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Legal values: 0 to 1
-};
-
-# Simplest implementation
-# This provides a very simple implementation of rand()
-# that does not perform well with randomness in the
-# lower significant bits. However it is exceptionally
-# fast. It uses the sample algorithm from the ISO C
-# standard itself.
-#
-cdl_option CYGIMP_LIBC_RAND_SIMPLEST {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Simple implementation #1
-# This provides a very simple implementation of rand()
-# based on the simplest implementation above. However
-# it does try to work around the lack of randomness
-# in the lower significant bits, at the expense of a
-# little speed.
-#
-cdl_option CYGIMP_LIBC_RAND_SIMPLE1 {
-    # Flavor: bool
-    user_value 0
-    # value_source user
-    # Default value: 1
-};
-
-# Knuth implementation #1
-# This implements a slightly more complex algorithm
-# published in Donald E. Knuth's Art of Computer
-# Programming Vol.2 section 3.6 (p.185 in the 3rd ed.).
-# This produces better random numbers than the
-# simplest approach but is slower.
-#
-cdl_option CYGIMP_LIBC_RAND_KNUTH1 {
-    # Flavor: bool
-    user_value 1
-    # value_source user
-    # Default value: 0
-};
-
-# <
-# Provides strtod()
-# This option allows use of the utility function
-# strtod() (and consequently atof()) to convert
-# from string to double precision floating point
-# numbers. Disabling this option removes the
-# dependency on the math library package.
-#
-cdl_option CYGFUN_LIBC_strtod {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value:  0 != CYGPKG_LIBM 
-    #     CYGPKG_LIBM (unknown) == 0
-    #   --> 0
-    # Requires: CYGPKG_LIBM
-    #     CYGPKG_LIBM (unknown) == 0
-    #   --> 0
-};
-
-# Provides long long conversion functions
-# Enabling this option will provide support for the strtoll(),
-# strtoull() and atoll() conversion functions, which are
-# the long long variants of the standard versions of these
-# functions. Supporting this requires extra code and compile
-# time.
-#
-cdl_option CYGFUN_LIBC_STDLIB_CONV_LONGLONG {
-    # Flavor: bool
-    user_value 0
-    # value_source user
-    # Default value: 1
-};
-
-# bsearch() tracing level
-# Trace verbosity level for debugging the <stdlib.h>
-# binary search function bsearch(). Increase this
-# value to get additional trace output.
-#
-cdl_option CYGNUM_LIBC_BSEARCH_TRACE_LEVEL {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Legal values: 0 to 1
-};
-
-# qsort() tracing level
-# Trace verbosity level for debugging the <stdlib.h>
-# quicksort function qsort(). Increase this value
-# to get additional trace output.
-#
-cdl_option CYGNUM_LIBC_QSORT_TRACE_LEVEL {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Legal values: 0 to 1
-};
-
-# C library stdlib build options
-# Package specific build options including control over
-# compiler flags used only in building this package,
-# and details of which tests are built.
-#
-cdl_component CYGPKG_LIBC_STDLIB_OPTIONS {
-    # There is no associated value.
-};
-
-# >
-# Additional compiler flags
-# 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_LIBC_STDLIB_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "-fno-rtti -Woverloaded-virtual"
-    # value_source default
-    # Default value: "-fno-rtti -Woverloaded-virtual"
-};
-
-# Suppressed compiler flags
-# This option modifies the set of compiler flags for
-# building this package. These flags are removed from
-# the set of global flags if present.
-#
-cdl_option CYGPKG_LIBC_STDLIB_CFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -Wno-pointer-sign
-    # value_source default
-    # Default value: -Wno-pointer-sign
-};
-
-# C library stdlib tests
-# This option specifies the set of tests for this package.
-#
-cdl_option CYGPKG_LIBC_STDLIB_TESTS {
-    # Calculated value:  "tests/abs tests/atoi tests/atol tests/bsearch tests/div tests/getenv tests/labs tests/ldiv tests/qsort tests/rand1 tests/rand2 tests/rand3 tests/rand4 tests/srand tests/strtol tests/strtoul" 
-    # Flavor: data
-    # Current_value: tests/abs tests/atoi tests/atol tests/bsearch tests/div tests/getenv tests/labs tests/ldiv tests/qsort tests/rand1 tests/rand2 tests/rand3 tests/rand4 tests/srand tests/strtol tests/strtoul
-};
-
-# <
-# <
-# <
-# eCos HAL
-# doc: ref/the-ecos-hardware-abstraction-layer.html
-# The eCos HAL package provide a porting layer for
-# higher-level parts of the system such as the kernel and the
-# C library. Each installation should have HAL packages for
-# one or more architectures, and for each architecture there
-# may be one or more supported platforms. It is necessary to
-# select one target architecture and one platform for that
-# architecture. There are also a number of configuration
-# options that are common to all HAL packages.
-#
-cdl_package CYGPKG_HAL {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-    # Requires: CYGPKG_INFRA
-    #     CYGPKG_INFRA == current
-    #   --> 1
-
-    # The following properties are affected by this value
-};
-
-# >
-# Platform-independent HAL options
-# A number of configuration options are common to most or all
-# HAL packages, for example options controlling how much state
-# should be saved during a context switch. The implementations
-# of these options will vary from architecture to architecture.
-#
-cdl_component CYGPKG_HAL_COMMON {
-    # There is no associated value.
-};
-
-# >
-# Provide eCos kernel support
-# The HAL can be configured to either support the full eCos
-# kernel, or to support only very simple applications which do
-# not require a full kernel. If kernel support is not required
-# then some of the startup, exception, and interrupt handling
-# code can be eliminated.
-#
-cdl_option CYGFUN_HAL_COMMON_KERNEL_SUPPORT {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: CYGPKG_KERNEL
-    #     CYGPKG_KERNEL (unknown) == 0
-    #   --> 0
-    # Requires: CYGPKG_KERNEL
-    #     CYGPKG_KERNEL (unknown) == 0
-    #   --> 0
-};
-
-# HAL exception support
-# When a processor exception occurs, for example an attempt to
-# execute an illegal instruction or to perform a divide by
-# zero, this exception may be handled in a number of different
-# ways. If the target system has gdb support then typically
-# the exception will be handled by gdb code. Otherwise if the
-# HAL exception support is enabled then the HAL will invoke a
-# routine deliver_exception(). Typically this routine will be
-# provided by the eCos kernel, but it is possible for
-# application code to provide its own implementation. If the
-# HAL exception support is not enabled and a processor
-# exception occurs then the behaviour of the system is
-# undefined.
-#
-cdl_option CYGPKG_HAL_EXCEPTIONS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: CYGPKG_KERNEL_EXCEPTIONS
-    #     CYGPKG_KERNEL_EXCEPTIONS (unknown) == 0
-    #   --> 0
-    # Requires: CYGPKG_KERNEL_EXCEPTIONS
-    #     CYGPKG_KERNEL_EXCEPTIONS (unknown) == 0
-    #   --> 0
-};
-
-# Stop calling constructors early
-# This option supports environments where some constructors
-# must be run in the context of a thread rather than at
-# simple system startup time. A boolean flag named
-# cyg_hal_stop_constructors is set to 1 when constructors
-# should no longer be invoked. It is up to some other
-# package to deal with the rest of the constructors.
-# In the current version this is only possible with the
-# C library.
-#
-cdl_option CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires: CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS
-    #     CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS (unknown) == 0
-    #   --> 0
-};
-
-# HAL uses the MMU and allows for CDL manipulation of it's use
-#
-cdl_interface CYGINT_HAL_SUPPORTS_MMU_TABLES {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # option CYGSEM_HAL_INSTALL_MMU_TABLES
-    #     ActiveIf: CYGINT_HAL_SUPPORTS_MMU_TABLES
-};
-
-# Install MMU tables.
-# This option controls whether this application installs
-# its own Memory Management Unit (MMU) tables, or relies on the
-# existing environment to run.
-#
-cdl_option CYGSEM_HAL_INSTALL_MMU_TABLES {
-    # This option is not active
-    # ActiveIf constraint: CYGINT_HAL_SUPPORTS_MMU_TABLES
-    #     CYGINT_HAL_SUPPORTS_MMU_TABLES == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  CYG_HAL_STARTUP != "RAM" 
-    #     CYG_HAL_STARTUP == ROMRAM
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGSEM_HAL_STATIC_MMU_TABLES
-    #     Requires: CYGSEM_HAL_INSTALL_MMU_TABLES
-};
-
-# Use static MMU tables.
-# This option defines an environment where any Memory
-# Management Unit (MMU) tables are constant.  Normally used by ROM
-# based environments, this provides a way to save RAM usage which
-# would otherwise be required for these tables.
-#
-cdl_option CYGSEM_HAL_STATIC_MMU_TABLES {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires: CYGSEM_HAL_INSTALL_MMU_TABLES
-    #     CYGSEM_HAL_INSTALL_MMU_TABLES == 0
-    #   --> 0
-};
-
-# Route diagnostic output to debug channel
-# If not inheriting the console setup from the ROM monitor,
-# it is possible to redirect diagnostic output to the debug
-# channel by enabling this option. Depending on the debugger
-# used it may also be necessary to select a mangler for the
-# output to be displayed by the debugger.
-#
-cdl_component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN {
-    # ActiveIf constraint: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE == 0
-    #   --> 1
-    # ActiveIf constraint:  CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx  || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG 
-    #     CYGPKG_HAL_ARM == current
-    #     CYGPKG_HAL_POWERPC_MPC8xx (unknown) == 0
-    #     CYGPKG_HAL_V85X_V850 (unknown) == 0
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_DIAG == 1
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0
-    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
-    #     CYG_HAL_STARTUP == ROMRAM
-    #   --> 0
-
-    # The following properties are affected by this value
-    # option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
-    #     Calculated:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN 
-};
-
-# >
-# Mangler used on diag output
-# It is sometimes necessary to mangle (encode) the
-# diag ASCII text output in order for it to show up at the
-# other end. In particular, GDB may silently ignore raw
-# ASCII text.
-#
-cdl_option CYGSEM_HAL_DIAG_MANGLER {
-    # This option is not active
-    # The parent CYGDBG_HAL_DIAG_TO_DEBUG_CHAN is disabled
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value GDB
-    # value_source default
-    # Default value: GDB
-    # Legal values: "GDB" "None"
-};
-
-# <
-# <
-# HAL interrupt handling
-# A number of configuration options related to interrupt
-# handling are common to most or all HAL packages, even though
-# the implementations will vary from architecture to
-# architecture.
-#
-cdl_component CYGPKG_HAL_COMMON_INTERRUPTS {
-    # There is no associated value.
-};
-
-# >
-# Use separate stack for interrupts
-# When an interrupt occurs this interrupt can be handled either
-# on the current stack or on a separate stack maintained by the
-# HAL. Using a separate stack requires a small number of extra
-# instructions in the interrupt handling code, but it has the
-# advantage that it is no longer necessary to allow extra space
-# in every thread stack for the interrupt handlers. The amount
-# of extra space required depends on the interrupt handlers
-# that are being used.
-#
-cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # package CYGPKG_REDBOOT
-    #     Requires:  CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK == 0 
-};
-
-# Interrupt stack size
-# This configuration option specifies the stack size in bytes
-# for the interrupt stack. Typically this should be a multiple
-# of 16, but the exact requirements will vary from architecture
-# to architecture. The interrupt stack serves two separate
-# purposes. It is used as the stack during system
-# initialization. In addition, if the interrupt system is
-# configured to use a separate stack then all interrupts will
-# be processed on this stack. The exact memory requirements
-# will vary from application to application, and will depend
-# heavily on whether or not other interrupt-related options,
-# for example nested interrupts, are enabled. On most targets,
-# in a configuration with no kernel this stack will also be
-# the stack used to invoke the application, and must obviously
-# be appropriately large in that case.
-#
-cdl_option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 32768
-    # value_source default
-    # Default value:  CYGPKG_KERNEL ? 4096 : 32768 
-    #     CYGPKG_KERNEL (unknown) == 0
-    #   --> 32768
-    # Legal values: 128 to 1048576
-};
-
-# Allow nested interrupts
-# When an interrupt occurs the HAL interrupt handling code can
-# either leave interrupts disabled for the duration of the
-# interrupt handling code, or by doing some extra work it can
-# reenable interrupts before invoking the interrupt handler and
-# thus allow nested interrupts to happen. If all the interrupt
-# handlers being used are small and do not involve any loops
-# then it is usually better to disallow nested interrupts.
-# However if any of the interrupt handlers are more complicated
-# than nested interrupts will usually be required.
-#
-cdl_option CYGSEM_HAL_COMMON_INTERRUPTS_ALLOW_NESTING {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Save minimum context on interrupt
-# The HAL interrupt handling code can exploit the calling conventions
-# defined for a given architecture to reduce the amount of state
-# that has to be saved. Generally this improves performance and
-# reduces code size. However it can make source-level debugging
-# more difficult.
-#
-cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
-    # component CYGBLD_BUILD_REDBOOT
-    #     Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
-};
-
-# Chain all interrupts together
-# Interrupts can be attached to vectors either singly, or be
-# chained together. The latter is necessary if there is no way
-# of discovering which device has interrupted without
-# inspecting the device itself. It can also reduce the amount
-# of RAM needed for interrupt decoding tables and code.
-#
-cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Ignore spurious [fleeting] interrupts
-# On some hardware, interrupt sources may not be de-bounced or
-# de-glitched.  Rather than try to handle these interrupts (no
-# handling may be possible), this option allows the HAL to simply
-# ignore them.  In most cases, if the interrupt is real it will
-# reoccur in a detectable form.
-#
-cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_IGNORE_SPURIOUS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# <
-# HAL context switch support
-# A number of configuration options related to thread contexts
-# are common to most or all HAL packages, even though the
-# implementations will vary from architecture to architecture.
-#
-cdl_component CYGPKG_HAL_COMMON_CONTEXT {
-    # There is no associated value.
-
-    # The following properties are affected by this value
-};
-
-# >
-# Use minimum thread context
-# The thread context switch code can exploit the calling
-# conventions defined for a given architecture to reduce the
-# amount of state that has to be saved during a context
-# switch. Generally this improves performance and reduces
-# code size. However it can make source-level debugging more
-# difficult.
-#
-cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
-    # component CYGBLD_BUILD_REDBOOT
-    #     Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
-};
-
-# <
-# Explicit control over cache behaviour
-# These options let the default behaviour of the caches 
-# be easily configurable.
-#
-cdl_component CYGPKG_HAL_CACHE_CONTROL {
-    # There is no associated value.
-};
-
-# >
-# Enable DATA cache on startup
-# Enabling this option will cause the data cache to be enabled
-# as soon as practicable when eCos starts up.  One would choose
-# to disable this if the data cache cannot safely be turned on,
-# such as a case where the cache(s) require additional platform
-# specific setup.
-#
-cdl_component CYGSEM_HAL_ENABLE_DCACHE_ON_STARTUP {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# >
-# DATA cache mode on startup
-# This option controls the mode the cache will be set to
-# when enabled on startup.
-#
-cdl_option CYGSEM_HAL_DCACHE_STARTUP_MODE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value COPYBACK
-    # value_source default
-    # Default value: COPYBACK
-    # Legal values:  "COPYBACK" "WRITETHRU" 
-};
-
-# <
-# Enable INSTRUCTION cache on startup
-# Enabling this option will cause the instruction cache to be enabled
-# as soon as practicable when eCos starts up.  One would choose
-# to disable this if the instruction cache cannot safely be turned on,
-# such as a case where the cache(s) require additional platform
-# specific setup.
-#
-cdl_option CYGSEM_HAL_ENABLE_ICACHE_ON_STARTUP {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# <
-# Source-level debugging support
-# If the source level debugger gdb is to be used for debugging
-# application code then it may be necessary to configure in support
-# for this in the HAL.
-#
-cdl_component CYGPKG_HAL_DEBUG {
-    # There is no associated value.
-};
-
-# >
-# Support for GDB stubs
-# The HAL implements GDB stubs for the target.
-#
-cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS {
-    # Implemented by CYGPKG_HAL_ARM_TX25KARO, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS
-    # option CYGBLD_BUILD_REDBOOT_WITH_GDB
-    #     ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS
-};
-
-# Include GDB stubs in HAL
-# This option causes a set of GDB stubs to be included into the
-# system. On some target systems the GDB support will be
-# provided by other means, for example by a ROM monitor. On
-# other targets, especially when building a ROM-booting system,
-# the necessary support has to go into the target library
-# itself. When GDB stubs are include in a configuration, HAL
-# serial drivers must also be included.
-#
-cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS {
-    # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS
-    #     CYGINT_HAL_DEBUG_GDB_STUBS == 1
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 0
-    # Requires: ! CYGSEM_HAL_USE_ROM_MONITOR
-    #     CYGSEM_HAL_USE_ROM_MONITOR == 0
-    #   --> 1
-    # Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
-    #     CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT == 0
-    #   --> 1
-    # Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
-    #     CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM == 0
-    #   --> 1
-    # Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_DIAG == 1
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
-    #     DefaultValue:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0
-    # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
-    #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
-    #     DefaultValue: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
-    #     ActiveIf:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
-    # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
-    #     DefaultValue:  !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
-    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
-    # option CYGBLD_BUILD_COMMON_GDB_STUBS
-    #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    # option CYGPKG_HAL_GDB_FILEIO
-    #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    # option CYGHWR_HAL_ARM_DUMP_EXCEPTIONS
-    #     Requires: !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    # option CYGHWR_HAL_ARM_ICE_THREAD_SUPPORT
-    #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    # option CYGBLD_BUILD_REDBOOT_WITH_GDB
-    #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-};
-
-# Support for external break support in GDB stubs
-# The HAL implements external break (or asynchronous interrupt)
-# in the GDB stubs for the target.
-#
-cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS_BREAK {
-    # Implemented by CYGPKG_HAL_ARM_TX25KARO, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-    # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
-    #     ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
-};
-
-# Include GDB external break support for stubs
-# This option causes the GDB stub to add a serial interrupt handler
-# which will listen for GDB break packets. This lets you stop the
-# target asynchronously when using GDB, usually by hitting Control+C
-# or pressing the STOP button. This option differs from
-# CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT in that it is used when
-# GDB stubs are present.
-#
-cdl_option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT {
-    # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
-    #     CYGINT_HAL_DEBUG_GDB_STUBS_BREAK == 1
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
-    #   --> 0
-    # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
-    #   --> 0
-
-    # The following properties are affected by this value
-    # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
-    #     Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
-    # option CYGOPT_HAL_ARM_SYSCALL_GPROF_SUPPORT
-    #     ActiveIf:  CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT || CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT 
-    # option CYGBLD_BUILD_REDBOOT_WITH_GDB
-    #     Requires: CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
-};
-
-# Platform does not support CTRLC
-#
-cdl_interface CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
-    #     ActiveIf:  CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 
-};
-
-# Include GDB external break support when no stubs
-# This option adds an interrupt handler for the GDB serial line
-# which will listen for GDB break packets. This lets you stop the
-# target asynchronously when using GDB, usually by hitting Control+C
-# or pressing the STOP button. This option differs from
-# CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT in that it is used when the GDB
-# stubs are NOT present.
-#
-cdl_option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT {
-    # This option is not active
-    # ActiveIf constraint:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
-    #     CYGSEM_HAL_USE_ROM_MONITOR == 0
-    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
-    #   --> 0
-    # ActiveIf constraint:  CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 
-    #     CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
-    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
-    #   --> 1
-    # Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
-    #     CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGOPT_HAL_ARM_SYSCALL_GPROF_SUPPORT
-    #     ActiveIf:  CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT || CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT 
-    # component CYGBLD_BUILD_REDBOOT
-    #     Requires: ! CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
-};
-
-# Include GDB multi-threading debug support
-# This option enables some extra HAL code which is needed
-# to support multi-threaded source level debugging.
-#
-cdl_option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT {
-    # ActiveIf constraint:  CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT 
-    #     CYGSEM_HAL_ROM_MONITOR == 1
-    #     CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT (unknown) == 0
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # option CYGHWR_HAL_ARM_ICE_THREAD_SUPPORT
-    #     Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
-    # option CYGBLD_BUILD_REDBOOT_WITH_THREADS
-    #     Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
-};
-
-# Number of times to retry sending a $O packet
-# This option controls the number of attempts that eCos programs
-# will make to send a $O packet to a host GDB process.  If it is
-# set non-zero, then the target process will attempt to resend the
-# $O packet data up to this number of retries.  Caution: use of
-# this option is not recommended as it can thoroughly confuse the
-# host GDB process.
-#
-cdl_option CYGNUM_HAL_DEBUG_GDB_PROTOCOL_RETRIES {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Timeout period for GDB packets
-# This option controls the time (in milliseconds) that eCos programs
-# will wait for a response when sending packets to a host GDB process.
-# If this time elapses, then the packet will be resent, up to some
-# maximum number of times (CYGNUM_HAL_DEBUG_GDB_PROTOCOL_RETRIES).
-#
-cdl_option CYGNUM_HAL_DEBUG_GDB_PROTOCOL_TIMEOUT {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 500
-    # value_source default
-    # Default value: 500
-};
-
-# Location of CRC32 table
-# The stubs use a 1 kilobyte CRC table that can either be pregenerated
-# and placed in ROM, or generated at runtime in RAM. Depending on
-# your memory constraints, one of these options may be better.
-#
-cdl_option CYGDBG_HAL_CRCTABLE_LOCATION {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value RAM
-    # value_source default
-    # Default value: RAM
-    # Legal values: "ROM" "RAM"
-};
-
-# <
-# ROM monitor support
-# Support for ROM monitors can be built in to your application. 
-# It may also be relevant to build your application as a ROM monitor
-# itself. Such options are contained here if relevant for your chosen
-# platform. The options and ROM monitors available to choose are
-# platform-dependent.
-#
-cdl_component CYGPKG_HAL_ROM_MONITOR {
-    # There is no associated value.
-
-    # The following properties are affected by this value
-};
-
-# >
-# Target has virtual vector support
-#
-cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT {
-    # Implemented by CYGPKG_HAL_ARM_TX25KARO, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-    # component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
-    #     ActiveIf: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
-};
-
-# Target supports baud rate control via vectors
-# Whether this target supports the __COMMCTL_GETBAUD
-# and __COMMCTL_SETBAUD virtual vector comm control operations.
-#
-cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT {
-    # Implemented by CYGPKG_HAL_ARM_MX25, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-    # option CYGSEM_REDBOOT_VARIABLE_BAUD_RATE
-    #     ActiveIf: CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT
-};
-
-# Enable use of virtual vector calling interface
-# Virtual vector support allows the HAL to let the ROM
-# monitor handle certain operations. The virtual vector table
-# defines a calling interface between applications running in
-# RAM and the ROM monitor.
-#
-cdl_component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT {
-    # ActiveIf constraint: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
-    #     CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT == 1
-    #   --> 1
-
-    # Calculated value: 1
-    # Flavor: bool
-    # Current value: 1
-
-    # The following properties are affected by this value
-    # component CYGBLD_BUILD_REDBOOT
-    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
-    # package CYGPKG_DEVS_ETH_PHY
-    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
-};
-
-# >
-# Inherit console settings from ROM monitor
-# When this option is set, the application will inherit
-# the console as set up by the ROM monitor. This means
-# that the application will use whatever channel and
-# mangling style was used by the ROM monitor when
-# the application was launched.
-#
-cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE {
-    # This option is not active
-    # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR
-    #     CYGSEM_HAL_USE_ROM_MONITOR == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value:  !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
-    #   --> 0
-
-    # The following properties are affected by this value
-    # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
-    #     ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
-    # option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
-    #     Calculated:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN 
-};
-
-# Debug channel is configurable
-# This option is a configuration hint - it is enabled
-# when the HAL initialization code will make use
-# of the debug channel configuration option.
-#
-cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE {
-    # Calculated value:  CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
-    # Flavor: bool
-    # Current value: 1
-
-    # The following properties are affected by this value
-    # option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL
-    #     ActiveIf: CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
-};
-
-# Console channel is configurable
-# This option is a configuration hint - it is enabled
-# when the HAL initialization code will make use
-# of the console channel configuration option.
-#
-cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE {
-    # Calculated value:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN 
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE == 0
-    #     CYGDBG_HAL_DIAG_TO_DEBUG_CHAN == 0
-    # Flavor: bool
-    # Current value: 1
-
-    # The following properties are affected by this value
-    # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL
-    #     ActiveIf: CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
-};
-
-# Initialize whole of virtual vector table
-# This option will cause the whole of the virtual
-# vector table to be initialized with dummy values on
-# startup. When this option is enabled, all the
-# options below must also be enabled - or the
-# table would be empty when the application
-# launches.
-# On targets where older ROM monitors without
-# virtual vector support may still be in use, it is
-# necessary for RAM applictions to initialize the
-# table (since all HAL diagnostics and debug IO
-# happens via the table).
-#
-cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR 
-    #     CYG_HAL_STARTUP == ROMRAM
-    #     CYGSEM_HAL_USE_ROM_MONITOR == 0
-    #   --> 1
-    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET == 1
-    #   --> 1
-    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US == 1
-    #   --> 1
-    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE == 1
-    #   --> 1
-    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA == 1
-    #   --> 1
-    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
-    #     ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
-    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_VERSION
-    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
-    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
-    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
-    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
-    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
-};
-
-# Claim virtual vector table entries by default
-# By default most virtual vectors will be claimed by
-# RAM startup configurations, meaning that the RAM
-# application will provide the services. The
-# exception is COMMS support (HAL
-# diagnostics/debugging IO) which is left in the
-# control of the ROM monitor.
-# The reasoning behind this is to get as much of the
-# code exercised during regular development so it
-# is known to be working the few times a new ROM
-# monitor or a ROM production configuration is used
-# - COMMS are excluded only by necessity in order to
-# avoid breaking an existing debugger connections
-# (there may be ways around this).
-# For production RAM configurations this option can
-# be switched off, causing the appliction to rely on
-# the ROM monitor for these services, thus
-# saving some space.
-# Individual vectors may also be left unclaimed,
-# controlled by the below options (meaning that the
-# associated service provided by the ROM monitor
-# will be used).
-#
-cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT {
-    # This option is not active
-    # ActiveIf constraint: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
-    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
-    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
-    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
-    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-};
-
-# Claim reset virtual vectors
-# This option will cause the reset and kill_by_reset
-# virtual vectors to be claimed.
-#
-cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
-    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
-};
-
-# Claim version virtual vectors
-# This option will cause the version
-# virtual vectors to be claimed.
-#
-cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_VERSION {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE 
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
-    #   --> 1
-};
-
-# Claim delay_us virtual vector
-# This option will cause the delay_us
-# virtual vector to be claimed.
-#
-cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
-    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
-};
-
-# Claim cache virtual vectors
-# This option will cause the cache virtual vectors
-# to be claimed.
-#
-cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
-    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
-};
-
-# Claim data virtual vectors
-# This option will cause the data virtual vectors
-# to be claimed. At present there is only one, used
-# by the RedBoot ethernet driver to share diag output.
-#
-cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
-    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
-};
-
-# Claim comms virtual vectors
-# This option will cause the communication tables
-# that are part of the virtual vectors mechanism to
-# be claimed. Note that doing this may cause an
-# existing ROM monitor communication connection to
-# be closed. For this reason, the option is disabled
-# per default for normal application
-# configurations.
-#
-cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
-    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
-    #     DefaultValue:  !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
-    # option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
-    #     Calculated:  CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
-    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
-};
-
-# Do diagnostic IO via virtual vector table
-# All HAL IO happens via the virtual vector table / comm
-# tables when those tables are supported by the HAL.
-# If so desired, the low-level IO functions can
-# still be provided by the RAM application by
-# enabling the CLAIM_COMMS option.
-#
-cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_DIAG {
-    # Calculated value: 1
-    # Flavor: bool
-    # Current value: 1
-
-    # The following properties are affected by this value
-    # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
-    #     ActiveIf:  CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx  || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG 
-    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
-};
-
-# <
-# Behave as a ROM monitor
-# Enable this option if this program is to be used as a ROM monitor,
-# i.e. applications will be loaded into RAM on the TX25 module, and this
-# ROM monitor may process exceptions or interrupts generated from the
-# application. This enables features such as utilizing a separate
-# interrupt stack when exceptions are generated.
-#
-cdl_option CYGSEM_HAL_ROM_MONITOR {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # The inferred value should not be edited directly.
-    inferred_value 1
-    # value_source inferred
-    # Default value: 0
-    # Requires:  CYG_HAL_STARTUP == "ROM" || CYG_HAL_STARTUP == "ROMRAM" 
-    #     CYG_HAL_STARTUP == ROMRAM
-    #     CYG_HAL_STARTUP == ROMRAM
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGBLD_ARM_ENABLE_THUMB_INTERWORK
-    #     DefaultValue:  (CYGHWR_THUMB || CYGSEM_HAL_ROM_MONITOR) 
-    # option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
-    #     ActiveIf:  CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT 
-    # option CYGPRI_REDBOOT_ROM_MONITOR
-    #     Requires: CYGSEM_HAL_ROM_MONITOR
-};
-
-# Work with a ROM monitor
-# Support can be enabled for different varieties of ROM monitor.
-# This support changes various eCos semantics such as the encoding
-# of diagnostic output, or the overriding of hardware interrupt
-# vectors.
-# Firstly there is "Generic" support which prevents the HAL
-# from overriding the hardware vectors that it does not use, to
-# instead allow an installed ROM monitor to handle them. This is
-# the most basic support which is likely to be common to most
-# implementations of ROM monitor.
-# "GDB_stubs" provides support when GDB stubs are included in
-# the ROM monitor or boot ROM.
-#
-cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value:  CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 
-    #     CYG_HAL_STARTUP == ROMRAM
-    #   --> 0 0
-    # Legal values:  "Generic" "GDB_stubs" 
-    # Requires:  CYG_HAL_STARTUP == "RAM" 
-    #     CYG_HAL_STARTUP == ROMRAM
-    #   --> 0
-
-    # The following properties are affected by this value
-    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     Requires: ! CYGSEM_HAL_USE_ROM_MONITOR
-    # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
-    #     ActiveIf:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
-    #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
-    #     DefaultValue:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR 
-};
-
-# <
-# Platform defined I/O channels.
-# Platforms which provide additional I/O channels can implement
-# this interface, indicating that the function plf_if_init()
-# needs to be called.
-#
-cdl_interface CYGINT_HAL_PLF_IF_INIT {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-};
-
-# Platform IDE I/O support.
-# Platforms which provide IDE controllers can implement
-# this interface, indicating that IDE I/O macros are
-# available.
-#
-cdl_interface CYGINT_HAL_PLF_IF_IDE {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # component CYGSEM_REDBOOT_DISK_IDE
-    #     ActiveIf:  CYGINT_HAL_PLF_IF_IDE != 0 
-};
-
-# File I/O operations via GDB
-# This option enables support for various file I/O
-# operations using the GDB remote protocol to communicate
-# with GDB. The operations are then performed on the
-# debugging host by proxy. These operations are only
-# currently available by using a system call interface
-# to RedBoot. This may change in the future.
-#
-cdl_option CYGPKG_HAL_GDB_FILEIO {
-    # This option is not active
-    # ActiveIf constraint: CYGSEM_REDBOOT_BSP_SYSCALLS
-    #     CYGSEM_REDBOOT_BSP_SYSCALLS == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
-    #   --> 0
-};
-
-# Build Compiler sanity checking tests
-# Enabling this option causes compiler tests to be built.
-#
-cdl_option CYGPKG_HAL_BUILD_COMPILER_TESTS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # component CYGPKG_HAL_TESTS
-    #     Calculated:   "tests/context tests/basic"
-    #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")
-    #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")
-    #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "") 
-};
-
-# Common HAL tests
-# This option specifies the set of tests for the common HAL.
-#
-cdl_component CYGPKG_HAL_TESTS {
-    # Calculated value:   "tests/context tests/basic"
-    #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")
-    #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")
-    #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "") 
-    #     CYGINT_HAL_TESTS_NO_CACHES == 0
-    #     CYGPKG_HAL_BUILD_COMPILER_TESTS == 0
-    #     CYGVAR_KERNEL_COUNTERS_CLOCK (unknown) == 0
-    # Flavor: data
-    # Current_value: tests/context tests/basic tests/cache tests/intr
-};
-
-# >
-# Interface for cache presence
-# Some architectures and/or platforms do not have caches. By
-# implementing this interface, these can disable the various
-# cache-related tests.
-#
-cdl_interface CYGINT_HAL_TESTS_NO_CACHES {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-
-    # The following properties are affected by this value
-    # component CYGPKG_HAL_TESTS
-    #     Calculated:   "tests/context tests/basic"
-    #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")
-    #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")
-    #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "") 
-};
-
-# <
-# ARM architecture
-# The ARM architecture HAL package provides generic
-# support for this processor architecture. It is also
-# necessary to select a specific target platform HAL
-# package.
-#
-cdl_package CYGPKG_HAL_ARM {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-
-    # The following properties are affected by this value
-    # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
-    #     ActiveIf:  CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx  || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG 
-    # interface CYGINT_REDBOOT_ARM_FLASH_SIB_SUPPORTED
-    #     ActiveIf: CYGPKG_HAL_ARM
-};
-
-# >
-# The CPU architecture supports THUMB mode
-#
-cdl_interface CYGINT_HAL_ARM_THUMB_ARCH {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # option CYGHWR_THUMB
-    #     ActiveIf:  CYGINT_HAL_ARM_THUMB_ARCH != 0 
-    # option CYGBLD_ARM_ENABLE_THUMB_INTERWORK
-    #     ActiveIf:  CYGINT_HAL_ARM_THUMB_ARCH != 0 
-};
-
-# Enable Thumb instruction set
-# Enable use of the Thumb instruction set.
-#
-cdl_option CYGHWR_THUMB {
-    # This option is not active
-    # ActiveIf constraint:  CYGINT_HAL_ARM_THUMB_ARCH != 0 
-    #     CYGINT_HAL_ARM_THUMB_ARCH == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # option CYGBLD_ARM_ENABLE_THUMB_INTERWORK
-    #     DefaultValue:  (CYGHWR_THUMB || CYGSEM_HAL_ROM_MONITOR) 
-};
-
-# Enable Thumb interworking compiler option
-# This option controls the use of -mthumb-interwork in the
-# compiler flags. It defaults enabled in Thumb or ROM monitor
-# configurations, but can be overridden for reduced memory
-# footprint where interworking is not a requirement.
-#
-cdl_option CYGBLD_ARM_ENABLE_THUMB_INTERWORK {
-    # This option is not active
-    # ActiveIf constraint:  CYGINT_HAL_ARM_THUMB_ARCH != 0 
-    #     CYGINT_HAL_ARM_THUMB_ARCH == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  (CYGHWR_THUMB || CYGSEM_HAL_ROM_MONITOR) 
-    #     CYGHWR_THUMB == 0
-    #     CYGSEM_HAL_ROM_MONITOR == 1
-    #   --> 1
-};
-
-# The platform and architecture supports Big Endian operation
-#
-cdl_interface CYGINT_HAL_ARM_BIGENDIAN {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # option CYGHWR_HAL_ARM_BIGENDIAN
-    #     ActiveIf:  CYGINT_HAL_ARM_BIGENDIAN != 0 
-};
-
-# Use big-endian mode
-# Use the CPU in big-endian mode.
-#
-cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
-    # This option is not active
-    # ActiveIf constraint:  CYGINT_HAL_ARM_BIGENDIAN != 0 
-    #     CYGINT_HAL_ARM_BIGENDIAN == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# The platform uses a processor with an ARM7 core
-#
-cdl_interface CYGINT_HAL_ARM_ARCH_ARM7 {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # option CYGHWR_HAL_ARM_CPU_FAMILY
-    #     LegalValues:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" : ""
-    #                             "" 
-    # option CYGHWR_HAL_ARM_CPU_FAMILY
-    #     DefaultValue:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : 
-    #                              (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : 
-    #                              (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : 
-    #                              (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" :
-    #                              "unknown" 
-};
-
-# The platform uses a processor with an ARM9 core
-#
-cdl_interface CYGINT_HAL_ARM_ARCH_ARM9 {
-    # Implemented by CYGPKG_HAL_ARM_MX25, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-    # option CYGHWR_HAL_ARM_CPU_FAMILY
-    #     LegalValues:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" : ""
-    #                             "" 
-    # option CYGHWR_HAL_ARM_CPU_FAMILY
-    #     DefaultValue:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : 
-    #                              (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : 
-    #                              (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : 
-    #                              (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" :
-    #                              "unknown" 
-};
-
-# The platform uses a processor with a StrongARM core
-#
-cdl_interface CYGINT_HAL_ARM_ARCH_STRONGARM {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # option CYGHWR_HAL_ARM_CPU_FAMILY
-    #     LegalValues:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" : ""
-    #                             "" 
-    # option CYGHWR_HAL_ARM_CPU_FAMILY
-    #     DefaultValue:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : 
-    #                              (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : 
-    #                              (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : 
-    #                              (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" :
-    #                              "unknown" 
-};
-
-# The platform uses a processor with a XScale core
-#
-cdl_interface CYGINT_HAL_ARM_ARCH_XSCALE {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # option CYGHWR_HAL_ARM_CPU_FAMILY
-    #     LegalValues:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" : ""
-    #                             "" 
-    # option CYGHWR_HAL_ARM_CPU_FAMILY
-    #     DefaultValue:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : 
-    #                              (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : 
-    #                              (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : 
-    #                              (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" :
-    #                              "unknown" 
-};
-
-# ARM CPU family
-# It is possible to optimize code for different
-# ARM CPU families. This option selects which CPU to
-# optimize for on boards that support multiple CPU types.
-#
-cdl_option CYGHWR_HAL_ARM_CPU_FAMILY {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ARM9
-    # value_source default
-    # Default value:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : 
-    #                              (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : 
-    #                              (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : 
-    #                              (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" :
-    #                              "unknown" 
-    #     CYGINT_HAL_ARM_ARCH_ARM7 == 0
-    #     CYGINT_HAL_ARM_ARCH_ARM9 == 1
-    #     CYGINT_HAL_ARM_ARCH_STRONGARM == 0
-    #     CYGINT_HAL_ARM_ARCH_XSCALE == 0
-    #   --> ARM9
-    # Legal values:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : ""
-    #                             (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" : ""
-    #                             "" 
-    #     CYGINT_HAL_ARM_ARCH_ARM7 == 0
-    #     CYGINT_HAL_ARM_ARCH_ARM9 == 1
-    #     CYGINT_HAL_ARM_ARCH_STRONGARM == 0
-    #     CYGINT_HAL_ARM_ARCH_XSCALE == 0
-};
-
-# Provide diagnostic dump for exceptions
-# Print messages about hardware exceptions, including
-# raw exception frame dump and register contents.
-#
-cdl_option CYGHWR_HAL_ARM_DUMP_EXCEPTIONS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires: !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
-    #   --> 1
-};
-
-# Process all exceptions with the eCos application
-# Normal RAM-based programs which do not include GDB stubs 
-# defer processing of the illegal instruction exception to GDB.
-# Setting this options allows the program to explicitly handle
-# the illegal instruction exception itself.  Note: this will
-# prevent the use of GDB to debug the application as breakpoints
-# will no longer work.
-#
-cdl_option CYGIMP_HAL_PROCESS_ALL_EXCEPTIONS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Support GDB thread operations via ICE/Multi-ICE
-# Allow GDB to get thread information via the ICE/Multi-ICE
-# connection.
-#
-cdl_option CYGHWR_HAL_ARM_ICE_THREAD_SUPPORT {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
-    #   --> 0
-    # Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
-    #     CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1
-    #   --> 1
-    # Requires: CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT
-    #     CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT (unknown) == 0
-    #   --> 0
-};
-
-# Support for 'gprof' callbacks
-# The ARM HAL provides the macro for 'gprof' callbacks from RedBoot
-# to acquire the interrupt-context PC and SP, when this option is
-# active.
-#
-cdl_option CYGOPT_HAL_ARM_SYSCALL_GPROF_SUPPORT {
-    # This option is not active
-    # ActiveIf constraint: CYGSEM_REDBOOT_BSP_SYSCALLS
-    #     CYGSEM_REDBOOT_BSP_SYSCALLS == 0
-    #   --> 0
-    # ActiveIf constraint:  CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT || CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT 
-    #     CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT == 0
-    #     CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0
-    #   --> 0
-
-    # Calculated value: 1
-    # Flavor: bool
-    # Current value: 1
-};
-
-# Accept exceptions and irq's occurring in user mode
-# For standalone Redboot based programs running in user mode.
-#
-cdl_option CYGOPT_HAL_ARM_WITH_USER_MODE {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Preserve svc spsr before returning to svc mode
-# This option secures exception and breakpoint processing
-# triggered during execution of application specific SWI
-# handlers.
-#
-cdl_option CYGOPT_HAL_ARM_PRESERVE_SVC_SPSR {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Linker script
-#
-cdl_option CYGBLD_LINKER_SCRIPT {
-    # Calculated value:  "src/arm.ld" 
-    # Flavor: data
-    # Current_value: src/arm.ld
-};
-
-# Implementations of hal_arm_mem_real_region_top()
-#
-cdl_interface CYGINT_HAL_ARM_MEM_REAL_REGION_TOP {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-};
-
-# Freescale SoC architecture
-# This HAL variant package provides generic
-# support for the Freescale SoC. It is also
-# necessary to select a specific target platform HAL
-# package.
-#
-cdl_package CYGPKG_HAL_ARM_MX25 {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-
-    # The following properties are affected by this value
-};
-
-# >
-# mDDR/DDR2 support
-# When this option is enabled, it indicates support
-# for Mobile DDR on the MX25 3stack CPU board.  mDDR
-# was used on TO1.0 boards.  Subsequent boards use
-# DDR2 memory.
-#
-cdl_option CYGHWR_MX25_MDDR {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Processor clock rate
-# The processor can run at various frequencies.
-# These values are expressed in KHz.  Note that there are
-# several steppings of the rate to run at different
-# maximum frequencies.  Check the specs to make sure that your
-# particular processor can run at the rate you select here.
-#
-cdl_option CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK {
-    # This option is not active
-    # ActiveIf constraint:  CYG_HAL_STARTUP == "ROM" 
-    #     CYG_HAL_STARTUP == ROMRAM
-    #   --> 0
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 150000
-    # value_source default
-    # Default value:  CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT ?
-    #                             CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT : 150000
-    #     CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT (unknown) == 0
-    #     CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT (unknown) == 0
-    #   --> 150000
-    # Legal values: 150000 200000
-};
-
-# Real-time clock constants
-#
-cdl_component CYGNUM_HAL_RTC_CONSTANTS {
-    # There is no associated value.
-};
-
-# >
-# Real-time clock numerator
-#
-cdl_option CYGNUM_HAL_RTC_NUMERATOR {
-    # Calculated value: 1000000000
-    # Flavor: data
-    # Current_value: 1000000000
-};
-
-# Real-time clock denominator
-# This option selects the heartbeat rate for the real-time clock.
-# The rate is specified in ticks per second.  Change this value
-# with caution - too high and your system will become saturated
-# just handling clock interrupts, too low and some operations
-# such as thread scheduling may become sluggish.
-#
-cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 100
-    # value_source default
-    # Default value: 100
-
-    # The following properties are affected by this value
-    # option CYGNUM_HAL_RTC_PERIOD
-    #     Calculated: (3686400/CYGNUM_HAL_RTC_DENOMINATOR)
-};
-
-# Real-time clock period
-#
-cdl_option CYGNUM_HAL_RTC_PERIOD {
-    # Calculated value: (3686400/CYGNUM_HAL_RTC_DENOMINATOR)
-    #     CYGNUM_HAL_RTC_DENOMINATOR == 100
-    # Flavor: data
-    # Current_value: 36864
-};
-
-# <
-# UART1 available as diagnostic/debug channel
-# The chip has multiple serial channels which may be
-# used for different things on different platforms.  This
-# interface allows a platform to indicate that the specified
-# serial port can be used as a diagnostic and/or debug channel.
-#
-cdl_interface CYGHWR_HAL_ARM_SOC_UART1 {
-    # Implemented by CYGPKG_HAL_ARM_TX25KARO, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-};
-
-# UART2 available as diagnostic/debug channel
-# The chip has multiple serial channels which may be
-# used for different things on different platforms.  This
-# interface allows a platform to indicate that the specified
-# serial port can be used as a diagnostic and/or debug channel.
-#
-cdl_interface CYGHWR_HAL_ARM_SOC_UART2 {
-    # Implemented by CYGPKG_HAL_ARM_TX25KARO, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-};
-
-# UART3 available as diagnostic/debug channel
-# The chip has multiple serial channels which may be
-# used for different things on different platforms.  This
-# interface allows a platform to indicate that the specified
-# serial port can be used as a diagnostic and/or debug channel.
-#
-cdl_interface CYGHWR_HAL_ARM_SOC_UART3 {
-    # Implemented by CYGPKG_HAL_ARM_TX25KARO, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-};
-
-# UART4 available as diagnostic/debug channel
-# The chip has multiple serial channels which may be
-# used for different things on different platforms.  This
-# interface allows a platform to indicate that the specified
-# serial port can be used as a diagnostic and/or debug channel.
-#
-cdl_interface CYGHWR_HAL_ARM_SOC_UART4 {
-    # Implemented by CYGPKG_HAL_ARM_TX25KARO, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-};
-
-# UART5 available as diagnostic/debug channel
-# The chip has multiple serial channels which may be
-# used for different things on different platforms.  This
-# interface allows a platform to indicate that the specified
-# serial port can be used as a diagnostic and/or debug channel.
-#
-cdl_interface CYGHWR_HAL_ARM_SOC_UART5 {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-};
-
-# Ka-Ro TX25 module
-# This HAL platform package provides generic
-# support for the Ka-Ro electronics TX25 module.
-#
-cdl_package CYGPKG_HAL_ARM_TX25KARO {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-    # Requires: CYGINT_ISO_CTYPE
-    #     CYGINT_ISO_CTYPE == 1
-    #   --> 1
-    # Requires: CYGBLD_BUILD_REDBOOT == 1
-    #     CYGBLD_BUILD_REDBOOT == 1
-    #   --> 1
-};
-
-# >
-# Startup type
-# The only startup type allowed is ROMRAM, since this will allow
-# the program to exist in ROM, but be copied to RAM during startup
-# which is required to boot from NAND flash.
-#
-cdl_component CYG_HAL_STARTUP {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ROMRAM
-    # value_source default
-    # Default value: ROMRAM
-    # Legal values:  "ROMRAM" 
-
-    # The following properties are affected by this value
-    # option CYGSEM_HAL_ROM_MONITOR
-    #     Requires:  CYG_HAL_STARTUP == "ROM" || CYG_HAL_STARTUP == "ROMRAM" 
-    # option CYGSEM_HAL_ROM_MONITOR
-    #     Requires:  CYG_HAL_STARTUP == "ROM" || CYG_HAL_STARTUP == "ROMRAM" 
-    # option CYGSEM_HAL_USE_ROM_MONITOR
-    #     DefaultValue:  CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 
-    # option CYGSEM_HAL_USE_ROM_MONITOR
-    #     Requires:  CYG_HAL_STARTUP == "RAM" 
-    # option CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK
-    #     ActiveIf:  CYG_HAL_STARTUP == "ROM" 
-    # option CYGSEM_HAL_INSTALL_MMU_TABLES
-    #     DefaultValue:  CYG_HAL_STARTUP != "RAM" 
-    # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
-    #     DefaultValue:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0
-    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
-    #     DefaultValue:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR 
-    # option CYGBLD_BUILD_REDBOOT_WITH_THREADS
-    #     ActiveIf:  CYG_HAL_STARTUP != "RAM" 
-    # option CYGPRI_REDBOOT_ROM_MONITOR
-    #     ActiveIf:  CYG_HAL_STARTUP == "ROM" ||  CYG_HAL_STARTUP == "ROMRAM" 
-    # option CYGPRI_REDBOOT_ROM_MONITOR
-    #     ActiveIf:  CYG_HAL_STARTUP == "ROM" ||  CYG_HAL_STARTUP == "ROMRAM" 
-};
-
-# Diagnostic serial port baud rate
-# This option selects the baud rate used for the console port.
-# Note: this should match the value chosen for the GDB port if the
-# console and GDB port are the same.
-#
-cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 115200
-    # value_source default
-    # Default value: 115200
-    # Legal values: 9600 19200 38400 57600 115200
-};
-
-# GDB serial port baud rate
-# This option selects the baud rate used for the GDB port.
-# Note: this should match the value chosen for the console port if the
-# console and GDB port are the same.
-#
-cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_BAUD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 115200
-    # value_source default
-    # Default value: 115200
-    # Legal values: 9600 19200 38400 57600 115200
-};
-
-# Number of communication channels on the TX25
-#
-cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS {
-    # Calculated value: 3
-    # Flavor: data
-    # Current_value: 3
-
-    # The following properties are affected by this value
-    # option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL
-    #     LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
-    # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT
-    #     LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
-    # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL
-    #     LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
-};
-
-# Debug serial port
-# The TX25 provides access to three serial ports. This option
-# chooses which port will be used to connect to a host
-# running GDB.
-#
-cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL {
-    # ActiveIf constraint: CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
-    #     CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE == 1
-    #   --> 1
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
-    #     CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 3
-};
-
-# Default console channel.
-#
-cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT {
-    # Calculated value: 0
-    # Flavor: data
-    # Current_value: 0
-    # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
-    #     CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 3
-
-    # The following properties are affected by this value
-    # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL
-    #     DefaultValue: CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT
-};
-
-# Console serial port
-# The TX25 provides access to three serial ports. This option
-# chooses which port will be used for console output.
-#
-cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL {
-    # ActiveIf constraint: CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
-    #     CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE == 1
-    #   --> 1
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT
-    #     CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT == 0
-    #   --> 0
-    # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
-    #     CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 3
-};
-
-# Ka-Ro electronics TX25 module build options
-# Package specific build options including control over
-# compiler flags used only in building this package,
-# and details of which tests are built.
-#
-cdl_component CYGPKG_HAL_ARM_TX25_OPTIONS {
-    # There is no associated value.
-    # Requires:  CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 
-    #     CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0
-    #   --> 1
-};
-
-# >
-# SDRAM size
-# This option specifies the SDRAM size of the TX25 module.
-#
-cdl_option CYGNUM_HAL_ARM_TX25_SDRAM_SIZE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0x04000000
-    # value_source default
-    # Default value: 0x04000000
-    # Legal values:  0x02000000 0x04000000 0x08000000 
-};
-
-# Enable low level debugging with LED
-# This option enables low level debugging by blink codes
-# of the LED on STK5.
-#
-cdl_option CYGOPT_HAL_ARM_TX25_DEBUG {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value:  false 
-    #     false (unknown) == 0
-    #   --> 0
-};
-
-# Additional compiler flags
-# This option modifies the set of compiler flags for
-# building the TX25 HAL. These flags are used in addition
-# to the set of global flags.
-#
-cdl_option CYGPKG_HAL_ARM_TX25_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ""
-    # value_source default
-    # Default value: ""
-};
-
-# Suppressed compiler flags
-# This option modifies the set of compiler flags for
-# building the TX25 HAL. These flags are removed from
-# the set of global flags if present.
-#
-cdl_option CYGPKG_HAL_ARM_TX25_CFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ""
-    # value_source default
-    # Default value: ""
-};
-
-# <
-# Memory layout
-#
-cdl_component CYGHWR_MEMORY_LAYOUT {
-    # Calculated value:  "arm_tx25_romram" 
-    # Flavor: data
-    # Current_value: arm_tx25_romram
-};
-
-# >
-# Memory layout linker script fragment
-#
-cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
-    # Calculated value:  "<pkgconf/mlt_arm_tx25_romram.ldi>" 
-    # Flavor: data
-    # Current_value: <pkgconf/mlt_arm_tx25_romram.ldi>
-};
-
-# Memory layout header file
-#
-cdl_option CYGHWR_MEMORY_LAYOUT_H {
-    # Calculated value:  "<pkgconf/mlt_arm_tx25_romram.h>" 
-    # Flavor: data
-    # Current_value: <pkgconf/mlt_arm_tx25_romram.h>
-};
-
-# <
-# <
-# <
-# <
-# <
-# Infrastructure
-# Common types and useful macros.
-# Tracing and assertion facilities.
-# Package startup options.
-#
-cdl_package CYGPKG_INFRA {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-
-    # The following properties are affected by this value
-    # package CYGPKG_HAL
-    #     Requires: CYGPKG_INFRA
-    # component CYGBLD_BUILD_REDBOOT
-    #     Requires: CYGPKG_INFRA
-};
-
-# >
-# Asserts & Tracing
-# The eCos source code contains a significant amount of
-# internal debugging support, in the form of assertions and
-# tracing.
-# Assertions check at runtime that various conditions are as
-# expected; if not, execution is halted.
-# Tracing takes the form of text messages that are output
-# whenever certain events occur, or whenever functions are
-# called or return.
-# The most important property of these checks and messages is
-# that they are not required for the program to run.
-# It is prudent to develop software with assertions enabled,
-# but disable them when making a product release, thus
-# removing the overhead of that checking.
-# It is possible to enable assertions and tracing
-# independently.
-# There are also options controlling the exact behaviour of
-# the assertion and tracing facilities, thus giving users
-# finer control over the code and data size requirements.
-#
-cdl_component CYGPKG_INFRA_DEBUG {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # option CYGNUM_INFRA_EMPTY_DELETE_THRESHOLD
-    #     ActiveIf: CYGPKG_INFRA_DEBUG
-};
-
-# >
-# Use asserts
-# If this option is defined, asserts in the code are tested.
-# Assert functions (CYG_ASSERT()) are defined in
-# 'include/cyg/infra/cyg_ass.h' within the 'install' tree.
-# If it is not defined, these result in no additional
-# object code and no checking of the asserted conditions.
-#
-cdl_component CYGDBG_USE_ASSERTS {
-    # This option is not active
-    # The parent CYGPKG_INFRA_DEBUG is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL 
-    #     CYGINT_INFRA_DEBUG_TRACE_IMPL == 0
-    #   --> 0
-
-    # The following properties are affected by this value
-    # option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG
-    #     Requires: CYGDBG_USE_ASSERTS
-    # option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG
-    #     DefaultValue:  0 != CYGDBG_USE_ASSERTS 
-};
-
-# >
-# Preconditions
-# This option allows individual control of preconditions.
-# A precondition is one type of assert, which it is
-# useful to control separately from more general asserts.
-# The function is CYG_PRECONDITION(condition,msg).
-#
-cdl_option CYGDBG_INFRA_DEBUG_PRECONDITIONS {
-    # This option is not active
-    # The parent CYGDBG_USE_ASSERTS is not active
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Postconditions
-# This option allows individual control of postconditions.
-# A postcondition is one type of assert, which it is
-# useful to control separately from more general asserts.
-# The function is CYG_POSTCONDITION(condition,msg).
-#
-cdl_option CYGDBG_INFRA_DEBUG_POSTCONDITIONS {
-    # This option is not active
-    # The parent CYGDBG_USE_ASSERTS is not active
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Loop invariants
-# This option allows individual control of loop invariants.
-# A loop invariant is one type of assert, which it is
-# useful to control separately from more general asserts,
-# particularly since a loop invariant is typically evaluated
-# a great many times when used correctly.
-# The function is CYG_LOOP_INVARIANT(condition,msg).
-#
-cdl_option CYGDBG_INFRA_DEBUG_LOOP_INVARIANTS {
-    # This option is not active
-    # The parent CYGDBG_USE_ASSERTS is not active
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Use assert text
-# All assertions within eCos contain a text message
-# which should give some information about the condition
-# being tested.
-# These text messages will end up being embedded in the
-# application image and hence there is a significant penalty
-# in terms of image size.
-# It is possible to suppress the use of these messages by
-# disabling this option.
-# This results in smaller code size, but there is less
-# human-readable information if an assertion actually gets
-# triggered.
-#
-cdl_option CYGDBG_INFRA_DEBUG_ASSERT_MESSAGE {
-    # This option is not active
-    # The parent CYGDBG_USE_ASSERTS is not active
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# <
-# Use tracing
-# If this option is defined, tracing operations
-# result in output or logging, depending on other options.
-# This may have adverse effects on performance, if the time
-# taken to output message overwhelms the available CPU
-# power or output bandwidth.
-# Trace functions (CYG_TRACE()) are defined in
-# 'include/cyg/infra/cyg_trac.h' within the 'install' tree.
-# If it is not defined, these result in no additional
-# object code and no trace information.
-#
-cdl_component CYGDBG_USE_TRACING {
-    # This option is not active
-    # The parent CYGPKG_INFRA_DEBUG is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL 
-    #     CYGINT_INFRA_DEBUG_TRACE_IMPL == 0
-    #   --> 0
-
-    # The following properties are affected by this value
-    # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE
-    #     ActiveIf: CYGDBG_USE_TRACING
-    # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP
-    #     ActiveIf: CYGDBG_USE_TRACING
-    # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT
-    #     ActiveIf: CYGDBG_USE_TRACING
-    # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT
-    #     ActiveIf: CYGDBG_USE_TRACING
-    # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT
-    #     ActiveIf: CYGDBG_USE_TRACING
-};
-
-# >
-# Trace function reports
-# This option allows individual control of
-# function entry/exit tracing, independent of
-# more general tracing output.
-# This may be useful to remove clutter from a
-# trace log.
-#
-cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_REPORTS {
-    # This option is not active
-    # The parent CYGDBG_USE_TRACING is not active
-    # The parent CYGDBG_USE_TRACING is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Use trace text
-# All trace calls within eCos contain a text message
-# which should give some information about the circumstances.
-# These text messages will end up being embedded in the
-# application image and hence there is a significant penalty
-# in terms of image size.
-# It is possible to suppress the use of these messages by
-# disabling this option.
-# This results in smaller code size, but there is less
-# human-readable information available in the trace output,
-# possibly only filenames and line numbers.
-#
-cdl_option CYGDBG_INFRA_DEBUG_TRACE_MESSAGE {
-    # This option is not active
-    # The parent CYGDBG_USE_TRACING is not active
-    # The parent CYGDBG_USE_TRACING is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# <
-# Trace output implementations
-#
-cdl_interface CYGINT_INFRA_DEBUG_TRACE_IMPL {
-    # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_NULL, inactive, disabled
-    # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE, inactive, disabled
-    # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY, inactive, disabled
-    # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER, inactive, enabled
-    # This option is not active
-    # The parent CYGPKG_INFRA_DEBUG is disabled
-
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # component CYGDBG_USE_ASSERTS
-    #     Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL 
-    # component CYGDBG_USE_TRACING
-    #     Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL 
-};
-
-# Null output
-# A null output module which is useful when
-# debugging interactively; the output routines
-# can be breakpointed rather than have them actually
-# 'print' something.
-#
-cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_NULL {
-    # This option is not active
-    # The parent CYGPKG_INFRA_DEBUG is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Simple output
-# An output module which produces simple output
-# from tracing and assertion events.
-#
-cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE {
-    # This option is not active
-    # The parent CYGPKG_INFRA_DEBUG is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Fancy output
-# An output module which produces fancy output
-# from tracing and assertion events.
-#
-cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY {
-    # This option is not active
-    # The parent CYGPKG_INFRA_DEBUG is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Buffered tracing
-# An output module which buffers output
-# from tracing and assertion events. The stored
-# messages are output when an assert fires, or
-# CYG_TRACE_PRINT() (defined in <cyg/infra/cyg_trac.h>)
-# is called.
-# Of course, there will only be stored messages
-# if tracing per se (CYGDBG_USE_TRACING)
-# is enabled above.
-#
-cdl_component CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER {
-    # This option is not active
-    # The parent CYGPKG_INFRA_DEBUG is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# >
-# Trace buffer size
-# The size of the trace buffer. This counts the number
-# of trace records stored. When the buffer fills it
-# either wraps, stops recording, or generates output.
-#
-cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE {
-    # This option is not active
-    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
-    # ActiveIf constraint: CYGDBG_USE_TRACING
-    #     CYGDBG_USE_TRACING == 0
-    #   --> 0
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 32
-    # value_source default
-    # Default value: 32
-    # Legal values: 5 to 65535
-};
-
-# Wrap trace buffer when full
-# When the trace buffer has filled with records it
-# starts again at the beginning. Hence only the last
-# CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will
-# be recorded.
-#
-cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP {
-    # This option is not active
-    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
-    # ActiveIf constraint: CYGDBG_USE_TRACING
-    #     CYGDBG_USE_TRACING == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Halt trace buffer when full
-# When the trace buffer has filled with records it
-# stops recording. Hence only the first
-# CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will
-# be recorded.
-#
-cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT {
-    # This option is not active
-    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
-    # ActiveIf constraint: CYGDBG_USE_TRACING
-    #     CYGDBG_USE_TRACING == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Print trace buffer when full
-# When the trace buffer has filled with records it
-# prints the contents of the buffer. The buffer is then
-# emptied and the system continues.
-#
-cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT {
-    # This option is not active
-    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
-    # ActiveIf constraint: CYGDBG_USE_TRACING
-    #     CYGDBG_USE_TRACING == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Print trace buffer on assert fail
-# When an assertion fails the trace buffer will be 
-# printed to the default diagnostic device.
-#
-cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT {
-    # This option is not active
-    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
-    # ActiveIf constraint: CYGDBG_USE_TRACING
-    #     CYGDBG_USE_TRACING == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# <
-# Use function names
-# All trace and assert calls within eCos contain a
-# reference to the builtin macro '__PRETTY_FUNCTION__',
-# which evaluates to a string containing
-# the name of the current function.
-# This is useful when reading a trace log.
-# It is possible to suppress the use of the function name
-# by disabling this option.
-# This results in smaller code size, but there is less
-# human-readable information available in the trace output,
-# possibly only filenames and line numbers.
-#
-cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_PSEUDOMACRO {
-    # This option is not active
-    # The parent CYGPKG_INFRA_DEBUG is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# <
-# Startup options
-# Some packages require a startup routine to be called.
-# This can be carried out by application code, by supplying
-# a routine called cyg_package_start() which calls the
-# appropriate package startup routine(s).
-# Alternatively, this routine can be constructed automatically
-# and configured to call the startup routines of your choice.
-#
-cdl_component CYGPKG_INFRA_STARTUP {
-    # There is no associated value.
-};
-
-# >
-# Start uITRON subsystem
-# Generate a call to initialize the
-# uITRON compatibility subsystem
-# within the system version of cyg_package_start().
-# This enables compatibility with uITRON.
-# You must configure uITRON with the correct tasks before
-# starting the uItron subsystem.
-# If this is disabled, and you want to use uITRON,
-# you must call cyg_uitron_start() from your own
-# cyg_package_start() or cyg_userstart().
-#
-cdl_option CYGSEM_START_UITRON_COMPATIBILITY {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_UITRON
-    #     CYGPKG_UITRON (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires: CYGPKG_UITRON
-    #     CYGPKG_UITRON (unknown) == 0
-    #   --> 0
-};
-
-# <
-# Smaller slower memcpy()
-# Enabling this option causes the implementation of
-# the standard memcpy() routine to reduce code
-# size at the expense of execution speed. This
-# option is automatically enabled with the use of
-# the -Os option to the compiler. Also note that
-# the compiler will try to use its own builtin
-# version of memcpy() if possible, ignoring the
-# implementation in this package, unless given
-# the -fno-builtin compiler option.
-#
-cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMCPY {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Smaller slower memset()
-# Enabling this option causes the implementation of
-# the standard memset() routine to reduce code
-# size at the expense of execution speed. This
-# option is automatically enabled with the use of
-# the -Os option to the compiler. Also note that
-# the compiler will try to use its own builtin
-# version of memset() if possible, ignoring the
-# implementation in this package, unless given
-# the -fno-builtin compiler option.
-#
-cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMSET {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Provide empty C++ delete functions
-# To deal with virtual destructors, where the correct delete()
-# function must be called for the derived class in question, the
-# underlying delete is called when needed, from destructors.  This
-# is regardless of whether the destructor is called by delete itself.
-# So there is a reference to delete() from all destructors.  The
-# default builtin delete() attempts to call free() if there is
-# one defined.  So, if you have destructors, and you have free(),
-# as in malloc() and free(), any destructor counts as a reference
-# to free().  So the dynamic memory allocation code is linked
-# in regardless of whether it gets explicitly called. This
-# increases code and data size needlessly.
-# To defeat this undesirable behaviour, we define empty versions
-# of delete and delete.  But doing this prevents proper use
-# of dynamic memory in C++ programs via C++'s new and delete
-# operators.
-# Therefore, this option is provided
-# for explicitly disabling the provision of these empty functions,
-# so that new and delete can be used, if that is what is required.
-#
-cdl_option CYGFUN_INFRA_EMPTY_DELETE_FUNCTIONS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Threshold for valid number of delete calls
-# Some users don't know about the empty delete function and then
-# wonder why their C++ classes are leaking memory. If
-# INFRA_DEBUG is enabled we keep a counter for the number of
-# times delete is called. If it goes above this threshold we throw
-# an assertion failure. This should point heavy users of
-# delete in the right direction without upsetting those who want
-# an empty delete function. 
-#
-cdl_option CYGNUM_INFRA_EMPTY_DELETE_THRESHOLD {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_INFRA_DEBUG
-    #     CYGPKG_INFRA_DEBUG == 0
-    #   --> 0
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 100
-    # value_source default
-    # Default value: 100
-};
-
-# Provide dummy abort() function
-# This option controls the inclusion of a dummy abort() function.
-# Parts of the C and C++ compiler runtime systems contain references
-# to abort(), particulary in the C++ exception handling code. It is
-# not possible to eliminate these references, so this dummy function
-# in included to satisfy them. It is not expected that this function
-# will ever be called, so its current behaviour is to simply loop.
-#
-cdl_option CYGFUN_INFRA_DUMMY_ABORT {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  CYGINT_ISO_EXIT == 0 
-    #     CYGINT_ISO_EXIT == 0
-    #   --> 1
-    # Requires: !CYGINT_ISO_EXIT
-    #     CYGINT_ISO_EXIT == 0
-    #   --> 1
-};
-
-# Reset platform at end of test case execution
-# If this option is set then test case programs will reset the platform
-# when they terminate, as opposed to the default which is to just hang
-# in a loop.
-#
-cdl_option CYGSEM_INFRA_RESET_ON_TEST_EXIT {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Provide dummy strlen() function
-# This option controls the inclusion of a dummy strlen() function.
-# Parts of the C and C++ compiler runtime systems contain references
-# to strlen(), particulary in the C++ exception handling code. It is
-# not possible to eliminate these references, so this dummy function
-# in included to satisfy them. While it is not expected that this function
-# will ever be called, it is functional but uses the simplest, smallest
-# algorithm. There is a faster version of strlen() in the C library.
-#
-cdl_option CYGFUN_INFRA_DUMMY_STRLEN {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value:  CYGINT_ISO_STRING_STRFUNCS == 0 
-    #     CYGINT_ISO_STRING_STRFUNCS == 1
-    #   --> 0
-    # Requires: !CYGINT_ISO_STRING_STRFUNCS
-    #     CYGINT_ISO_STRING_STRFUNCS == 1
-    #   --> 0
-};
-
-# Make all compiler warnings show as errors
-# Enabling this option will cause all compiler warnings to show
-# as errors and bring the library build to a halt. This is used
-# to ensure that the code base is warning free, and thus ensure
-# that newly introduced warnings stand out and get fixed before
-# they show up as weird run-time behavior.
-#
-cdl_option CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS {
-    # Flavor: bool
-    user_value 1
-    # value_source user
-    # Default value: 0
-    # Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -Werror") 
-    #     CYGBLD_GLOBAL_CFLAGS == "-mcpu=arm9 -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -O2 -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe"
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGBLD_GLOBAL_CFLAGS
-    #     Requires: CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS
-};
-
-# Make compiler and assembler communicate by pipe
-# Enabling this option will cause the compiler to feed the
-# assembly output the the assembler via a pipe instead of
-# via a temporary file. This normally reduces the build
-# time.
-#
-cdl_option CYGBLD_INFRA_CFLAGS_PIPE {
-    # Flavor: bool
-    user_value 1
-    # value_source user
-    # Default value: 0
-    # Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -pipe") 
-    #     CYGBLD_GLOBAL_CFLAGS == "-mcpu=arm9 -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -O2 -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe"
-    #   --> 1
-};
-
-# Infra build options
-# Package specific build options including control over
-# compiler flags used only in building this package.
-#
-cdl_component CYGPKG_INFRA_OPTIONS {
-    # There is no associated value.
-};
-
-# >
-# Additional compiler flags
-# This option modifies the set of compiler flags for
-# building the eCos infra package. These flags are used
-# in addition to the set of global flags.
-#
-cdl_option CYGPKG_INFRA_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "-fno-rtti -Woverloaded-virtual"
-    # value_source default
-    # Default value: "-fno-rtti -Woverloaded-virtual"
-};
-
-# Suppressed compiler flags
-# This option modifies the set of compiler flags for
-# building the eCos infra package. These flags are removed from
-# the set of global flags if present.
-#
-cdl_option CYGPKG_INFRA_CFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -Wno-pointer-sign
-    # value_source default
-    # Default value: -Wno-pointer-sign
-};
-
-# Suppressed linker flags
-# This option modifies the set of linker flags for
-# building the eCos infra package tests. These flags are removed from
-# the set of global flags if present.
-#
-cdl_option CYGPKG_INFRA_LDFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -Wl,--gc-sections
-    # value_source default
-    # Default value: -Wl,--gc-sections
-};
-
-# Additional linker flags
-# This option modifies the set of linker flags for
-# building the eCos infra package tests. These flags are added to
-# the set of global flags if present.
-#
-cdl_option CYGPKG_INFRA_LDFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -Wl,--fatal-warnings
-    # value_source default
-    # Default value: -Wl,--fatal-warnings
-};
-
-# Infra package tests
-#
-cdl_component CYGPKG_INFRA_TESTS {
-    # Calculated value:  "tests/cxxsupp tests/diag_sprintf1 tests/diag_sprintf2" 
-    # Flavor: data
-    # Current_value: tests/cxxsupp tests/diag_sprintf1 tests/diag_sprintf2
-};
-
-# >
-# Number of times a test runs
-# This option controls the number of times tests will execute their
-# basic function.  Not all tests will honor this setting, but those
-# that do will execute the test N times before terminating.  A value
-# less than 0 indicates to run forever.
-#
-cdl_option CYGNUM_TESTS_RUN_COUNT {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# <
-# <
-# <
-# Redboot ROM monitor
-# doc: ref/redboot.html
-# This package supports the Redboot [stand-alone debug monitor]
-# using eCos as the underlying board support mechanism.
-#
-cdl_package CYGPKG_REDBOOT {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-    # Requires:  CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK == 0 
-    #     CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # component CYGPKG_REDBOOT_ARM_OPTIONS
-    #     ActiveIf: CYGPKG_REDBOOT
-    # component CYGPKG_REDBOOT_HAL_OPTIONS
-    #     ActiveIf: CYGPKG_REDBOOT
-    # component CYGPKG_REDBOOT_HAL_TX25_OPTIONS
-    #     ActiveIf: CYGPKG_REDBOOT
-    # option CYGSEM_IO_ETH_DRIVERS_WARN
-    #     ActiveIf: CYGPKG_REDBOOT
-};
-
-# >
-# Include support for ELF file format
-#
-cdl_component CYGSEM_REDBOOT_ELF {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# >
-# Use the virtual address in the ELF headers
-# The ELF headers contain both a virtual and a physical address
-# for where code/data should be loaded. By default the physical
-# address is used but sometimes it is necassary to use the
-# virtual address because of bugy toolchains
-#
-cdl_option CYGOPT_REDBOOT_ELF_VIRTUAL_ADDRESS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# <
-# Methods of loading images using redboot
-#
-cdl_interface CYGINT_REDBOOT_LOAD_METHOD {
-    # Implemented by CYGBLD_BUILD_REDBOOT_WITH_XYZMODEM, active, enabled
-    # Implemented by CYGPKG_REDBOOT_NETWORKING, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 2
-
-    # The following properties are affected by this value
-    # component CYGBLD_BUILD_REDBOOT
-    #     Requires: CYGINT_REDBOOT_LOAD_METHOD
-};
-
-# Build Redboot ROM ELF image
-# This option enables the building of the Redboot ELF image.
-# The image may require further relocation or symbol
-# stripping before being converted to a binary image.
-# This is handled by a rule in the target CDL.
-#
-cdl_component CYGBLD_BUILD_REDBOOT {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # The inferred value should not be edited directly.
-    inferred_value 1
-    # value_source inferred
-    # Default value: 0
-    # Requires: CYGPKG_INFRA
-    #     CYGPKG_INFRA == current
-    #   --> 1
-    # Requires: CYGPKG_ISOINFRA
-    #     CYGPKG_ISOINFRA == current
-    #   --> 1
-    # Requires: ! CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
-    #     CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT == 0
-    #   --> 1
-    # Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
-    #     CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT == 0
-    #   --> 1
-    # Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
-    #     CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM == 0
-    #   --> 1
-    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
-    #     CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT == 1
-    #   --> 1
-    # Requires: CYGINT_ISO_STRING_MEMFUNCS
-    #     CYGINT_ISO_STRING_MEMFUNCS == 1
-    #   --> 1
-    # Requires: CYGINT_ISO_STRING_STRFUNCS
-    #     CYGINT_ISO_STRING_STRFUNCS == 1
-    #   --> 1
-    # Requires: CYGINT_REDBOOT_LOAD_METHOD
-    #     CYGINT_REDBOOT_LOAD_METHOD == 2
-    #   --> 1
-
-    # The following properties are affected by this value
-    # package CYGPKG_HAL_ARM_TX25KARO
-    #     Requires: CYGBLD_BUILD_REDBOOT == 1
-    # option CYGBLD_BUILD_REDBOOT_BIN
-    #     ActiveIf: CYGBLD_BUILD_REDBOOT
-};
-
-# >
-# Include GDB support in RedBoot
-# RedBoot normally includes support for the GDB debugging
-# protocols. This option allows this to be disabled which
-# may yield a substantial savings in terms of code and memory 
-# usage by RedBoot.
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_GDB {
-    # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS
-    #     CYGINT_HAL_DEBUG_GDB_STUBS == 1
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 1
-    # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
-    #   --> 0
-    # Requires: CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
-    #     CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0
-    #   --> 0
-};
-
-# Threads debugging support
-# Enabling this option will include special code in the
-# GDB stubs to support debugging of threaded programs.  In
-# the case of eCos programs, this support allows GDB to
-# have complete access to the eCos threads in the
-# program.
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_THREADS {
-    # ActiveIf constraint:  CYG_HAL_STARTUP != "RAM" 
-    #     CYG_HAL_STARTUP == ROMRAM
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
-    #     CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1
-    #   --> 1
-};
-
-# Customized version string
-# Use this option to define a customized version "string" for
-# RedBoot.  Note: this value is only cosmetic, displayed by the
-# "version" command, but is useful for providing site specific
-# information about the RedBoot configuration.
-#
-cdl_option CYGDAT_REDBOOT_CUSTOM_VERSION {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 "Ka-Ro 2009-06-10"
-    # value_source inferred
-    # Default value: 0 0
-};
-
-# Enable command line editing
-# If this option is non-zero, RedBoot will remember the
-# last N command lines.  These lines may be reused.
-# Enabling this history will also enable rudimentary
-# editting of the lines themselves.
-#
-cdl_option CYGNUM_REDBOOT_CMD_LINE_EDITING {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 16
-    # value_source default
-    # Default value: 16
-
-    # The following properties are affected by this value
-    # option CYGSEM_REDBOOT_CMD_LINE_ANSI_SEQUENCES
-    #     ActiveIf: CYGNUM_REDBOOT_CMD_LINE_EDITING != 0
-    # option CYGBLD_REDBOOT_CMD_LINE_HISTORY
-    #     Requires:  CYGNUM_REDBOOT_CMD_LINE_EDITING > 0 
-};
-
-# Enable command line editing using ANSI arrows, etc
-# If this option is enabled, RedBoot will accept standard ANSI key
-# sequences for cursor movement (along with the emacs style keys).
-#
-cdl_option CYGSEM_REDBOOT_CMD_LINE_ANSI_SEQUENCES {
-    # ActiveIf constraint: CYGNUM_REDBOOT_CMD_LINE_EDITING != 0
-    #     CYGNUM_REDBOOT_CMD_LINE_EDITING == 16
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Enable history command and expansion
-# Enabling this option will allow RedBoot to provide a
-# history command to list previous commands. Also enables
-# history expansion via '!'  character similar to bash
-# shell.
-#
-cdl_option CYGBLD_REDBOOT_CMD_LINE_HISTORY {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires:  CYGNUM_REDBOOT_CMD_LINE_EDITING > 0 
-    #     CYGNUM_REDBOOT_CMD_LINE_EDITING == 16
-    #   --> 1
-};
-
-# Number of unique RAM segments on platform
-# Change this option to be the number of memory segments which are
-# supported by the platform.  If the value is greater than 1, then
-# a platform specific function must provide information about the
-# additional segments.
-#
-cdl_option CYGBLD_REDBOOT_MAX_MEM_SEGMENTS {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Include support gzip/zlib decompression
-#
-cdl_component CYGBLD_BUILD_REDBOOT_WITH_ZLIB {
-    # ActiveIf constraint: CYGPKG_COMPRESS_ZLIB
-    #     CYGPKG_COMPRESS_ZLIB == current
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # component CYGOPT_REDBOOT_FIS_ZLIB_COMMON_BUFFER
-    #     ActiveIf:  CYGBLD_BUILD_REDBOOT_WITH_ZLIB &&  CYGOPT_REDBOOT_FIS 
-};
-
-# >
-# Size of zlib decompression buffer
-# This is the size of the buffer filled with incoming data
-# during load before calls are made to the decompressor
-# function. For ethernet downloads this can be made bigger
-# (at the cost of memory), but for serial downloads on slow
-# processors it may be necessary to reduce the size to
-# avoid serial overruns. zlib appears to bail out if less 
-# than five bytes are available initially so this is the 
-# minimum.
-#
-cdl_option CYGNUM_REDBOOT_LOAD_ZLIB_BUFFER {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 64
-    # value_source default
-    # Default value: 64
-    # Legal values: 5 to 256
-};
-
-# Support compression of Flash images
-# This CDL indicates whether flash images can
-# be decompressed from gzip/zlib format into RAM.
-#
-cdl_option CYGPRI_REDBOOT_ZLIB_FLASH {
-    # ActiveIf constraint: CYGPKG_REDBOOT_FLASH
-    #     CYGPKG_REDBOOT_FLASH == 1
-    #   --> 1
-    # ActiveIf constraint:  (!CYGSEM_IO_FLASH_READ_INDIRECT) || CYGPRI_REDBOOT_ZLIB_FLASH_FORCE 
-    #     CYGSEM_IO_FLASH_READ_INDIRECT == 1
-    #     CYGPRI_REDBOOT_ZLIB_FLASH_FORCE == 1
-    #   --> 1
-
-    # Calculated value: 1
-    # Flavor: bool
-    # Current value: 1
-};
-
-# Include GZIP uncompress command
-# Enable this option to include a 'gunzip' command 
-# to uncompress GZIP compressed data.
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_GUNZIP {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Turn on CYGPRI_REDBOOT_ZLIB_FLASH
-# Force CYGPRI_REDBOOT_ZLIB_FLASH to be chosen
-#
-cdl_option CYGPRI_REDBOOT_ZLIB_FLASH_FORCE {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # The inferred value should not be edited directly.
-    inferred_value 1
-    # value_source inferred
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # option CYGPRI_REDBOOT_ZLIB_FLASH
-    #     ActiveIf:  (!CYGSEM_IO_FLASH_READ_INDIRECT) || CYGPRI_REDBOOT_ZLIB_FLASH_FORCE 
-};
-
-# <
-# Include support for xyzModem downloads
-# doc: ref/download-command.html
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_XYZMODEM {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # option CYGPKG_REDBOOT_CFLAGS_ADD
-    #     ActiveIf: CYGBLD_BUILD_REDBOOT_WITH_XYZMODEM
-};
-
-# Additional compiler flags
-# This option modifies the set of compiler flags for
-# building the eCos infra package. These flags are used
-# in addition to the set of global flags.
-#
-cdl_option CYGPKG_REDBOOT_CFLAGS_ADD {
-    # ActiveIf constraint: CYGBLD_BUILD_REDBOOT_WITH_XYZMODEM
-    #     CYGBLD_BUILD_REDBOOT_WITH_XYZMODEM == 1
-    #   --> 1
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -Wno-inline
-    # value_source default
-    # Default value: -Wno-inline
-};
-
-# Allow the load-command write into Flash.
-# Write images direct to Flash via the load command.
-# We assume anything which is invalid RAM is flash, hence
-# the requires statement
-#
-cdl_option CYGBLD_REDBOOT_LOAD_INTO_FLASH {
-    # ActiveIf constraint: CYGPKG_REDBOOT_FLASH
-    #     CYGPKG_REDBOOT_FLASH == 1
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires: CYGSEM_REDBOOT_VALIDATE_USER_RAM_LOADS
-    #     CYGSEM_REDBOOT_VALIDATE_USER_RAM_LOADS == 1
-    #   --> 1
-};
-
-# Include MS Windows CE support
-# doc: ref/wince.html
-# This option enables MS Windows CE EShell support
-# and Windows CE .BIN images support
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_WINCE_SUPPORT {
-    # Flavor: bool
-    user_value 1
-    # value_source user
-    # Default value: 0
-};
-
-# Include support for MXC USB downloads
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_MXCUSB {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Include support for i.MX USB OTG downloads
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_IMXOTG {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Include POSIX checksum command
-# doc: ref/cksum-command.html
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_CKSUM {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Include memory fill command
-# doc: ref/mfill-command.html
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_MFILL {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Include memory compare command
-# doc: ref/mcmp-command.html
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_MCMP {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Include memory copy command
-# doc: ref/mcopy-command.html
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_MCOPY {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Include memory dump command
-# doc: ref/dump-command.html
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_DUMP {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Include cache command
-# doc: ref/cache-command.html
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_CACHES {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Include exec command
-# doc: ref/exec-command.html
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_EXEC {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # component CYGPKG_REDBOOT_ARM_LINUX_EXEC
-    #     ActiveIf: CYGBLD_BUILD_REDBOOT_WITH_EXEC
-};
-
-# Include I/O Memory commands 'iopeek' and 'iopoke'
-#
-cdl_option CYGBLD_BUILD_REDBOOT_WITH_IOMEM {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Granularity of timer/ticks
-# This option controls the granularity of the timers.
-# Faster CPUs can afford higher granularity (lower values)
-# which should give higher network performance since the stack
-# is purely polled.
-#
-cdl_option CYGDBG_REDBOOT_TICK_GRANULARITY {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 250
-    # value_source default
-    # Default value: 250
-    # Legal values:  10 25 50 100 250 500 1000 
-};
-
-# Redboot Networking
-# This option includes networking support in RedBoot.
-#
-cdl_component CYGPKG_REDBOOT_NETWORKING {
-    # ActiveIf constraint: CYGPKG_IO_ETH_DRIVERS
-    #     CYGPKG_IO_ETH_DRIVERS == current
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # option CYGSEM_IO_ETH_DRIVERS_PASS_PACKETS
-    #     DefaultValue:  0 != CYGPKG_REDBOOT_NETWORKING 
-};
-
-# >
-# Print net debug information
-# This option is overriden by the configuration stored 
-# in flash.
-#
-cdl_option CYGDBG_REDBOOT_NET_DEBUG {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Support TFTP for download
-# This option enables the use of the TFTP protocol for 
-# download
-#
-cdl_option CYGSEM_REDBOOT_NET_TFTP_DOWNLOAD {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Support HTTP for download
-# This option enables the use of the HTTP protocol for 
-# download
-#
-cdl_option CYGSEM_REDBOOT_NET_HTTP_DOWNLOAD {
-    # Flavor: bool
-    user_value 0
-    # value_source user
-    # Default value: 1
-};
-
-# Default IP address
-# This IP address is the default used by RedBoot if
-# a BOOTP/DHCP server does not respond. The numbers
-# should be separated by *commas*, and not dots. If
-# an IP address is configured into the Flash
-# configuration, that will be used in preference.
-#
-cdl_component CYGDAT_REDBOOT_DEFAULT_IP_ADDR {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: CYGSEM_REDBOOT_FLASH_CONFIG ? 0 :  "0, 0, 0, 0" 
-    #     CYGSEM_REDBOOT_FLASH_CONFIG == 1
-    #   --> 0 0
-};
-
-# >
-# Do not try to use BOOTP
-# By default Redboot tries to use BOOTP to get an IP
-# address. If there's no BOOTP server on your network
-# use this option to avoid to wait until the
-# timeout. This option is overriden by the
-# configuration stored in flash.
-#
-cdl_option CYGSEM_REDBOOT_DEFAULT_NO_BOOTP {
-    # This option is not active
-    # The parent CYGDAT_REDBOOT_DEFAULT_IP_ADDR is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Default bootp server
-# This IP address is the default server
-# address used by RedBoot if a BOOTP/DHCP
-# server does not respond. The numbers should
-# be separated by *commas*, and not dots. If
-# an IP address is configured into the Flash
-# configuration, that will be used in
-# preference.
-#
-cdl_option CYGDAT_REDBOOT_DEFAULT_BOOTP_SERVER_IP_ADDR {
-    # This option is not active
-    # The parent CYGDAT_REDBOOT_DEFAULT_IP_ADDR is disabled
-
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: CYGSEM_REDBOOT_FLASH_CONFIG ? 0 :  "0, 0, 0, 0" 
-    #     CYGSEM_REDBOOT_FLASH_CONFIG == 1
-    #   --> 0 0
-};
-
-# <
-# Use DHCP to get IP information
-# Use DHCP protocol to obtain pertinent IP addresses, such 
-# as the client, server, gateway, etc.
-#
-cdl_component CYGSEM_REDBOOT_NETWORKING_DHCP {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # component CYGSEM_REDBOOT_NETWORKING_USE_GATEWAY
-    #     Requires: CYGSEM_REDBOOT_NETWORKING_DHCP
-};
-
-# Use a gateway for non-local IP traffic
-# Enabling this option will allow the RedBoot networking
-# stack to use a [single] gateway to reach a non-local
-# IP address.  If disabled, RedBoot will only be able to
-# reach nodes on the same subnet.
-#
-cdl_component CYGSEM_REDBOOT_NETWORKING_USE_GATEWAY {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires: CYGSEM_REDBOOT_NETWORKING_DHCP
-    #     CYGSEM_REDBOOT_NETWORKING_DHCP == 1
-    #   --> 1
-};
-
-# >
-# Default gateway IP address
-# This IP address is the default used by RedBoot
-# if a BOOTP/DHCP server does not respond. The
-# numbers should be separated by *commas*, and
-# not dots. If an IP address is configured into
-# the Flash configuration, that will be used in
-# preference.
-#
-cdl_component CYGDAT_REDBOOT_DEFAULT_GATEWAY_IP_ADDR {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: CYGSEM_REDBOOT_FLASH_CONFIG ? 0 :  "0, 0, 0, 0" 
-    #     CYGSEM_REDBOOT_FLASH_CONFIG == 1
-    #   --> 0 0
-};
-
-# Default IP address mask
-# This IP address mask is the default used by
-# RedBoot if a BOOTP/DHCP server does not
-# respond. The numbers should be separated by
-# *commas*, and not dots. If an IP address is
-# configured into the Flash configuration, that
-# will be used in preference.
-#
-cdl_component CYGDAT_REDBOOT_DEFAULT_IP_ADDR_MASK {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: CYGSEM_REDBOOT_FLASH_CONFIG ? 0 :  "255, 255, 255, 0" 
-    #     CYGSEM_REDBOOT_FLASH_CONFIG == 1
-    #   --> 0 0
-};
-
-# <
-# TCP port to listen for incoming connections
-# RedBoot will 'listen' on this port for incoming TCP 
-# connections. This allows outside connections to be made 
-# to the platform, either for GDB or RedBoot commands.
-#
-cdl_option CYGNUM_REDBOOT_NETWORKING_TCP_PORT {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 9000
-    # value_source default
-    # Default value: 9000
-};
-
-# Number of [network] packet buffers
-# RedBoot may need to buffer network data to support
-# various connections.  This option allows control
-# over the number of such buffered packets, and in
-# turn, controls the amount of memory used by RedBoot
-# (which is not available to user applications).
-# Each packet buffer takes up about 1514 bytes.
-# Note: there is little need to make this larger than
-# the default.
-#
-cdl_option CYGNUM_REDBOOT_NETWORKING_MAX_PKTBUF {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 4
-    # value_source default
-    # Default value: 4
-    # Legal values: 3 to 8
-};
-
-# DNS support
-# When this option is enabled, RedBoot will be built with
-# support for DNS, allowing use of hostnames on the command
-# line.
-#
-cdl_component CYGPKG_REDBOOT_NETWORKING_DNS {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_NS_DNS
-    #     CYGPKG_NS_DNS (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires: !CYGPKG_NS_DNS_BUILD
-    #     CYGPKG_NS_DNS_BUILD (unknown) == 0
-    #   --> 1
-};
-
-# >
-# Default DNS IP
-# This option sets the IP of the default DNS. The IP can be
-# changed at runtime as well.
-#
-cdl_option CYGPKG_REDBOOT_NETWORKING_DNS_IP {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_NETWORKING_DNS is not active
-    # ActiveIf constraint: !CYGSEM_REDBOOT_FLASH_CONFIG
-    #     CYGSEM_REDBOOT_FLASH_CONFIG == 1
-    #   --> 0
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0.0.0.0
-    # value_source default
-    # Default value: 0.0.0.0
-};
-
-# Timeout in DNS lookup
-# This option sets the timeout used when looking up an
-# address via the DNS. Default is 10 seconds.
-#
-cdl_option CYGNUM_REDBOOT_NETWORKING_DNS_TIMEOUT {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_NETWORKING_DNS is not active
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 10
-    # value_source default
-    # Default value: 10
-};
-
-# Support the use of a domain name
-# This option controls if Redboot supports domain
-# names when performing DNS lookups
-#
-cdl_component CYGPKG_REDBOOT_NETWORKING_DNS_WITH_DOMAIN {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_NETWORKING_DNS is not active
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# >
-# Default DNS domain
-# This option sets the default DNS domain name.
-# This value will be overwritten by the value in
-# flash or a domain returned by DHCP
-#
-cdl_option CYGPKG_REDBOOT_NETWORKING_DNS_DEFAULT_DOMAIN {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_NETWORKING_DNS_WITH_DOMAIN is not active
-    # The parent CYGPKG_REDBOOT_NETWORKING_DNS_WITH_DOMAIN is disabled
-
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Get DNS domain from Flash
-# This option enables getting the domain name 
-# from the flash configuration. This can later be 
-# overwritten by a value learnt from DHCP
-#
-cdl_option CYGPKG_REDBOOT_NETWORKING_DNS_FCONFIG_DOMAIN {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_NETWORKING_DNS_WITH_DOMAIN is not active
-    # The parent CYGPKG_REDBOOT_NETWORKING_DNS_WITH_DOMAIN is disabled
-    # ActiveIf constraint: CYGSEM_REDBOOT_FLASH_CONFIG
-    #     CYGSEM_REDBOOT_FLASH_CONFIG == 1
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Use DNS domain from DHCP
-# This option enables the use of the domain name
-# returned by DHCP.
-#
-cdl_option CYGPKG_REDBOOT_NETWORKING_DNS_DHCP_DOMAIN {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_NETWORKING_DNS_WITH_DOMAIN is not active
-    # The parent CYGPKG_REDBOOT_NETWORKING_DNS_WITH_DOMAIN is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# BOOTP/DHCP DNS domain buffer size
-# This options sets the size of the static
-# buffer used by BOOTP/DHCP to store the DNS
-# domain name. The domain name will not be
-# set if the buffer is too small to hold it.
-#
-cdl_option CYGNUM_REDBOOT_NETWORK_DNS_DOMAIN_BUFSIZE {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_NETWORKING_DNS_WITH_DOMAIN is not active
-    # The parent CYGPKG_REDBOOT_NETWORKING_DNS_WITH_DOMAIN is disabled
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 32
-    # value_source default
-    # Default value: 32
-};
-
-# <
-# <
-# Default network device driver
-# This is the name of the default network device to use.
-#
-cdl_option CYGDAT_REDBOOT_DEFAULT_NETWORK_DEVICE {
-    # This option is not active
-    # ActiveIf constraint:  CYGHWR_NET_DRIVERS > 1 
-    #     CYGHWR_NET_DRIVERS == 1
-    #   --> 0
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "\"\""
-    # value_source default
-    # Default value: "\"\""
-};
-
-# Initialize only one net device
-# This option tells RedBoot to stop initializing network
-# devices when it finds the first device which is
-# successfully initialized. The default behavior causes
-# all network devices to be initialized.
-#
-cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
-    # This option is not active
-    # ActiveIf constraint:  CYGHWR_NET_DRIVERS > 1 
-    #     CYGHWR_NET_DRIVERS == 1
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# <
-# Let RedBoot use any I/O channel for its console.
-# If this option is enabled then RedBoot will attempt to use all
-# defined serial I/O channels for its console device.  Once input
-# arrives at one of these channels then the console will use only
-# that port.
-#
-cdl_option CYGPKG_REDBOOT_ANY_CONSOLE {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 1
-};
-
-# Let RedBoot adjust the baud rate of the serial console.
-# If this option is enabled then RedBoot will support commands 
-# to set and query the baud rate on the selected console.
-#
-cdl_option CYGSEM_REDBOOT_VARIABLE_BAUD_RATE {
-    # ActiveIf constraint: CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT
-    #     CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT == 1
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Run a platform specific startup function.
-# If this option is enabled then RedBoot will execute a platform
-# specific startup function before entering into its command line
-# processing.  This allows the platform to perform any special
-# setups before RedBoot actually starts running.  Note: the entire
-# RedBoot environment will already be initialized at this point.
-#
-cdl_option CYGSEM_REDBOOT_PLF_STARTUP {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Run a platform specific ESA validation function.
-# If this option is enabled then RedBoot will execute a platform
-# specific function to validate an ethernet ESA.  This would be
-# useful if the address must conform to standards set by the
-# hardware manufacturer, etc.
-#
-cdl_option CYGSEM_REDBOOT_PLF_ESA_VALIDATE {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # The inferred value should not be edited directly.
-    inferred_value 1
-    # value_source inferred
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # component CYGPKG_DEVS_ETH_ARM_MXCBOARD_ETH0
-    #     Requires: CYGSEM_REDBOOT_PLF_ESA_VALIDATE
-    # option CYGDAT_DEVS_ETH_ARM_TX25KARO_OUI
-    #     ActiveIf: CYGSEM_REDBOOT_PLF_ESA_VALIDATE
-};
-
-# Maximum command line length
-# This option allows control over how long the CLI command line
-# should be.  This space will be allocated statically
-# rather than from RedBoot's stack.
-#
-cdl_option CYGPKG_REDBOOT_MAX_CMD_LINE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 256
-    # The inferred value should not be edited directly.
-    inferred_value 1024
-    # value_source inferred
-    # Default value: 256
-};
-
-# Command processing idle timeout (ms)
-# This option controls the timeout period before the
-# command processing is considered 'idle'.  Making this
-# number smaller will cause idle processing to take place
-# more often, etc.  The default value of 10ms is a reasonable
-# tradeoff between responsiveness and overhead.
-#
-cdl_option CYGNUM_REDBOOT_CLI_IDLE_TIMEOUT {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 10
-    # value_source default
-    # Default value: 10
-};
-
-# Validate RAM addresses during load
-# This option controls whether or not RedBoot will make
-# sure that memory being used by the "load" command is
-# in fact in user RAM.  Leaving the option enabled makes
-# for a safer environment, but this check may not be valid
-# on all platforms, thus the ability to disable it.  
-# ** Disable this only with great care **
-#
-cdl_option CYGSEM_REDBOOT_VALIDATE_USER_RAM_LOADS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # option CYGBLD_REDBOOT_LOAD_INTO_FLASH
-    #     Requires: CYGSEM_REDBOOT_VALIDATE_USER_RAM_LOADS
-};
-
-# Allow RedBoot to support FLASH programming
-# If this option is enabled then RedBoot will provide commands
-# to manage images in FLASH memory.  These images can be loaded
-# into memory for execution or executed in place.
-#
-cdl_component CYGPKG_REDBOOT_FLASH {
-    # ActiveIf constraint: CYGHWR_IO_FLASH_DEVICE
-    #     CYGHWR_IO_FLASH_DEVICE == 1
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # option CYGPRI_REDBOOT_ZLIB_FLASH
-    #     ActiveIf: CYGPKG_REDBOOT_FLASH
-    # option CYGBLD_REDBOOT_LOAD_INTO_FLASH
-    #     ActiveIf: CYGPKG_REDBOOT_FLASH
-};
-
-# >
-# Byte order used to store info in flash.
-# This option controls the byte ordering used to store
-# the FIS directory info and flash config info.
-#
-cdl_option CYGOPT_REDBOOT_FLASH_BYTEORDER {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value NATURAL
-    # value_source default
-    # Default value: NATURAL
-    # Legal values: "NATURAL" "MSBFIRST" "LSBFIRST" 
-};
-
-# RedBoot Flash Image System support
-# doc: ref/flash-image-system.html
-# This option enables the Flash Image System commands
-# and support within RedBoot.  If disabled, simple Flash
-# access commands such as "fis write" will still exist.
-# This option would be disabled for targets that need simple
-# FLASH manipulation, but do not have the need or space for
-# complete image management.
-#
-cdl_option CYGOPT_REDBOOT_FIS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # component CYGPKG_REDBOOT_FIS_CONTENTS
-    #     ActiveIf: CYGOPT_REDBOOT_FIS
-    # option CYGSEM_REDBOOT_FLASH_COMBINED_FIS_AND_CONFIG
-    #     ActiveIf:  CYGOPT_REDBOOT_FIS &&  (CYGHWR_REDBOOT_FLASH_CONFIG_MEDIA == "FLASH") 
-    # component CYGOPT_REDBOOT_FIS_ZLIB_COMMON_BUFFER
-    #     ActiveIf:  CYGBLD_BUILD_REDBOOT_WITH_ZLIB &&  CYGOPT_REDBOOT_FIS 
-};
-
-# Max number of chunks of free space to manage
-# If this option is defined then "fis free" will
-# rely on the FIS directory to determine what space is
-# free within the FLASH.  This option controls the
-# maximum number of free segment which can be handled
-# (typically this number is small).  If this option is
-# not enabled, the the archaic behaviour of actually
-# scanning the FLASH for erased sectors (unreliable)
-# will be used to determine what's free and what's
-# not.
-#
-cdl_option CYGDAT_REDBOOT_FIS_MAX_FREE_CHUNKS {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 1 32
-    # value_source default
-    # Default value: 1 32
-};
-
-# Flash Image System default directory contents
-#
-cdl_component CYGPKG_REDBOOT_FIS_CONTENTS {
-    # ActiveIf constraint: CYGOPT_REDBOOT_FIS
-    #     CYGOPT_REDBOOT_FIS == 1
-    #   --> 1
-
-    # Calculated value: 1
-    # Flavor: bool
-    # Current value: 1
-};
-
-# >
-# Flash block containing the Directory
-# Which block of flash should hold the directory
-# information. Positive numbers are absolute block
-# numbers.  Negative block numbers count backwards
-# from the last block.  eg 2 means block 2, -2
-# means the last but one block.
-#
-cdl_option CYGNUM_REDBOOT_FIS_DIRECTORY_BLOCK {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -1
-    # value_source default
-    # Default value: -1
-
-    # The following properties are affected by this value
-    # option CYGNUM_REDBOOT_FIS_REDUNDANT_DIRECTORY_BLOCK
-    #     Requires:  CYGNUM_REDBOOT_FIS_REDUNDANT_DIRECTORY_BLOCK !=
-    #                                        CYGNUM_REDBOOT_FIS_DIRECTORY_BLOCK 
-};
-
-# Redundant Flash Image System Directory Support
-# This option enables the use of a redundant FIS
-# directory within RedBoot.  If enabled a flash block
-# will be reserved for a second copy of the fis
-# directory. Doing this allow for power failure safe
-# updates of the directory by the application.
-#
-cdl_component CYGOPT_REDBOOT_REDUNDANT_FIS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires:  0 == CYGSEM_REDBOOT_FLASH_COMBINED_FIS_AND_CONFIG 
-    #     CYGSEM_REDBOOT_FLASH_COMBINED_FIS_AND_CONFIG == 1
-    #   --> 0
-};
-
-# >
-# Flash block containing the backup Directory
-# Which block of flash should hold the redundant
-# directory information. Positive numbers are
-# absolute block numbers. Negative block numbers
-# count backwards from the last block. eg 2 means
-# block 2, -2 means the last but one block.
-#
-cdl_option CYGNUM_REDBOOT_FIS_REDUNDANT_DIRECTORY_BLOCK {
-    # This option is not active
-    # The parent CYGOPT_REDBOOT_REDUNDANT_FIS is disabled
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -3
-    # value_source default
-    # Default value: -3
-    # Requires:  CYGNUM_REDBOOT_FIS_REDUNDANT_DIRECTORY_BLOCK !=
-    #                                        CYGNUM_REDBOOT_FIS_DIRECTORY_BLOCK 
-    #     CYGNUM_REDBOOT_FIS_REDUNDANT_DIRECTORY_BLOCK == 0
-    #     CYGNUM_REDBOOT_FIS_DIRECTORY_BLOCK == -1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGNUM_REDBOOT_FIS_REDUNDANT_DIRECTORY_BLOCK
-    #     Requires:  CYGNUM_REDBOOT_FIS_REDUNDANT_DIRECTORY_BLOCK !=
-    #                                        CYGNUM_REDBOOT_FIS_DIRECTORY_BLOCK 
-};
-
-# <
-# Pseudo-file to describe reserved area
-# If an area of FLASH is reserved, it is informative to
-# have a fis entry describing it.  This option controls
-# creation of such an entry by default in the fis init
-# command.
-#
-cdl_option CYGOPT_REDBOOT_FIS_RESERVED_BASE {
-    # This option is not active
-    # ActiveIf constraint:  0 != CYGNUM_REDBOOT_FLASH_RESERVED_BASE 
-    #     CYGNUM_REDBOOT_FLASH_RESERVED_BASE == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# File to describe RedBoot boot image
-# Normally a ROM-startup RedBoot image is first in the
-# FLASH, and the system boots using that image.  This
-# option controls creation of an entry describing it in
-# the fis init command.  It might be disabled if a
-# platform has an immutable boot image of its own, where
-# we use a POST-startup RedBoot instead, which performs
-# less board initialization.
-#
-cdl_option CYGOPT_REDBOOT_FIS_REDBOOT {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # component CYGOPT_REDBOOT_FIS_REDBOOT_POST
-    #     DefaultValue: !CYGOPT_REDBOOT_FIS_REDBOOT
-    # option CYGBLD_REDBOOT_MIN_IMAGE_SIZE
-    #     DefaultValue:  CYGOPT_REDBOOT_FIS_REDBOOT ? 0x20000 : 0 
-};
-
-# File to describe RedBoot POST-compatible image
-# This option controls creation of an entry describing a
-# POST-startup RedBoot image in the fis init command.
-# Not all platforms support POST-startup.  A platform
-# might have both for testing purposes, where the
-# eventual user would substitute their own POST code for
-# the initial ROM-startup RedBoot, and then jump to the
-# POST-compatible RedBoot immediately following.
-#
-cdl_component CYGOPT_REDBOOT_FIS_REDBOOT_POST {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: !CYGOPT_REDBOOT_FIS_REDBOOT
-    #     CYGOPT_REDBOOT_FIS_REDBOOT == 1
-    #   --> 0
-};
-
-# >
-# Offset of POST image from FLASH start
-# This option specifies the offset for a POST image from
-# the start of FLASH.  If unset, then the fis entry
-# describing the POST image will be placed where
-# convenient.
-#
-cdl_option CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET {
-    # This option is not active
-    # The parent CYGOPT_REDBOOT_FIS_REDBOOT_POST is disabled
-
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-    # Requires:  CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET >=  CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
-    #     CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET == 0
-    #     CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET
-    #     Requires:  CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET >=  CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
-};
-
-# <
-# File to describe RedBoot backup image
-# This option controls creation of an entry describing a
-# backup RedBoot image in the fis init command.
-# Conventionally a RAM-startup RedBoot image is kept
-# under this name for use in updating the ROM-based
-# RedBoot that boots the board.
-#
-cdl_option CYGOPT_REDBOOT_FIS_REDBOOT_BACKUP {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Include ARM SIB ID in FIS
-# If set, this option will cause the last 5 words of
-# the FIS to include the special ID needed for the
-# flash to be recognized as a reserved area for RedBoot
-# by an ARM BootRom monitor.
-#
-cdl_option CYGOPT_REDBOOT_FIS_DIRECTORY_ARM_SIB_ID {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Size of FIS directory entry
-# The FIS directory is limited to one single flash
-# sector. If your flash has tiny sectors, you may wish
-# to reduce this value in order to get more slots in
-# the FIS directory.
-#
-cdl_option CYGNUM_REDBOOT_FIS_DIRECTORY_ENTRY_SIZE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 256
-    # value_source default
-    # Default value: 256
-};
-
-# Number of FIS directory entries
-# The FIS directory normally occupies a single flash
-# sector. Adjusting this value can allow for more than
-# one flash sector to be used, which is useful if your
-# sectors are very small.
-#
-cdl_option CYGNUM_REDBOOT_FIS_DIRECTORY_ENTRY_COUNT {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 8
-    # value_source default
-    # Default value: 8
-};
-
-# Maximum RedBoot image size
-# This option controls the maximum length reserved
-# for the RedBoot boot image in the FIS table.
-# This should be a multiple of the flash's erase
-# block size.
-#
-cdl_option CYGBLD_REDBOOT_MIN_IMAGE_SIZE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0x00020000
-    # The inferred value should not be edited directly.
-    inferred_value 0x00040000
-    # value_source inferred
-    # Default value:  CYGOPT_REDBOOT_FIS_REDBOOT ? 0x20000 : 0 
-    #     CYGOPT_REDBOOT_FIS_REDBOOT == 1
-    #   --> 0x00020000
-};
-
-# Offset from start of FLASH to RedBoot boot image
-# This option controls where the RedBoot boot image is 
-# located relative to the start of FLASH.
-#
-cdl_option CYGBLD_REDBOOT_FLASH_BOOT_OFFSET {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: CYGNUM_REDBOOT_FLASH_RESERVED_BASE
-    #     CYGNUM_REDBOOT_FLASH_RESERVED_BASE == 0
-    #   --> 0
-    # Requires:  CYGNUM_REDBOOT_FLASH_RESERVED_BASE <=  CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
-    #     CYGNUM_REDBOOT_FLASH_RESERVED_BASE == 0
-    #     CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET
-    #     Requires:  CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET >=  CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
-    # option CYGBLD_REDBOOT_FLASH_BOOT_OFFSET
-    #     Requires:  CYGNUM_REDBOOT_FLASH_RESERVED_BASE <=  CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
-    # component CYGPKG_HAL_ARM_TX25_OPTIONS
-    #     Requires:  CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 
-};
-
-# Size of reserved area at start of FLASH
-# This option reserves an area at the start of
-# FLASH where RedBoot will never interfere; it is
-# expected that this area contains
-# (non-RedBoot-based) POST code or some other boot
-# monitor that executes before RedBoot.
-#
-cdl_option CYGNUM_REDBOOT_FLASH_RESERVED_BASE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # option CYGOPT_REDBOOT_FIS_RESERVED_BASE
-    #     ActiveIf:  0 != CYGNUM_REDBOOT_FLASH_RESERVED_BASE 
-    # option CYGBLD_REDBOOT_FLASH_BOOT_OFFSET
-    #     DefaultValue: CYGNUM_REDBOOT_FLASH_RESERVED_BASE
-    # option CYGBLD_REDBOOT_FLASH_BOOT_OFFSET
-    #     Requires:  CYGNUM_REDBOOT_FLASH_RESERVED_BASE <=  CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
-};
-
-# <
-# Keep all RedBoot FLASH data blocks locked.
-# When this option is enabled, RedBoot will keep configuration
-# data and the FIS directory blocks implicitly locked.  While
-# this is somewhat safer, it does add overhead during updates.
-#
-cdl_option CYGSEM_REDBOOT_FLASH_LOCK_SPECIAL {
-    # This option is not active
-    # ActiveIf constraint:  CYGHWR_IO_FLASH_BLOCK_LOCKING != 0 
-    #     CYGHWR_IO_FLASH_BLOCK_LOCKING == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Use CRC checksums on FIS images.
-# When this option is enabled, RedBoot will use CRC checksums
-# when reading and writing flash images.
-#
-cdl_option CYGSEM_REDBOOT_FIS_CRC_CHECK {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 1
-};
-
-# ARM FLASH drivers support SIB flash block structure
-# This interface is implemented by a flash driver
-# to indicate that it supports the ARM SIB flash
-# block structure
-#
-cdl_interface CYGINT_REDBOOT_ARM_FLASH_SIB_SUPPORTED {
-    # No options implement this inferface
-    # ActiveIf constraint: CYGPKG_HAL_ARM
-    #     CYGPKG_HAL_ARM == current
-    #   --> 1
-
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # option CYGHWR_REDBOOT_ARM_FLASH_SIB
-    #     ActiveIf: CYGINT_REDBOOT_ARM_FLASH_SIB_SUPPORTED
-};
-
-# Use ARM SIB flash block structure
-# This option is used to interpret ARM Flash System 
-# information blocks.
-#
-cdl_option CYGHWR_REDBOOT_ARM_FLASH_SIB {
-    # This option is not active
-    # ActiveIf constraint: CYGINT_REDBOOT_ARM_FLASH_SIB_SUPPORTED
-    #     CYGINT_REDBOOT_ARM_FLASH_SIB_SUPPORTED == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# <
-# Keep RedBoot configuration data in FLASH
-# When this option is enabled, RedBoot will keep configuration
-# data in a separate block of FLASH memory.  This data will
-# include such items as the node IP address or startup scripts.
-#
-cdl_component CYGSEM_REDBOOT_FLASH_CONFIG {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  CYGPKG_IO_FLASH != 0 
-    #     CYGPKG_IO_FLASH == current
-    #   --> 1
-
-    # The following properties are affected by this value
-    # component CYGDAT_REDBOOT_DEFAULT_IP_ADDR
-    #     DefaultValue: CYGSEM_REDBOOT_FLASH_CONFIG ? 0 :  "0, 0, 0, 0" 
-    # option CYGDAT_REDBOOT_DEFAULT_BOOTP_SERVER_IP_ADDR
-    #     DefaultValue: CYGSEM_REDBOOT_FLASH_CONFIG ? 0 :  "0, 0, 0, 0" 
-    # component CYGDAT_REDBOOT_DEFAULT_GATEWAY_IP_ADDR
-    #     DefaultValue: CYGSEM_REDBOOT_FLASH_CONFIG ? 0 :  "0, 0, 0, 0" 
-    # component CYGDAT_REDBOOT_DEFAULT_IP_ADDR_MASK
-    #     DefaultValue: CYGSEM_REDBOOT_FLASH_CONFIG ? 0 :  "255, 255, 255, 0" 
-    # option CYGPKG_REDBOOT_NETWORKING_DNS_IP
-    #     ActiveIf: !CYGSEM_REDBOOT_FLASH_CONFIG
-    # option CYGPKG_REDBOOT_NETWORKING_DNS_FCONFIG_DOMAIN
-    #     ActiveIf: CYGSEM_REDBOOT_FLASH_CONFIG
-    # option CYGFUN_REDBOOT_BOOT_SCRIPT
-    #     ActiveIf:  CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT ||  CYGSEM_REDBOOT_FLASH_CONFIG 
-};
-
-# >
-# Length of configuration data in FLASH
-# This option is used to control the amount of memory and FLASH
-# to be used for configuration options (persistent storage).
-#
-cdl_option CYGNUM_REDBOOT_FLASH_CONFIG_SIZE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 4096
-    # value_source default
-    # Default value: 4096
-};
-
-# Style of media used for persistent data storage
-# Persistent data storage can either be held in 'norma' FLASH
-# or some other device (represented by the 'EEPROM' choice).
-# The different styles utilize different access methods.
-#
-cdl_option CYGHWR_REDBOOT_FLASH_CONFIG_MEDIA {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value FLASH
-    # value_source default
-    # Default value: FLASH
-    # Legal values:  "FLASH" "EEPROM" 
-
-    # The following properties are affected by this value
-    # option CYGSEM_REDBOOT_FLASH_COMBINED_FIS_AND_CONFIG
-    #     ActiveIf:  CYGOPT_REDBOOT_FIS &&  (CYGHWR_REDBOOT_FLASH_CONFIG_MEDIA == "FLASH") 
-    # option CYGSEM_REDBOOT_FLASH_CONFIG_READONLY_FALLBACK
-    #     DefaultValue:  (CYGHWR_REDBOOT_FLASH_CONFIG_MEDIA == "FLASH") 
-};
-
-# Merged config data and FIS directory
-# If this option is set, then the FIS directory and FLASH 
-# configuration database will be stored in the same physical
-# FLASH block.
-#
-cdl_option CYGSEM_REDBOOT_FLASH_COMBINED_FIS_AND_CONFIG {
-    # ActiveIf constraint:  CYGOPT_REDBOOT_FIS &&  (CYGHWR_REDBOOT_FLASH_CONFIG_MEDIA == "FLASH") 
-    #     CYGOPT_REDBOOT_FIS == 1
-    #     CYGHWR_REDBOOT_FLASH_CONFIG_MEDIA == FLASH
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # component CYGOPT_REDBOOT_REDUNDANT_FIS
-    #     Requires:  0 == CYGSEM_REDBOOT_FLASH_COMBINED_FIS_AND_CONFIG 
-};
-
-# Which block of flash to use
-# Which block of flash should hold the configuration 
-# information. Positive numbers are absolute block numbers. 
-# Negative block numbers count backwards from the last block.
-# eg 2 means block 2, -2 means the last but one block.
-#
-cdl_option CYGNUM_REDBOOT_FLASH_CONFIG_BLOCK {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -2
-    # value_source default
-    # Default value: -2
-};
-
-# Support simple macros/aliases in FLASH
-# This option is used to allow support for simple text-based
-# macros (aliases).  These aliases are kept in the FLASH
-# configuration data (persistent storage).
-#
-cdl_option CYGSEM_REDBOOT_FLASH_ALIASES {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Length of strings in FLASH configuration data
-# This option is used to control the amount of memory
-# and FLASH to be used for string configuration
-# options (persistent storage).
-#
-cdl_option CYGNUM_REDBOOT_FLASH_STRING_SIZE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 128
-    # value_source default
-    # Default value: 128
-};
-
-# Length of configuration script(s) in FLASH
-# This option is used to control the amount of memory and 
-# FLASH to be used for configuration options (persistent 
-# storage).
-#
-cdl_option CYGNUM_REDBOOT_FLASH_SCRIPT_SIZE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 512
-    # The inferred value should not be edited directly.
-    inferred_value 2048
-    # value_source inferred
-    # Default value: 512
-};
-
-# Fallback to read-only FLASH configuration
-# This option will cause the configuration information to
-# revert to the readonly information stored in the FLASH.
-# The option only takes effect after 
-# 1) the config_ok flag has been set to be true,
-# indicating that at one time the copy in RAM was valid;
-# and
-# 2) the information in RAM has been verified to be invalid
-#
-cdl_option CYGSEM_REDBOOT_FLASH_CONFIG_READONLY_FALLBACK {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  (CYGHWR_REDBOOT_FLASH_CONFIG_MEDIA == "FLASH") 
-    #     CYGHWR_REDBOOT_FLASH_CONFIG_MEDIA == FLASH
-    #   --> 1
-};
-
-# <
-# Allow RedBoot to support fileio
-# If this option is enabled then RedBoot will provide commands
-# to load files from fileio file systems such as JFFS2.
-#
-cdl_component CYGPKG_REDBOOT_FILEIO {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_IO_FILEIO
-    #     CYGPKG_IO_FILEIO (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # option CYGNUM_REDBOOT_GETC_BUFFER
-    #     DefaultValue:  CYGPKG_REDBOOT_FILEIO ? 4096 : 256 
-};
-
-# >
-# Include an ls command
-# If this option is enabled a simple ls command will be
-# included in redboot so the contents of a directory
-# can be listed
-#
-cdl_option CYGBLD_REDBOOT_FILEIO_WITH_LS {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_FILEIO is not active
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# <
-# Allow RedBoot to support disks
-# If this option is enabled then RedBoot will provide commands
-# to load disk files.
-#
-cdl_component CYGPKG_REDBOOT_DISK {
-    # Flavor: bool
-    user_value 0
-    # value_source user
-    # Default value: 1
-};
-
-# >
-# Include Redboot commands for disk access
-#
-cdl_option CYGSEM_REDBOOT_DISK {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_DISK is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value:  CYGINT_REDBOOT_DISK_DRIVERS != 0 
-    #     CYGINT_REDBOOT_DISK_DRIVERS == 0
-    #   --> 0
-};
-
-# Hardware drivers for disk-type devices
-#
-cdl_interface CYGINT_REDBOOT_DISK_DRIVERS {
-    # Implemented by CYGSEM_REDBOOT_DISK_IDE, inactive, enabled
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_DISK is disabled
-
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # option CYGSEM_REDBOOT_DISK
-    #     DefaultValue:  CYGINT_REDBOOT_DISK_DRIVERS != 0 
-};
-
-# Maximum number of supported disks
-# This option controls the number of disks supported by 
-# RedBoot.
-#
-cdl_option CYGNUM_REDBOOT_MAX_DISKS {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_DISK is disabled
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 4
-    # value_source default
-    # Default value: 4
-};
-
-# Maximum number of partitions per disk
-# This option controls the maximum number of supported 
-# partitions per disk.
-#
-cdl_option CYGNUM_REDBOOT_MAX_PARTITIONS {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_DISK is disabled
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 8
-    # value_source default
-    # Default value: 8
-};
-
-# Support IDE disks.
-# When this option is enabled, RedBoot will support IDE disks.
-#
-cdl_component CYGSEM_REDBOOT_DISK_IDE {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_DISK is disabled
-    # ActiveIf constraint:  CYGINT_HAL_PLF_IF_IDE != 0 
-    #     CYGINT_HAL_PLF_IF_IDE == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# >
-# Work with VMware virtual disks
-# This option controls the disk driver behavior at 
-# ide-init
-#
-cdl_option CYGSEM_REDBOOT_DISK_IDE_VMWARE {
-    # This option is not active
-    # The parent CYGSEM_REDBOOT_DISK_IDE is not active
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# <
-# Support Linux second extended filesystems.
-# When this option is enabled, RedBoot will support EXT2 
-# filesystems.
-#
-cdl_component CYGSEM_REDBOOT_DISK_EXT2FS {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_DISK is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Support ISO9660 filesystems.
-# When this option is enabled, RedBoot will support ISO9660 
-# filesystems.
-#
-cdl_component CYGSEM_REDBOOT_DISK_ISO9660 {
-    # This option is not active
-    # The parent CYGPKG_REDBOOT_DISK is disabled
-
-    # Calculated value: 0
-    # Flavor: bool
-    # Current value: 0
-};
-
-# <
-# Boot scripting
-# doc: ref/persistent-state-flash.html
-# This contains options related to RedBoot's boot script
-# functionality.
-#
-cdl_component CYGPKG_REDBOOT_BOOT_SCRIPT {
-    # There is no associated value.
-};
-
-# >
-# Boot scripting enabled
-# This option controls whether RedBoot boot script
-# functionality is enabled.
-#
-cdl_option CYGFUN_REDBOOT_BOOT_SCRIPT {
-    # ActiveIf constraint:  CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT ||  CYGSEM_REDBOOT_FLASH_CONFIG 
-    #     CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT == 0
-    #     CYGSEM_REDBOOT_FLASH_CONFIG == 1
-    #   --> 1
-
-    # Calculated value: 1
-    # Flavor: bool
-    # Current value: 1
-};
-
-# Use default RedBoot boot script
-# If enabled, this option will tell RedBoot to use the 
-# value of this option as a default boot script.
-#
-cdl_option CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # option CYGFUN_REDBOOT_BOOT_SCRIPT
-    #     ActiveIf:  CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT ||  CYGSEM_REDBOOT_FLASH_CONFIG 
-};
-
-# Resolution (in ms) for script timeout value.
-# This option controls the resolution of the script
-# timeout.  The value is specified in milliseconds
-# (ms), thus to have the script timeout be defined in
-# terms of tenths of seconds, use 100.
-#
-cdl_option CYGNUM_REDBOOT_BOOT_SCRIPT_TIMEOUT_RESOLUTION {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 1000
-    # The inferred value should not be edited directly.
-    inferred_value 10
-    # value_source inferred
-    # Default value: 1000
-};
-
-# Script default timeout value
-# This option is used to set the default timeout for startup
-# scripts, when they are enabled.
-#
-cdl_option CYGNUM_REDBOOT_BOOT_SCRIPT_DEFAULT_TIMEOUT {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 10
-    # The inferred value should not be edited directly.
-    inferred_value 1
-    # value_source inferred
-    # Default value: 10
-};
-
-# <
-# Support RTC for time & date functions
-# When this option is enabled, RedBoot will support commands to
-# query and set the real time clock (time and date)
-#
-cdl_option CYGSEM_REDBOOT_RTC {
-    # This option is not active
-    # ActiveIf constraint:  CYGPKG_IO_WALLCLOCK 
-    #     CYGPKG_IO_WALLCLOCK (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Behave like a ROM monitor
-# Enabling this option will allow RedBoot to provide ROM 
-# monitor-style services to programs which it executes.
-#
-cdl_option CYGPRI_REDBOOT_ROM_MONITOR {
-    # ActiveIf constraint:  CYG_HAL_STARTUP == "ROM" ||  CYG_HAL_STARTUP == "ROMRAM" 
-    #     CYG_HAL_STARTUP == ROMRAM
-    #     CYG_HAL_STARTUP == ROMRAM
-    #   --> 1
-
-    # Calculated value: 1
-    # Flavor: bool
-    # Current value: 1
-    # Requires: CYGSEM_HAL_ROM_MONITOR
-    #     CYGSEM_HAL_ROM_MONITOR == 1
-    #   --> 1
-};
-
-# Allow RedBoot to handle GNUPro application 'syscalls'.
-# If this option is enabled then RedBoot will install a
-# syscall handler to support debugging of applications
-# based on GNUPro newlib/bsp.
-#
-cdl_component CYGSEM_REDBOOT_BSP_SYSCALLS {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # option CYGOPT_HAL_ARM_SYSCALL_GPROF_SUPPORT
-    #     ActiveIf: CYGSEM_REDBOOT_BSP_SYSCALLS
-    # option CYGPKG_HAL_GDB_FILEIO
-    #     ActiveIf: CYGSEM_REDBOOT_BSP_SYSCALLS
-};
-
-# >
-# Support additional syscalls for 'gprof' profiling
-# Support additional syscalls to support a periodic callback
-# function for histogram-style profiling, and an enquire/set
-# of the tick rate.
-# The application must use the GNUPro newlib facilities
-# to set this up.
-#
-cdl_option CYGSEM_REDBOOT_BSP_SYSCALLS_GPROF {
-    # This option is not active
-    # The parent CYGSEM_REDBOOT_BSP_SYSCALLS is disabled
-    # ActiveIf constraint:  0 < CYGINT_REDBOOT_BSP_SYSCALLS_GPROF_SUPPORT 
-    #     CYGINT_REDBOOT_BSP_SYSCALLS_GPROF_SUPPORT == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Does the HAL support 'gprof' profiling?
-#
-cdl_interface CYGINT_REDBOOT_BSP_SYSCALLS_GPROF_SUPPORT {
-    # Implemented by CYGOPT_HAL_ARM_SYSCALL_GPROF_SUPPORT, inactive, enabled
-    # This option is not active
-    # The parent CYGSEM_REDBOOT_BSP_SYSCALLS is disabled
-
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-
-    # The following properties are affected by this value
-    # option CYGSEM_REDBOOT_BSP_SYSCALLS_GPROF
-    #     ActiveIf:  0 < CYGINT_REDBOOT_BSP_SYSCALLS_GPROF_SUPPORT 
-};
-
-# Do not raise SIGTRAP when program exits
-# For some (single shot) newlib based programs,
-# exiting and returning a termination status may be
-# the normal expected behavior.
-#
-cdl_option CYGOPT_REDBOOT_BSP_SYSCALLS_EXIT_WITHOUT_TRAP {
-    # This option is not active
-    # The parent CYGSEM_REDBOOT_BSP_SYSCALLS is disabled
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# <
-# Use a common buffer for Zlib and FIS
-# Use a common memory buffer for both the zlib workspace
-# and FIS directory operations. This can save a substantial
-# amount of RAM, especially when flash sectors are large.
-#
-cdl_component CYGOPT_REDBOOT_FIS_ZLIB_COMMON_BUFFER {
-    # ActiveIf constraint:  CYGBLD_BUILD_REDBOOT_WITH_ZLIB &&  CYGOPT_REDBOOT_FIS 
-    #     CYGBLD_BUILD_REDBOOT_WITH_ZLIB == 1
-    #     CYGOPT_REDBOOT_FIS == 1
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# >
-# Size of Zlib/FIS common buffer
-# Size of common buffer to allocate. Must be at least the
-# size of one flash sector.
-#
-cdl_option CYGNUM_REDBOOT_FIS_ZLIB_COMMON_BUFFER_SIZE {
-    # This option is not active
-    # The parent CYGOPT_REDBOOT_FIS_ZLIB_COMMON_BUFFER is disabled
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0x0000C000
-    # value_source default
-    # Default value: 0x0000C000
-    # Legal values: 0x4000 to 0x80000000
-};
-
-# <
-# Buffer size in getc when loading images
-# When loading images a buffer is used between redboot and the
-# underlying storage medium, eg a filesystem, or a socket etc.
-# The size of this buffer can have a big impart on load speed.
-#
-cdl_option CYGNUM_REDBOOT_GETC_BUFFER {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 256
-    # value_source default
-    # Default value:  CYGPKG_REDBOOT_FILEIO ? 4096 : 256 
-    #     CYGPKG_REDBOOT_FILEIO == 0
-    #   --> 256
-};
-
-# <
-# Redboot for ARM options
-# This option lists the target's requirements for a valid Redboot
-# configuration.
-#
-cdl_component CYGPKG_REDBOOT_ARM_OPTIONS {
-    # ActiveIf constraint: CYGPKG_REDBOOT
-    #     CYGPKG_REDBOOT == current
-    #   --> 1
-
-    # There is no associated value.
-
-    # The following properties are affected by this value
-};
-
-# >
-# Provide the exec command in RedBoot
-# This option contains requirements for booting linux
-# from RedBoot. The component is enabled/disabled from
-# RedBoots CDL.
-#
-cdl_component CYGPKG_REDBOOT_ARM_LINUX_EXEC {
-    # ActiveIf constraint: CYGBLD_BUILD_REDBOOT_WITH_EXEC
-    #     CYGBLD_BUILD_REDBOOT_WITH_EXEC == 1
-    #   --> 1
-
-    # There is no associated value.
-};
-
-# >
-# Enable -x switch for exec command.
-# This option allows bi-endian platforms to launch kernels
-# built for an endianess different than the RedBoot endianess
-#
-cdl_option CYGHWR_REDBOOT_LINUX_EXEC_X_SWITCH {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Physical base address of linux kernel
-# This is the physical address of the base of the 
-# Linux kernel image.
-#
-cdl_option CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0x80108000
-    # value_source default
-    # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT
-    #     CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x80108000
-    #   --> 0x80108000
-};
-
-# Default physical base address of linux kernel
-# This is the physical address of the base of the 
-# Linux kernel image. This option gets set by the 
-# platform CDL.
-#
-cdl_option CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0x00008000
-    # The inferred value should not be edited directly.
-    inferred_value 0x80108000
-    # value_source inferred
-    # Default value: 0x00008000
-
-    # The following properties are affected by this value
-    # option CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS
-    #     DefaultValue: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT
-    # component CYGPKG_REDBOOT_HAL_TX25_OPTIONS
-    #     Requires:  CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x80108000 
-};
-
-# Base address of linux kernel parameter tags
-# This is the base address of the area of memory used to
-# pass parameters to the Linux kernel. This should be chosen
-# to avoid overlap with the kernel and any ramdisk image.
-#
-cdl_option CYGHWR_REDBOOT_ARM_LINUX_TAGS_ADDRESS {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0x00000100
-    # value_source default
-    # Default value: 0x00000100
-};
-
-# <
-# <
-# Redboot HAL options
-# This option lists the target's requirements for a valid Redboot
-# configuration.
-#
-cdl_component CYGPKG_REDBOOT_HAL_OPTIONS {
-    # ActiveIf constraint: CYGPKG_REDBOOT
-    #     CYGPKG_REDBOOT == current
-    #   --> 1
-
-    # There is no associated value.
-};
-
-# >
-# Build Redboot ROM binary image
-# This option enables the conversion of the Redboot ELF
-# image to a binary image suitable for ROM programming.
-#
-cdl_option CYGBLD_BUILD_REDBOOT_BIN {
-    # ActiveIf constraint: CYGBLD_BUILD_REDBOOT
-    #     CYGBLD_BUILD_REDBOOT == 1
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# <
-# Redboot HAL variant options
-#
-cdl_component CYGPKG_REDBOOT_HAL_TX25_OPTIONS {
-    # ActiveIf constraint: CYGPKG_REDBOOT
-    #     CYGPKG_REDBOOT == current
-    #   --> 1
-
-    # There is no associated value.
-    # Requires:  CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x80108000 
-    #     CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x80108000
-    #   --> 1
-};
-
-# <
-# ISO C and POSIX infrastructure
-# eCos supports implementations of ISO C libraries and POSIX
-# implementations. This package provides infrastructure used by
-# all such implementations.
-#
-cdl_package CYGPKG_ISOINFRA {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-
-    # The following properties are affected by this value
-    # component CYGBLD_BUILD_REDBOOT
-    #     Requires: CYGPKG_ISOINFRA
-    # package CYGPKG_LIBC_STRING
-    #     Requires: CYGPKG_ISOINFRA
-    # package CYGPKG_COMPRESS_ZLIB
-    #     Requires: CYGPKG_ISOINFRA
-    # package CYGPKG_IO_FLASH
-    #     Requires: CYGPKG_ISOINFRA
-    # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY
-    #     Requires: CYGPKG_ISOINFRA
-    # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY
-    #     DefaultValue:  0 != CYGPKG_ISOINFRA 
-    # component CYGPKG_MEMALLOC_MALLOC_ALLOCATORS
-    #     ActiveIf: CYGPKG_ISOINFRA
-    # package CYGPKG_LIBC_I18N
-    #     Requires: CYGPKG_ISOINFRA
-    # package CYGPKG_LIBC_STDLIB
-    #     Requires: CYGPKG_ISOINFRA
-};
-
-# >
-# Startup and termination
-#
-cdl_component CYGPKG_ISO_STARTUP {
-    # There is no associated value.
-};
-
-# >
-# main() startup implementations
-# Implementations of this interface arrange for a user-supplied
-# main() to be called in an ISO compatible environment.
-#
-cdl_interface CYGINT_ISO_MAIN_STARTUP {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_MAIN_STARTUP 
-    #     CYGINT_ISO_MAIN_STARTUP == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_MAIN_STARTUP
-    #     Requires:  1 >= CYGINT_ISO_MAIN_STARTUP 
-};
-
-# environ implementations
-# Implementations of this interface provide the environ
-# variable required by POSIX.
-#
-cdl_interface CYGINT_ISO_ENVIRON {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_ENVIRON 
-    #     CYGINT_ISO_ENVIRON == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_ENVIRON
-    #     Requires:  1 >= CYGINT_ISO_ENVIRON 
-};
-
-# <
-# ctype.h functions
-#
-cdl_component CYGPKG_ISO_CTYPE_H {
-    # There is no associated value.
-};
-
-# >
-# Number of implementations of ctype functions
-#
-cdl_interface CYGINT_ISO_CTYPE {
-    # Implemented by CYGPKG_LIBC_I18N, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_CTYPE 
-    #     CYGINT_ISO_CTYPE == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_CTYPE
-    #     Requires:  1 >= CYGINT_ISO_CTYPE 
-    # package CYGPKG_HAL_ARM_TX25KARO
-    #     Requires: CYGINT_ISO_CTYPE
-    # option CYGFUN_LIBC_STRING_BSD_FUNCS
-    #     Requires: CYGINT_ISO_CTYPE
-    # package CYGPKG_LIBC_STDLIB
-    #     Requires: CYGINT_ISO_CTYPE
-};
-
-# Ctype implementation header
-#
-cdl_option CYGBLD_ISO_CTYPE_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/libc/i18n/ctype.inl>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # option CYGPKG_LIBC_I18N_NEWLIB_CTYPE
-    #     Requires:  CYGBLD_ISO_CTYPE_HEADER ==  "<cyg/libc/i18n/newlibctype.h>" 
-    # option CYGIMP_LIBC_I18N_CTYPE_INLINES
-    #     Requires:  CYGBLD_ISO_CTYPE_HEADER ==  "<cyg/libc/i18n/ctype.inl>" 
-};
-
-# <
-# Error handling
-#
-cdl_component CYGPKG_ISO_ERRNO {
-    # There is no associated value.
-};
-
-# >
-# Number of implementations of error codes
-#
-cdl_interface CYGINT_ISO_ERRNO_CODES {
-    # Implemented by CYGPKG_ERROR, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_ERRNO_CODES 
-    #     CYGINT_ISO_ERRNO_CODES == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_ERRNO_CODES
-    #     Requires:  1 >= CYGINT_ISO_ERRNO_CODES 
-};
-
-# Error codes implementation header
-#
-cdl_option CYGBLD_ISO_ERRNO_CODES_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/error/codes.h>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # package CYGPKG_ERROR
-    #     Requires:  CYGBLD_ISO_ERRNO_CODES_HEADER == "<cyg/error/codes.h>" 
-};
-
-# Number of implementations of errno variable
-#
-cdl_interface CYGINT_ISO_ERRNO {
-    # Implemented by CYGPKG_ERROR_ERRNO, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_ERRNO 
-    #     CYGINT_ISO_ERRNO == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_ERRNO
-    #     Requires:  1 >= CYGINT_ISO_ERRNO 
-};
-
-# errno variable implementation header
-#
-cdl_option CYGBLD_ISO_ERRNO_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/error/errno.h>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # component CYGPKG_ERROR_ERRNO
-    #     Requires:  CYGBLD_ISO_ERRNO_HEADER == "<cyg/error/errno.h>" 
-};
-
-# <
-# Locale-related functions
-#
-cdl_component CYGPKG_ISO_LOCALE {
-    # There is no associated value.
-};
-
-# >
-# Number of implementations of locale functions
-#
-cdl_interface CYGINT_ISO_LOCALE {
-    # Implemented by CYGPKG_LIBC_I18N, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_LOCALE 
-    #     CYGINT_ISO_LOCALE == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_LOCALE
-    #     Requires:  1 >= CYGINT_ISO_LOCALE 
-};
-
-# Locale implementation header
-#
-cdl_option CYGBLD_ISO_LOCALE_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# Standard I/O-related functionality
-#
-cdl_component CYGPKG_ISO_STDIO {
-    # There is no associated value.
-};
-
-# >
-# Number of implementations of stdio file types
-#
-cdl_interface CYGINT_ISO_STDIO_FILETYPES {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_STDIO_FILETYPES 
-    #     CYGINT_ISO_STDIO_FILETYPES == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDIO_FILETYPES
-    #     Requires:  1 >= CYGINT_ISO_STDIO_FILETYPES 
-};
-
-# Stdio file types implementation header
-#
-cdl_option CYGBLD_ISO_STDIO_FILETYPES_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Stdio standard streams implementations
-#
-cdl_interface CYGINT_ISO_STDIO_STREAMS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_STDIO_STREAMS 
-    #     CYGINT_ISO_STDIO_STREAMS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDIO_STREAMS
-    #     Requires:  1 >= CYGINT_ISO_STDIO_STREAMS 
-};
-
-# Stdio standard streams implementation header
-# This header file must define stdin, stdout
-# and stderr.
-#
-cdl_option CYGBLD_ISO_STDIO_STREAMS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of stdio file operations
-#
-cdl_interface CYGINT_ISO_STDIO_FILEOPS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_STDIO_FILEOPS 
-    #     CYGINT_ISO_STDIO_FILEOPS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDIO_FILEOPS
-    #     Requires:  1 >= CYGINT_ISO_STDIO_FILEOPS 
-};
-
-# Stdio file operations implementation header
-# This header controls the file system operations on a file
-# such as remove(), rename(), tmpfile(), tmpnam() and associated
-# constants.
-#
-cdl_option CYGBLD_ISO_STDIO_FILEOPS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of stdio file access  functionals
-#
-cdl_interface CYGINT_ISO_STDIO_FILEACCESS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_STDIO_FILEACCESS 
-    #     CYGINT_ISO_STDIO_FILEACCESS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDIO_FILEACCESS
-    #     Requires:  1 >= CYGINT_ISO_STDIO_FILEACCESS 
-    # option CYGFUN_COMPRESS_ZLIB_GZIO
-    #     Requires: CYGINT_ISO_STDIO_FILEACCESS
-};
-
-# Stdio file access implementation header
-# This header controls the file access operations
-# such as fclose(), fflush(), fopen(), freopen(), setbuf(),
-# setvbuf(), and associated constants.
-#
-cdl_option CYGBLD_ISO_STDIO_FILEACCESS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of stdio formatted I/O
-#
-cdl_interface CYGINT_ISO_STDIO_FORMATTED_IO {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_STDIO_FORMATTED_IO 
-    #     CYGINT_ISO_STDIO_FORMATTED_IO == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDIO_FORMATTED_IO
-    #     Requires:  1 >= CYGINT_ISO_STDIO_FORMATTED_IO 
-    # option CYGFUN_COMPRESS_ZLIB_GZIO
-    #     Requires: CYGINT_ISO_STDIO_FORMATTED_IO
-};
-
-# Stdio formatted I/O implementation header
-#
-cdl_option CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of stdio character I/O
-#
-cdl_interface CYGINT_ISO_STDIO_CHAR_IO {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_STDIO_CHAR_IO 
-    #     CYGINT_ISO_STDIO_CHAR_IO == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDIO_CHAR_IO
-    #     Requires:  1 >= CYGINT_ISO_STDIO_CHAR_IO 
-};
-
-# Stdio character I/O implementation header
-#
-cdl_option CYGBLD_ISO_STDIO_CHAR_IO_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of stdio direct I/O
-#
-cdl_interface CYGINT_ISO_STDIO_DIRECT_IO {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_STDIO_DIRECT_IO 
-    #     CYGINT_ISO_STDIO_DIRECT_IO == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDIO_DIRECT_IO
-    #     Requires:  1 >= CYGINT_ISO_STDIO_DIRECT_IO 
-};
-
-# Stdio direct I/O implementation header
-#
-cdl_option CYGBLD_ISO_STDIO_DIRECT_IO_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of stdio file positioning
-#
-cdl_interface CYGINT_ISO_STDIO_FILEPOS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_STDIO_FILEPOS 
-    #     CYGINT_ISO_STDIO_FILEPOS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDIO_FILEPOS
-    #     Requires:  1 >= CYGINT_ISO_STDIO_FILEPOS 
-    # option CYGFUN_COMPRESS_ZLIB_GZIO
-    #     Requires: CYGINT_ISO_STDIO_FILEPOS
-};
-
-# Stdio file positioning implementation header
-#
-cdl_option CYGBLD_ISO_STDIO_FILEPOS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of stdio error handling
-#
-cdl_interface CYGINT_ISO_STDIO_ERROR {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_STDIO_ERROR 
-    #     CYGINT_ISO_STDIO_ERROR == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDIO_ERROR
-    #     Requires:  1 >= CYGINT_ISO_STDIO_ERROR 
-};
-
-# Stdio error handling implementation header
-#
-cdl_option CYGBLD_ISO_STDIO_ERROR_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# POSIX fd-related function implementations
-#
-cdl_interface CYGINT_ISO_STDIO_POSIX_FDFUNCS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >=  CYGINT_ISO_STDIO_POSIX_FDFUNCS 
-    #     CYGINT_ISO_STDIO_POSIX_FDFUNCS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDIO_POSIX_FDFUNCS
-    #     Requires:  1 >=  CYGINT_ISO_STDIO_POSIX_FDFUNCS 
-};
-
-# POSIX fd-related function implementation header
-#
-cdl_option CYGBLD_ISO_STDIO_POSIX_FDFUNCS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# Standard general utility functions
-#
-cdl_component CYGPKG_ISO_STDLIB {
-    # There is no associated value.
-};
-
-# >
-# String conversion function implementations
-#
-cdl_interface CYGINT_ISO_STDLIB_STRCONV {
-    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV 
-    #     CYGINT_ISO_STDLIB_STRCONV == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDLIB_STRCONV
-    #     Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV 
-};
-
-# String conversion function implementation header
-#
-cdl_option CYGBLD_ISO_STDLIB_STRCONV_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/libc/stdlib/atox.inl>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # option CYGIMP_LIBC_STDLIB_INLINE_ATOX
-    #     Requires:  CYGBLD_ISO_STDLIB_STRCONV_HEADER ==  "<cyg/libc/stdlib/atox.inl>" 
-};
-
-# String to FP conversion function implementations
-#
-cdl_interface CYGINT_ISO_STDLIB_STRCONV_FLOAT {
-    # Implemented by CYGFUN_LIBC_strtod, active, disabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV_FLOAT 
-    #     CYGINT_ISO_STDLIB_STRCONV_FLOAT == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDLIB_STRCONV_FLOAT
-    #     Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV_FLOAT 
-};
-
-# String to FP conversion function implementation header
-#
-cdl_option CYGBLD_ISO_STDLIB_STRCONV_FLOAT_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Random number generator implementations
-#
-cdl_interface CYGINT_ISO_RAND {
-    # Implemented by CYGIMP_LIBC_RAND_SIMPLEST, active, disabled
-    # Implemented by CYGIMP_LIBC_RAND_SIMPLE1, active, disabled
-    # Implemented by CYGIMP_LIBC_RAND_KNUTH1, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_RAND 
-    #     CYGINT_ISO_RAND == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_RAND
-    #     Requires:  1 >= CYGINT_ISO_RAND 
-};
-
-# Random number generator implementation header
-#
-cdl_option CYGBLD_ISO_RAND_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Malloc implementations
-#
-cdl_interface CYGINT_ISO_MALLOC {
-    # Implemented by CYGPKG_MEMALLOC_MALLOC_ALLOCATORS, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_MALLOC 
-    #     CYGINT_ISO_MALLOC == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_MALLOC
-    #     Requires:  1 >= CYGINT_ISO_MALLOC 
-    # option CYGFUN_LIBC_STRING_STRDUP
-    #     ActiveIf: CYGINT_ISO_MALLOC
-};
-
-# Malloc implementation header
-#
-cdl_option CYGBLD_ISO_MALLOC_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Mallinfo() implementations
-#
-cdl_interface CYGINT_ISO_MALLINFO {
-    # Implemented by CYGPKG_MEMALLOC_MALLOC_ALLOCATORS, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_MALLINFO 
-    #     CYGINT_ISO_MALLINFO == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_MALLINFO
-    #     Requires:  1 >= CYGINT_ISO_MALLINFO 
-};
-
-# Mallinfo() implementation header
-#
-cdl_option CYGBLD_ISO_MALLINFO_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Program exit functionality implementations
-#
-cdl_interface CYGINT_ISO_EXIT {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_EXIT 
-    #     CYGINT_ISO_EXIT == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_EXIT
-    #     Requires:  1 >= CYGINT_ISO_EXIT 
-    # option CYGFUN_INFRA_DUMMY_ABORT
-    #     Requires: !CYGINT_ISO_EXIT
-    # option CYGFUN_INFRA_DUMMY_ABORT
-    #     DefaultValue:  CYGINT_ISO_EXIT == 0 
-};
-
-# Program exit functionality implementation header
-#
-cdl_option CYGBLD_ISO_EXIT_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Program environment implementations
-#
-cdl_interface CYGINT_ISO_STDLIB_ENVIRON {
-    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_STDLIB_ENVIRON 
-    #     CYGINT_ISO_STDLIB_ENVIRON == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDLIB_ENVIRON
-    #     Requires:  1 >= CYGINT_ISO_STDLIB_ENVIRON 
-};
-
-# Program environment implementation header
-#
-cdl_option CYGBLD_ISO_STDLIB_ENVIRON_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# system() implementations
-#
-cdl_interface CYGINT_ISO_STDLIB_SYSTEM {
-    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_STDLIB_SYSTEM 
-    #     CYGINT_ISO_STDLIB_SYSTEM == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDLIB_SYSTEM
-    #     Requires:  1 >= CYGINT_ISO_STDLIB_SYSTEM 
-};
-
-# system() implementation header
-#
-cdl_option CYGBLD_ISO_STDLIB_SYSTEM_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# bsearch() implementations
-#
-cdl_interface CYGINT_ISO_BSEARCH {
-    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_BSEARCH 
-    #     CYGINT_ISO_BSEARCH == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_BSEARCH
-    #     Requires:  1 >= CYGINT_ISO_BSEARCH 
-};
-
-# bsearch() implementation header
-#
-cdl_option CYGBLD_ISO_BSEARCH_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# qsort() implementations
-#
-cdl_interface CYGINT_ISO_QSORT {
-    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_STDLIB_QSORT 
-    #     CYGINT_ISO_STDLIB_QSORT (unknown) == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-};
-
-# qsort() implementation header
-#
-cdl_option CYGBLD_ISO_QSORT_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# abs()/labs() implementations
-#
-cdl_interface CYGINT_ISO_ABS {
-    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_STDLIB_ABS 
-    #     CYGINT_ISO_STDLIB_ABS (unknown) == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-};
-
-# abs()/labs() implementation header
-#
-cdl_option CYGBLD_ISO_STDLIB_ABS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/libc/stdlib/abs.inl>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # option CYGIMP_LIBC_STDLIB_INLINE_ABS
-    #     Requires:  CYGBLD_ISO_STDLIB_ABS_HEADER ==  "<cyg/libc/stdlib/abs.inl>" 
-};
-
-# div()/ldiv() implementations
-#
-cdl_interface CYGINT_ISO_DIV {
-    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_STDLIB_DIV 
-    #     CYGINT_ISO_STDLIB_DIV (unknown) == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-};
-
-# div()/ldiv() implementation header
-#
-cdl_option CYGBLD_ISO_STDLIB_DIV_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/libc/stdlib/div.inl>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # option CYGIMP_LIBC_STDLIB_INLINE_DIV
-    #     Requires:  CYGBLD_ISO_STDLIB_DIV_HEADER ==  "<cyg/libc/stdlib/div.inl>" 
-};
-
-# Header defining the implementation's MB_CUR_MAX
-#
-cdl_option CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # interface CYGINT_LIBC_I18N_MB_REQUIRED
-    #     Requires:  CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER ==  "<cyg/libc/i18n/mb.h>" 
-};
-
-# Multibyte character implementations
-#
-cdl_interface CYGINT_ISO_STDLIB_MULTIBYTE {
-    # Implemented by CYGPKG_LIBC_I18N, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  1 >= CYGINT_ISO_STDLIB_MULTIBYTE 
-    #     CYGINT_ISO_STDLIB_MULTIBYTE == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STDLIB_MULTIBYTE
-    #     Requires:  1 >= CYGINT_ISO_STDLIB_MULTIBYTE 
-};
-
-# Multibyte character implementation header
-#
-cdl_option CYGBLD_ISO_STDLIB_MULTIBYTE_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# String functions
-#
-cdl_component CYGPKG_ISO_STRING {
-    # There is no associated value.
-};
-
-# >
-# Number of implementations of strerror() function
-#
-cdl_interface CYGINT_ISO_STRERROR {
-    # Implemented by CYGPKG_ERROR_STRERROR, active, enabled
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 1
-    # Requires:  1 >= CYGINT_ISO_STRERROR 
-    #     CYGINT_ISO_STRERROR == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STRERROR
-    #     Requires:  1 >= CYGINT_ISO_STRERROR 
-};
-
-# strerror() implementation header
-#
-cdl_option CYGBLD_ISO_STRERROR_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/error/strerror.h>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # option CYGPKG_ERROR_STRERROR
-    #     Requires:  CYGBLD_ISO_STRERROR_HEADER == "<cyg/error/strerror.h>" 
-};
-
-# memcpy() implementation header
-#
-cdl_option CYGBLD_ISO_MEMCPY_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# memset() implementation header
-#
-cdl_option CYGBLD_ISO_MEMSET_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of strtok_r() function
-#
-cdl_interface CYGINT_ISO_STRTOK_R {
-    # Implemented by CYGPKG_LIBC_STRING, active, enabled
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 1
-    # Requires:  1 >= CYGINT_ISO_STRTOK_R 
-    #     CYGINT_ISO_STRTOK_R == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STRTOK_R
-    #     Requires:  1 >= CYGINT_ISO_STRTOK_R 
-};
-
-# strtok_r() implementation header
-#
-cdl_option CYGBLD_ISO_STRTOK_R_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/libc/string/string.h>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # package CYGPKG_LIBC_STRING
-    #     Requires:  CYGBLD_ISO_STRTOK_R_HEADER ==  "<cyg/libc/string/string.h>" 
-};
-
-# Number of implementations of locale-specific string  functions
-# This covers locale-dependent string functions such as strcoll()
-# and strxfrm().
-#
-cdl_interface CYGINT_ISO_STRING_LOCALE_FUNCS {
-    # Implemented by CYGPKG_LIBC_STRING, active, enabled
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 1
-    # Requires:  1 >= CYGINT_ISO_STRING_LOCALE_FUNCS 
-    #     CYGINT_ISO_STRING_LOCALE_FUNCS == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STRING_LOCALE_FUNCS
-    #     Requires:  1 >= CYGINT_ISO_STRING_LOCALE_FUNCS 
-};
-
-# Locale-specific string functions' implementation  header
-# This covers locale-dependent string functions such as strcoll()
-# and strxfrm().
-#
-cdl_option CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/libc/string/string.h>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # package CYGPKG_LIBC_STRING
-    #     Requires:  CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER ==  "<cyg/libc/string/string.h>" 
-};
-
-# Number of implementations of BSD string functions
-#
-cdl_interface CYGINT_ISO_STRING_BSD_FUNCS {
-    # Implemented by CYGFUN_LIBC_STRING_BSD_FUNCS, active, disabled
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_STRING_BSD_FUNCS 
-    #     CYGINT_ISO_STRING_BSD_FUNCS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STRING_BSD_FUNCS
-    #     Requires:  1 >= CYGINT_ISO_STRING_BSD_FUNCS 
-};
-
-# BSD string functions' implementation header
-#
-cdl_option CYGBLD_ISO_STRING_BSD_FUNCS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/libc/string/bsdstring.h>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # option CYGFUN_LIBC_STRING_BSD_FUNCS
-    #     Requires:  CYGBLD_ISO_STRING_BSD_FUNCS_HEADER ==  "<cyg/libc/string/bsdstring.h>" 
-};
-
-# Number of implementations of other mem*() functions
-#
-cdl_interface CYGINT_ISO_STRING_MEMFUNCS {
-    # Implemented by CYGPKG_LIBC_STRING, active, enabled
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 1
-    # Requires:  1 >= CYGINT_ISO_STRING_MEMFUNCS 
-    #     CYGINT_ISO_STRING_MEMFUNCS == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STRING_MEMFUNCS
-    #     Requires:  1 >= CYGINT_ISO_STRING_MEMFUNCS 
-    # component CYGBLD_BUILD_REDBOOT
-    #     Requires: CYGINT_ISO_STRING_MEMFUNCS
-    # component CYGPKG_IO_ETH_DRIVERS_STAND_ALONE
-    #     Requires: CYGINT_ISO_STRING_MEMFUNCS
-};
-
-# Other mem*() functions' implementation header
-#
-cdl_option CYGBLD_ISO_STRING_MEMFUNCS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/libc/string/string.h>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # package CYGPKG_LIBC_STRING
-    #     Requires:  CYGBLD_ISO_STRING_MEMFUNCS_HEADER ==  "<cyg/libc/string/string.h>" 
-};
-
-# Number of implementations of other ISO C str*()  functions
-# This covers the other str*() functions defined by ISO C.
-#
-cdl_interface CYGINT_ISO_STRING_STRFUNCS {
-    # Implemented by CYGPKG_LIBC_STRING, active, enabled
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 1
-    # Requires:  1 >= CYGINT_ISO_STRING_STRFUNCS 
-    #     CYGINT_ISO_STRING_STRFUNCS == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_STRING_STRFUNCS
-    #     Requires:  1 >= CYGINT_ISO_STRING_STRFUNCS 
-    # option CYGFUN_INFRA_DUMMY_STRLEN
-    #     Requires: !CYGINT_ISO_STRING_STRFUNCS
-    # option CYGFUN_INFRA_DUMMY_STRLEN
-    #     DefaultValue:  CYGINT_ISO_STRING_STRFUNCS == 0 
-    # component CYGBLD_BUILD_REDBOOT
-    #     Requires: CYGINT_ISO_STRING_STRFUNCS
-    # component CYGPKG_IO_ETH_DRIVERS_NET
-    #     Requires: CYGINT_ISO_STRING_STRFUNCS
-    # option CYGFUN_COMPRESS_ZLIB_GZIO
-    #     Requires: CYGINT_ISO_STRING_STRFUNCS
-    # package CYGPKG_IO_FLASH
-    #     Requires: CYGINT_ISO_STRING_STRFUNCS
-    # package CYGPKG_LIBC_STDLIB
-    #     Requires: CYGINT_ISO_STRING_STRFUNCS
-};
-
-# Other ISO C str*() functions' implementation  header
-# This covers the other str*() functions defined by ISO C.
-#
-cdl_option CYGBLD_ISO_STRING_STRFUNCS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/libc/string/string.h>
-    # value_source inferred
-    # Default value: 0 0
-
-    # The following properties are affected by this value
-    # package CYGPKG_LIBC_STRING
-    #     Requires:  CYGBLD_ISO_STRING_STRFUNCS_HEADER ==  "<cyg/libc/string/string.h>" 
-};
-
-# <
-# Clock and time functionality
-#
-cdl_component CYGPKG_ISO_TIME {
-    # There is no associated value.
-};
-
-# >
-# time_t implementation header
-#
-cdl_option CYGBLD_ISO_TIME_T_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# clock_t implementation header
-#
-cdl_option CYGBLD_ISO_CLOCK_T_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# struct timeval implementation header
-#
-cdl_option CYGBLD_ISO_STRUCTTIMEVAL_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# fnmatch implementation header
-#
-cdl_option CYGBLD_ISO_FNMATCH_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of POSIX timer types
-#
-cdl_interface CYGINT_ISO_POSIX_TIMER_TYPES {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_POSIX_TIMER_TYPES 
-    #     CYGINT_ISO_POSIX_TIMER_TYPES == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_POSIX_TIMER_TYPES
-    #     Requires:  1 >= CYGINT_ISO_POSIX_TIMER_TYPES 
-};
-
-# POSIX timer types implementation header
-#
-cdl_option CYGBLD_ISO_POSIX_TIMER_TYPES_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of POSIX clock types
-#
-cdl_interface CYGINT_ISO_POSIX_CLOCK_TYPES {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_POSIX_CLOCK_TYPES 
-    #     CYGINT_ISO_POSIX_CLOCK_TYPES == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_POSIX_CLOCK_TYPES
-    #     Requires:  1 >= CYGINT_ISO_POSIX_CLOCK_TYPES 
-};
-
-# POSIX clock types implementation header
-#
-cdl_option CYGBLD_ISO_POSIX_CLOCK_TYPES_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of ISO C types
-#
-cdl_interface CYGINT_ISO_C_TIME_TYPES {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_C_TIME_TYPES 
-    #     CYGINT_ISO_C_TIME_TYPES == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_C_TIME_TYPES
-    #     Requires:  1 >= CYGINT_ISO_C_TIME_TYPES 
-};
-
-# ISO C time types implementation header
-#
-cdl_option CYGBLD_ISO_C_TIME_TYPES_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of POSIX timers
-#
-cdl_interface CYGINT_ISO_POSIX_TIMERS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_POSIX_TIMERS 
-    #     CYGINT_ISO_POSIX_TIMERS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_POSIX_TIMERS
-    #     Requires:  1 >= CYGINT_ISO_POSIX_TIMERS 
-};
-
-# POSIX timer implementation header
-#
-cdl_option CYGBLD_ISO_POSIX_TIMERS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of POSIX clocks
-#
-cdl_interface CYGINT_ISO_POSIX_CLOCKS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_POSIX_CLOCKS 
-    #     CYGINT_ISO_POSIX_CLOCKS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_POSIX_CLOCKS
-    #     Requires:  1 >= CYGINT_ISO_POSIX_CLOCKS 
-};
-
-# POSIX clocks implementation header
-#
-cdl_option CYGBLD_ISO_POSIX_CLOCKS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of ISO C clock functions
-#
-cdl_interface CYGINT_ISO_C_CLOCK_FUNCS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_C_CLOCK_FUNCS 
-    #     CYGINT_ISO_C_CLOCK_FUNCS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_C_CLOCK_FUNCS
-    #     Requires:  1 >= CYGINT_ISO_C_CLOCK_FUNCS 
-};
-
-# ISO C clock functions' implementation header
-#
-cdl_option CYGBLD_ISO_C_CLOCK_FUNCS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of implementations of tzset() function
-#
-cdl_interface CYGINT_ISO_TZSET {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_TZSET 
-    #     CYGINT_ISO_TZSET == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_TZSET
-    #     Requires:  1 >= CYGINT_ISO_TZSET 
-};
-
-# tzset() implementation header
-#
-cdl_option CYGBLD_ISO_TZSET_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# Signal functionality
-#
-cdl_component CYGPKG_ISO_SIGNAL {
-    # There is no associated value.
-};
-
-# >
-# Number of implementations of signal numbers
-#
-cdl_interface CYGINT_ISO_SIGNAL_NUMBERS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_SIGNAL_NUMBERS 
-    #     CYGINT_ISO_SIGNAL_NUMBERS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_SIGNAL_NUMBERS
-    #     Requires:  1 >= CYGINT_ISO_SIGNAL_NUMBERS 
-};
-
-# Signal numbering implementation header
-# This header provides the mapping of signal
-# names (e.g. SIGBUS) to numbers.
-#
-cdl_option CYGBLD_ISO_SIGNAL_NUMBERS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Number of signal implementations
-#
-cdl_interface CYGINT_ISO_SIGNAL_IMPL {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_SIGNAL_IMPL 
-    #     CYGINT_ISO_SIGNAL_IMPL == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_SIGNAL_IMPL
-    #     Requires:  1 >= CYGINT_ISO_SIGNAL_IMPL 
-};
-
-# Signals implementation header
-#
-cdl_option CYGBLD_ISO_SIGNAL_IMPL_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# POSIX real time signals feature test macro
-# This defines the POSIX feature test macro
-# that indicates that the POSIX real time signals
-# are present.
-#
-cdl_interface CYGINT_POSIX_REALTIME_SIGNALS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_POSIX_REALTIME_SIGNALS 
-    #     CYGINT_POSIX_REALTIME_SIGNALS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_POSIX_REALTIME_SIGNALS
-    #     Requires:  1 >= CYGINT_POSIX_REALTIME_SIGNALS 
-};
-
-# <
-# Non-local jumps functionality
-#
-cdl_component CYGPKG_ISO_SETJMP {
-    # There is no associated value.
-};
-
-# >
-# setjmp() / longjmp() implementations
-#
-cdl_interface CYGINT_ISO_SETJMP {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_SETJMP 
-    #     CYGINT_ISO_SETJMP == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_SETJMP
-    #     Requires:  1 >= CYGINT_ISO_SETJMP 
-};
-
-# setjmp() / longjmp() implementation header
-#
-cdl_option CYGBLD_ISO_SETJMP_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# sigsetjmp() / siglongjmp() implementations
-#
-cdl_interface CYGINT_ISO_SIGSETJMP {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_SIGSETJMP 
-    #     CYGINT_ISO_SIGSETJMP == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_SIGSETJMP
-    #     Requires:  1 >= CYGINT_ISO_SIGSETJMP 
-};
-
-# sigsetjmp() / siglongjmp() implementation header
-#
-cdl_option CYGBLD_ISO_SIGSETJMP_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# Assertions implementation header
-#
-cdl_option CYGBLD_ISO_ASSERT_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# POSIX file control
-# This covers the POSIX file control definitions,
-# normally found in <fcntl.h>
-#
-cdl_component CYGPKG_ISO_POSIX_FCNTL {
-    # There is no associated value.
-};
-
-# >
-# POSIX open flags implementation header
-#
-cdl_option CYGBLD_ISO_OFLAG_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# POSIX fcntl() implementations
-#
-cdl_interface CYGINT_ISO_FCNTL {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_FCNTL 
-    #     CYGINT_ISO_FCNTL == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_FCNTL
-    #     Requires:  1 >= CYGINT_ISO_FCNTL 
-};
-
-# POSIX fcntl() implementation header
-#
-cdl_option CYGBLD_ISO_FCNTL_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# POSIX file open implementations
-#
-cdl_interface CYGINT_ISO_OPEN {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_OPEN 
-    #     CYGINT_ISO_OPEN == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_OPEN
-    #     Requires:  1 >= CYGINT_ISO_OPEN 
-};
-
-# POSIX file open implementation header
-#
-cdl_option CYGBLD_ISO_OPEN_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# <sys/stat.h> definitions implementation header
-#
-cdl_option CYGBLD_ISO_STAT_DEFS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# POSIX directory reading implementation
-#
-cdl_interface CYGINT_ISO_DIRENT {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_DIRENT 
-    #     CYGINT_ISO_DIRENT == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_DIRENT
-    #     Requires:  1 >= CYGINT_ISO_DIRENT 
-};
-
-# <dirent.h> definitions implementation header
-#
-cdl_option CYGBLD_ISO_DIRENT_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# POSIX <sys/types.h> contents
-# This covers the types required by POSIX to be in
-# <sys/types.h>
-#
-cdl_component CYGPKG_ISO_POSIX_TYPES {
-    # There is no associated value.
-};
-
-# >
-# POSIX thread types implementations
-#
-cdl_interface CYGINT_ISO_PTHREADTYPES {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_PTHREADTYPES 
-    #     CYGINT_ISO_PTHREADTYPES == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_PTHREADTYPES
-    #     Requires:  1 >= CYGINT_ISO_PTHREADTYPES 
-    # interface CYGINT_ISO_PMUTEXTYPES
-    #     Requires:  1 >= CYGINT_ISO_PTHREADTYPES 
-};
-
-# POSIX thread types implementation header
-#
-cdl_option CYGBLD_ISO_PTHREADTYPES_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# POSIX mutex types implementations
-#
-cdl_interface CYGINT_ISO_PMUTEXTYPES {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_PTHREADTYPES 
-    #     CYGINT_ISO_PTHREADTYPES == 0
-    #   --> 1
-};
-
-# POSIX mutex types implementation header
-#
-cdl_option CYGBLD_ISO_PMUTEXTYPES_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# ssize_t implementation header
-#
-cdl_option CYGBLD_ISO_SSIZE_T_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Filesystem types implementation header
-#
-cdl_option CYGBLD_ISO_FSTYPES_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# gid_t, pid_t, uid_t implementation header
-#
-cdl_option CYGBLD_ISO_SCHEDTYPES_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# Non-POSIX <sys/types.h> contents
-# This covers the extra types required by non-POSIX
-# packages to be in <sys/types.h>. These would normally
-# only be visible if _POSIX_SOURCE is not defined.
-#
-cdl_component CYGPKG_ISO_EXTRA_TYPES {
-    # There is no associated value.
-};
-
-# >
-# BSD compatible types
-#
-cdl_interface CYGINT_ISO_BSDTYPES {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_BSDTYPES 
-    #     CYGINT_ISO_BSDTYPES == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_BSDTYPES
-    #     Requires:  1 >= CYGINT_ISO_BSDTYPES 
-};
-
-# BSD types header
-#
-cdl_option CYGBLD_ISO_BSDTYPES_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# Utsname structure
-#
-cdl_component CYGPKG_ISO_UTSNAME {
-    # There is no associated value.
-};
-
-# >
-# Utsname header
-#
-cdl_option CYGBLD_ISO_UTSNAME_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# POSIX scheduler
-#
-cdl_component CYGPKG_ISO_SCHED {
-    # There is no associated value.
-};
-
-# >
-# POSIX scheduler implementations
-#
-cdl_interface CYGINT_ISO_SCHED_IMPL {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_SCHED_IMPL 
-    #     CYGINT_ISO_SCHED_IMPL == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_SCHED_IMPL
-    #     Requires:  1 >= CYGINT_ISO_SCHED_IMPL 
-};
-
-# POSIX scheduler implementation header
-#
-cdl_option CYGBLD_ISO_SCHED_IMPL_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# POSIX semaphores
-#
-cdl_component CYGPKG_ISO_SEMAPHORES {
-    # There is no associated value.
-};
-
-# >
-# POSIX semaphore implementations
-#
-cdl_interface CYGINT_ISO_SEMAPHORES {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_SEMAPHORES 
-    #     CYGINT_ISO_SEMAPHORES == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_SEMAPHORES
-    #     Requires:  1 >= CYGINT_ISO_SEMAPHORES 
-};
-
-# POSIX semaphore implementation header
-#
-cdl_option CYGBLD_ISO_SEMAPHORES_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# POSIX message queues
-#
-cdl_component CYGPKG_ISO_MQUEUE {
-    # There is no associated value.
-};
-
-# >
-# Implementations
-#
-cdl_interface CYGINT_ISO_MQUEUE {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_MQUEUE 
-    #     CYGINT_ISO_MQUEUE == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_MQUEUE
-    #     Requires:  1 >= CYGINT_ISO_MQUEUE 
-    # option CYGNUM_ISO_MQUEUE_OPEN_MAX
-    #     ActiveIf: CYGINT_ISO_MQUEUE
-    # option CYGNUM_ISO_MQUEUE_PRIO_MAX
-    #     ActiveIf: CYGINT_ISO_MQUEUE
-};
-
-# Implementation header
-#
-cdl_option CYGBLD_ISO_MQUEUE_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Maximum number of open message queues
-#
-cdl_option CYGNUM_ISO_MQUEUE_OPEN_MAX {
-    # This option is not active
-    # ActiveIf constraint: CYGINT_ISO_MQUEUE
-    #     CYGINT_ISO_MQUEUE == 0
-    #   --> 0
-
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value:  CYGNUM_POSIX_MQUEUE_OPEN_MAX > 0 ? CYGNUM_POSIX_MQUEUE_OPEN_MAX : 0 
-    #     CYGNUM_POSIX_MQUEUE_OPEN_MAX (unknown) == 0
-    #     CYGNUM_POSIX_MQUEUE_OPEN_MAX (unknown) == 0
-    #   --> 0 0
-};
-
-# Maximum number of message priorities
-#
-cdl_option CYGNUM_ISO_MQUEUE_PRIO_MAX {
-    # This option is not active
-    # ActiveIf constraint: CYGINT_ISO_MQUEUE
-    #     CYGINT_ISO_MQUEUE == 0
-    #   --> 0
-
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 1 65535
-    # value_source default
-    # Default value: 1 65535
-};
-
-# <
-# POSIX threads
-#
-cdl_component CYGPKG_ISO_PTHREAD {
-    # There is no associated value.
-};
-
-# >
-# POSIX pthread implementations
-#
-cdl_interface CYGINT_ISO_PTHREAD_IMPL {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_PTHREAD_IMPL 
-    #     CYGINT_ISO_PTHREAD_IMPL == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_PTHREAD_IMPL
-    #     Requires:  1 >= CYGINT_ISO_PTHREAD_IMPL 
-};
-
-# POSIX pthread implementation header
-#
-cdl_option CYGBLD_ISO_PTHREAD_IMPL_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# POSIX mutex/cond var implementations
-#
-cdl_interface CYGINT_ISO_PTHREAD_MUTEX {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_PTHREAD_MUTEX 
-    #     CYGINT_ISO_PTHREAD_MUTEX == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_PTHREAD_MUTEX
-    #     Requires:  1 >= CYGINT_ISO_PTHREAD_MUTEX 
-};
-
-# POSIX mutex/cond var implementation header
-#
-cdl_option CYGBLD_ISO_PTHREAD_MUTEX_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# Limits
-#
-cdl_component CYGPKG_ISO_LIMITS {
-    # There is no associated value.
-};
-
-# >
-# POSIX pthread limits implementations
-#
-cdl_interface CYGINT_ISO_POSIX_LIMITS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_POSIX_LIMITS 
-    #     CYGINT_ISO_POSIX_LIMITS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_POSIX_LIMITS
-    #     Requires:  1 >= CYGINT_ISO_POSIX_LIMITS 
-};
-
-# POSIX pthread limits implementation header
-#
-cdl_option CYGBLD_ISO_POSIX_LIMITS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# OPEN_MAX implementation header
-#
-cdl_option CYGBLD_ISO_OPEN_MAX_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# LINK_MAX implementation header
-#
-cdl_option CYGBLD_ISO_LINK_MAX_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# NAME_MAX implementation header
-#
-cdl_option CYGBLD_ISO_NAME_MAX_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# PATH_MAX implementation header
-#
-cdl_option CYGBLD_ISO_PATH_MAX_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# POSIX termios
-#
-cdl_component CYGPKG_ISO_TERMIOS {
-    # There is no associated value.
-};
-
-# >
-# POSIX termios implementations
-#
-cdl_interface CYGINT_ISO_TERMIOS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_TERMIOS 
-    #     CYGINT_ISO_TERMIOS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_TERMIOS
-    #     Requires:  1 >= CYGINT_ISO_TERMIOS 
-};
-
-# POSIX termios implementation header
-#
-cdl_option CYGBLD_ISO_TERMIOS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# Dynamic load API
-#
-cdl_component CYGPKG_ISO_DLFCN {
-    # There is no associated value.
-};
-
-# >
-# Dynamic load implementations
-#
-cdl_interface CYGINT_ISO_DLFCN {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires:  1 >= CYGINT_ISO_DLFCN 
-    #     CYGINT_ISO_DLFCN == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_DLFCN
-    #     Requires:  1 >= CYGINT_ISO_DLFCN 
-};
-
-# Dynamic load implementation header
-#
-cdl_option CYGBLD_ISO_DLFCN_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# UNIX standard functions
-#
-cdl_component CYGPKG_ISO_UNISTD {
-    # There is no associated value.
-};
-
-# >
-# POSIX timer operations implementations
-#
-cdl_interface CYGINT_ISO_POSIX_TIMER_OPS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_POSIX_TIMER_OPS 
-    #     CYGINT_ISO_POSIX_TIMER_OPS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_POSIX_TIMER_OPS
-    #     Requires:  1 >= CYGINT_ISO_POSIX_TIMER_OPS 
-};
-
-# POSIX timer operations implementation header
-#
-cdl_option CYGBLD_ISO_POSIX_TIMER_OPS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# POSIX sleep() implementations
-#
-cdl_interface CYGINT_ISO_POSIX_SLEEP {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_POSIX_SLEEP 
-    #     CYGINT_ISO_POSIX_SLEEP == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_POSIX_SLEEP
-    #     Requires:  1 >= CYGINT_ISO_POSIX_SLEEP 
-};
-
-# POSIX sleep() implementation header
-#
-cdl_option CYGBLD_ISO_POSIX_SLEEP_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# select()/poll() functions
-#
-cdl_component CYGPKG_ISO_SELECT {
-    # There is no associated value.
-};
-
-# >
-# select() implementations
-#
-cdl_interface CYGINT_ISO_SELECT {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_SELECT 
-    #     CYGINT_ISO_SELECT == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_SELECT
-    #     Requires:  1 >= CYGINT_ISO_SELECT 
-};
-
-# select() implementation header
-#
-cdl_option CYGBLD_ISO_SELECT_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# poll() implementations
-#
-cdl_interface CYGINT_ISO_POLL {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires:  1 >= CYGINT_ISO_POLL 
-    #     CYGINT_ISO_POLL == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_POLL
-    #     Requires:  1 >= CYGINT_ISO_POLL 
-};
-
-# poll() implementation header
-#
-cdl_option CYGBLD_ISO_POLL_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# NetDB utility functions
-#
-cdl_component CYGPKG_ISO_NETDB {
-    # There is no associated value.
-};
-
-# >
-# DNS implementations
-#
-cdl_interface CYGINT_ISO_DNS {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: bool
-    # Current value: 0
-    # Requires:  1 >= CYGINT_ISO_DNS 
-    #     CYGINT_ISO_DNS == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_DNS
-    #     Requires:  1 >= CYGINT_ISO_DNS 
-};
-
-# DNS implementation header
-#
-cdl_option CYGBLD_ISO_DNS_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Protocol network database implementations
-#
-cdl_interface CYGINT_ISO_NETDB_PROTO {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: bool
-    # Current value: 0
-    # Requires:  1 >= CYGINT_ISO_NETDB_PROTO 
-    #     CYGINT_ISO_NETDB_PROTO == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_NETDB_PROTO
-    #     Requires:  1 >= CYGINT_ISO_NETDB_PROTO 
-};
-
-# Protocol network database implementation header
-#
-cdl_option CYGBLD_ISO_NETDB_PROTO_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Services network database implementations
-#
-cdl_interface CYGINT_ISO_NETDB_SERV {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: bool
-    # Current value: 0
-    # Requires:  1 >= CYGINT_ISO_NETDB_SERV 
-    #     CYGINT_ISO_NETDB_SERV == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_ISO_NETDB_SERV
-    #     Requires:  1 >= CYGINT_ISO_NETDB_SERV 
-};
-
-# Services network database implementation header
-#
-cdl_option CYGBLD_ISO_NETDB_SERV_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# <
-# Build options
-# Package specific build options including control over
-# compiler flags used only in building this package,
-# and details of which tests are built.
-#
-cdl_component CYGPKG_ISOINFRA_OPTIONS {
-    # There is no associated value.
-};
-
-# >
-# Additional compiler flags
-# This option modifies the set of compiler flags for
-# building the ISO C and POSIX infrastructure package.
-# These flags are used in addition to the set of global flags.
-#
-cdl_option CYGPKG_ISOINFRA_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ""
-    # value_source default
-    # Default value: ""
-};
-
-# Suppressed compiler flags
-# This option modifies the set of compiler flags for
-# building the ISO C and POSIX infrastructure package.
-# These flags are removed from the set of global flags
-# if present.
-#
-cdl_option CYGPKG_ISOINFRA_CFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ""
-    # value_source default
-    # Default value: ""
-};
-
-# <
-# <
-# Compute CRCs
-# doc: ref/services-crc.html
-# This package provides support for CRC calculation. Currently 
-# this is the POSIX 1003 defined CRC algorithm, a 32 CRC by 
-# Gary S. Brown, and a 16 bit CRC.
-#
-cdl_package CYGPKG_CRC {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-
-    # The following properties are affected by this value
-    # package CYGPKG_COMPRESS_ZLIB
-    #     Requires: CYGPKG_CRC
-};
-
-# >
-# POSIX CRC tests
-#
-cdl_option CYGPKG_CRC_TESTS {
-    # Calculated value:  "tests/crc_test" 
-    # Flavor: data
-    # Current_value: tests/crc_test
-};
-
-# <
-# Zlib compress and decompress package
-# This package provides support for compression and
-# decompression.
-#
-cdl_package CYGPKG_COMPRESS_ZLIB {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-    # Requires: CYGPKG_ISOINFRA
-    #     CYGPKG_ISOINFRA == current
-    #   --> 1
-    # Requires: CYGPKG_CRC
-    #     CYGPKG_CRC == current
-    #   --> 1
-
-    # The following properties are affected by this value
-    # component CYGBLD_BUILD_REDBOOT_WITH_ZLIB
-    #     ActiveIf: CYGPKG_COMPRESS_ZLIB
-};
-
-# >
-# Override memory allocation routines.
-#
-cdl_interface CYGINT_COMPRESS_ZLIB_LOCAL_ALLOC {
-    # Implemented by CYGBLD_BUILD_REDBOOT_WITH_ZLIB, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-    # option CYGSEM_COMPRESS_ZLIB_NEEDS_MALLOC
-    #     ActiveIf:  CYGINT_COMPRESS_ZLIB_LOCAL_ALLOC == 0 
-};
-
-# Should deflate() produce 'gzip' compatible output?
-# If this option is set then the output of calling deflate()
-# will be wrapped up as a 'gzip' compatible file.
-#
-cdl_option CYGSEM_COMPRESS_ZLIB_DEFLATE_MAKES_GZIP {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Does this library need malloc?
-# This pseudo-option will force the memalloc library to be
-# required iff the application does not provide it's own
-# infrastructure.
-#
-cdl_option CYGSEM_COMPRESS_ZLIB_NEEDS_MALLOC {
-    # This option is not active
-    # ActiveIf constraint:  CYGINT_COMPRESS_ZLIB_LOCAL_ALLOC == 0 
-    #     CYGINT_COMPRESS_ZLIB_LOCAL_ALLOC == 1
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires: CYGPKG_MEMALLOC
-    #     CYGPKG_MEMALLOC == current
-    #   --> 1
-};
-
-# Include stdio-like utility functions
-# This option enables the stdio-like zlib utility functions
-# (gzread/gzwrite and friends) provided in gzio.c.
-#
-cdl_option CYGFUN_COMPRESS_ZLIB_GZIO {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value:  CYGPKG_LIBC_STDIO_OPEN ? 1 : 0 
-    #     CYGPKG_LIBC_STDIO_OPEN (unknown) == 0
-    #   --> 0
-    # Requires: CYGINT_ISO_STDIO_FILEPOS
-    #     CYGINT_ISO_STDIO_FILEPOS == 0
-    #   --> 0
-    # Requires: CYGINT_ISO_STRING_STRFUNCS
-    #     CYGINT_ISO_STRING_STRFUNCS == 1
-    #   --> 1
-    # Requires: CYGINT_ISO_STDIO_FORMATTED_IO
-    #     CYGINT_ISO_STDIO_FORMATTED_IO == 0
-    #   --> 0
-    # Requires: CYGINT_ISO_STDIO_FILEACCESS
-    #     CYGINT_ISO_STDIO_FILEACCESS == 0
-    #   --> 0
-};
-
-# Zlib compress and decompress package build options
-# Package specific build options including control over
-# compiler flags used only in building this package,
-# and details of which tests are built.
-#
-cdl_component CYGPKG_COMPRESS_ZLIB_OPTIONS {
-    # There is no associated value.
-};
-
-# >
-# Additional compiler flags
-# 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_COMPRESS_ZLIB_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "-D__ECOS__ -DNO_ERRNO_H"
-    # value_source default
-    # Default value: "-D__ECOS__ -DNO_ERRNO_H"
-};
-
-# Suppressed compiler flags
-# This option modifies the set of compiler flags for
-# building this package. These flags are removed from
-# the set of global flags if present.
-#
-cdl_option CYGPKG_COMPRESS_ZLIB_CFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -Wstrict-prototypes
-    # value_source default
-    # Default value: -Wstrict-prototypes
-};
-
-# Additional compiler flags
-# 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_COMPRESS_ZLIB_LDFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ""
-    # value_source default
-    # Default value: ""
-};
-
-# Suppressed compiler flags
-# This option modifies the set of compiler flags for
-# building this package. These flags are removed from
-# the set of global flags if present.
-#
-cdl_option CYGPKG_COMPRESS_ZLIB_LDFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ""
-    # value_source default
-    # Default value: ""
-};
-
-# <
-# zlib tests
-#
-cdl_option CYGPKG_COMPRESS_ZLIB_TESTS {
-    # Calculated value:  "tests/zlib1.c tests/zlib2.c" 
-    # Flavor: data
-    # Current_value: tests/zlib1.c tests/zlib2.c
-};
-
-# <
-# FLASH device drivers
-# doc: ref/flash.html
-# This option enables drivers for basic I/O services on
-# flash devices.
-#
-cdl_package CYGPKG_IO_FLASH {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-    # Requires: CYGPKG_ISOINFRA
-    #     CYGPKG_ISOINFRA == current
-    #   --> 1
-    # Requires: CYGINT_ISO_STRING_STRFUNCS
-    #     CYGINT_ISO_STRING_STRFUNCS == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # component CYGSEM_REDBOOT_FLASH_CONFIG
-    #     DefaultValue:  CYGPKG_IO_FLASH != 0 
-    # package CYGPKG_DEVS_FLASH_ONMXC
-    #     ActiveIf: CYGPKG_IO_FLASH
-};
-
-# >
-# Hardware FLASH device drivers
-# This option enables the hardware device drivers
-# for the current platform.
-#
-cdl_interface CYGHWR_IO_FLASH_DEVICE {
-    # Implemented by CYGPKG_DEVS_FLASH_ONMXC, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-
-    # The following properties are affected by this value
-    # component CYGPKG_REDBOOT_FLASH
-    #     ActiveIf: CYGHWR_IO_FLASH_DEVICE
-};
-
-# Hardware FLASH device drivers are not in RAM
-# Use of this interface is deprecated.
-# Drivers should make sure that the functions are
-# linked to RAM by putting them in .2ram sections.
-#
-cdl_interface CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-    # Requires: !CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM
-    #     CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM
-    #     Requires: !CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM
-};
-
-# Hardware can support block locking
-# This option will be enabled by devices which can support
-# locking (write-protection) of individual blocks.
-#
-cdl_interface CYGHWR_IO_FLASH_BLOCK_LOCKING {
-    # No options implement this inferface
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 0 0
-
-    # The following properties are affected by this value
-    # option CYGSEM_REDBOOT_FLASH_LOCK_SPECIAL
-    #     ActiveIf:  CYGHWR_IO_FLASH_BLOCK_LOCKING != 0 
-};
-
-# Hardware cannot support direct access to FLASH memory
-# This option will be asserted by devices which cannot support
-# direct access to the FLASH memory contents (e.g. EEPROM or NAND
-# devices).  In these cases, the driver must provide an appropriate
-# hardware access function.
-#
-cdl_option CYGSEM_IO_FLASH_READ_INDIRECT {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # The inferred value should not be edited directly.
-    inferred_value 1
-    # value_source inferred
-    # Default value: 0
-    # Requires:  !CYGSEM_IO_FLASH_VERIFY_PROGRAM 
-    #     CYGSEM_IO_FLASH_VERIFY_PROGRAM == 0
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGPRI_REDBOOT_ZLIB_FLASH
-    #     ActiveIf:  (!CYGSEM_IO_FLASH_READ_INDIRECT) || CYGPRI_REDBOOT_ZLIB_FLASH_FORCE 
-    # component CYGHWR_DEVS_FLASH_MMC
-    #     Requires:  CYGSEM_IO_FLASH_READ_INDIRECT == 1 
-    # option CYGHWR_DEVS_FLASH_MMC_ESDHC
-    #     Requires:  CYGSEM_IO_FLASH_READ_INDIRECT == 1 
-    # option CYGHWR_DEVS_FLASH_MMC_SD
-    #     Requires:  CYGSEM_IO_FLASH_READ_INDIRECT == 1 
-    # option CYGHWR_DEVS_FLASH_MXC_NAND
-    #     Requires:  CYGSEM_IO_FLASH_READ_INDIRECT == 1 
-};
-
-# Display status messages during flash operations
-# Selecting this option will cause the drivers to print status
-# messages as various flash operations are undertaken.
-#
-cdl_option CYGSEM_IO_FLASH_CHATTER {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Verify data programmed to flash
-# Selecting this option will cause verification of data
-# programmed to flash.
-#
-cdl_option CYGSEM_IO_FLASH_VERIFY_PROGRAM {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # option CYGSEM_IO_FLASH_READ_INDIRECT
-    #     Requires:  !CYGSEM_IO_FLASH_VERIFY_PROGRAM 
-};
-
-# Platform has flash soft DIP switch write-protect
-# Selecting this option will cause the state of a hardware jumper or
-# dipswitch to be read by software to determine whether the flash is
-# write-protected or not.
-#
-cdl_option CYGSEM_IO_FLASH_SOFT_WRITE_PROTECT {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Instantiate in I/O block device API
-# Provides a block device accessible using the standard I/O
-# API ( cyg_io_read() etc. )
-#
-cdl_component CYGPKG_IO_FLASH_BLOCK_DEVICE {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_IO
-    #     CYGPKG_IO (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# >
-# Name of flash device 1 block device
-#
-cdl_component CYGDAT_IO_FLASH_BLOCK_DEVICE_NAME_1 {
-    # This option is not active
-    # The parent CYGPKG_IO_FLASH_BLOCK_DEVICE is not active
-    # The parent CYGPKG_IO_FLASH_BLOCK_DEVICE is disabled
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "\"/dev/flash1\""
-    # value_source default
-    # Default value: "\"/dev/flash1\""
-};
-
-# >
-#
-cdl_interface CYGINT_IO_FLASH_BLOCK_CFG_1 {
-    # Implemented by CYGNUM_IO_FLASH_BLOCK_CFG_STATIC_1, inactive, enabled
-    # Implemented by CYGNUM_IO_FLASH_BLOCK_CFG_FIS_1, inactive, disabled
-    # This option is not active
-    # The parent CYGDAT_IO_FLASH_BLOCK_DEVICE_NAME_1 is not active
-
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-    # Requires: 1 == CYGINT_IO_FLASH_BLOCK_CFG_1
-    #     CYGINT_IO_FLASH_BLOCK_CFG_1 == 0
-    #   --> 0
-
-    # The following properties are affected by this value
-    # interface CYGINT_IO_FLASH_BLOCK_CFG_1
-    #     Requires: 1 == CYGINT_IO_FLASH_BLOCK_CFG_1
-};
-
-# Static configuration
-# This configures the flash device 1 block device
-# with static base and length
-#
-cdl_component CYGNUM_IO_FLASH_BLOCK_CFG_STATIC_1 {
-    # This option is not active
-    # The parent CYGDAT_IO_FLASH_BLOCK_DEVICE_NAME_1 is not active
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# >
-# Start offset from flash base
-# This gives the offset from the base of flash which this
-# block device corresponds to.
-#
-cdl_option CYGNUM_IO_FLASH_BLOCK_OFFSET_1 {
-    # This option is not active
-    # The parent CYGNUM_IO_FLASH_BLOCK_CFG_STATIC_1 is not active
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0x00100000
-    # value_source default
-    # Default value: 0x00100000
-};
-
-# Length
-# This gives the length of the region of flash given over
-# to this block device.
-#
-cdl_option CYGNUM_IO_FLASH_BLOCK_LENGTH_1 {
-    # This option is not active
-    # The parent CYGNUM_IO_FLASH_BLOCK_CFG_STATIC_1 is not active
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0x00100000
-    # value_source default
-    # Default value: 0x00100000
-};
-
-# <
-# Configuration from FIS
-# This configures the flash device 1 block device
-# from Redboot FIS
-#
-cdl_component CYGNUM_IO_FLASH_BLOCK_CFG_FIS_1 {
-    # This option is not active
-    # The parent CYGDAT_IO_FLASH_BLOCK_DEVICE_NAME_1 is not active
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# >
-# Name of FIS entry
-#
-cdl_component CYGDAT_IO_FLASH_BLOCK_FIS_NAME_1 {
-    # This option is not active
-    # The parent CYGNUM_IO_FLASH_BLOCK_CFG_FIS_1 is not active
-    # The parent CYGNUM_IO_FLASH_BLOCK_CFG_FIS_1 is disabled
-
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "\"jffs2\""
-    # value_source default
-    # Default value: "\"jffs2\""
-};
-
-# <
-# <
-# <
-# Flash device driver build options
-# Package specific build options including control over
-# compiler flags used only in building this package,
-# and details of which tests are built.
-#
-cdl_component CYGPKG_IO_FLASH_OPTIONS {
-    # There is no associated value.
-};
-
-# >
-# Additional compiler flags
-# This option modifies the set of compiler flags for
-# building the flash device drivers. These flags are used in addition
-# to the set of global flags.
-#
-cdl_option CYGPKG_IO_FLASH_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ""
-    # value_source default
-    # Default value: ""
-};
-
-# Suppressed compiler flags
-# This option modifies the set of compiler flags for
-# building the flash device drivers. These flags are removed from
-# the set of global flags if present.
-#
-cdl_option CYGPKG_IO_FLASH_CFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ""
-    # value_source default
-    # Default value: ""
-};
-
-# Flash device driver tests
-# This option specifies the set of tests for the flash device drivers.
-#
-cdl_component CYGPKG_IO_FLASH_TESTS {
-    # Calculated value:  "tests/flash1" 
-    # Flavor: data
-    # Current_value: tests/flash1
-};
-
-# >
-# Start offset from flash base
-# This gives the offset from the base of flash where tests
-# can be run.  It is important to set this correctly, as an
-# incorrect value could allow the tests to write over critical
-# portions of the FLASH device and possibly render the target
-# board totally non-functional.
-#
-cdl_option CYGNUM_IO_FLASH_TEST_OFFSET {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0x00100000
-    # value_source default
-    # Default value: 0x00100000
-};
-
-# Length
-# This gives the length of the region of flash used for testing.
-#
-cdl_option CYGNUM_IO_FLASH_TEST_LENGTH {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0x00100000
-    # value_source default
-    # Default value: 0x00100000
-};
-
-# <
-# <
-# Support FLASH memory on Freescale MXC platforms
-#
-cdl_package CYGPKG_DEVS_FLASH_ONMXC {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # ActiveIf constraint: CYGPKG_IO_FLASH
-    #     CYGPKG_IO_FLASH == current
-    #   --> 1
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-};
-
-# >
-# MXC platform MMC card support
-# When this option is enabled, it indicates MMC card is
-# supported on the MXC platforms
-#
-cdl_component CYGHWR_DEVS_FLASH_MMC {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires:  CYGSEM_IO_FLASH_READ_INDIRECT == 1 
-    #     CYGSEM_IO_FLASH_READ_INDIRECT == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # option CYGHWR_DEVS_FLASH_MXC_MULTI
-    #     ActiveIf: (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MXC_NOR) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MMC) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NOR && CYGHWR_DEVS_FLASH_MMC)
-    # option CYGHWR_DEVS_FLASH_MXC_MULTI
-    #     ActiveIf: (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MXC_NOR) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MMC) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NOR && CYGHWR_DEVS_FLASH_MMC)
-};
-
-# >
-# MXC platform MMC card for newer SDHC controllers
-#
-cdl_option CYGHWR_DEVS_FLASH_MMC_ESDHC {
-    # This option is not active
-    # The parent CYGHWR_DEVS_FLASH_MMC is disabled
-    # ActiveIf constraint:  CYGPKG_HAL_ARM_MX37_3STACK || CYGPKG_HAL_ARM_MX35_3STACK || CYGPKG_HAL_ARM_MX25_3STACK ||  CYGPKG_HAL_ARM_MX51
-    #     CYGPKG_HAL_ARM_MX37_3STACK (unknown) == 0
-    #     CYGPKG_HAL_ARM_MX35_3STACK (unknown) == 0
-    #     CYGPKG_HAL_ARM_MX25_3STACK (unknown) == 0
-    #     CYGPKG_HAL_ARM_MX51 (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires:  CYGSEM_IO_FLASH_READ_INDIRECT == 1 
-    #     CYGSEM_IO_FLASH_READ_INDIRECT == 1
-    #   --> 1
-};
-
-# MXC platform MMC card for older MMC/SD controllers
-#
-cdl_option CYGHWR_DEVS_FLASH_MMC_SD {
-    # This option is not active
-    # The parent CYGHWR_DEVS_FLASH_MMC is disabled
-    # ActiveIf constraint:  CYGPKG_HAL_ARM_MX31_3STACK || CYGPKG_HAL_ARM_MX31ADS 
-    #     CYGPKG_HAL_ARM_MX31_3STACK (unknown) == 0
-    #     CYGPKG_HAL_ARM_MX31ADS (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires:  CYGSEM_IO_FLASH_READ_INDIRECT == 1 
-    #     CYGSEM_IO_FLASH_READ_INDIRECT == 1
-    #   --> 1
-};
-
-# <
-# MXC platform NOR flash memory support
-# When this option is enabled, it indicates NOR flash is
-# supported on the MXC platforms
-#
-cdl_option CYGHWR_DEVS_FLASH_MXC_NOR {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 0
-
-    # The following properties are affected by this value
-    # option CYGHWR_DEVS_FLASH_IMX_SPI_NOR
-    #     Requires:  CYGHWR_DEVS_FLASH_MXC_NOR == 1 
-    # option CYGHWR_DEVS_FLASH_MXC_MULTI
-    #     ActiveIf: (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MXC_NOR) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MMC) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NOR && CYGHWR_DEVS_FLASH_MMC)
-    # option CYGHWR_DEVS_FLASH_MXC_MULTI
-    #     ActiveIf: (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MXC_NOR) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MMC) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NOR && CYGHWR_DEVS_FLASH_MMC)
-};
-
-# MXC platform NAND flash memory support
-# When this option is enabled, it indicates NAND flash is
-# supported on the MXC platforms
-#
-cdl_option CYGHWR_DEVS_FLASH_MXC_NAND {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # The inferred value should not be edited directly.
-    inferred_value 1
-    # value_source inferred
-    # Default value: 0
-    # Requires:  CYGSEM_IO_FLASH_READ_INDIRECT == 1 
-    #     CYGSEM_IO_FLASH_READ_INDIRECT == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # component CYGPKG_DEVS_FLASH_NAND_BBT_IN_FLASH
-    #     ActiveIf: CYGHWR_DEVS_FLASH_MXC_NAND
-    # option CYGHWR_DEVS_FLASH_MXC_MULTI
-    #     ActiveIf: (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MXC_NOR) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MMC) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NOR && CYGHWR_DEVS_FLASH_MMC)
-    # option CYGHWR_DEVS_FLASH_MXC_MULTI
-    #     ActiveIf: (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MXC_NOR) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MMC) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NOR && CYGHWR_DEVS_FLASH_MMC)
-    # interface CYGHWR_DEVS_FLASH_MXC_NAND_RESET_WORKAROUND
-    #     ActiveIf: CYGHWR_DEVS_FLASH_MXC_NAND
-};
-
-# i.MX platform SPI NOR flash memory support
-# When this option is enabled, it indicates SPI NOR flash is
-# supported on the i.MX platforms
-#
-cdl_option CYGHWR_DEVS_FLASH_IMX_SPI_NOR {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires:  CYGHWR_DEVS_FLASH_MXC_NOR == 1 
-    #     CYGHWR_DEVS_FLASH_MXC_NOR == 0
-    #   --> 0
-};
-
-# MXC platform ATA support
-# When this option is enabled, it indicates ATA is
-# supported on the MXC platforms
-#
-cdl_option CYGHWR_DEVS_FLASH_MXC_ATA {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Use a flash based Bad Block Table
-#
-cdl_component CYGPKG_DEVS_FLASH_NAND_BBT_IN_FLASH {
-    # ActiveIf constraint: CYGHWR_DEVS_FLASH_MXC_NAND
-    #     CYGHWR_DEVS_FLASH_MXC_NAND == 1
-    #   --> 1
-
-    # There is no associated value.
-};
-
-# >
-# When this option is enabled, the driver will search for a flash
-# based bad block table
-#
-cdl_option CYGHWR_DEVS_FLASH_MXC_BBT_IN_FLASH {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# header file defining the NAND BBT descriptor
-# defines the name of the header file that describes the BBT layout
-#
-cdl_component CYGHWR_FLASH_NAND_BBT_HEADER {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # The inferred value should not be edited directly.
-    inferred_value 1 <cyg/io/tx25_nand_bbt.h>
-    # value_source inferred
-    # Default value: 0 0
-};
-
-# Number of blocks to reserve for BBT
-# Number of blocks to reserve for BBT
-#
-cdl_option CYGNUM_FLASH_NAND_BBT_BLOCKS {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 4
-    # value_source default
-    # Default value: 4
-};
-
-# <
-# MXC platform multi flash memory support
-# When this option is enabled, it indicates multi flashes are
-# supported on the MXC platforms (like NAND and NOR)
-#
-cdl_option CYGHWR_DEVS_FLASH_MXC_MULTI {
-    # This option is not active
-    # ActiveIf constraint: (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MXC_NOR) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MMC) ||
-    #                            (CYGHWR_DEVS_FLASH_MXC_NOR && CYGHWR_DEVS_FLASH_MMC)
-    #     CYGHWR_DEVS_FLASH_MXC_NAND == 1
-    #     CYGHWR_DEVS_FLASH_MXC_NOR == 0
-    #     CYGHWR_DEVS_FLASH_MXC_NAND == 1
-    #     CYGHWR_DEVS_FLASH_MMC == 0
-    #     CYGHWR_DEVS_FLASH_MXC_NOR == 0
-    #     CYGHWR_DEVS_FLASH_MMC == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 1
-};
-
-# MXC platform NAND flash reset workaround support
-# When this option is enabled, it indicates 0xFFFF is used for
-# the NAND reset command instead of 0xFF.
-#
-cdl_interface CYGHWR_DEVS_FLASH_MXC_NAND_RESET_WORKAROUND {
-    # No options implement this inferface
-    # ActiveIf constraint: CYGHWR_DEVS_FLASH_MXC_NAND
-    #     CYGHWR_DEVS_FLASH_MXC_NAND == 1
-    #   --> 1
-
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 0
-};
-
-# <
-# <
-# Dynamic memory allocation
-# doc: ref/memalloc.html
-# This package provides memory allocator infrastructure required for
-# dynamic memory allocators, including the ISO standard malloc
-# interface. It also contains some sample implementations.
-#
-cdl_package CYGPKG_MEMALLOC {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-
-    # The following properties are affected by this value
-    # option CYGSEM_COMPRESS_ZLIB_NEEDS_MALLOC
-    #     Requires: CYGPKG_MEMALLOC
-};
-
-# >
-# Memory allocator implementations
-# This component contains configuration options related to the 
-# various memory allocators available.
-#
-cdl_component CYGPKG_MEMALLOC_ALLOCATORS {
-    # There is no associated value.
-};
-
-# >
-# Fixed block allocator
-# This component contains configuration options related to the 
-# fixed block memory allocator.
-#
-cdl_component CYGPKG_MEMALLOC_ALLOCATOR_FIXED {
-    # There is no associated value.
-};
-
-# >
-# Make thread safe
-# With this option enabled, this allocator will be
-# made thread-safe. Additionally allocation functions
-# are made available that allow a thread to wait
-# until memory is available.
-#
-cdl_option CYGSEM_MEMALLOC_ALLOCATOR_FIXED_THREADAWARE {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_KERNEL
-    #     CYGPKG_KERNEL (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# <
-# Simple variable block allocator
-# This component contains configuration options related to the 
-# simple variable block memory allocator. This allocator is not
-# very fast, and in particular does not scale well with large
-# numbers of allocations. It is however very compact in terms of
-# code size and does not have very much overhead per allocation.
-#
-cdl_component CYGPKG_MEMALLOC_ALLOCATOR_VARIABLE {
-    # There is no associated value.
-};
-
-# >
-# Make thread safe
-# With this option enabled, this allocator will be
-# made thread-safe. Additionally allocation functions
-# are added that allow a thread to wait until memory
-# are made available that allow a thread to wait
-# until memory is available.
-#
-cdl_option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_THREADAWARE {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_KERNEL
-    #     CYGPKG_KERNEL (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Coalesce memory
-# The variable-block memory allocator can perform coalescing
-# of memory whenever the application code releases memory back
-# to the pool. This coalescing reduces the possibility of
-# memory fragmentation problems, but involves extra code and
-# processor cycles.
-#
-cdl_option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-
-    # The following properties are affected by this value
-    # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE
-    #     Requires: CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE
-};
-
-# <
-# Doug Lea's malloc
-# This component contains configuration options related to the 
-# port of Doug Lea's memory allocator, normally known as
-# dlmalloc. dlmalloc has a reputation for being both fast
-# and space-conserving, as well as resisting fragmentation well.
-# It is a common choice for a general purpose allocator and
-# has been used in both newlib and Linux glibc.
-#
-cdl_component CYGPKG_MEMALLOC_ALLOCATOR_DLMALLOC {
-    # There is no associated value.
-};
-
-# >
-# Debug build
-# Doug Lea's malloc implementation has substantial amounts
-# of internal checking in order to verify the operation
-# and consistency of the allocator. However this imposes
-# substantial overhead on each operation. Therefore this
-# checking may be individually disabled.
-#
-cdl_option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value:  0 != CYGDBG_USE_ASSERTS 
-    #     CYGDBG_USE_ASSERTS == 0
-    #   --> 0
-    # Requires: CYGDBG_USE_ASSERTS
-    #     CYGDBG_USE_ASSERTS == 0
-    #   --> 0
-};
-
-# Make thread safe
-# With this option enabled, this allocator will be
-# made thread-safe. Additionally allocation functions
-# are made available that allow a thread to wait
-# until memory is available.
-#
-cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_KERNEL
-    #     CYGPKG_KERNEL (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires: CYGPKG_KERNEL
-    #     CYGPKG_KERNEL (unknown) == 0
-    #   --> 0
-};
-
-# Support more than one instance
-# Having this option disabled allows important
-# implementation structures to be declared as a single
-# static instance, allowing faster access. However this
-# would fail if there is more than one instance of
-# the dlmalloc allocator class. Therefore this option can
-# be enabled if multiple instances are required. Note: as
-# a special case, if this allocator is used as the
-# implementation of malloc, and it can be determined there
-# is more than one malloc pool, then this option will be
-# silently enabled.
-#
-cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_SAFE_MULTIPLE {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# Use system memmove() and memset()
-# This may be used to control whether memset() and memmove()
-# are used within the implementation. The alternative is
-# to use some macro equivalents, which some people report
-# are faster in some circumstances.
-#
-cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value:  0 != CYGPKG_ISOINFRA 
-    #     CYGPKG_ISOINFRA == current
-    #   --> 1
-    # Requires: CYGPKG_ISOINFRA
-    #     CYGPKG_ISOINFRA == current
-    #   --> 1
-};
-
-# Minimum alignment of allocated blocks
-# This option controls the minimum alignment that the
-# allocated memory blocks are aligned on, specified as
-# 2^N. Note that using large mininum alignments can lead
-# to excessive memory wastage.
-#
-cdl_option CYGNUM_MEMALLOC_ALLOCATOR_DLMALLOC_ALIGNMENT {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 3
-    # value_source default
-    # Default value: 3
-    # Legal values: 3 to 10
-};
-
-# <
-# Variable block allocator with separate metadata
-# This component contains configuration options related to the 
-# variable block memory allocator with separate metadata.
-#
-cdl_component CYGPKG_MEMALLOC_ALLOCATOR_SEPMETA {
-    # There is no associated value.
-};
-
-# >
-# Make thread safe
-# With this option enabled, this allocator will be
-# made thread-safe. Additionally allocation functions
-# are made available that allow a thread to wait
-# until memory is available.
-#
-cdl_option CYGSEM_MEMALLOC_ALLOCATOR_SEPMETA_THREADAWARE {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_KERNEL
-    #     CYGPKG_KERNEL (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# <
-# <
-# Kernel C API support for memory allocation
-# This option must be enabled to provide the extensions required
-# to support integration into the kernel C API.
-#
-cdl_option CYGFUN_MEMALLOC_KAPI {
-    # This option is not active
-    # ActiveIf constraint: CYGPKG_KERNEL
-    #     CYGPKG_KERNEL (unknown) == 0
-    #   --> 0
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: CYGFUN_KERNEL_API_C
-    #     CYGFUN_KERNEL_API_C (unknown) == 0
-    #   --> 0
-};
-
-# malloc(0) returns NULL
-# This option controls the behavior of malloc(0) ( or calloc with
-# either argument 0 ). It is permitted by the standard to return
-# either a NULL pointer or a unique pointer. Enabling this option
-# forces a NULL pointer to be returned.
-#
-cdl_option CYGSEM_MEMALLOC_MALLOC_ZERO_RETURNS_NULL {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# Breakpoint site when running out of memory
-# Whenever the system runs out of memory, it invokes this function
-# before either going to sleep waiting for memory to become 
-# available or returning failure.
-#
-cdl_option CYGSEM_MEMALLOC_INVOKE_OUT_OF_MEMORY {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-};
-
-# malloc() and supporting allocators
-# This component enables support for dynamic memory
-# allocation as supplied by the functions malloc(),
-# free(), calloc() and realloc(). As these
-# functions are often used, but can have quite an
-# overhead, disabling them here can ensure they
-# cannot even be used accidentally when static
-# allocation is preferred. Within this component are
-# various allocators that can be selected for use
-# as the underlying implementation of the dynamic
-# allocation functions.
-#
-cdl_component CYGPKG_MEMALLOC_MALLOC_ALLOCATORS {
-    # ActiveIf constraint: CYGPKG_ISOINFRA
-    #     CYGPKG_ISOINFRA == current
-    #   --> 1
-
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-};
-
-# >
-# Use external heap definition
-# This option allows other components in the
-# system to override the default system
-# provision of heap memory pools. This should
-# be set to a header which provides the equivalent
-# definitions to <pkgconf/heaps.hxx>.
-#
-cdl_component CYGBLD_MEMALLOC_MALLOC_EXTERNAL_HEAP_H {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# Use external implementation of joining multiple heaps
-# The default implementation of joining multiple heaps
-# is fine for the case where there are multiple disjoint
-# memory regions of the same type. However, in a system
-# there might be e.g. a small amount of internal SRAM and
-# a large amount of external DRAM. The SRAM is faster and
-# the DRAM is slower. An application can implement some 
-# heuristic to choose which pool to allocate from. This
-# heuristic can be highly application specific.
-#
-cdl_component CYGBLD_MEMALLOC_MALLOC_EXTERNAL_JOIN_H {
-    # Flavor: booldata
-    # No user value, uncomment the following line to provide one.
-    # user_value 0 0
-    # value_source default
-    # Default value: 0 0
-};
-
-# malloc() allocator implementations
-#
-cdl_interface CYGINT_MEMALLOC_MALLOC_ALLOCATORS {
-    # Implemented by CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE, active, disabled
-    # Implemented by CYGIMP_MEMALLOC_MALLOC_DLMALLOC, active, enabled
-    # This value cannot be modified here.
-    # Flavor: data
-    # Current_value: 1
-    # Requires:  CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1 
-    #     CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1
-    #   --> 1
-
-    # The following properties are affected by this value
-    # interface CYGINT_MEMALLOC_MALLOC_ALLOCATORS
-    #     Requires:  CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1 
-};
-
-# malloc() implementation instantiation data
-# Memory allocator implementations that are capable of being
-# used underneath malloc() must be instantiated. The code
-# to do this is set in this option. It is only intended to
-# be set by the implementation, not the user.
-#
-cdl_option CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value <cyg/memalloc/dlmalloc.hxx>
-    # value_source default
-    # Default value: <cyg/memalloc/dlmalloc.hxx>
-
-    # The following properties are affected by this value
-    # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE
-    #     Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  "<cyg/memalloc/memvar.hxx>" 
-    # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC
-    #     Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  "<cyg/memalloc/dlmalloc.hxx>" 
-};
-
-# Simple variable block implementation
-# This causes malloc() to use the simple
-# variable block allocator.
-#
-cdl_option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  "<cyg/memalloc/memvar.hxx>" 
-    #     CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == <cyg/memalloc/dlmalloc.hxx>
-    #   --> 0
-    # Requires: CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE
-    #     CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE == 1
-    #   --> 1
-};
-
-# Doug Lea's malloc implementation
-# This causes malloc() to use a version of Doug Lea's
-# malloc (dlmalloc) as the underlying implementation.
-#
-cdl_option CYGIMP_MEMALLOC_MALLOC_DLMALLOC {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  "<cyg/memalloc/dlmalloc.hxx>" 
-    #     CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == <cyg/memalloc/dlmalloc.hxx>
-    #   --> 1
-};
-
-# <
-# Size of the fallback dynamic memory pool in bytes
-# If *no* heaps are configured in your memory layout,
-# dynamic memory allocation by
-# malloc() and calloc() must be from a fixed-size,
-# contiguous memory pool (note here that it is the
-# pool that is of a fixed size, but malloc() is still
-# able to allocate variable sized chunks of memory
-# from it). This option is the size
-# of that pool, in bytes. Note that not all of
-# this is available for programs to
-# use - some is needed for internal information
-# about memory regions, and some may be lost to
-# ensure that memory allocation only returns
-# memory aligned on word (or double word)
-# boundaries - a very common architecture
-# constraint.
-#
-cdl_option CYGNUM_MEMALLOC_FALLBACK_MALLOC_POOL_SIZE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 16384
-    # value_source default
-    # Default value: 16384
-    # Legal values: 32 to 0x7fffffff
-};
-
-# Common memory allocator package build options
-# Package specific build options including control over
-# compiler flags used only in building this package,
-# and details of which tests are built.
-#
-cdl_component CYGPKG_MEMALLOC_OPTIONS {
-    # There is no associated value.
-};
-
-# >
-# Additional compiler flags
-# 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_MEMALLOC_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value "-fno-rtti -Woverloaded-virtual"
-    # value_source default
-    # Default value: "-fno-rtti -Woverloaded-virtual"
-};
-
-# Suppressed compiler flags
-# This option modifies the set of compiler flags for
-# building this package. These flags are removed from
-# the set of global flags if present.
-#
-cdl_option CYGPKG_MEMALLOC_CFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value -Wno-pointer-sign
-    # value_source default
-    # Default value: -Wno-pointer-sign
-};
-
-# Tests
-# This option specifies the set of tests for this package.
-#
-cdl_option CYGPKG_MEMALLOC_TESTS {
-    # Calculated value:  "tests/dlmalloc1 tests/dlmalloc2 tests/heaptest tests/kmemfix1 tests/kmemvar1 tests/malloc1 tests/malloc2 tests/malloc3 tests/malloc4 tests/memfix1 tests/memfix2 tests/memvar1 tests/memvar2 tests/realloc tests/sepmeta1 tests/sepmeta2" 
-    # Flavor: data
-    # Current_value: tests/dlmalloc1 tests/dlmalloc2 tests/heaptest tests/kmemfix1 tests/kmemvar1 tests/malloc1 tests/malloc2 tests/malloc3 tests/malloc4 tests/memfix1 tests/memfix2 tests/memvar1 tests/memvar2 tests/realloc tests/sepmeta1 tests/sepmeta2
-};
-
-# <
-# <
-# Common error code support
-# This package contains the common list of error and
-# status codes. It is held centrally to allow
-# packages to interchange error codes and status
-# codes in a common way, rather than each package
-# having its own conventions for error/status
-# reporting. The error codes are modelled on the
-# POSIX style naming e.g. EINVAL etc. This package
-# also provides the standard strerror() function to
-# convert error codes to textual representation, as
-# well as an implementation of the errno idiom.
-#
-cdl_package CYGPKG_ERROR {
-    # Packages cannot be added or removed, nor can their version be changed,
-    # simply by editing their value. Instead the appropriate configuration
-    # should be used to perform these actions.
-
-    # This value cannot be modified here.
-    # Flavor: booldata
-    # Current value: 1 current
-    # Requires:  CYGBLD_ISO_ERRNO_CODES_HEADER == "<cyg/error/codes.h>" 
-    #     CYGBLD_ISO_ERRNO_CODES_HEADER == <cyg/error/codes.h>
-    #   --> 1
-};
-
-# >
-# errno variable
-# This package controls the behaviour of the
-# errno variable (or more strictly, expression)
-# from <errno.h>.
-#
-cdl_component CYGPKG_ERROR_ERRNO {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires:  CYGBLD_ISO_ERRNO_HEADER == "<cyg/error/errno.h>" 
-    #     CYGBLD_ISO_ERRNO_HEADER == <cyg/error/errno.h>
-    #   --> 1
-};
-
-# >
-# Per-thread errno
-# This option controls whether the standard error
-# code reporting variable errno is a per-thread
-# variable, rather than global.
-#
-cdl_option CYGSEM_ERROR_PER_THREAD_ERRNO {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # The inferred value should not be edited directly.
-    inferred_value 0
-    # value_source inferred
-    # Default value: 1
-    # Requires: CYGVAR_KERNEL_THREADS_DATA
-    #     CYGVAR_KERNEL_THREADS_DATA (unknown) == 0
-    #   --> 0
-};
-
-# Tracing level
-# Trace verbosity level for debugging the errno
-# retrieval mechanism in errno.cxx. Increase this
-# value to get additional trace output.
-#
-cdl_option CYGNUM_ERROR_ERRNO_TRACE_LEVEL {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value 0
-    # value_source default
-    # Default value: 0
-    # Legal values: 0 to 1
-};
-
-# <
-# strerror function
-# This package controls the presence and behaviour of the
-# strerror() function from <string.h>
-#
-cdl_option CYGPKG_ERROR_STRERROR {
-    # Flavor: bool
-    # No user value, uncomment the following line to provide one.
-    # user_value 1
-    # value_source default
-    # Default value: 1
-    # Requires:  CYGBLD_ISO_STRERROR_HEADER == "<cyg/error/strerror.h>" 
-    #     CYGBLD_ISO_STRERROR_HEADER == <cyg/error/strerror.h>
-    #   --> 1
-};
-
-# Error package build options
-# Package specific build options including control over
-# compiler flags used only in building this package,
-# and details of which tests are built.
-#
-cdl_component CYGPKG_ERROR_OPTIONS {
-    # There is no associated value.
-};
-
-# >
-# Additional compiler flags
-# This option modifies the set of compiler flags for
-# building the error package. These flags are used in addition
-# to the set of global flags.
-#
-cdl_option CYGPKG_ERROR_CFLAGS_ADD {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ""
-    # value_source default
-    # Default value: ""
-};
-
-# Suppressed compiler flags
-# This option modifies the set of compiler flags for
-# building the error package. These flags are removed from
-# the set of global flags if present.
-#
-cdl_option CYGPKG_ERROR_CFLAGS_REMOVE {
-    # Flavor: data
-    # No user value, uncomment the following line to provide one.
-    # user_value ""
-    # value_source default
-    # Default value: ""
-};
-
-# <
-# <
-# <
-
index 96fd4e7..5471395 100644 (file)
@@ -243,6 +243,15 @@ cdl_package CYGPKG_HAL_ARM_TX25KARO {
                 the set of global flags if present."
         }
 
+       cdl_option CYGHWR_TX25_BOOTSPLASH {
+           display       "Show a splash screen from the FIS partition: 'logo'"
+           default_value 0
+           description   "
+               When this option is enabled, RedBoot will look for a flash partition
+               named 'logo' and display the contents of this partition as initial
+               screen on the LCD"
+           compile -library=libextras.a tx25_splash.c
+       }
     }
 
     cdl_component CYGHWR_MEMORY_LAYOUT {
index fa389c1..b43469a 100644 (file)
@@ -99,8 +99,9 @@
        // GPIO_DR
        mov     r9, \val
        cmp     r9, #0
-       movne   r9, #(1 << DEBUG_LED_BIT)  // LED ON
-       moveq   r9, #0  // LED OFF
+       ldr     r9, [r10, #GPIO_DR]
+       orne    r9, #(1 << DEBUG_LED_BIT)  // LED ON
+       biceq   r9, #(1 << DEBUG_LED_BIT)  // LED OFF
        str     r9, [r10, #GPIO_DR]
        .endm
 
        // initialize GPIO2[7] (Pad A21) for LED on STK5
        ldr     r10, GPIO2_BASE_ADDR_W
        // GPIO_GDIR
-       mov     r9, #(1 << DEBUG_LED_BIT)
+       ldr     r9, [r10, #GPIO_GDIR]
+       orr     r9, #(1 << DEBUG_LED_BIT)
        str     r9, [r10, #GPIO_GDIR]
 
        ldr     r10, IOMUXC_BASE_ADDR_W
 
        ldr     r10, GPIO2_BASE_ADDR_W
        // GPIO_DR
-       mov     r9, #(1 << DEBUG_LED_BIT)  // LED ON
+       ldr     r9, [r10, #GPIO_DR]
+       orr     r9, #(1 << DEBUG_LED_BIT)  // LED ON
        str     r9, [r10, #GPIO_DR]
        .endm
 
+       .macro LCD_GPIO_INIT
+#ifdef CYGHWR_TX25_BOOTSPLASH
+       ldr     r10, IOMUXC_BASE_ADDR_W
+
+       mov     r9, #1
+       str     r9, [r10, #0x088]
+       str     r9, [r10, #0x08c]
+
+       mov     r9, #0
+       str     r9, [r10, #0x0c8]
+       str     r9, [r10, #0x0cc]
+       str     r9, [r10, #0x0d0]
+       str     r9, [r10, #0x0d4]
+       str     r9, [r10, #0x0d8]
+       str     r9, [r10, #0x0dc]
+       str     r9, [r10, #0x0e0]
+       str     r9, [r10, #0x0e4]
+       str     r9, [r10, #0x0e8]
+       str     r9, [r10, #0x0ec]
+       str     r9, [r10, #0x0f0]
+       str     r9, [r10, #0x0f4]
+       str     r9, [r10, #0x0f8]
+       str     r9, [r10, #0x0fc]
+       str     r9, [r10, #0x100]
+       str     r9, [r10, #0x104]
+       str     r9, [r10, #0x108]
+       str     r9, [r10, #0x10c]
+       str     r9, [r10, #0x110]
+       str     r9, [r10, #0x114]
+
+       mov     r9, #5
+       str     r9, [r10, #0x11c]       /* configure PAD_PWM as GPIO1_26 LCD_BACKLIGHT */
+       str     r9, [r10, #0x020]       /* dto. for PAD_A18 (GPIO2_4) LCD_RESET */
+       str     r9, [r10, #0x024]       /* dto. for PAD_A19 (GPIO2_5) LCD_POWER */
+
+       ldr     r10, GPIO1_BASE_ADDR_W
+
+       ldr     r9, [r10, #GPIO_DR]
+       orr     r9, #(1 << (LCD_BACKLIGHT_GPIO % 32))
+       str     r9, [r10, #GPIO_DR]
+
+       ldr     r9, [r10, #GPIO_GDIR]
+       orr     r9, #(1 << (LCD_BACKLIGHT_GPIO % 32))
+       str     r9, [r10, #GPIO_GDIR]
+
+       ldr     r10, GPIO2_BASE_ADDR_W
+
+       ldr     r9, [r10, #GPIO_DR]
+       bic     r9, #(1 << (LCD_POWER_GPIO % 32) | (1 << (LCD_RESET_GPIO % 32)))
+       str     r9, [r10, #GPIO_DR]
+
+       ldr     r9, [r10, #GPIO_GDIR]
+       orr     r9, #((1 << (LCD_POWER_GPIO % 32)) | (1 << (LCD_RESET_GPIO % 32)))
+       str     r9, [r10, #GPIO_GDIR]
+
+#endif
+       .endm
+
 // This macro represents the initial startup code for the platform
 // r11 is reserved to contain chip rev info in this file
        .macro  _platform_setup1
@@ -231,6 +292,7 @@ init_m3if_start:
 init_clock_start:
        init_clock
 
+       LCD_GPIO_INIT
        LED_INIT
        LED_BLINK #1
 
@@ -863,6 +925,7 @@ ESDCTL_CMD_PRECHARGE:       .word   ESDCTLVAL | ESDCTL_PCHG
 ESDCTL_CMD_MODEREG:    .word   ESDCTLVAL | ESDCTL_LMOD
 ESDCTL_CONFIG:         .word   ESDCFGVAL
 IOMUXC_BASE_ADDR_W:    .word   IOMUXC_BASE_ADDR
+GPIO1_BASE_ADDR_W:     .word   GPIO1_BASE_ADDR
 GPIO2_BASE_ADDR_W:     .word   GPIO2_BASE_ADDR
 #ifdef USE_SERIAL
 UART1_BASE_ADDR_W:     .word   UART1_BASE_ADDR
index b443ed7..b8ab535 100644 (file)
 #define TX25_LED_MASK          (1 << 7)
 #define TX25_LED_REG_ADDR      (GPIO2_BASE_ADDR + GPIO_DR)
 
+#define LCD_BACKLIGHT_GPIO     (0 * 32 + 26)
+#define LCD_RESET_GPIO         (1 * 32 + 4)
+#define LCD_POWER_GPIO         (1 * 32 + 5)
+
 #define LED_MAX_NUM            1
 
 #define LED_IS_ON(n) ({                                                        \
index d2a32a2..056a63b 100644 (file)
 
 #define HAL_VIRT_TO_PHYS_ADDRESS(vaddr, paddr)                 \
        CYG_MACRO_START                                                                         \
-       cyg_uint32 _v_ = (cyg_uint32)(vaddr);                           \
-       if (_v_ < 128 * SZ_1M)           /* SDRAM */            \
-               _v_ += SDRAM_BASE_ADDR;                                                 \
-       else                                                     /* Rest of it */       \
-               /* no change */ ;                                                               \
-       (paddr) = _v_;                                                                          \
+       paddr = hal_virt_to_phy((unsigned long)(vaddr));        \
        CYG_MACRO_END
 
 /*
 static unsigned long __inline__ hal_virt_to_phy(unsigned long virt)
 {
        /* SDRAM mappings:
-          80000000 -> 80000000
-          90000000 -> 80000000 + (SDRAM_SIZE / 2)
+        * virt               -> phys
+        * 00000000..01ffffff -> 80000000..81ffffff
+        * 02000000..03ffffff -> 90000000..91ffffff
+        * 80000000..81ffffff -> 80000000..81ffffff
+        * 82000000..83ffffff -> 90000000..91ffffff
+        * 88000000..89ffffff -> 80000000..81ffffff (uncached)
+        * 8a000000..8bffffff -> 90000000..91ffffff (uncached)
         */
-       if (virt < 0x08000000) {
+       if (virt < SDRAM_SIZE) {
                return virt | (virt < RAM_BANK0_SIZE ? CSD0_BASE_ADDR : CSD1_BASE_ADDR);
        }
        if ((virt & 0xF0000000) == CSD0_BASE_ADDR) {
-               virt &= ~0x08000000;
+               virt &= ~0x08000000; /* clear uncached mapping indicator */
                if (virt >= CSD0_BASE_ADDR + RAM_BANK0_SIZE) {
-                       virt = virt - CSD0_BASE_ADDR + CSD1_BASE_ADDR - RAM_BANK0_SIZE;
+                       virt = virt - (CSD0_BASE_ADDR + RAM_BANK0_SIZE) + CSD1_BASE_ADDR;
                }
        }
        return virt;
@@ -97,7 +97,7 @@ static unsigned long __inline__ hal_virt_to_phy(unsigned long virt)
  */
 static unsigned long __inline__ hal_ioremap_nocache(unsigned long phy)
 {
-       /* 0x88000000~0x88FFFFFF is uncacheable memory space which is mapped to SDRAM */
+       /* 0x88000000~0x8BFFFFFF is uncacheable memory space which is mapped to SDRAM */
        if ((phy & 0xF0000000) == CSD0_BASE_ADDR) {
                phy |= 0x08000000;
        }
index 1a6944f..a27b20a 100644 (file)
@@ -480,6 +480,7 @@ enum main_clocks {
 
 enum peri_clocks {
                PER_UART_CLK,
+               LCDC_CLK,
                SPI1_CLK = CSPI1_BASE_ADDR,
                SPI2_CLK = CSPI2_BASE_ADDR,
 };
index c1f39bd..ef960cd 100644 (file)
@@ -107,19 +107,23 @@ static void clock_setup(int argc,char *argv[])
                arm_src = 0;
                arm_div = 1 - 1;
                break;
+
        case 399:
                arm_src = 1;
                arm_div = 1 - 1;
                break;
+
        case 199:
        case 200:
                arm_src = 1;
                arm_div = 2 - 1;
                break;
+
        case 133:
                arm_src = 1;
                arm_div = 3 - 1;
                break;
+
        default:
                diag_printf("Illegal core clock value specified\n");
                return;
@@ -207,14 +211,17 @@ u32 get_main_clock(enum main_clocks clk)
                div = ((cctl >> CRM_CCTL_ARM_OFFSET) & 3) + 1;
                ret_val /= div;
                break;
+
        case AHB_CLK:
                div = ((cctl >> CRM_CCTL_AHB_OFFSET) & 3) + 1;
                ret_val = get_main_clock(CPU_CLK) / div;
                break;
+
        case IPG_CLK:
        case IPG_PER_CLK:
                ret_val = get_main_clock(AHB_CLK) / 2;
                break;
+
        default:
                diag_printf("Unknown clock: %d\n", clk);
        }
@@ -236,10 +243,26 @@ u32 get_peri_clock(enum peri_clocks clk)
                div = (pcdr >> 24) + 1;
                ret_val = get_main_clock(AHB_CLK) / div;
                break;
+
        case SPI1_CLK:
        case SPI2_CLK:
                ret_val = get_main_clock(IPG_CLK);
                break;
+
+       case LCDC_CLK:
+               writel(readl(CCM_BASE_ADDR + CLKCTL_MCR) | (1 << 7),
+                       CCM_BASE_ADDR + CLKCTL_MCR);
+               pcdr = readl(CCM_BASE_ADDR + CLKCTL_PCDR1);
+               pcdr &= ~(0xff << 24);
+               writel(pcdr, CCM_BASE_ADDR + CLKCTL_PCDR1);
+               div = (pcdr >> 24) + 1;
+               if (readl(CCM_BASE_ADDR + CLKCTL_MCR) & (1 << 7)) {
+                       ret_val = pll_clock(USB_PLL) / div;
+               } else {
+                       ret_val = get_main_clock(AHB_CLK) / div;
+               }
+               break;
+
        default:
                diag_printf("%s(): This clock: %d not supported yet\n",
                                        __FUNCTION__, clk);
index f2cf9b6..6129c6f 100644 (file)
 #define MXC_UART_CHAN_OFFSET   0
 #endif
 
-#if 0
-void
-cyg_hal_plf_comms_init(void)
-{
-       static int initialized = 0;
-
-       if (initialized)
-               return;
-
-       initialized = 1;
-
-       cyg_hal_plf_serial_init();
-}
-#endif
 
 //=============================================================================
 // MXC Serial Port (UARTx) for Debug