From db033af023c85047e78d818c8cdb41ef41083229 Mon Sep 17 00:00:00 2001 From: lothar Date: Thu, 22 Dec 2011 14:12:17 +0000 Subject: [PATCH] TX53 Release 2011-12-20 --- ReleaseNotes.txt | 100 + build.sh | 8 +- config/TX25-40x1.ecc | 10295 +++++++++++++++ config/TX27-40x0.ecc | 10 +- config/TX27-40x1.ecc | 10 +- config/TX51-60x0.ecc | 10390 +++++++++++++++ config/TX51-60x1.ecc | 10388 +++++++++++++++ config/TX51-60x2.ecc | 10389 +++++++++++++++ config/TX51-80x0.ecc | 13 +- config/TX51-80x1.ecc | 10389 +++++++++++++++ config/TX51-80x2.ecc | 10390 +++++++++++++++ config/TX53-1020.ecc | 10427 ++++++++++++++++ config/TX53-1022.ecc | 10427 ++++++++++++++++ config/TX53-1x30.ecc | 10427 ++++++++++++++++ config/TX53-1x31.ecc | 10426 +++++++++++++++ config/TX53-8020.ecc | 10426 +++++++++++++++ config/TX53-8021.ecc | 10426 +++++++++++++++ config/TX53-8x30.ecc | 10426 +++++++++++++++ config/TX53-8x31.ecc | 10425 +++++++++++++++ .../tx53karo/v1_0/cdl/tx53_eth_drivers.cdl | 89 + .../v1_0/include/devs_eth_arm_tx53.inl | 384 + packages/devs/eth/fec/v2_0/include/fec.h | 2 + packages/devs/eth/fec/v2_0/src/if_fec.c | 76 +- .../devs/eth/phy/v2_0/include/eth_phy_dev.h | 84 +- packages/devs/eth/phy/v2_0/src/eth_phy.c | 332 +- .../arm/mxc/v2_0/cdl/mxc_flash_select.cdl | 2 +- .../arm/mxc/v2_0/include/tx53_nand_bbt.h | 25 + .../hal/arm/mx25/karo/v1_0/src/tx25_splash.c | 764 ++ .../arm/mx53/karo/v1_0/cdl/hal_arm_tx53.cdl | 411 + .../karo/v1_0/include/hal_platform_setup.h | 1079 ++ .../arm/mx53/karo/v1_0/include/karo_tx53.h | 166 + .../include/pkgconf/mlt_arm_tx53_romram.h | 46 + .../include/pkgconf/mlt_arm_tx53_romram.ldi | 34 + .../hal/arm/mx53/karo/v1_0/include/plf_io.h | 69 + .../hal/arm/mx53/karo/v1_0/include/plf_mmap.h | 104 + .../mx53/karo/v1_0/misc/redboot_ROMRAM.ecm | 223 + .../arm/mx53/karo/v1_0/src/mx53_fastlogo.c | 309 + .../hal/arm/mx53/karo/v1_0/src/redboot_cmds.c | 216 + .../hal/arm/mx53/karo/v1_0/src/tx53_misc.c | 804 ++ .../hal/arm/mx53/var/v2_0/cdl/hal_arm_soc.cdl | 161 + .../hal/arm/mx53/var/v2_0/include/hal_cache.h | 350 + .../hal/arm/mx53/var/v2_0/include/hal_diag.h | 83 + .../hal/arm/mx53/var/v2_0/include/hal_mm.h | 170 + .../hal/arm/mx53/var/v2_0/include/hal_soc.h | 624 + .../arm/mx53/var/v2_0/include/hal_var_ints.h | 220 + .../arm/mx53/var/v2_0/include/mx53_iomux.h | 1321 ++ .../hal/arm/mx53/var/v2_0/include/plf_stub.h | 72 + .../hal/arm/mx53/var/v2_0/include/var_io.h | 56 + packages/hal/arm/mx53/var/v2_0/src/cmds.c | 1278 ++ .../arm/mx53/var/v2_0/src/hab_super_root.h | 120 + packages/hal/arm/mx53/var/v2_0/src/soc_diag.c | 752 ++ packages/hal/arm/mx53/var/v2_0/src/soc_misc.c | 624 + packages/infra/v2_0/src/diag.cxx | 58 +- packages/net/common/v2_0/tests/ping_test.c | 2 +- .../net/common/v2_0/tests/tftp_client_test.c | 2 +- packages/redboot/v2_0/src/dump.c | 180 +- 56 files changed, 156698 insertions(+), 386 deletions(-) create mode 100755 ReleaseNotes.txt create mode 100644 config/TX25-40x1.ecc create mode 100644 config/TX51-60x0.ecc create mode 100644 config/TX51-60x1.ecc create mode 100644 config/TX51-60x2.ecc create mode 100644 config/TX51-80x1.ecc create mode 100644 config/TX51-80x2.ecc create mode 100644 config/TX53-1020.ecc create mode 100644 config/TX53-1022.ecc create mode 100644 config/TX53-1x30.ecc create mode 100644 config/TX53-1x31.ecc create mode 100644 config/TX53-8020.ecc create mode 100644 config/TX53-8021.ecc create mode 100644 config/TX53-8x30.ecc create mode 100644 config/TX53-8x31.ecc create mode 100644 packages/devs/eth/arm/tx53karo/v1_0/cdl/tx53_eth_drivers.cdl create mode 100644 packages/devs/eth/arm/tx53karo/v1_0/include/devs_eth_arm_tx53.inl create mode 100644 packages/devs/flash/arm/mxc/v2_0/include/tx53_nand_bbt.h create mode 100644 packages/hal/arm/mx25/karo/v1_0/src/tx25_splash.c create mode 100644 packages/hal/arm/mx53/karo/v1_0/cdl/hal_arm_tx53.cdl create mode 100644 packages/hal/arm/mx53/karo/v1_0/include/hal_platform_setup.h create mode 100644 packages/hal/arm/mx53/karo/v1_0/include/karo_tx53.h create mode 100644 packages/hal/arm/mx53/karo/v1_0/include/pkgconf/mlt_arm_tx53_romram.h create mode 100644 packages/hal/arm/mx53/karo/v1_0/include/pkgconf/mlt_arm_tx53_romram.ldi create mode 100644 packages/hal/arm/mx53/karo/v1_0/include/plf_io.h create mode 100644 packages/hal/arm/mx53/karo/v1_0/include/plf_mmap.h create mode 100644 packages/hal/arm/mx53/karo/v1_0/misc/redboot_ROMRAM.ecm create mode 100644 packages/hal/arm/mx53/karo/v1_0/src/mx53_fastlogo.c create mode 100644 packages/hal/arm/mx53/karo/v1_0/src/redboot_cmds.c create mode 100644 packages/hal/arm/mx53/karo/v1_0/src/tx53_misc.c create mode 100644 packages/hal/arm/mx53/var/v2_0/cdl/hal_arm_soc.cdl create mode 100644 packages/hal/arm/mx53/var/v2_0/include/hal_cache.h create mode 100644 packages/hal/arm/mx53/var/v2_0/include/hal_diag.h create mode 100644 packages/hal/arm/mx53/var/v2_0/include/hal_mm.h create mode 100644 packages/hal/arm/mx53/var/v2_0/include/hal_soc.h create mode 100644 packages/hal/arm/mx53/var/v2_0/include/hal_var_ints.h create mode 100644 packages/hal/arm/mx53/var/v2_0/include/mx53_iomux.h create mode 100644 packages/hal/arm/mx53/var/v2_0/include/plf_stub.h create mode 100644 packages/hal/arm/mx53/var/v2_0/include/var_io.h create mode 100644 packages/hal/arm/mx53/var/v2_0/src/cmds.c create mode 100644 packages/hal/arm/mx53/var/v2_0/src/hab_super_root.h create mode 100644 packages/hal/arm/mx53/var/v2_0/src/soc_diag.c create mode 100644 packages/hal/arm/mx53/var/v2_0/src/soc_misc.c diff --git a/ReleaseNotes.txt b/ReleaseNotes.txt new file mode 100755 index 00000000..7a4997e1 --- /dev/null +++ b/ReleaseNotes.txt @@ -0,0 +1,100 @@ + RedBoot for Starter-Kit V (STK5) + Ka-Ro Electronics GmbH + + =========================================================== + v1.5.1 (2011-11-16) + Changes: + Fix FEC driver handling of 10BaseT link + + v1.5.0 (2010-06-16) + Changes: + Added support for TX53 + + v1.4.9 (2010-11-19) + Changes: + TX25: + Added support for redundant WinCE image load + + v1.4.8 (2010-10-29) + Changes: + TX25: + Added support for splash screen, enabled with: + fconfig bootsplash_enable true + LCD parameters: + Name Default Value Description + lcd_bpp: 16 LCD color depth (only 16bpp for now) + lcd_buffer_addr: -2113929216 LCD frame buffer address (hex: 0x82000000) + lcd_clk_period: 33333 Pixel clock period (in ps) + lcd_clk_polarity: false Pixel clock polarity active low + lcd_panel_width: 640 LCD panel width (in pixels) + lcd_panel_height: 480 LCD panel height (in pixels) + lcd_hsync_polarity: true HSYNC polarity active low + lcd_hsync_width: 64 HSYNC pulse width (in pixels): 1 .. 64 + lcd_margin_left: 96 Left margin (in pixels): 1 .. 256 + lcd_margin_right: 80 Right margin (in pixels): 1 .. 256 + lcd_margin_top: 46 Top margin (in scan lines): 0 .. 255 + lcd_margin_bottom: 39 Bottom margin (in scan lines): 0 .. 255 + lcd_vsync_polarity: true VSYNC polarity active low + lcd_vsync_width: 3 VSYNC pulse width (in scan lines): 0 .. 63 + + Image data is loaded from the flash partition named 'logo' and + can be stored either as a binary dump or in Windows .bmp + format with 24bpp. + + Renamed config/TX25-40x0.ecc to config/TX25-40x1.ecc to be in + sync with the module name + + v1.4.7 (2010-06-02) + Changes: + TX51: + Added support for TX51-80x2 and TX51-80x1 (SDRAM clock selectable via cdl) + + v1.4.6 (2010-03-04) + Changes: + TX27: + Fixed SDRAM timing according to application note from Micron. + TX51: + Fixed display of reset reason. + Corrected DEBUG LED settings + all modules: + Disabled FIS CRC check to facilitate update of the Linux + partition from within Linux (see RedBoot/README) + + v1.4.5 (2010-01-21) + Changes: + Added support for TX51-80x0 + + v1.4.4 (2009-09-15) + Changes: + Corrected SDRAM timing setup for TX25 that was accidentally broken + in the previous release + + v1.4.3 (2009-08-19) + Changes: + switched to unified source tree for TX25,TX27,TX37 + fixing some issues with bad block handling on TX27 + + v1.4.2 (2009-04-29) + Changes: + Corrected the SDRAM initialisation for TX27-4021 (128MiB SDRAM) + module. + + v1.4.1 (2009-04-24) + Changes: + Fixed a bug that lead to writing the RedBoot config partition on + every startup which would lead to excessive wearout of the flash. + The patch ecos-tx27-update.patch should be applied before compiling + RedBoot from source. + + v1.4 (2009-03-20) + Changes: + + 'RedBoot config' partition merged with 'FIS Directory' into one + erase block + + improved bad block handling + + Flash partitioning changed due to the above + NOTE: The Linux kernel expects the RedBoot partition table at a + fixed block in flash determined by a configuration option. + Thus the new RedBoot version will only work with the new + Linux kernel. + + MAC address stored in processor internal fuse array + + new command: 'nand bad' to manually update the BBT diff --git a/build.sh b/build.sh index b09c9afa..2fec628f 100644 --- a/build.sh +++ b/build.sh @@ -1,5 +1,5 @@ #!/bin/bash -options="cnqrR" +options="cnqrRp:" release=false tools_dir="$PWD/tools/bin" ecosconfig="$tools_dir/tools/configtool/standalone/common/ecosconfig" @@ -9,6 +9,7 @@ clean=false rebuild=false doit=true make_opts= +pattern="*" error() { if [ -n "${target}" ];then @@ -56,6 +57,9 @@ while getopts "$options" opt;do doit=false make_opts="${make_opts} -n" ;; + p) + pattern="$OPTARG" + ;; q) quiet=true ;; @@ -78,7 +82,7 @@ shift $(($OPTIND - 1)) if [ $# -gt 0 ];then targets="$@" else - targets=$(cd config;ls *.ecc) + targets=$(cd config;ls $pattern.ecc) fi set -e diff --git a/config/TX25-40x1.ecc b/config/TX25-40x1.ecc new file mode 100644 index 00000000..bce8e4e9 --- /dev/null +++ b/config/TX25-40x1.ecc @@ -0,0 +1,10295 @@ +# 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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 == current + # CYGPKG_HAL_ARM_MX53 (unknown) == 0 + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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 + # option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK + # ActiveIf: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # option CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# 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: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_TX25_BOOTSPLASH { + # Flavor: bool + user_value 1 + # value_source user + # Default value: 0 +}; + +# < +# 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: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 == current + # CYGPKG_HAL_ARM_MX51 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 (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: 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# < + diff --git a/config/TX27-40x0.ecc b/config/TX27-40x0.ecc index 9362d5cb..d2724584 100644 --- a/config/TX27-40x0.ecc +++ b/config/TX27-40x0.ecc @@ -9456,11 +9456,13 @@ cdl_component CYGHWR_DEVS_FLASH_MMC { 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 + # ActiveIf constraint: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 # CYGPKG_HAL_ARM_MX51 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 (unknown) == 0 # --> 0 # Flavor: bool diff --git a/config/TX27-40x1.ecc b/config/TX27-40x1.ecc index 6109d967..c61ee3d2 100644 --- a/config/TX27-40x1.ecc +++ b/config/TX27-40x1.ecc @@ -9457,11 +9457,13 @@ cdl_component CYGHWR_DEVS_FLASH_MMC { 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 + # ActiveIf constraint: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 # CYGPKG_HAL_ARM_MX51 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 (unknown) == 0 # --> 0 # Flavor: bool diff --git a/config/TX51-60x0.ecc b/config/TX51-60x0.ecc new file mode 100644 index 00000000..fc6733b9 --- /dev/null +++ b/config/TX51-60x0.ecc @@ -0,0 +1,10390 @@ +# 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 tx51karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX51 current ; + package -hardware CYGPKG_HAL_ARM_TX51KARO 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_TX51 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX51 + # 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 TX51 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX51 { + # 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 TX51 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_TX51KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # This option is not active + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 (unknown) == 0 + # --> 0 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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_MX51, 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 TX51 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_MX51, 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_MX51 { + # 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 CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# MX51 Tapeout 2.0 support +# When this option is enabled, it indicates support for +# MX51 Tapeout 2.0 +# +cdl_option CYGHWR_MX51_TO2 { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# MX51 mDDR memory support +# When this option is enabled, it indicates support for +# mDDR memory on MX51 +# +cdl_option CYGHWR_MX51_MDDR { + # Flavor: bool + user_value 1 + # value_source user + # 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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 TX51 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX51 module. +# +cdl_package CYGPKG_HAL_ARM_TX51KARO { + # 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 TX51 +# +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 TX51 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 TX51 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 TX51 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_TX51_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 TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_SDRAM_SIZE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 0x08000000 + # value_source default + # Default value: 0x08000000 + # Legal values: 0x10000000 0x08000000 0x04000000 +}; + +# SDRAM clock +# This option specifies the SDRAM clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_SDRAM_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 166 + # value_source default + # Default value: 166 + # Legal values: 166 200 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_CPU_CLK { + # Flavor: data + user_value 600 + # value_source user + # Default value: 800 + # Legal values: 600 800 +}; + +# 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_TX51_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 TX51 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX51_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 TX51 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX51_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX51_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx51_romram" + # Flavor: data + # Current_value: arm_tx51_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX51_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_TX51KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX51KARO_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_TX51_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x90108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # --> 0x90108000 +}; + +# 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 0x90108000 + # 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_TX51_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 +}; + +# 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_TX51_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # --> 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_TX51KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 == current + # CYGPKG_HAL_ARM_MX53 (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: 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX51_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX51-60x1.ecc b/config/TX51-60x1.ecc new file mode 100644 index 00000000..99fe584d --- /dev/null +++ b/config/TX51-60x1.ecc @@ -0,0 +1,10388 @@ +# 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 tx51karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX51 current ; + package -hardware CYGPKG_HAL_ARM_TX51KARO 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_TX51 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX51 + # 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 TX51 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX51 { + # 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 TX51 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_TX51KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # This option is not active + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 (unknown) == 0 + # --> 0 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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_MX51, 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 TX51 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_MX51, 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_MX51 { + # 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 CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# MX51 Tapeout 2.0 support +# When this option is enabled, it indicates support for +# MX51 Tapeout 2.0 +# +cdl_option CYGHWR_MX51_TO2 { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# MX51 mDDR memory support +# When this option is enabled, it indicates support for +# mDDR memory on MX51 +# +cdl_option CYGHWR_MX51_MDDR { + # Flavor: bool + user_value 1 + # value_source user + # 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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 TX51 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX51 module. +# +cdl_package CYGPKG_HAL_ARM_TX51KARO { + # 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 TX51 +# +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 TX51 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 TX51 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 TX51 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_TX51_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 TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_SDRAM_SIZE { + # Flavor: data + user_value 0x10000000 + # value_source user + # Default value: 0x08000000 + # Legal values: 0x10000000 0x08000000 0x04000000 +}; + +# SDRAM clock +# This option specifies the SDRAM clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_SDRAM_CLK { + # Flavor: data + user_value 200 + # value_source user + # Default value: 166 + # Legal values: 166 200 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_CPU_CLK { + # Flavor: data + user_value 600 + # value_source user + # Default value: 800 + # Legal values: 600 800 +}; + +# 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_TX51_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 TX51 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX51_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 TX51 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX51_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX51_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx51_romram" + # Flavor: data + # Current_value: arm_tx51_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX51_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_TX51KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX51KARO_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_TX51_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x90108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # --> 0x90108000 +}; + +# 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 0x90108000 + # 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_TX51_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 +}; + +# 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_TX51_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # --> 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_TX51KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 == current + # CYGPKG_HAL_ARM_MX53 (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: 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX51_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX51-60x2.ecc b/config/TX51-60x2.ecc new file mode 100644 index 00000000..76554cbd --- /dev/null +++ b/config/TX51-60x2.ecc @@ -0,0 +1,10389 @@ +# 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 tx51karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX51 current ; + package -hardware CYGPKG_HAL_ARM_TX51KARO 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_TX51 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX51 + # 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 TX51 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX51 { + # 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 TX51 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_TX51KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # This option is not active + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 (unknown) == 0 + # --> 0 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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_MX51, 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 TX51 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_MX51, 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_MX51 { + # 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 CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# MX51 Tapeout 2.0 support +# When this option is enabled, it indicates support for +# MX51 Tapeout 2.0 +# +cdl_option CYGHWR_MX51_TO2 { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# MX51 mDDR memory support +# When this option is enabled, it indicates support for +# mDDR memory on MX51 +# +cdl_option CYGHWR_MX51_MDDR { + # Flavor: bool + user_value 1 + # value_source user + # 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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 TX51 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX51 module. +# +cdl_package CYGPKG_HAL_ARM_TX51KARO { + # 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 TX51 +# +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 TX51 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 TX51 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 TX51 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_TX51_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 TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_SDRAM_SIZE { + # Flavor: data + user_value 0x10000000 + # value_source user + # Default value: 0x08000000 + # Legal values: 0x10000000 0x08000000 0x04000000 +}; + +# SDRAM clock +# This option specifies the SDRAM clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_SDRAM_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 166 + # value_source default + # Default value: 166 + # Legal values: 166 200 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_CPU_CLK { + # Flavor: data + user_value 600 + # value_source user + # Default value: 800 + # Legal values: 600 800 +}; + +# 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_TX51_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 TX51 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX51_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 TX51 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX51_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX51_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx51_romram" + # Flavor: data + # Current_value: arm_tx51_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX51_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_TX51KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX51KARO_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_TX51_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x90108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # --> 0x90108000 +}; + +# 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 0x90108000 + # 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_TX51_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 +}; + +# 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_TX51_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # --> 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_TX51KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 == current + # CYGPKG_HAL_ARM_MX53 (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: 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX51_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX51-80x0.ecc b/config/TX51-80x0.ecc index c5f22488..c888afff 100644 --- a/config/TX51-80x0.ecc +++ b/config/TX51-80x0.ecc @@ -3106,7 +3106,8 @@ cdl_package CYGPKG_HAL_ARM_MX51 { # The following properties are affected by this value # option CYGHWR_DEVS_FLASH_MMC_ESDHC - # ActiveIf: CYGPKG_HAL_ARM_MX37_3STACK || CYGPKG_HAL_ARM_MX35_3STACK || CYGPKG_HAL_ARM_MX25_3STACK || CYGPKG_HAL_ARM_MX51 + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 }; # > @@ -9488,11 +9489,13 @@ cdl_component CYGHWR_DEVS_FLASH_MMC { 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 + # ActiveIf constraint: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 # CYGPKG_HAL_ARM_MX51 == current + # CYGPKG_HAL_ARM_MX53 (unknown) == 0 # --> 1 # Flavor: bool diff --git a/config/TX51-80x1.ecc b/config/TX51-80x1.ecc new file mode 100644 index 00000000..a458c85f --- /dev/null +++ b/config/TX51-80x1.ecc @@ -0,0 +1,10389 @@ +# 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 tx51karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX51 current ; + package -hardware CYGPKG_HAL_ARM_TX51KARO 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_TX51 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX51 + # 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 TX51 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX51 { + # 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 TX51 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_TX51KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # This option is not active + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 (unknown) == 0 + # --> 0 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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_MX51, 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 TX51 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_MX51, 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_MX51 { + # 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 CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# MX51 Tapeout 2.0 support +# When this option is enabled, it indicates support for +# MX51 Tapeout 2.0 +# +cdl_option CYGHWR_MX51_TO2 { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# MX51 mDDR memory support +# When this option is enabled, it indicates support for +# mDDR memory on MX51 +# +cdl_option CYGHWR_MX51_MDDR { + # Flavor: bool + user_value 1 + # value_source user + # 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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 TX51 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX51 module. +# +cdl_package CYGPKG_HAL_ARM_TX51KARO { + # 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 TX51 +# +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 TX51 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 TX51 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 TX51 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_TX51_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 TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_SDRAM_SIZE { + # Flavor: data + user_value 0x10000000 + # value_source user + # Default value: 0x08000000 + # Legal values: 0x10000000 0x08000000 0x04000000 +}; + +# SDRAM clock +# This option specifies the SDRAM clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_SDRAM_CLK { + # Flavor: data + user_value 200 + # value_source user + # Default value: 166 + # Legal values: 166 200 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_CPU_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 800 + # value_source default + # Default value: 800 + # Legal values: 600 800 +}; + +# 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_TX51_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 TX51 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX51_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 TX51 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX51_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX51_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx51_romram" + # Flavor: data + # Current_value: arm_tx51_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX51_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_TX51KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX51KARO_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_TX51_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x90108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # --> 0x90108000 +}; + +# 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 0x90108000 + # 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_TX51_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 +}; + +# 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_TX51_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # --> 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_TX51KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 == current + # CYGPKG_HAL_ARM_MX53 (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: 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX51_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX51-80x2.ecc b/config/TX51-80x2.ecc new file mode 100644 index 00000000..5f754992 --- /dev/null +++ b/config/TX51-80x2.ecc @@ -0,0 +1,10390 @@ +# 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 tx51karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX51 current ; + package -hardware CYGPKG_HAL_ARM_TX51KARO 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_TX51 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX51 + # 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 TX51 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX51 { + # 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 TX51 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_TX51KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # This option is not active + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 (unknown) == 0 + # --> 0 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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_MX51, 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 TX51 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_MX51, 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_MX51 { + # 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 CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# MX51 Tapeout 2.0 support +# When this option is enabled, it indicates support for +# MX51 Tapeout 2.0 +# +cdl_option CYGHWR_MX51_TO2 { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# MX51 mDDR memory support +# When this option is enabled, it indicates support for +# mDDR memory on MX51 +# +cdl_option CYGHWR_MX51_MDDR { + # Flavor: bool + user_value 1 + # value_source user + # 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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_TX51KARO, 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 TX51 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX51 module. +# +cdl_package CYGPKG_HAL_ARM_TX51KARO { + # 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 TX51 +# +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 TX51 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 TX51 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 TX51 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_TX51_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 TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_SDRAM_SIZE { + # Flavor: data + user_value 0x10000000 + # value_source user + # Default value: 0x08000000 + # Legal values: 0x10000000 0x08000000 0x04000000 +}; + +# SDRAM clock +# This option specifies the SDRAM clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_SDRAM_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 166 + # value_source default + # Default value: 166 + # Legal values: 166 200 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX51_CPU_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 800 + # value_source default + # Default value: 800 + # Legal values: 600 800 +}; + +# 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_TX51_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 TX51 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX51_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 TX51 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX51_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX51_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx51_romram" + # Flavor: data + # Current_value: arm_tx51_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX51_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_TX51KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX51KARO_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_TX51_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x90108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # --> 0x90108000 +}; + +# 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 0x90108000 + # 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_TX51_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 +}; + +# 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_TX51_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x90108000 + # --> 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_TX51KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 == current + # CYGPKG_HAL_ARM_MX53 (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: 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX51_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX53-1020.ecc b/config/TX53-1020.ecc new file mode 100644 index 00000000..5bfbb595 --- /dev/null +++ b/config/TX53-1020.ecc @@ -0,0 +1,10427 @@ +# 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 tx53karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX53 current ; + package -hardware CYGPKG_HAL_ARM_TX53KARO 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_TX53 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX53 + # 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 TX53 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX53 { + # 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 TX53 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_TX53KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_MX53, 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 TX53 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_MX53, 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_MX53 { + # 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 CYGOPT_HAL_ARM_MXC_FEC_MIIGSK + # ActiveIf: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # option CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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 TX53 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX53 module. +# +cdl_package CYGPKG_HAL_ARM_TX53KARO { + # 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" "RAM" + + # 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 TX53 +# +cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS { + # Calculated value: 5 + # Flavor: data + # Current_value: 5 + + # 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 TX53 provides access to five 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 == 5 +}; + +# 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 == 5 + + # 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 TX53 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 == 5 +}; + +# Ka-Ro electronics TX53 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_TX53_OPTIONS { + # There is no associated value. + # Requires: CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # --> 1 +}; + +# > +# SDRAM DDR type +# This option specifies the SDRAM type of the TX53 module. +# Valid options are '2' for DDR2 and '3' for DDR3. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_TYPE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 2 + # value_source default + # Default value: 2 + # Legal values: 2 3 + + # The following properties are affected by this value + # component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 +}; + +# SDRAM size +# This option specifies the SDRAM size of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_SIZE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 0x20000000 + # value_source default + # Default value: 0x20000000 + # Legal values: 0x40000000 0x20000000 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_CPU_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 1000 + # value_source default + # Default value: 1000 + # Legal values: 800 1000 +}; + +# 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_TX53_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 TX53 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX53_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 TX53 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX53_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Options for DDR2 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS { + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # --> 1 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR2_CLK { + # Flavor: data + user_value 333 + # value_source user + # Default value: 400 + # Legal values: 216 266 333 400 +}; + +# < +# Options for DDR3 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS { + # This option is not active + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # --> 0 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR3_CLK { + # This option is not active + # The parent CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS is not active + + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 333 + # value_source default + # Default value: 333 + # Legal values: 333 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx53_romram" + # Flavor: data + # Current_value: arm_tx53_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX53_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_TX53KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX53KARO_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_TX53_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x70108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 0x70108000 +}; + +# 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 0x70108000 + # 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_TX53_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 +}; + +# 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_TX53_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 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_TX53KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX53_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX53-1022.ecc b/config/TX53-1022.ecc new file mode 100644 index 00000000..0f908f53 --- /dev/null +++ b/config/TX53-1022.ecc @@ -0,0 +1,10427 @@ +# 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 tx53karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX53 current ; + package -hardware CYGPKG_HAL_ARM_TX53KARO 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_TX53 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX53 + # 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 TX53 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX53 { + # 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 TX53 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_TX53KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_MX53, 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 TX53 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_MX53, 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_MX53 { + # 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 CYGOPT_HAL_ARM_MXC_FEC_MIIGSK + # ActiveIf: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # option CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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 TX53 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX53 module. +# +cdl_package CYGPKG_HAL_ARM_TX53KARO { + # 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" "RAM" + + # 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 TX53 +# +cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS { + # Calculated value: 5 + # Flavor: data + # Current_value: 5 + + # 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 TX53 provides access to five 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 == 5 +}; + +# 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 == 5 + + # 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 TX53 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 == 5 +}; + +# Ka-Ro electronics TX53 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_TX53_OPTIONS { + # There is no associated value. + # Requires: CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # --> 1 +}; + +# > +# SDRAM DDR type +# This option specifies the SDRAM type of the TX53 module. +# Valid options are '2' for DDR2 and '3' for DDR3. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_TYPE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 2 + # value_source default + # Default value: 2 + # Legal values: 2 3 + + # The following properties are affected by this value + # component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 +}; + +# SDRAM size +# This option specifies the SDRAM size of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_SIZE { + # Flavor: data + user_value 0x40000000 + # value_source user + # Default value: 0x20000000 + # Legal values: 0x40000000 0x20000000 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_CPU_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 1000 + # value_source default + # Default value: 1000 + # Legal values: 800 1000 +}; + +# 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_TX53_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 TX53 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX53_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 TX53 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX53_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Options for DDR2 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS { + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # --> 1 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR2_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 400 + # value_source default + # Default value: 400 + # Legal values: 216 266 333 400 +}; + +# < +# Options for DDR3 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS { + # This option is not active + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # --> 0 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR3_CLK { + # This option is not active + # The parent CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS is not active + + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 333 + # value_source default + # Default value: 333 + # Legal values: 333 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx53_romram" + # Flavor: data + # Current_value: arm_tx53_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX53_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_TX53KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX53KARO_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_TX53_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x70108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 0x70108000 +}; + +# 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 0x70108000 + # 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_TX53_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 +}; + +# 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_TX53_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 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_TX53KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX53_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX53-1x30.ecc b/config/TX53-1x30.ecc new file mode 100644 index 00000000..f32ca839 --- /dev/null +++ b/config/TX53-1x30.ecc @@ -0,0 +1,10427 @@ +# 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 tx53karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX53 current ; + package -hardware CYGPKG_HAL_ARM_TX53KARO 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_TX53 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX53 + # 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 TX53 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX53 { + # 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 TX53 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_TX53KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_MX53, 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 TX53 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_MX53, 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_MX53 { + # 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 CYGOPT_HAL_ARM_MXC_FEC_MIIGSK + # ActiveIf: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # option CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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 TX53 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX53 module. +# +cdl_package CYGPKG_HAL_ARM_TX53KARO { + # 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" "RAM" + + # 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 TX53 +# +cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS { + # Calculated value: 5 + # Flavor: data + # Current_value: 5 + + # 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 TX53 provides access to five 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 == 5 +}; + +# 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 == 5 + + # 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 TX53 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 == 5 +}; + +# Ka-Ro electronics TX53 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_TX53_OPTIONS { + # There is no associated value. + # Requires: CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # --> 1 +}; + +# > +# SDRAM DDR type +# This option specifies the SDRAM type of the TX53 module. +# Valid options are '2' for DDR2 and '3' for DDR3. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_TYPE { + # Flavor: data + user_value 3 + # value_source user + # Default value: 2 + # Legal values: 2 3 + + # The following properties are affected by this value + # component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 +}; + +# SDRAM size +# This option specifies the SDRAM size of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_SIZE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 0x20000000 + # value_source default + # Default value: 0x20000000 + # Legal values: 0x40000000 0x20000000 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_CPU_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 1000 + # value_source default + # Default value: 1000 + # Legal values: 800 1000 +}; + +# 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_TX53_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 TX53 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX53_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 TX53 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX53_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Options for DDR2 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS { + # This option is not active + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # --> 0 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR2_CLK { + # This option is not active + # The parent CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS is not active + + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 400 + # value_source default + # Default value: 400 + # Legal values: 216 266 333 400 +}; + +# < +# Options for DDR3 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS { + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # --> 1 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR3_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 333 + # value_source default + # Default value: 333 + # Legal values: 333 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx53_romram" + # Flavor: data + # Current_value: arm_tx53_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX53_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_TX53KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX53KARO_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_TX53_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x70108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 0x70108000 +}; + +# 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 0x70108000 + # 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_TX53_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 +}; + +# 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_TX53_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 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_TX53KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX53_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX53-1x31.ecc b/config/TX53-1x31.ecc new file mode 100644 index 00000000..0d13a546 --- /dev/null +++ b/config/TX53-1x31.ecc @@ -0,0 +1,10426 @@ +# 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 tx53karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX53 current ; + package -hardware CYGPKG_HAL_ARM_TX53KARO 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_TX53 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX53 + # 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 TX53 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX53 { + # 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 TX53 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_TX53KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_MX53, 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 TX53 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_MX53, 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_MX53 { + # 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 CYGOPT_HAL_ARM_MXC_FEC_MIIGSK + # ActiveIf: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # option CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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 TX53 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX53 module. +# +cdl_package CYGPKG_HAL_ARM_TX53KARO { + # 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" "RAM" + + # 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 TX53 +# +cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS { + # Calculated value: 5 + # Flavor: data + # Current_value: 5 + + # 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 TX53 provides access to five 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 == 5 +}; + +# 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 == 5 + + # 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 TX53 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 == 5 +}; + +# Ka-Ro electronics TX53 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_TX53_OPTIONS { + # There is no associated value. + # Requires: CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # --> 1 +}; + +# > +# SDRAM DDR type +# This option specifies the SDRAM type of the TX53 module. +# Valid options are '2' for DDR2 and '3' for DDR3. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_TYPE { + # Flavor: data + user_value 3 + # value_source user + # Default value: 2 + # Legal values: 2 3 + + # The following properties are affected by this value + # component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 +}; + +# SDRAM size +# This option specifies the SDRAM size of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_SIZE { + # Flavor: data + user_value 0x40000000 + # value_source user + # Default value: 0x20000000 + # Legal values: 0x40000000 0x20000000 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_CPU_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 1000 + # value_source default + # Default value: 1000 + # Legal values: 800 1000 +}; + +# 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_TX53_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 TX53 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX53_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 TX53 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX53_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Options for DDR2 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS { + # This option is not active + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # --> 0 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR2_CLK { + # This option is not active + # The parent CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS is not active + + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 400 + # value_source default + # Default value: 400 + # Legal values: 216 266 333 400 +}; + +# < +# Options for DDR3 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS { + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # --> 1 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR3_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 333 + # value_source default + # Default value: 333 + # Legal values: 333 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx53_romram" + # Flavor: data + # Current_value: arm_tx53_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX53_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_TX53KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX53KARO_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_TX53_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x70108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 0x70108000 +}; + +# 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 0x70108000 + # 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_TX53_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 +}; + +# 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_TX53_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 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_TX53KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX53_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX53-8020.ecc b/config/TX53-8020.ecc new file mode 100644 index 00000000..caa80f5c --- /dev/null +++ b/config/TX53-8020.ecc @@ -0,0 +1,10426 @@ +# 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 tx53karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX53 current ; + package -hardware CYGPKG_HAL_ARM_TX53KARO 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_TX53 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX53 + # 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 TX53 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX53 { + # 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 TX53 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_TX53KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_MX53, 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 TX53 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_MX53, 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_MX53 { + # 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 CYGOPT_HAL_ARM_MXC_FEC_MIIGSK + # ActiveIf: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # option CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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 TX53 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX53 module. +# +cdl_package CYGPKG_HAL_ARM_TX53KARO { + # 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" "RAM" + + # 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 TX53 +# +cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS { + # Calculated value: 5 + # Flavor: data + # Current_value: 5 + + # 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 TX53 provides access to five 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 == 5 +}; + +# 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 == 5 + + # 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 TX53 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 == 5 +}; + +# Ka-Ro electronics TX53 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_TX53_OPTIONS { + # There is no associated value. + # Requires: CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # --> 1 +}; + +# > +# SDRAM DDR type +# This option specifies the SDRAM type of the TX53 module. +# Valid options are '2' for DDR2 and '3' for DDR3. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_TYPE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 2 + # value_source default + # Default value: 2 + # Legal values: 2 3 + + # The following properties are affected by this value + # component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 +}; + +# SDRAM size +# This option specifies the SDRAM size of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_SIZE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 0x20000000 + # value_source default + # Default value: 0x20000000 + # Legal values: 0x40000000 0x20000000 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_CPU_CLK { + # Flavor: data + user_value 800 + # value_source user + # Default value: 1000 + # Legal values: 800 1000 +}; + +# 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_TX53_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 TX53 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX53_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 TX53 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX53_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Options for DDR2 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS { + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # --> 1 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR2_CLK { + # Flavor: data + user_value 333 + # value_source user + # Default value: 400 + # Legal values: 216 266 333 400 +}; + +# < +# Options for DDR3 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS { + # This option is not active + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # --> 0 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR3_CLK { + # This option is not active + # The parent CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS is not active + + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 333 + # value_source default + # Default value: 333 + # Legal values: 333 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx53_romram" + # Flavor: data + # Current_value: arm_tx53_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX53_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_TX53KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX53KARO_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_TX53_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x70108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 0x70108000 +}; + +# 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 0x70108000 + # 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_TX53_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 +}; + +# 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_TX53_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 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_TX53KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX53_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX53-8021.ecc b/config/TX53-8021.ecc new file mode 100644 index 00000000..22cece0f --- /dev/null +++ b/config/TX53-8021.ecc @@ -0,0 +1,10426 @@ +# 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 tx53karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX53 current ; + package -hardware CYGPKG_HAL_ARM_TX53KARO 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_TX53 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX53 + # 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 TX53 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX53 { + # 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 TX53 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_TX53KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_MX53, 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 TX53 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_MX53, 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_MX53 { + # 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 CYGOPT_HAL_ARM_MXC_FEC_MIIGSK + # ActiveIf: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # option CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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 TX53 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX53 module. +# +cdl_package CYGPKG_HAL_ARM_TX53KARO { + # 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" "RAM" + + # 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 TX53 +# +cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS { + # Calculated value: 5 + # Flavor: data + # Current_value: 5 + + # 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 TX53 provides access to five 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 == 5 +}; + +# 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 == 5 + + # 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 TX53 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 == 5 +}; + +# Ka-Ro electronics TX53 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_TX53_OPTIONS { + # There is no associated value. + # Requires: CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # --> 1 +}; + +# > +# SDRAM DDR type +# This option specifies the SDRAM type of the TX53 module. +# Valid options are '2' for DDR2 and '3' for DDR3. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_TYPE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 2 + # value_source default + # Default value: 2 + # Legal values: 2 3 + + # The following properties are affected by this value + # component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 +}; + +# SDRAM size +# This option specifies the SDRAM size of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_SIZE { + # Flavor: data + user_value 0x40000000 + # value_source user + # Default value: 0x20000000 + # Legal values: 0x40000000 0x20000000 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_CPU_CLK { + # Flavor: data + user_value 800 + # value_source user + # Default value: 1000 + # Legal values: 800 1000 +}; + +# 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_TX53_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 TX53 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX53_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 TX53 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX53_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Options for DDR2 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS { + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # --> 1 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR2_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 400 + # value_source default + # Default value: 400 + # Legal values: 216 266 333 400 +}; + +# < +# Options for DDR3 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS { + # This option is not active + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # --> 0 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR3_CLK { + # This option is not active + # The parent CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS is not active + + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 333 + # value_source default + # Default value: 333 + # Legal values: 333 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx53_romram" + # Flavor: data + # Current_value: arm_tx53_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX53_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_TX53KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX53KARO_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_TX53_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x70108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 0x70108000 +}; + +# 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 0x70108000 + # 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_TX53_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 +}; + +# 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_TX53_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 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_TX53KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX53_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX53-8x30.ecc b/config/TX53-8x30.ecc new file mode 100644 index 00000000..9cc35613 --- /dev/null +++ b/config/TX53-8x30.ecc @@ -0,0 +1,10426 @@ +# 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 tx53karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX53 current ; + package -hardware CYGPKG_HAL_ARM_TX53KARO 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_TX53 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX53 + # 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 TX53 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX53 { + # 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 TX53 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_TX53KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_MX53, 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 TX53 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_MX53, 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_MX53 { + # 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 CYGOPT_HAL_ARM_MXC_FEC_MIIGSK + # ActiveIf: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # option CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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 TX53 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX53 module. +# +cdl_package CYGPKG_HAL_ARM_TX53KARO { + # 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" "RAM" + + # 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 TX53 +# +cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS { + # Calculated value: 5 + # Flavor: data + # Current_value: 5 + + # 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 TX53 provides access to five 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 == 5 +}; + +# 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 == 5 + + # 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 TX53 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 == 5 +}; + +# Ka-Ro electronics TX53 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_TX53_OPTIONS { + # There is no associated value. + # Requires: CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # --> 1 +}; + +# > +# SDRAM DDR type +# This option specifies the SDRAM type of the TX53 module. +# Valid options are '2' for DDR2 and '3' for DDR3. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_TYPE { + # Flavor: data + user_value 3 + # value_source user + # Default value: 2 + # Legal values: 2 3 + + # The following properties are affected by this value + # component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 +}; + +# SDRAM size +# This option specifies the SDRAM size of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_SIZE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 0x20000000 + # value_source default + # Default value: 0x20000000 + # Legal values: 0x40000000 0x20000000 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_CPU_CLK { + # Flavor: data + user_value 800 + # value_source user + # Default value: 1000 + # Legal values: 800 1000 +}; + +# 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_TX53_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 TX53 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX53_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 TX53 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX53_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Options for DDR2 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS { + # This option is not active + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # --> 0 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR2_CLK { + # This option is not active + # The parent CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS is not active + + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 400 + # value_source default + # Default value: 400 + # Legal values: 216 266 333 400 +}; + +# < +# Options for DDR3 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS { + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # --> 1 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR3_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 333 + # value_source default + # Default value: 333 + # Legal values: 333 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx53_romram" + # Flavor: data + # Current_value: arm_tx53_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX53_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_TX53KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX53KARO_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_TX53_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x70108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 0x70108000 +}; + +# 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 0x70108000 + # 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_TX53_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 +}; + +# 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_TX53_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 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_TX53KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX53_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/config/TX53-8x31.ecc b/config/TX53-8x31.ecc new file mode 100644 index 00000000..7b83ce56 --- /dev/null +++ b/config/TX53-8x31.ecc @@ -0,0 +1,10425 @@ +# 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 tx53karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX53 current ; + package -hardware CYGPKG_HAL_ARM_TX53KARO 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_TX53 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 ; + package -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 + user_value arm-cortexa8-linux-gnu + # value_source user + # 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 + user_value "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -ffunction-sections -fdata-sections -fno-exceptions -fvtable-gc -finit-priority -Werror -pipe" + # The inferred value should not be edited directly. + inferred_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 user + # Default value: "-march=armv5 -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 == "" + # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" + # CYGBLD_ISO_STRING_STRFUNCS_HEADER == + # --> 1 + # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" + # CYGBLD_ISO_STRTOK_R_HEADER == + # --> 1 + # Requires: CYGPKG_ISOINFRA + # CYGPKG_ISOINFRA == current + # --> 1 +}; + +# > +# Inline versions of functions +# This option chooses whether some of the +# particularly simple string functions from +# 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 == "" + # CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == + # --> 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 +# 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_TX53 + # 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 TX53 processor module +# +cdl_package CYGPKG_DEVS_ETH_ARM_TX53 { + # 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 TX53 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_TX53KARO_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" +}; + +# < +# MXC FEC MII Gasket for RMII mode +# This option enables the use of the MII Gasket for +# RMII mode found in i.MX25 and i.MX53 processors. +# +cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK { + # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 1 + # value_source default + # Default value: 1 +}; + +# < +# 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 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 == "" + # 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 functions +# This option chooses whether the simple character +# classification and conversion functions (e.g. +# isupper(), isalpha(), toupper(), etc.) +# from 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 == "" + # CYGBLD_ISO_CTYPE_HEADER == + # --> 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 +# 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 functions +# This option chooses whether some of the +# particularly simple standard utility functions +# from 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 == "" + # CYGBLD_ISO_STDLIB_ABS_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_DIV_HEADER == + # --> 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 == "" + # CYGBLD_ISO_STDLIB_STRCONV_HEADER == + # --> 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 +# 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 +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_MX53, 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 TX53 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_MX53, 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_MX53 { + # 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 CYGOPT_HAL_ARM_MXC_FEC_MIIGSK + # ActiveIf: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53 + # option CYGHWR_DEVS_FLASH_MMC_ESDHC + # ActiveIf: CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 +}; + +# > +# 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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_TX53KARO, 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 TX53 module +# This HAL platform package provides generic +# support for the Ka-Ro electronics TX53 module. +# +cdl_package CYGPKG_HAL_ARM_TX53KARO { + # 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" "RAM" + + # 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 TX53 +# +cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS { + # Calculated value: 5 + # Flavor: data + # Current_value: 5 + + # 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 TX53 provides access to five 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 == 5 +}; + +# 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 == 5 + + # 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 TX53 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 == 5 +}; + +# Ka-Ro electronics TX53 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_TX53_OPTIONS { + # There is no associated value. + # Requires: CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 + # --> 1 +}; + +# > +# SDRAM DDR type +# This option specifies the SDRAM type of the TX53 module. +# Valid options are '2' for DDR2 and '3' for DDR3. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_TYPE { + # Flavor: data + user_value 3 + # value_source user + # Default value: 2 + # Legal values: 2 3 + + # The following properties are affected by this value + # component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS + # ActiveIf: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 +}; + +# SDRAM size +# This option specifies the SDRAM size of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_SIZE { + # Flavor: data + user_value 0x40000000 + # value_source user + # Default value: 0x20000000 + # Legal values: 0x40000000 0x20000000 +}; + +# CPU clock +# This option specifies the CPU clock in MHz of the TX51 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_CPU_CLK { + # Flavor: data + user_value 800 + # value_source user + # Default value: 1000 + # Legal values: 800 1000 +}; + +# 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_TX53_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 TX53 HAL. These flags are used in addition +# to the set of global flags. +# +cdl_option CYGPKG_HAL_ARM_TX53_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 TX53 HAL. These flags are removed from +# the set of global flags if present. +# +cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_REMOVE { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value "" + # value_source default + # Default value: "" +}; + +# Show a splash screen from the FIS partition: 'logo' +# 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 +# +cdl_option CYGHWR_MX53_LCD_LOGO { + # ActiveIf constraint: CYGPKG_DEVS_IMX_IPU + # CYGPKG_DEVS_IMX_IPU == current + # --> 1 + + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# Options for DDR2 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS { + # This option is not active + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # --> 0 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR2_CLK { + # This option is not active + # The parent CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS is not active + + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 400 + # value_source default + # Default value: 400 + # Legal values: 216 266 333 400 +}; + +# < +# Options for DDR3 SDRAM +# +cdl_component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS { + # ActiveIf constraint: CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 + # --> 1 + + # There is no associated value. +}; + +# > +# SDRAM clock +# This option specifies the SDRAM clock im MHz of the TX53 module. +# +cdl_option CYGNUM_HAL_ARM_TX53_DDR3_CLK { + # Flavor: data + # No user value, uncomment the following line to provide one. + # user_value 333 + # value_source default + # Default value: 333 + # Legal values: 333 +}; + +# < +# Memory layout +# +cdl_component CYGHWR_MEMORY_LAYOUT { + # Calculated value: "arm_tx53_romram" + # Flavor: data + # Current_value: arm_tx53_romram +}; + +# > +# Memory layout linker script fragment +# +cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# Memory layout header file +# +cdl_option CYGHWR_MEMORY_LAYOUT_H { + # Calculated value: "" + # Flavor: data + # Current_value: +}; + +# < +# < +# < +# < +# < +# 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 ) +# 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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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 == "-march=armv7-a -mfpu=fpa -mabi=apcs-gnu -Wall -Wno-pointer-sign -Wpointer-arith -Wstrict-prototypes -Wno-inline -Wundef -O2 -g -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_TX53_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_TX53KARO + # 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 + user_value 0 + # The inferred value should not be edited directly. + inferred_value 0 + # value_source user + # 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 2010-01-06" + # 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_TX53KARO_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_TX53_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 + # The inferred value should not be edited directly. + inferred_value 0 0 + # value_source inferred + # 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 0x70108000 + # value_source default + # Default value: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 0x70108000 +}; + +# 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 0x70108000 + # 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_TX53_OPTIONS + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 +}; + +# 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_TX53_OPTIONS { + # ActiveIf constraint: CYGPKG_REDBOOT + # CYGPKG_REDBOOT == current + # --> 1 + + # There is no associated value. + # Requires: CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 + # --> 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_TX53KARO + # 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 + # 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 == "" + # option CYGIMP_LIBC_I18N_CTYPE_INLINES + # Requires: CYGBLD_ISO_CTYPE_HEADER == "" +}; + +# < +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # package CYGPKG_ERROR + # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # component CYGPKG_ERROR_ERRNO + # Requires: CYGBLD_ISO_ERRNO_HEADER == "" +}; + +# < +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 == "" +}; + +# 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 + # value_source inferred + # Default value: 0 0 + + # The following properties are affected by this value + # option CYGPKG_ERROR_STRERROR + # Requires: CYGBLD_ISO_STRERROR_HEADER == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# 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 + # 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 == "" +}; + +# < +# 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 +# +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 +}; + +# < +# 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 +}; + +# 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 contents +# This covers the types required by POSIX to be in +# +# +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 contents +# This covers the extra types required by non-POSIX +# packages to be in . 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 || CYGPKG_HAL_ARM_MX35 || + # CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 + # CYGPKG_HAL_ARM_MX37 (unknown) == 0 + # CYGPKG_HAL_ARM_MX35 (unknown) == 0 + # CYGPKG_HAL_ARM_MX25 (unknown) == 0 + # CYGPKG_HAL_ARM_MX51 (unknown) == 0 + # CYGPKG_HAL_ARM_MX53 == current + # --> 1 + + # 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 + # 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 . +# +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 + # value_source default + # Default value: + + # The following properties are affected by this value + # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" + # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC + # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" +}; + +# 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == + # --> 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 == "" + # CYGBLD_ISO_ERRNO_CODES_HEADER == + # --> 1 +}; + +# > +# errno variable +# This package controls the behaviour of the +# errno variable (or more strictly, expression) +# from . +# +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 == "" + # CYGBLD_ISO_ERRNO_HEADER == + # --> 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 +# +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 == "" + # CYGBLD_ISO_STRERROR_HEADER == + # --> 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: "" +}; + +# < +# < +# I2C driver for FSL MXC-based platforms +# +cdl_package CYGPKG_DEVS_MXC_I2C { + # 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 +}; + +# ipu driver for mxc +# +cdl_package CYGPKG_DEVS_IMX_IPU { + # 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 CYGHWR_MX53_LCD_LOGO + # ActiveIf: CYGPKG_DEVS_IMX_IPU +}; + +# > +# IPU version 3EX support +# When this option is enabled, it indicates the IPU version +# is 3EX +# +cdl_option CYGHWR_DEVS_IPU_3_EX { + # 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 +}; + +# IPU version 3D support +# When this option is enabled, it indicates the IPU version +# is 3D +# +cdl_option CYGHWR_DEVS_IPU_3_D { + # Flavor: bool + # No user value, uncomment the following line to provide one. + # user_value 0 + # value_source default + # Default value: 0 +}; + +# < +# < + diff --git a/packages/devs/eth/arm/tx53karo/v1_0/cdl/tx53_eth_drivers.cdl b/packages/devs/eth/arm/tx53karo/v1_0/cdl/tx53_eth_drivers.cdl new file mode 100644 index 00000000..4ca08a84 --- /dev/null +++ b/packages/devs/eth/arm/tx53karo/v1_0/cdl/tx53_eth_drivers.cdl @@ -0,0 +1,89 @@ +# ==================================================================== +# +# tx53_eth_drivers.cdl +# +# ==================================================================== +#####ECOSGPLCOPYRIGHTBEGIN#### +## ------------------------------------------- +## This file is part of eCos, the Embedded Configurable Operating System. +## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +## +## eCos is free software; you can redistribute it and/or modify it under +## the terms of the GNU General Public License as published by the Free +## Software Foundation; either version 2 or (at your option) any later version. +## +## eCos is distributed in the hope that it will be useful, but WITHOUT ANY +## WARRANTY; without even the implied warranty of MERCHANTABILITY or +## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +## for more details. +## +## You should have received a copy of the GNU General Public License along +## with eCos; if not, write to the Free Software Foundation, Inc., +## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +## +## As a special exception, if other files instantiate templates or use macros +## or inline functions from this file, or you compile this file and link it +## with other works to produce a work based on this file, this file does not +## by itself cause the resulting work to be covered by the GNU General Public +## License. However the source code for this file must still be made available +## in accordance with section (3) of the GNU General Public License. +## +## This exception does not invalidate any other reasons why a work based on +## this file might be covered by the GNU General Public License. +## +## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +## at http://sources.redhat.com/ecos/ecos-license/ +## ------------------------------------------- +#####ECOSGPLCOPYRIGHTEND#### + +cdl_package CYGPKG_DEVS_ETH_ARM_TX53 { + display "Ethernet driver for Ka-Ro electronics TX53 processor module" + + parent CYGPKG_IO_ETH_DRIVERS + active_if CYGPKG_IO_ETH_DRIVERS + + include_dir cyg/io + + cdl_interface CYGINT_DEVS_ETH_FEC_REQUIRED { + display "FEC ethernet driver required" + } + + cdl_component CYGPKG_DEVS_ETH_ARM_MXCBOARD_ETH0 { + display "Ka-Ro TX53 ethernet port driver" + flavor bool + default_value 1 + description " + This option includes the ethernet device driver for the + MXC Board port." + + implements CYGHWR_NET_DRIVER_ETH0 + implements CYGINT_DEVS_ETH_FEC_REQUIRED + requires CYGSEM_REDBOOT_PLF_ESA_VALIDATE + requires CYGHWR_DEVS_ETH_PHY_LAN8700 + + cdl_option CYGDAT_DEVS_ETH_ARM_MXCBOARD_ETH0_NAME { + display "Device name for the ETH0 ethernet driver" + flavor data + default_value {"\"eth0\""} + description " + This option sets the name of the ethernet device." + } + + cdl_option CYGDAT_DEVS_ETH_ARM_TX53KARO_OUI { + display "OUI part of MAC address" + flavor data + active_if CYGSEM_REDBOOT_PLF_ESA_VALIDATE + default_value { "{ 0x00, 0x0c, 0xc6 }" } + description " + This option sets OUI part (manufacturer ID) of the MAC address + for validation." + } + } + + define_proc { + puts $::cdl_system_header "/***** ethernet driver proc output start *****/" + puts $::cdl_system_header "#define CYGDAT_DEVS_ETH_FEC_CFG " + puts $::cdl_system_header "#define CYGDAT_DEVS_ETH_FEC_INL " + puts $::cdl_system_header "/***** ethernet driver proc output end *****/" + } +} diff --git a/packages/devs/eth/arm/tx53karo/v1_0/include/devs_eth_arm_tx53.inl b/packages/devs/eth/arm/tx53karo/v1_0/include/devs_eth_arm_tx53.inl new file mode 100644 index 00000000..716e9069 --- /dev/null +++ b/packages/devs/eth/arm/tx53karo/v1_0/include/devs_eth_arm_tx53.inl @@ -0,0 +1,384 @@ +//========================================================================== +// +// devs_eth_arm_tx53.inl +// +// Board ethernet I/O definitions. +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//=========================================================================== + +#include // CYGNUM_HAL_INTERRUPT_ETHR +#include +#include + +#ifdef CYGPKG_REDBOOT +#include +#ifdef CYGSEM_REDBOOT_FLASH_CONFIG +#include +#include +#endif +#endif + + +#ifdef __WANT_DEVS + +#ifdef CYGPKG_DEVS_ETH_ARM_MXCBOARD_ETH0 + +#ifdef CYGPKG_DEVS_ETH_PHY + +static char mxc_fec_name[] = "mxc_fec"; + +#define FEC_POWER_GPIO MX53_GPIO_NR(3, 20) +#define FEC_RESET_GPIO MX53_GPIO_NR(7, 6) + +#ifdef CYGSEM_REDBOOT_PLF_ESA_VALIDATE +// +// Verify that the given ESA is valid for this platform +// +static char oui[3] = CYGDAT_DEVS_ETH_ARM_TX53KARO_OUI; + +bool +cyg_plf_redboot_esa_validate(unsigned char *val) +{ + return (val[0] == oui[0]) && (val[1] == oui[1]) && (val[2] == oui[2]); +} +#endif + +extern int tx53_mac_addr_program(unsigned char mac_addr[ETHER_ADDR_LEN]); + +static inline void tx53_write_reg(CYG_ADDRWORD base_addr, CYG_WORD32 offset, CYG_WORD32 val) +{ + if (net_debug) { + diag_printf("Changing reg %08x from %08x to %08x\n", + base_addr + offset, readl(base_addr + offset), val); + } + HAL_WRITE_UINT32(base_addr + offset, val); +} + +static inline CYG_WORD32 tx53_read_reg(CYG_ADDRWORD base_addr, CYG_WORD32 offset) +{ + CYG_WORD32 val; + + HAL_READ_UINT32(base_addr + offset, val); + if (net_debug) diag_printf("Read %08x from reg %08x\n", val, base_addr + offset); + return val; +} + +static inline void tx53_set_reg(CYG_ADDRWORD base_addr, CYG_WORD32 offset, + CYG_WORD32 set_mask, CYG_WORD32 clr_mask) +{ + CYG_WORD32 val; + + HAL_READ_UINT32(base_addr + offset, val); + if (net_debug) diag_printf("Changing reg %08x from %08x to %08x\n", base_addr + offset, val, + (val & ~clr_mask) | set_mask); + val = (val & ~clr_mask) | set_mask; + HAL_WRITE_UINT32(base_addr + offset, val); +} + +static iomux_v3_cfg_t tx53_fec_gpio_pads[] = { + /* setup FEC PHY pins for GPIO function (with SION set) */ + MX53_PAD_FEC_REF_CLK__GPIO_1_23 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_MDC__GPIO_1_31 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_MDIO__GPIO_1_22 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_RXD0__GPIO_1_27 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_RXD1__GPIO_1_26 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_RX_ER__GPIO_1_24 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_TX_EN__GPIO_1_28 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_TXD0__GPIO_1_30 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_TXD1__GPIO_1_29 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_CRS_DV__GPIO_1_25 | IOMUX_CONFIG_SION, + + /* PHY reset */ + MX53_PAD_PATA_DA_0__GPIO_7_6 | IOMUX_CONFIG_SION, + /* PHY power */ + MX53_PAD_EIM_D20__GPIO_3_20 | IOMUX_CONFIG_SION, +}; + +static iomux_v3_cfg_t tx53_fec_pads[] = { + MX53_PAD_FEC_REF_CLK__FEC_TX_CLK, + MX53_PAD_FEC_MDC__FEC_MDC, + MX53_PAD_FEC_MDIO__FEC_MDIO, + MX53_PAD_FEC_RXD0__FEC_RDATA_0, + MX53_PAD_FEC_RXD1__FEC_RDATA_1, + MX53_PAD_FEC_RX_ER__FEC_RX_ER, + MX53_PAD_FEC_TX_EN__FEC_TX_EN, + MX53_PAD_FEC_TXD0__FEC_TDATA_0, + MX53_PAD_FEC_TXD1__FEC_TDATA_1, + MX53_PAD_FEC_CRS_DV__FEC_RX_DV, +}; + +static struct tx53_gpio_setup { + unsigned gpio:9, + dir:1, + level:1; +} tx53_fec_gpio_data[] = { + /* dir, + * gpio, level */ + { FEC_RESET_GPIO, 1, 0, }, /* PHY reset */ + { FEC_POWER_GPIO, 1, 1, }, /* PHY power enable */ + { MX53_GPIO_NR(1, 23), 0, }, /* ENET_CLK */ + { MX53_GPIO_NR(1, 31), 1, 0, }, /* MDC */ + { MX53_GPIO_NR(1, 22), 1, 0, }, /* MDIO */ + { MX53_GPIO_NR(1, 27), 1, 1, }, /* Mode0/RXD0 */ + { MX53_GPIO_NR(1, 26), 1, 1, }, /* Mode1/RXD1 */ + { MX53_GPIO_NR(1, 24), 0, }, /* RX_ER */ + { MX53_GPIO_NR(1, 28), 1, 0, }, /* TX_EN */ + { MX53_GPIO_NR(1, 30), 1, 0, }, /* TXD0 */ + { MX53_GPIO_NR(1, 29), 1, 0, }, /* TXD1 */ + { MX53_GPIO_NR(1, 25), 1, 1, }, /* Mode2/CRS_DV */ +}; + +static inline void tx53_phy_gpio_init(void) +{ + int i; + + if (net_debug) + diag_printf("Initializing PHY GPIOs\n"); + + /* setup all pins attached to the PHY to the required level */ + for (i = 0; i < CYG_NELEM(tx53_fec_gpio_data); i++) { + struct tx53_gpio_setup *gs = &tx53_fec_gpio_data[i]; + + if (gs->dir) + gpio_direction_output(gs->gpio, gs->level); + else + gpio_direction_input(gs->gpio); + } + + /* configure all FEC pads as GPIO */ + mx53_iomux_setup_pads(tx53_fec_gpio_pads, CYG_NELEM(tx53_fec_gpio_pads)); + + for (i = 0; i < CYG_NELEM(tx53_fec_gpio_data); i++) { + struct tx53_gpio_setup *gs = &tx53_fec_gpio_data[i]; + + if (gs->dir) { + if (gs->level ^ gpio_get_value(gs->gpio)) { + diag_printf("%s: GPIO%d_%d[%d] is not %s\n", __FUNCTION__, + gs->gpio / GPIO_NUM_PIN, gs->gpio % GPIO_NUM_PIN, + i, gs->level ? "HIGH" : "LOW"); + } + } + } + if (net_debug) + diag_printf("PHY GPIO init done\n"); +} + +static bool mxc_fec_init(struct cyg_netdevtab_entry *tab); +static bool tx53_fec_init(struct cyg_netdevtab_entry *tab) +{ + cyg_bool esa_set; + int ok; + + /* Check, whether MAC address is enabled */ + ok = CYGACC_CALL_IF_FLASH_CFG_OP(CYGNUM_CALL_IF_FLASH_CFG_GET, + "fec_esa", &esa_set, CONFIG_BOOL); + if (!(ok && esa_set)) { + diag_printf("FEC disabled; set fec_esa=true to enable networking\n"); + return false; + } + return mxc_fec_init(tab); +} + +static void tx53_fec_phy_init(void) +{ + const int phy_reset_delay = 25000; /* wait for 25ms for LAN8710 to power up */ + + /* + * make sure the ETH PHY strap pins are pulled to the right voltage + * before deasserting the PHY reset GPIO + */ + /* assert FEC PHY Reset (GPIO2_14) and switch PHY power on (GPIO1_3) */ + + tx53_phy_gpio_init(); + + if (net_debug) + diag_printf("Switching PHY POWER on\n"); + gpio_set_value(FEC_RESET_GPIO, 0); + gpio_set_value(FEC_POWER_GPIO, 1); + + if (!gpio_get_value(FEC_POWER_GPIO)) { + diag_printf("**Failed to switch PHY power on\n"); + } + + if (gpio_get_value(FEC_RESET_GPIO)) { + diag_printf("**Failed to assert PHY reset\n"); + } + + /* wait for 100us according to LAN8710 spec. before ... */ + HAL_DELAY_US(phy_reset_delay); + /* ... deasserting FEC PHY reset */ + if (net_debug) diag_printf("Releasing PHY RESET\n"); + gpio_set_value(FEC_RESET_GPIO, 1); + if (!gpio_get_value(FEC_RESET_GPIO)) { + diag_printf("**Failed to release PHY reset\n"); + } + + /* configure all FEC pins to their required functions */ + mx53_iomux_setup_pads(tx53_fec_pads, CYG_NELEM(tx53_fec_pads)); +} + +ETH_PHY_REG_LEVEL_ACCESS_FUNS(eth0_phy, + tx53_fec_phy_init, + mxc_fec_phy_reset, + mxc_fec_phy_write, + mxc_fec_phy_read); + +cyg_bool _tx53_provide_fec_esa(unsigned char *addr) +{ + cyg_bool enabled; + int ok; + + ok = CYGACC_CALL_IF_FLASH_CFG_OP(CYGNUM_CALL_IF_FLASH_CFG_GET, + "fec_esa", &enabled, CONFIG_BOOL); + if (ok && enabled) { +#ifdef CYGSEM_REDBOOT_PLF_ESA_VALIDATE + cyg_uint8 addr2[ETHER_ADDR_LEN]; + + addr[0] = readl(SOC_FEC_MAC_BASE + 0x00); + addr[1] = readl(SOC_FEC_MAC_BASE + 0x04); + addr[2] = readl(SOC_FEC_MAC_BASE + 0x08); + addr[3] = readl(SOC_FEC_MAC_BASE + 0x0c); + addr[4] = readl(SOC_FEC_MAC_BASE + 0x10); + addr[5] = readl(SOC_FEC_MAC_BASE + 0x14); + + if (cyg_plf_redboot_esa_validate(addr)) { + diag_printf("Ethernet FEC MAC address from fuse bank: "); + diag_printf("%02x:%02x:%02x:%02x:%02x:%02x\n", + addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]); + CYGACC_CALL_IF_FLASH_CFG_OP(CYGNUM_CALL_IF_FLASH_CFG_GET, + "fec_esa_data", addr2, CONFIG_ESA); + if (memcmp(addr, addr2, sizeof(addr)) != 0) { + CYGACC_CALL_IF_FLASH_CFG_OP(CYGNUM_CALL_IF_FLASH_CFG_SET, + "fec_esa_data", addr, CONFIG_ESA); + } +#ifdef SOC_MAC_ADDR_LOCK_FUSE + if ((readl(IIM_BASE_ADDR + 0x800 + SOC_MAC_ADDR_FUSE_BANK * 0x400 + + SOC_MAC_ADDR_LOCK_FUSE * 4) & + SOC_MAC_ADDR_LOCK_BIT) == 0) { + tx53_mac_addr_program(addr); + } +#endif // SOC_MAC_ADDR_LOCK_FUSE + return true; + } +#endif // CYGSEM_REDBOOT_PLF_ESA_VALIDATE + + CYGACC_CALL_IF_FLASH_CFG_OP(CYGNUM_CALL_IF_FLASH_CFG_GET, + "fec_esa_data", addr, CONFIG_ESA); + + diag_printf("Ethernet FEC MAC address from fconfig: "); + diag_printf("%02x:%02x:%02x:%02x:%02x:%02x\n", + addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]); + +#ifdef CYGSEM_REDBOOT_PLF_ESA_VALIDATE + if (cyg_plf_redboot_esa_validate(addr)) { + tx53_mac_addr_program(addr); + return true; + } + + diag_printf("** Error: Invalid MAC address: "); + diag_printf("%02x:%02x:%02x:%02x:%02x:%02x\n", + addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]); + + writel(addr[0], SOC_FEC_MAC_BASE + 0x00); + writel(addr[1], SOC_FEC_MAC_BASE + 0x04); + writel(addr[2], SOC_FEC_MAC_BASE + 0x08); + writel(addr[3], SOC_FEC_MAC_BASE + 0x0c); + writel(addr[4], SOC_FEC_MAC_BASE + 0x10); + writel(addr[5], SOC_FEC_MAC_BASE + 0x14); + +#ifdef SOC_MAC_ADDR_LOCK_FUSE + if ((readl(IIM_BASE_ADDR + 0x800 + SOC_MAC_ADDR_FUSE_BANK * 0x400 + + SOC_MAC_ADDR_LOCK_FUSE * 4) & + SOC_MAC_ADDR_LOCK_BIT) == 0) { + diag_printf("Use 'fconfig fec_esa_data' to set the MAC address\n"); + return false; + } else { + diag_printf("Using MAC address from fconfig\n"); + } +#else + diag_printf("Using MAC address from fconfig\n"); +#endif // SOC_MAC_ADDR_LOCK_FUSE +#endif // CYGSEM_REDBOOT_PLF_ESA_VALIDATE + return true; + } + return false; +} + +static mxc_fec_priv_t mxc_fec_private = { + .phy = ð0_phy, // PHY access routines + .provide_esa = _tx53_provide_fec_esa, +}; + +ETH_DRV_SC(mxc_fec_sc, + &mxc_fec_private, // Driver specific data + mxc_fec_name, + mxc_fec_start, + mxc_fec_stop, + mxc_fec_control, + mxc_fec_can_send, + mxc_fec_send, + mxc_fec_recv, + mxc_fec_deliver, // "pseudoDSR" called from fast net thread + mxc_fec_poll, // poll function, encapsulates ISR and DSR + mxc_fec_int_vector); + +NETDEVTAB_ENTRY(mxc_fec_netdev, + mxc_fec_name, + tx53_fec_init, + &mxc_fec_sc); +#endif + +#if defined(CYGPKG_REDBOOT) && defined(CYGSEM_REDBOOT_FLASH_CONFIG) +RedBoot_config_option("Set FEC network hardware address [MAC]", + fec_esa, + ALWAYS_ENABLED, true, + CONFIG_BOOL, true + ); +RedBoot_config_option("FEC network hardware address [MAC]", + fec_esa_data, + "fec_esa", true, + CONFIG_ESA, 0 + ); +#endif // CYGPKG_REDBOOT && CYGSEM_REDBOOT_FLASH_CONFIG + +#ifdef CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT +// Note that this section *is* active in an application, outside RedBoot, +// where the above section is not included. + +#endif // CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT +#endif // CYGPKG_DEVS_ETH_ARM_MXCBOARD_ETH0 + +#endif // __WANT_DEVS diff --git a/packages/devs/eth/fec/v2_0/include/fec.h b/packages/devs/eth/fec/v2_0/include/fec.h index 87a5a565..477ee0ed 100644 --- a/packages/devs/eth/fec/v2_0/include/fec.h +++ b/packages/devs/eth/fec/v2_0/include/fec.h @@ -138,10 +138,12 @@ void mxc_fec_phy_write(int reg, int unit, unsigned short data); #define FEC_RCR_BC_REJ 0x00000010 #define FEC_RCR_PROM 0x00000008 #define FEC_RCR_MII_MODE 0x00000004 +#define FEC_RCR_DRT 0x00000002 /* the defines of Transmit Control*/ #define FEC_TCR_RFC_PAUSE 0x00000010 #define FEC_TCR_FDEN 0x00000004 +#define FEC_TCR_HBC 0x00000002 /* the defines of buffer description*/ #define FEC_BD_RX_NUM 256 diff --git a/packages/devs/eth/fec/v2_0/src/if_fec.c b/packages/devs/eth/fec/v2_0/src/if_fec.c index 8708e63d..ff9d2867 100644 --- a/packages/devs/eth/fec/v2_0/src/if_fec.c +++ b/packages/devs/eth/fec/v2_0/src/if_fec.c @@ -359,8 +359,8 @@ mxc_fec_start(struct eth_drv_sc *sc, unsigned char *enaddr, int flags) mxc_fec_set_mac_address(hw_reg, enaddr); priv->tx_busy = 0; - mxc_fec_reg_write(hw_reg, rdar, mxc_fec_reg_read(hw_reg, rdar) | FEC_RX_TX_ACTIVE); - mxc_fec_reg_write(hw_reg, ecr, mxc_fec_reg_read(hw_reg, ecr) | FEC_ETHER_EN); + mxc_fec_reg_write(hw_reg, rdar, FEC_RX_TX_ACTIVE); + mxc_fec_reg_write(hw_reg, ecr, FEC_ETHER_EN); } /*! @@ -425,19 +425,16 @@ mxc_fec_can_send(struct eth_drv_sc *sc) #ifdef CYGPKG_DEVS_ETH_PHY unsigned short value; value = _eth_phy_state(priv->phy); + if (value & ETH_PHY_STAT_LINK) { + mxc_fec_phy_status(priv, value, true); + } #else unsigned short value; mxc_fec_mii_read(hw_reg, priv->phy_addr, 1, &value); -#endif if (value & PHY_STATUS_LINK_ST) { - if (!(priv->status & FEC_STATUS_LINK_ON)) { - mxc_fec_phy_status(priv, value, true); - } - } else { - if (priv->status & FEC_STATUS_LINK_ON) { - mxc_fec_phy_status(priv, value, true); - } + mxc_fec_phy_status(priv, 0, true); } +#endif } return priv->status & FEC_STATUS_LINK_ON; @@ -589,7 +586,7 @@ mxc_fec_check_rx_bd(struct eth_drv_sc *sc) p++; } priv->rx_cur = p; - mxc_fec_reg_write(hw_reg, rdar, mxc_fec_reg_read(hw_reg, rdar) | FEC_RX_TX_ACTIVE); + mxc_fec_reg_write(hw_reg, rdar, FEC_RX_TX_ACTIVE); } } @@ -647,20 +644,19 @@ mxc_fec_poll(struct eth_drv_sc *sc) #ifdef CYGPKG_DEVS_ETH_PHY unsigned short value; value = _eth_phy_state(priv->phy); + if (!(value & ETH_PHY_STAT_LINK) ^ + !(priv->status & FEC_STATUS_LINK_ON)) { + mxc_fec_phy_status(priv, value, true); + } #else unsigned short value; mxc_fec_mii_read(hw_reg, priv->phy_addr, 1, &value); + if (!(value & PHY_STATUS_LINK_ST) ^ + !(priv->status & FEC_STATUS_LINK_ON)) { + mxc_fec_phy_status(priv, 0, true); + } #endif last_poll = 0; - if (value & PHY_STATUS_LINK_ST) { - if (!(priv->status & FEC_STATUS_LINK_ON)) { - mxc_fec_phy_status(priv, value, true); - } - } else { - if (priv->status & FEC_STATUS_LINK_ON) { - mxc_fec_phy_status(priv, value, true); - } - } } } @@ -715,7 +711,7 @@ mxc_fec_chip_init(mxc_fec_priv_t *dev) unsigned long ipg_clk; unsigned long clkdiv; - mxc_fec_reg_write(hw_reg, ecr, mxc_fec_reg_read(hw_reg, ecr) | FEC_RESET); + mxc_fec_reg_write(hw_reg, ecr, FEC_RESET); while (mxc_fec_reg_read(hw_reg, ecr) & FEC_RESET) { hal_delay_us(FEC_COMMON_TICK); } @@ -751,15 +747,15 @@ mxc_fec_chip_init(mxc_fec_priv_t *dev) /* must be done before enabling the MII gasket * (otherwise MIIGSK_ENR_READY will never assert) */ - mxc_fec_reg_write(hw_reg, ecr, mxc_fec_reg_read(hw_reg, ecr) | FEC_ETHER_EN); + mxc_fec_reg_write(hw_reg, ecr, FEC_ETHER_EN); } static void mxc_fec_phy_status(mxc_fec_priv_t *dev, unsigned short value, bool show) { + int changed = 0; #ifdef CYGPKG_DEVS_ETH_PHY if (value & ETH_PHY_STAT_LINK) { - int changed = !(dev->status & FEC_STATUS_LINK_ON); - + changed = !(dev->status & FEC_STATUS_LINK_ON); dev->status |= FEC_STATUS_LINK_ON; if (value & ETH_PHY_STAT_FDX) { dev->status |= FEC_STATUS_FULL_DPLX; @@ -773,14 +769,11 @@ static void mxc_fec_phy_status(mxc_fec_priv_t *dev, unsigned short value, bool s changed |= !!(dev->status & ETH_PHY_STAT_100MB); dev->status &= ~FEC_STATUS_100M; } - if (changed) { - mxc_fec_mii_setup(dev); - } } else { + changed = !!(dev->status & FEC_STATUS_LINK_ON); dev->status &= ~FEC_STATUS_LINK_ON; } #else - int changed = 0; mxc_fec_mii_read(dev->hw_reg, dev->phy_addr, PHY_STATUS_REG, &value); if (value & PHY_STATUS_LINK_ST) { changed |= !(dev->status & FEC_STATUS_LINK_ON); @@ -803,11 +796,26 @@ static void mxc_fec_phy_status(mxc_fec_priv_t *dev, unsigned short value, bool s changed |= dev->status & FEC_STATUS_100M; dev->status &= ~FEC_STATUS_100M; } +#endif if (changed) { + if (dev->status & FEC_STATUS_FULL_DPLX) { + mxc_fec_reg_write(dev->hw_reg, tcr, + (mxc_fec_reg_read(dev->hw_reg, tcr) & ~FEC_TCR_HBC) | + FEC_TCR_FDEN); + mxc_fec_reg_write(dev->hw_reg, rcr, + (mxc_fec_reg_read(dev->hw_reg, rcr) & ~FEC_RCR_DRT) | + FEC_RCR_FCE); + } else { + mxc_fec_reg_write(dev->hw_reg, tcr, + (mxc_fec_reg_read(dev->hw_reg, tcr) & ~FEC_TCR_FDEN) | + FEC_TCR_HBC); + mxc_fec_reg_write(dev->hw_reg, rcr, + (mxc_fec_reg_read(dev->hw_reg, rcr) & ~FEC_RCR_FCE) | + FEC_RCR_DRT); + } mxc_fec_mii_setup(dev); } -#endif - if (!show) { + if (!show || !changed) { return; } if (dev->status & FEC_STATUS_LINK_ON) { @@ -830,7 +838,7 @@ mxc_fec_phy_init(mxc_fec_priv_t *dev) unsigned short value = 0; unsigned long timeout = FEC_COMMON_TIMEOUT; - /*Reset PHY*/ + /* Reset PHY */ mxc_fec_mii_write(dev->hw_reg, dev->phy_addr, PHY_CTRL_REG, PHY_CTRL_RESET); while (timeout--) { if (mxc_fec_mii_read(dev->hw_reg, dev->phy_addr, PHY_CTRL_REG, &value)) { @@ -965,9 +973,9 @@ mxc_fec_phy_init(mxc_fec_priv_t *dev) } #endif diag_printf("FEC: [ %s ] [ %s ] [ %s ]:\n", - (dev->status&FEC_STATUS_FULL_DPLX)?"FULL_DUPLEX":"HALF_DUPLEX", - (dev->status&FEC_STATUS_LINK_ON)?"connected":"disconnected", - (dev->status&FEC_STATUS_100M)?"100M bps":"10M bps"); + (dev->status & FEC_STATUS_FULL_DPLX) ? "FULL_DUPLEX" : "HALF_DUPLEX", + (dev->status & FEC_STATUS_LINK_ON) ? "connected" : "disconnected", + (dev->status & FEC_STATUS_100M) ? "100M bps" : "10M bps"); #endif return true; } diff --git a/packages/devs/eth/phy/v2_0/include/eth_phy_dev.h b/packages/devs/eth/phy/v2_0/include/eth_phy_dev.h index 2a1c5df6..02e74509 100644 --- a/packages/devs/eth/phy/v2_0/include/eth_phy_dev.h +++ b/packages/devs/eth/phy/v2_0/include/eth_phy_dev.h @@ -4,7 +4,7 @@ // // eth_phy_dev.h // -// Device API for ethernet transciever (PHY) support +// Device API for ethernet transceiver (PHY) support // //========================================================================== //####ECOSGPLCOPYRIGHTBEGIN#### @@ -45,9 +45,9 @@ // Author(s): gthomas // Contributors: gthomas // Date: 2003-08-01 -// Purpose: -// Description: -// +// Purpose: +// Description: +// //####DESCRIPTIONEND#### // //========================================================================== @@ -60,53 +60,53 @@ #endif // Transceiver mode -#define PHY_BMCR 0x00 // Register number -#define PHY_BMCR_RESET 0x8000 -#define PHY_BMCR_LOOPBACK 0x4000 -#define PHY_BMCR_100MB 0x2000 -#define PHY_BMCR_AUTO_NEG 0x1000 -#define PHY_BMCR_POWER_DOWN 0x0800 -#define PHY_BMCR_ISOLATE 0x0400 -#define PHY_BMCR_RESTART 0x0200 +#define PHY_BMCR 0x00 // Register number +#define PHY_BMCR_RESET 0x8000 +#define PHY_BMCR_LOOPBACK 0x4000 +#define PHY_BMCR_100MB 0x2000 +#define PHY_BMCR_AUTO_NEG 0x1000 +#define PHY_BMCR_POWER_DOWN 0x0800 +#define PHY_BMCR_ISOLATE 0x0400 +#define PHY_BMCR_RESTART 0x0200 #define PHY_BMCR_FULL_DUPLEX 0x0100 -#define PHY_BMCR_COLL_TEST 0x0080 +#define PHY_BMCR_COLL_TEST 0x0080 -#define PHY_BMSR 0x01 // Status register -#define PHY_BMSR_100T4 0x8000 -#define PHY_BMSR_100FDX 0x4000 -#define PHY_BMSR_100HDX 0x2000 -#define PHY_BMSR_10FDX 0x1000 -#define PHY_BMSR_10HDX 0x0800 -#define PHY_BMSR_AUTO_NEG 0x0020 -#define PHY_BMSR_LINK 0x0004 +#define PHY_BMSR 0x01 // Status register +#define PHY_BMSR_100T4 0x8000 +#define PHY_BMSR_100FDX 0x4000 +#define PHY_BMSR_100HDX 0x2000 +#define PHY_BMSR_10FDX 0x1000 +#define PHY_BMSR_10HDX 0x0800 +#define PHY_BMSR_AUTO_NEG 0x0020 +#define PHY_BMSR_LINK 0x0004 -#define PHY_ID1 0x02 // Chip ID register (high 16 bits) -#define PHY_ID2 0x03 // Chip ID register (low 16 bits) +#define PHY_ID1 0x02 // Chip ID register (high 16 bits) +#define PHY_ID2 0x03 // Chip ID register (low 16 bits) -#define PHY_AN_ADV 0x04 // Auto negotiation advertisement register -#define PHY_AN_ADV_10HDX 0x0020 -#define PHY_AN_ADV_10FDX 0x0040 -#define PHY_AN_ADV_100HDX 0x0080 -#define PHY_AN_ADV_100FDX 0x0100 -#define PHY_AN_ADV_100_T4 0x0200 +#define PHY_AN_ADV 0x04 // Auto negotiation advertisement register +#define PHY_AN_ADV_10HDX 0x0020 +#define PHY_AN_ADV_10FDX 0x0040 +#define PHY_AN_ADV_100HDX 0x0080 +#define PHY_AN_ADV_100FDX 0x0100 +#define PHY_AN_ADV_100_T4 0x0200 -#define PHY_AN_PAR 0x05 // Auto negotiation link partner ability -#define PHY_AN_PAR_10HDX 0x0020 -#define PHY_AN_PAR_10FDX 0x0040 -#define PHY_AN_PAR_100HDX 0x0080 -#define PHY_AN_PAR_100FDX 0x0100 -#define PHY_AN_PAR_100_T4 0x0200 +#define PHY_AN_PAR 0x05 // Auto negotiation link partner ability +#define PHY_AN_PAR_10HDX 0x0020 +#define PHY_AN_PAR_10FDX 0x0040 +#define PHY_AN_PAR_100HDX 0x0080 +#define PHY_AN_PAR_100FDX 0x0100 +#define PHY_AN_PAR_100_T4 0x0200 struct _eth_phy_dev_entry { - char *name; - unsigned long id; - bool (*stat)(eth_phy_access_t *f, int *stat); + char *name; + unsigned long id; + bool (*stat)(eth_phy_access_t *f, int *stat); } CYG_HAL_TABLE_TYPE; -#define _eth_phy_dev(_name_,_id_,_stat_) \ -struct _eth_phy_dev_entry _eth_phy_dev_##_id_ \ - CYG_HAL_TABLE_QUALIFIED_ENTRY(_eth_phy_devs,_id_) = \ - { _name_, _id_, _stat_ }; +#define _eth_phy_dev(_name_,_id_,_stat_) \ + struct _eth_phy_dev_entry _eth_phy_dev_##_id_ \ + CYG_HAL_TABLE_QUALIFIED_ENTRY(_eth_phy_devs,_id_) = \ + { _name_, _id_, _stat_ }; #endif // CYGONCE_DEVS_ETH_PHY_DEV_H_ // ------------------------------------------------------------------------ diff --git a/packages/devs/eth/phy/v2_0/src/eth_phy.c b/packages/devs/eth/phy/v2_0/src/eth_phy.c index d3943987..d2b8acee 100644 --- a/packages/devs/eth/phy/v2_0/src/eth_phy.c +++ b/packages/devs/eth/phy/v2_0/src/eth_phy.c @@ -2,7 +2,7 @@ // // dev/eth_phy.c // -// Ethernet transciever (PHY) support +// Ethernet transceiver (PHY) support // //========================================================================== //####ECOSGPLCOPYRIGHTBEGIN#### @@ -41,11 +41,11 @@ //#####DESCRIPTIONBEGIN#### // // Author(s): gthomas -// Contributors: +// Contributors: // Date: 2003-08-01 -// Purpose: +// Purpose: // Description: API support for ethernet PHY -// +// // //####DESCRIPTIONEND#### // @@ -70,13 +70,13 @@ CYG_HAL_TABLE_END( __ETH_PHY_TAB_END__, _eth_phy_devs ); extern struct _eth_phy_dev_entry __ETH_PHY_TAB__[], __ETH_PHY_TAB_END__; // MII interface -#define MII_Start 0x40000000 -#define MII_Read 0x20000000 -#define MII_Write 0x10000000 -#define MII_Cmd 0x30000000 -#define MII_Phy(phy) (phy << 23) -#define MII_Reg(reg) (reg << 18) -#define MII_TA 0x00020000 +#define MII_Start 0x40000000 +#define MII_Read 0x20000000 +#define MII_Write 0x10000000 +#define MII_Cmd 0x30000000 +#define MII_Phy(phy) (phy << 23) +#define MII_Reg(reg) (reg << 18) +#define MII_TA 0x00020000 // // PHY unit access (via MII channel, using bit-level operations) @@ -85,208 +85,208 @@ extern struct _eth_phy_dev_entry __ETH_PHY_TAB__[], __ETH_PHY_TAB_END__; static cyg_uint32 phy_cmd(eth_phy_access_t *f, cyg_uint32 cmd) { - cyg_uint32 retval; - int i, off; - bool is_read = (cmd & MII_Cmd) == MII_Read; + cyg_uint32 retval; + int i, off; + bool is_read = (cmd & MII_Cmd) == MII_Read; - // Set both bits as output - f->ops.bit_level_ops.set_dir(1); + // Set both bits as output + f->ops.bit_level_ops.set_dir(1); - // Preamble - for (i = 0; i < 32; i++) { - f->ops.bit_level_ops.set_clock(0); - f->ops.bit_level_ops.set_data(1); - CYGACC_CALL_IF_DELAY_US(1); - f->ops.bit_level_ops.set_clock(1); - CYGACC_CALL_IF_DELAY_US(1); - } + // Preamble + for (i = 0; i < 32; i++) { + f->ops.bit_level_ops.set_clock(0); + f->ops.bit_level_ops.set_data(1); + CYGACC_CALL_IF_DELAY_US(1); + f->ops.bit_level_ops.set_clock(1); + CYGACC_CALL_IF_DELAY_US(1); + } - // Command/data - for (i = 0, off = 31; i < (is_read ? 14 : 32); i++, --off) { - f->ops.bit_level_ops.set_clock(0); - f->ops.bit_level_ops.set_data((cmd >> off) & 0x00000001); - CYGACC_CALL_IF_DELAY_US(1); - f->ops.bit_level_ops.set_clock(1); - CYGACC_CALL_IF_DELAY_US(1); - } + // Command/data + for (i = 0, off = 31; i < (is_read ? 14 : 32); i++, --off) { + f->ops.bit_level_ops.set_clock(0); + f->ops.bit_level_ops.set_data((cmd >> off) & 0x00000001); + CYGACC_CALL_IF_DELAY_US(1); + f->ops.bit_level_ops.set_clock(1); + CYGACC_CALL_IF_DELAY_US(1); + } - retval = cmd; + retval = cmd; - // If read, fetch data register - if (is_read) { - retval >>= 16; + // If read, fetch data register + if (is_read) { + retval >>= 16; - f->ops.bit_level_ops.set_clock(0); - f->ops.bit_level_ops.set_dir(0); - CYGACC_CALL_IF_DELAY_US(1); - f->ops.bit_level_ops.set_clock(1); - CYGACC_CALL_IF_DELAY_US(1); f->ops.bit_level_ops.set_clock(0); - CYGACC_CALL_IF_DELAY_US(1); + f->ops.bit_level_ops.set_dir(0); + CYGACC_CALL_IF_DELAY_US(1); + f->ops.bit_level_ops.set_clock(1); + CYGACC_CALL_IF_DELAY_US(1); + f->ops.bit_level_ops.set_clock(0); + CYGACC_CALL_IF_DELAY_US(1); - for (i = 0, off = 15; i < 16; i++, off--) { - f->ops.bit_level_ops.set_clock(1); - retval <<= 1; - retval |= f->ops.bit_level_ops.get_data(); - CYGACC_CALL_IF_DELAY_US(1); - f->ops.bit_level_ops.set_clock(0); - CYGACC_CALL_IF_DELAY_US(1); - } - } + for (i = 0, off = 15; i < 16; i++, off--) { + f->ops.bit_level_ops.set_clock(1); + retval <<= 1; + retval |= f->ops.bit_level_ops.get_data(); + CYGACC_CALL_IF_DELAY_US(1); + f->ops.bit_level_ops.set_clock(0); + CYGACC_CALL_IF_DELAY_US(1); + } + } - // Set both bits as output - f->ops.bit_level_ops.set_dir(1); + // Set both bits as output + f->ops.bit_level_ops.set_dir(1); - // Postamble - for (i = 0; i < 32; i++) { - f->ops.bit_level_ops.set_clock(0); - f->ops.bit_level_ops.set_data(1); - CYGACC_CALL_IF_DELAY_US(1); - f->ops.bit_level_ops.set_clock(1); - CYGACC_CALL_IF_DELAY_US(1); - } + // Postamble + for (i = 0; i < 32; i++) { + f->ops.bit_level_ops.set_clock(0); + f->ops.bit_level_ops.set_data(1); + CYGACC_CALL_IF_DELAY_US(1); + f->ops.bit_level_ops.set_clock(1); + CYGACC_CALL_IF_DELAY_US(1); + } - return retval; + return retval; } externC bool _eth_phy_init(eth_phy_access_t *f) { - int addr; - unsigned short state; - unsigned long id = 0; - struct _eth_phy_dev_entry *dev; + int addr; + unsigned short state; + unsigned long id = 0; + struct _eth_phy_dev_entry *dev; - if (f->init_done) return true; - f->init(); - // Scan to determine PHY address - f->init_done = true; - for (addr = 0; addr < 0x20; addr++) { - if (_eth_phy_read(f, PHY_ID1, addr, &state)) { - id = state << 16; - if (_eth_phy_read(f, PHY_ID2, addr, &state)) { - id |= state; - f->phy_addr = addr; - for (dev = __ETH_PHY_TAB__; dev != &__ETH_PHY_TAB_END__; dev++) { - if (dev->id == id) { - eth_phy_printf("PHY: %s\n", dev->name); - f->dev = dev; - return true; - } - } - } - } - } - if (addr >= 0x20) { - // Can't handle this PHY - eth_phy_printf("Unsupported PHY device - id: %lx\n", id); - } - f->init_done = false; - return false; + if (f->init_done) return true; + f->init(); + // Scan to determine PHY address + f->init_done = true; + for (addr = 0; addr < 0x20; addr++) { + if (_eth_phy_read(f, PHY_ID1, addr, &state)) { + id = state << 16; + if (_eth_phy_read(f, PHY_ID2, addr, &state)) { + id |= state; + f->phy_addr = addr; + for (dev = __ETH_PHY_TAB__; dev != &__ETH_PHY_TAB_END__; dev++) { + if (dev->id == id) { + eth_phy_printf("PHY: %s\n", dev->name); + f->dev = dev; + return true; + } + } + } + } + } + if (addr >= 0x20) { + // Can't handle this PHY + eth_phy_printf("Unsupported PHY device - id: %lx\n", id); + } + f->init_done = false; + return false; } externC void _eth_phy_reset(eth_phy_access_t *f) { - if (!f->init_done) { - eth_phy_printf("PHY reset without init on PHY: %p\n", f); - return; - } - f->init(); + if (!f->init_done) { + eth_phy_printf("PHY reset without init on PHY: %p\n", f); + return; + } + f->init(); } externC void _eth_phy_write(eth_phy_access_t *f, int reg, int addr, unsigned short data) { - if (!f->init_done) { - eth_phy_printf("PHY write without init on PHY: %p\n", f); - return; - } - if (f->ops_type == PHY_BIT_LEVEL_ACCESS_TYPE) { - phy_cmd(f, MII_Start | MII_Write | MII_Phy(addr) | MII_Reg(reg) | MII_TA | data); - } else { - f->ops.reg_level_ops.put_reg(reg, addr, data); - } + if (!f->init_done) { + eth_phy_printf("PHY write without init on PHY: %p\n", f); + return; + } + if (f->ops_type == PHY_BIT_LEVEL_ACCESS_TYPE) { + phy_cmd(f, MII_Start | MII_Write | MII_Phy(addr) | MII_Reg(reg) | MII_TA | data); + } else { + f->ops.reg_level_ops.put_reg(reg, addr, data); + } } externC bool _eth_phy_read(eth_phy_access_t *f, int reg, int addr, unsigned short *val) { - cyg_uint32 ret; + cyg_uint32 ret; - if (!f->init_done) { - eth_phy_printf("PHY read without init on PHY: %p\n", f); - return false; - } - if (f->ops_type == PHY_BIT_LEVEL_ACCESS_TYPE) { - ret = phy_cmd(f, MII_Start | MII_Read | MII_Phy(addr) | MII_Reg(reg) | MII_TA); - *val = ret; - return true; - } else { - return f->ops.reg_level_ops.get_reg(reg, addr, val); - } + if (!f->init_done) { + eth_phy_printf("PHY read without init on PHY: %p\n", f); + return false; + } + if (f->ops_type == PHY_BIT_LEVEL_ACCESS_TYPE) { + ret = phy_cmd(f, MII_Start | MII_Read | MII_Phy(addr) | MII_Reg(reg) | MII_TA); + *val = ret; + return true; + } else { + return f->ops.reg_level_ops.get_reg(reg, addr, val); + } } externC int _eth_phy_cfg(eth_phy_access_t *f, int mode) { - int phy_timeout = 5*1000; // Wait 5 seconds max for link to clear - bool phy_ok; - unsigned short reset_mode, phy_state; - int i; + int phy_timeout = 5 * 1000; // Wait 5 seconds max for link to clear + bool phy_ok; + unsigned short reset_mode, phy_state; + int i; - if (!f->init_done) { - eth_phy_printf("PHY config without init on PHY: %p\n", f); - return 0; - } + if (!f->init_done) { + eth_phy_printf("PHY config without init on PHY: %p\n", f); + return 0; + } - // Reset PHY (transceiver) - phy_ok = false; - _eth_phy_reset(f); + // Reset PHY (transceiver) + phy_ok = false; + _eth_phy_reset(f); - _eth_phy_write(f, PHY_BMCR, f->phy_addr, PHY_BMCR_RESET); - for (i = 0; i < 5*100; i++) { - phy_ok = _eth_phy_read(f, PHY_BMCR, f->phy_addr, &phy_state); - eth_phy_printf("PHY: %x\n", phy_state); - if (phy_ok && !(phy_state & PHY_BMCR_RESET)) break; - CYGACC_CALL_IF_DELAY_US(10000); // 10ms - } - if (!phy_ok || (phy_state & PHY_BMCR_RESET)) { - eth_phy_printf("PPC405: Can't get PHY unit to soft reset: %x\n", phy_state); - return 0; - } + _eth_phy_write(f, PHY_BMCR, f->phy_addr, PHY_BMCR_RESET); + for (i = 0; i < 5 * 100; i++) { + phy_ok = _eth_phy_read(f, PHY_BMCR, f->phy_addr, &phy_state); + eth_phy_printf("PHY: %04x\n", phy_state); + if (phy_ok && !(phy_state & PHY_BMCR_RESET)) break; + CYGACC_CALL_IF_DELAY_US(10000); // 10ms + } + if (!phy_ok || (phy_state & PHY_BMCR_RESET)) { + eth_phy_printf("Can't get PHY unit to soft reset: %x\n", phy_state); + return 0; + } - reset_mode = PHY_BMCR_RESTART | PHY_BMCR_AUTO_NEG; - _eth_phy_write(f, PHY_BMCR, f->phy_addr, reset_mode); - while (phy_timeout-- >= 0) { - phy_ok = _eth_phy_read(f, PHY_BMSR, f->phy_addr, &phy_state); - if (phy_ok && (phy_state & PHY_BMSR_AUTO_NEG)) { - break; - } else { - CYGACC_CALL_IF_DELAY_US(10000); // 10ms - } - } - if (phy_timeout <= 0) { - eth_phy_printf("** PPC405 Warning: PHY LINK UP failed: %04x\n", phy_state); - return 0; - } + reset_mode = PHY_BMCR_RESTART | PHY_BMCR_AUTO_NEG; + _eth_phy_write(f, PHY_BMCR, f->phy_addr, reset_mode); + while (phy_timeout-- >= 0) { + phy_ok = _eth_phy_read(f, PHY_BMSR, f->phy_addr, &phy_state); + if (phy_ok && (phy_state & PHY_BMSR_AUTO_NEG)) { + break; + } else { + CYGACC_CALL_IF_DELAY_US(10000); // 10ms + } + } + if (phy_timeout <= 0) { + eth_phy_printf("**Warning: PHY LINK UP failed: %04x\n", phy_state); + return 0; + } - return _eth_phy_state(f); + return _eth_phy_state(f); } externC int _eth_phy_state(eth_phy_access_t *f) { - int state = 0; + int state = 0; - if (!f->init_done) { - eth_phy_printf("PHY state without init on PHY: %p\n", f); - return 0; - } - if (f->dev->stat(f, &state)) { - return state; - } else { - return 0; - } - return state; + if (!f->init_done) { + eth_phy_printf("PHY state without init on PHY: %p\n", f); + return 0; + } + if (f->dev->stat(f, &state)) { + return state; + } else { + return 0; + } + return state; } diff --git a/packages/devs/flash/arm/mxc/v2_0/cdl/mxc_flash_select.cdl b/packages/devs/flash/arm/mxc/v2_0/cdl/mxc_flash_select.cdl index 2e284c32..9fa37d0b 100644 --- a/packages/devs/flash/arm/mxc/v2_0/cdl/mxc_flash_select.cdl +++ b/packages/devs/flash/arm/mxc/v2_0/cdl/mxc_flash_select.cdl @@ -67,7 +67,7 @@ cdl_package CYGPKG_DEVS_FLASH_ONMXC { cdl_option CYGHWR_DEVS_FLASH_MMC_ESDHC { display "MXC platform MMC card for newer SDHC controllers" active_if { CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || - CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 } + CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX51 || CYGPKG_HAL_ARM_MX53 } default_value 1 requires { CYGSEM_IO_FLASH_READ_INDIRECT == 1 } compile mxcmci_core.c mxcmci_host.c mxcmci_mmc.c mxcmci_sd.c mxcmci_sd.c diff --git a/packages/devs/flash/arm/mxc/v2_0/include/tx53_nand_bbt.h b/packages/devs/flash/arm/mxc/v2_0/include/tx53_nand_bbt.h new file mode 100644 index 00000000..bdf2958f --- /dev/null +++ b/packages/devs/flash/arm/mxc/v2_0/include/tx53_nand_bbt.h @@ -0,0 +1,25 @@ +static cyg_int8 bbt_pattern[] = {'B', 'b', 't', '0' }; +static cyg_int8 mirror_pattern[] = {'1', 't', 'b', 'B' }; + +static struct nand_bbt_descr tx53_bbt_main_descr = { + .options = (NAND_BBT_LASTBLOCK | NAND_BBT_CREATE | NAND_BBT_WRITE | + NAND_BBT_2BIT | NAND_BBT_VERSION), + .offs = 0, + .len = 4, + .veroffs = 4, + .maxblocks = 4, + .pattern = bbt_pattern, +}; + +static struct nand_bbt_descr tx53_bbt_mirror_descr = { + .options = (NAND_BBT_LASTBLOCK | NAND_BBT_CREATE | NAND_BBT_WRITE | + NAND_BBT_2BIT | NAND_BBT_VERSION), + .offs = 0, + .len = 4, + .veroffs = 4, + .maxblocks = 4, + .pattern = mirror_pattern, +}; + +static struct nand_bbt_descr *g_mxc_nfc_bbt_main_descr = &tx53_bbt_main_descr; +static struct nand_bbt_descr *g_mxc_nfc_bbt_mirror_descr = &tx53_bbt_mirror_descr; diff --git a/packages/hal/arm/mx25/karo/v1_0/src/tx25_splash.c b/packages/hal/arm/mx25/karo/v1_0/src/tx25_splash.c new file mode 100644 index 00000000..34d372fb --- /dev/null +++ b/packages/hal/arm/mx25/karo/v1_0/src/tx25_splash.c @@ -0,0 +1,764 @@ +//========================================================================== +// +// tx25_bootsplash.c +// +// TX25 Bootsplash Implementation +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================== + +#include +#include +#ifdef CYGPKG_REDBOOT +#include +#endif +#include +#include +#ifdef CYGSEM_REDBOOT_FLASH_CONFIG +#include +#endif +#ifdef CYGOPT_REDBOOT_FIS +#include +#endif +#include CYGBLD_HAL_PLATFORM_H +#include +#include // Platform specific hardware definitions + +#define LCDC_BASE 0x53fbc000 + +#define LCDC_SSA 0x00 + +#define LCDC_SIZE 0x04 +#define SIZE_XMAX(x) ((((x) >> 4) & 0x3f) << 20) + +#define SIZE_YMAX(y) ((y) & 0x3ff) + +#define LCDC_VPW 0x08 +#define VPW_VPW(x) ((x) & 0x3ff) + +#define LCDC_CPOS 0x0C +#define CPOS_CC1 (1 << 31) +#define CPOS_CC0 (1 << 30) +#define CPOS_OP (1 << 28) +#define CPOS_CXP(x) (((x) & 3ff) << 16) + +#define CPOS_CYP(y) ((y) & 0x3ff) + +#define LCDC_LCWHB 0x10 +#define LCWHB_BK_EN (1 << 31) +#define LCWHB_CW(w) (((w) & 0x1f) << 24) +#define LCWHB_CH(h) (((h) & 0x1f) << 16) +#define LCWHB_BD(x) ((x) & 0xff) + +#define LCDC_LCHCC 0x14 + +#define LCHCC_CUR_COL_R(r) (((r) & 0x3f) << 12) +#define LCHCC_CUR_COL_G(g) (((g) & 0x3f) << 6) +#define LCHCC_CUR_COL_B(b) ((b) & 0x3f) + +#define LCDC_PCR 0x18 + +#define PCR_TFT (1 << 31) +#define PCR_COLOR (1 << 30) +#define PCR_PBSIZ_1 (0 << 28) +#define PCR_PBSIZ_2 (1 << 28) +#define PCR_PBSIZ_4 (2 << 28) +#define PCR_PBSIZ_8 (3 << 28) +#define PCR_BPIX_1 (0 << 25) +#define PCR_BPIX_2 (1 << 25) +#define PCR_BPIX_4 (2 << 25) +#define PCR_BPIX_8 (3 << 25) +#define PCR_BPIX_12 (4 << 25) +#define PCR_BPIX_16 (5 << 25) +#define PCR_BPIX_18 (6 << 25) +#define PCR_PIXPOL (1 << 24) +#define PCR_FLMPOL (1 << 23) +#define PCR_LPPOL (1 << 22) +#define PCR_CLKPOL (1 << 21) +#define PCR_OEPOL (1 << 20) +#define PCR_SCLKIDLE (1 << 19) +#define PCR_END_SEL (1 << 18) +#define PCR_END_BYTE_SWAP (1 << 17) +#define PCR_REV_VS (1 << 16) +#define PCR_ACD_SEL (1 << 15) +#define PCR_ACD(x) (((x) & 0x7f) << 8) +#define PCR_SCLK_SEL (1 << 7) +#define PCR_SHARP (1 << 6) +#define PCR_PCD(x) ((x) & 0x3f) + +#define LCDC_HCR 0x1C +#define HCR_H_WIDTH(x) (((x) & 0x3f) << 26) +#define HCR_H_WAIT_1(x) (((x) & 0xff) << 8) +#define HCR_H_WAIT_2(x) ((x) & 0xff) + +#define LCDC_VCR 0x20 +#define VCR_V_WIDTH(x) (((x) & 0x3f) << 26) +#define VCR_V_WAIT_1(x) (((x) & 0xff) << 8) +#define VCR_V_WAIT_2(x) ((x) & 0xff) + +#define LCDC_POS 0x24 +#define POS_POS(x) ((x) & 1f) + +#define LCDC_LSCR1 0x28 + +#define LCDC_PWMR 0x2C + +#define LCDC_DMACR 0x30 + +#define LCDC_RMCR 0x34 + +#define RMCR_SELF_REF (1 << 0) + +#define LCDC_LCDICR 0x38 +#define LCDICR_INT_SYN (1 << 2) +#define LCDICR_INT_CON (1) + +#define LCDC_LCDISR 0x40 +#define LCDISR_UDR_ERR (1 << 3) +#define LCDISR_ERR_RES (1 << 2) +#define LCDISR_EOF (1 << 1) +#define LCDISR_BOF (1 << 0) + +#define BMP_MAGIC 0x4D42 +#define BMP_HEADER_V3_SIZE sizeof(V3BITMAPINFOHEADER) + +typedef struct lcd_display_metrics { + cyg_uint16 *frame_buffer; + unsigned long pixclk; + unsigned long width; + unsigned long height; + unsigned long hsync; + unsigned long vsync; + unsigned long bpp; + /* margin settings */ + unsigned long top; + unsigned long bottom; + unsigned long left; + unsigned long right; + /* control signal polarities */ + bool pixclk_pol; + bool hsync_pol; + bool vsync_pol; +} LCDDIM; + +typedef struct { + cyg_uint32 size; + cyg_int32 width; + cyg_int32 height; + cyg_uint16 planes; + cyg_uint16 bit_count; + cyg_uint32 compression; + cyg_uint32 size_image; + cyg_int32 x_pels_per_meter; + cyg_int32 y_pels_per_meter; + cyg_uint32 clr_used; + cyg_uint32 clr_important; +} V3BITMAPINFOHEADER; + +typedef struct { + cyg_uint16 type; // Signatur + cyg_uint32 size; // Groesse der datei + cyg_uint16 reserved[2]; + cyg_uint32 offset; // Offset der Pixeldaten +} __attribute__((packed)) BITMAPFILEHEADER; + +#define lcd_reg_write(val, reg) __lcd_reg_write(val, reg, #reg) +static inline void __lcd_reg_write(cyg_uint32 val, unsigned short reg, + const char *name) +{ + writel(val, LCDC_BASE + reg); +} + +static inline cyg_uint32 lcd_reg_read(unsigned short reg) +{ + cyg_uint32 val; + + val = readl(LCDC_BASE + reg); + return val; +} + + +static bool get_var(const char *name, void *val, int type) +{ + bool ok; + + ok = CYGACC_CALL_IF_FLASH_CFG_OP(CYGNUM_CALL_IF_FLASH_CFG_GET, + (char *)name, val, type); + if (!ok) { + diag_printf("fconfig variable %s not set; fconfig -i is needed!\n", + name); + } + return ok; +} + +static inline void lcdc_enable(int on) +{ + cyg_uint32 cgcr1 = readl(CCM_BASE_ADDR + CLKCTL_CGR1); + + if (on) { + cgcr1 |= 1 << 29; + } else { + cgcr1 &= ~(1 << 29); + } + writel(cgcr1, CCM_BASE_ADDR + CLKCTL_CGR1); +} + +static inline int bytes_per_pixel(unsigned long bpp) +{ + switch (bpp) { + case 8: + return 1; + + case 16: + return 2; + + default: + return 4; + } +} + +static void lcd_pin_cfg(void) +{ +#if 0 + writel(1, IOMUXC_BASE_ADDR + 0x088); + writel(1, IOMUXC_BASE_ADDR + 0x08c); + writel(0, IOMUXC_BASE_ADDR + 0x0c8); + writel(0, IOMUXC_BASE_ADDR + 0x0cc); + writel(0, IOMUXC_BASE_ADDR + 0x0d0); + writel(0, IOMUXC_BASE_ADDR + 0x0d4); + writel(0, IOMUXC_BASE_ADDR + 0x0d8); + writel(0, IOMUXC_BASE_ADDR + 0x0dc); + writel(0, IOMUXC_BASE_ADDR + 0x0e0); + writel(0, IOMUXC_BASE_ADDR + 0x0e4); + writel(0, IOMUXC_BASE_ADDR + 0x0e8); + writel(0, IOMUXC_BASE_ADDR + 0x0ec); + writel(0, IOMUXC_BASE_ADDR + 0x0f0); + writel(0, IOMUXC_BASE_ADDR + 0x0f4); + writel(0, IOMUXC_BASE_ADDR + 0x0f8); + writel(0, IOMUXC_BASE_ADDR + 0x0fc); + writel(0, IOMUXC_BASE_ADDR + 0x100); + writel(0, IOMUXC_BASE_ADDR + 0x104); + writel(0, IOMUXC_BASE_ADDR + 0x108); + writel(0, IOMUXC_BASE_ADDR + 0x10c); + writel(0, IOMUXC_BASE_ADDR + 0x110); + writel(0, IOMUXC_BASE_ADDR + 0x114); +#endif +} + +/* evaluate the config parameters */ +static bool bootsplash_setup(LCDDIM *ldim, unsigned long img_len) +{ + bool ok; + + ok = get_var("lcd_buffer_addr", &ldim->frame_buffer, CONFIG_INT); + ok &= get_var("lcd_clk_period", &ldim->pixclk, CONFIG_INT); + ok &= get_var("lcd_clk_polarity", &ldim->pixclk_pol, CONFIG_BOOL); + + ok &= get_var("lcd_panel_width", &ldim->width, CONFIG_INT); + ok &= get_var("lcd_panel_height", &ldim->height, CONFIG_INT); + ok &= get_var("lcd_bpp", &ldim->bpp, CONFIG_INT); + + ok &= get_var("lcd_hsync_width", &ldim->hsync, CONFIG_INT); + ok &= get_var("lcd_hsync_polarity", &ldim->hsync_pol, CONFIG_BOOL); + ok &= get_var("lcd_margin_left", &ldim->left, CONFIG_INT); + ok &= get_var("lcd_margin_right", &ldim->right, CONFIG_INT); + + ok &= get_var("lcd_vsync_width", &ldim->vsync, CONFIG_INT); + ok &= get_var("lcd_vsync_polarity", &ldim->vsync_pol, CONFIG_BOOL); + ok &= get_var("lcd_margin_top", &ldim->top, CONFIG_INT); + ok &= get_var("lcd_margin_bottom", &ldim->bottom, CONFIG_INT); + + if (!ok) + return false; + + if (ldim->width < 16 || ldim->width > 1024) { + diag_printf("Invalid LCD panel width: %lu\n", ldim->width); + ok = false; + } + + if (ldim->height < 1 || ldim->height > 511) { + diag_printf("Invalid LCD panel height: %lu\n", ldim->height); + ok = false; + } + + if (ldim->hsync < 1 || ldim->hsync > 64) { + diag_printf("Invalid HSYNC width: %lu\n", ldim->hsync); + ok = false; + } + + if (ldim->vsync > 63) { + diag_printf("Invalid VSYNC width: %lu\n", ldim->vsync); + ok = false; + } + + if (ldim->left < 3 || ldim->left > 258) { + diag_printf("Invalid left margin: %lu\n", ldim->left); + ok = false; + } + + if (ldim->right < 1 || ldim->right > 256) { + diag_printf("Invalid right margin: %lu\n", ldim->right); + ok = false; + } + + if (ldim->top > 255) { + diag_printf("Invalid top margin: %lu\n", ldim->top); + ok = false; + } + + if (ldim->bottom > 255) { + diag_printf("Invalid bottom margin: %lu\n", ldim->bottom); + ok = false; + } + + switch (ldim->bpp) { + default: + diag_printf("Invalid color depth: %lu\n", ldim->bpp); + return false; + + case 16: + case 8: + break; + } + + if (ldim->width * ldim->height * bytes_per_pixel(ldim->bpp) > img_len) { + diag_printf("LCD panel size %lux%lux%u = %lu does not match image size %lu\n", + ldim->width, ldim->height, bytes_per_pixel(ldim->bpp), + ldim->width * ldim->height * bytes_per_pixel(ldim->bpp), + img_len); + ok = false; + } + + return ok; +} + +/* initialize the LCD controller */ +static bool bootsplash_display(LCDDIM *ldim) +{ + unsigned long lcdc_clk = get_peri_clock(LCDC_CLK); + unsigned long pcr; + CYG_ADDRESS disp_addr_phys; + + HAL_VIRT_TO_PHYS_ADDRESS(ldim->frame_buffer, disp_addr_phys); + + diag_printf("LCD %lux%lu-%lu %lu.%03luMHz\n", + ldim->width, ldim->height, ldim->bpp, + 1000000 / ldim->pixclk, + 1000000000 / ldim->pixclk % 1000); + + ldim->pixclk = 1000000000 / ldim->pixclk * 1000; + if (ldim->pixclk > lcdc_clk / 2) { + diag_printf("LCD pixel clock %lu too high; max.: %lu\n", + ldim->pixclk, lcdc_clk / 2); + return false; + } + + pcr = lcdc_clk / ldim->pixclk; + if (pcr-- > 63) { + diag_printf("LCD pixel clock %lu too low; min.: %lu\n", + ldim->pixclk, lcdc_clk / 128); + return false; + } + + pcr |= PCR_TFT | PCR_COLOR | PCR_SCLK_SEL | + (ldim->vsync_pol * PCR_FLMPOL) | + (ldim->hsync_pol * PCR_LPPOL) | + (ldim->pixclk_pol * PCR_PIXPOL); + + switch (ldim->bpp) { + case 18: + pcr |= PCR_PBSIZ_8 | PCR_BPIX_18; + break; + + case 16: + pcr |= PCR_PBSIZ_8 | PCR_BPIX_16; + break; + + case 8: + pcr |= PCR_BPIX_8 | PCR_END_BYTE_SWAP; + break; + } + + lcdc_enable(0); + lcd_pin_cfg(); + + lcd_reg_write(VPW_VPW(ldim->width * ldim->bpp / 8 / 4), LCDC_VPW); + lcd_reg_write(HCR_H_WIDTH(ldim->hsync - 1) | HCR_H_WAIT_2(ldim->left - 3) | + HCR_H_WAIT_1(ldim->right - 1), LCDC_HCR); + lcd_reg_write(VCR_V_WIDTH(ldim->vsync) | VCR_V_WAIT_2(ldim->top) | + VCR_V_WAIT_1(ldim->bottom), LCDC_VCR); + lcd_reg_write(SIZE_XMAX(ldim->width) | SIZE_YMAX(ldim->height), LCDC_SIZE); + lcd_reg_write(pcr, LCDC_PCR); + lcd_reg_write(0, LCDC_PWMR); + lcd_reg_write(0, LCDC_LSCR1); + lcd_reg_write(0x80040060, LCDC_DMACR); + + lcd_reg_write(disp_addr_phys, LCDC_SSA); + lcd_reg_write(0, LCDC_POS); + lcd_reg_write(0, LCDC_CPOS); + lcd_reg_write(0, LCDC_RMCR); + + lcdc_enable(1); + + while (!(lcd_reg_read(LCDC_LCDISR) & LCDISR_EOF)); + + gpio_set_bit(LCD_POWER_GPIO / 32 + 1, LCD_POWER_GPIO % 32); + gpio_set_bit(LCD_RESET_GPIO / 32 + 1, LCD_RESET_GPIO % 32); + + HAL_DELAY_US(300000); + gpio_clr_bit(LCD_BACKLIGHT_GPIO / 32 + 1, LCD_BACKLIGHT_GPIO % 32); + + return true; +} + +static void set_pixel(LCDDIM *ldim, unsigned short x, unsigned short y, + unsigned char red, unsigned char green, unsigned char blue) +{ + unsigned int offset = y * ldim->width + x; + unsigned short *fb = (unsigned short *)(ldim->frame_buffer + offset); + + *fb = ((red & 0x1f) << 11) | + ((green & 0x3f) << 5) | + ((blue & 0x1f) << 0); +} + +static unsigned long paint_test_picture(LCDDIM *ldim) +{ + const int stripes = 8; + const unsigned int fill_size = ldim->width * ldim->height / stripes; + cyg_uint16 *frame_pointer = ldim->frame_buffer; + int x; + + memset(frame_pointer, 0, fill_size * bytes_per_pixel(ldim->bpp)); + frame_pointer += fill_size; + + for (x = 0; x < fill_size; x++) { + *frame_pointer++ = 0xf800; // red screen + } + + for (x = 0; x < fill_size; x++) { + *frame_pointer++ = 0x07e0; // green screen + } + + for (x = 0; x < fill_size; x++) { + *frame_pointer++ = 0x001f; // blue screen + } + + for (x = 0; x < fill_size; x++) { + *frame_pointer++ = 0x07ff; // yellow screen + } + + for (x = 0; x < fill_size; x++) { + *frame_pointer++ = 0xf81f; // magenta screen + } + + for (x = 0; x < fill_size; x++) { + *frame_pointer++ = 0xffe0; // cyan screen + } + + memset(frame_pointer, 0xff, fill_size * bytes_per_pixel(ldim->bpp)); + frame_pointer += fill_size; + + // draw a white frame + for (x = 0; x < ldim->width; x++) + set_pixel(ldim, x, 0, + 0xff, 0xff, 0xff); + + for (x = 0; x < ldim->height; x++) + set_pixel(ldim, ldim->width - 1, x, + 0xff, 0xff, 0xff); + + for (x = 0; x < ldim->width; x++) + set_pixel(ldim, x, ldim->height - 1, + 0xff, 0xff, 0xff); + + for (x = 0; x < ldim->height; x++) + set_pixel(ldim, 0, x, + 0xff, 0xff, 0xff); + + // diagonal lines + for (x = 0; x < ldim->width; x++) + set_pixel(ldim, x, x * ldim->height / ldim->width, + (x & 1) * 0xff, (x & 1) * 0xff, (x & 1) * 0xff); + + for (x = 0; x < ldim->width; x++) + set_pixel(ldim, ldim->width - x - 1, x * ldim->height / ldim->width, + (x & 1) * 0xff, (x & 1) * 0xff, (x & 1) * 0xff); + return (frame_pointer - ldim->frame_buffer) * bytes_per_pixel(ldim->bpp); +} + +static void load_bitmap(LCDDIM *ldim, void *ram_addr, + unsigned long img_len) +{ + cyg_uint8 *sp; + cyg_uint8 red, green, blue; + cyg_uint16 *ppixel; + + BITMAPFILEHEADER bmfh; + V3BITMAPINFOHEADER bmih; + int line, col; + + /* copy bitmap file header */ + memcpy(&bmfh, ram_addr, sizeof(bmfh)); + + /* copy bitmap info header */ + memcpy(&bmih, (cyg_uint8 *)ram_addr + sizeof(bmfh), sizeof(bmih)); + + if (bmfh.type != 0x4d42) { + if (ldim->width * ldim->height * bytes_per_pixel(ldim->bpp) > img_len) { + diag_printf("LCD panel size %lux%lux%u = %lu does not match image size %lu\n", + ldim->width, ldim->height, bytes_per_pixel(ldim->bpp), + ldim->width * ldim->height * bytes_per_pixel(ldim->bpp), + img_len); + goto end_failure; + } + memcpy(ldim->frame_buffer, ram_addr, img_len); + return; + } + + if (bmfh.offset >= bmfh.size) { + diag_printf("Corrupted BMP header\n"); + goto end_failure; + } + + if (bmih.size != BMP_HEADER_V3_SIZE ) { + diag_printf("** ERROR: unsupported bitmap header version, structure size must be %u\n", + BMP_HEADER_V3_SIZE); + goto end_failure; + } + + if (bmih.bit_count != 24) { + diag_printf("** ERROR: only 24 bit BMP files are supported\n"); + goto end_failure; + } + + if ((bmih.width != ldim->width) || (bmih.height != ldim->height)) { + diag_printf("** ERROR: BMP image size %ux%u does not match configured size: %lux%lu\n", + bmih.width, bmih.height, ldim->width, ldim->height); + goto end_failure; + } + + /* pointer to picture data */ + sp = (cyg_uint8 *)ram_addr + bmfh.offset; + + if (bmih.bit_count == 16) { + for (line = ldim->height; line > 0; line--) { + memcpy(ldim->frame_buffer + (line - 1) * ldim->width, + sp, ldim->width * 2); + sp += ldim->width * 2; + } + return; + } + + for (line = ldim->height; line > 0; line--) { + ppixel = ldim->frame_buffer + (line - 1) * ldim->width; + for (col = 0; col < ldim->width; col ++) { + blue = *sp++ >> 3; // 5 bits + green = *sp++ >> 2; // 6 bits + red = *sp++ >> 3; // 5 bits + *ppixel++ = ((red << 11) | (green << 5) | (blue << 0)); + } + } + return; + +end_failure: + paint_test_picture(ldim); +} + +/* + * load the logo from nand flash to memory. + */ +static bool do_logo_load(LCDDIM *ldim) +{ + void *fis_addr; + int ret = 0xFF; + void *err_addr; + unsigned int logo_size; + struct fis_image_desc *img; + void *ram_addr; + + /* Read the logo from storage media */ + if ((img = fis_lookup("logo", NULL)) == NULL) { + diag_printf("No logo partition found in the fis table, logo not loaded\n"); + return false; + } + + fis_addr = (void *)img->flash_base; + ram_addr = (void *)img->mem_base; + + logo_size = img->data_length; + ret = FLASH_READ(fis_addr, ram_addr, logo_size, &err_addr); + if (ret != 0) { + diag_printf("Loading logo from FLASH to MEMORY failed. error code: %d", ret); + return false; + } + if (!bootsplash_setup(ldim, logo_size)) { + diag_printf("Cannot init splash screen; Invalid display parameters\n"); + return false; + } + load_bitmap(ldim, ram_addr, logo_size); + bootsplash_display(ldim); + return true; +} + +static void redboot_bootsplash_display(void) +{ + bool bootsplash_feature_enable; + int ok; + LCDDIM ldim; + + gpio_set_bit(LCD_RESET_GPIO / 32, LCD_RESET_GPIO % 32); + gpio_set_bit(LCD_POWER_GPIO / 32, LCD_POWER_GPIO % 32); + gpio_set_bit(LCD_BACKLIGHT_GPIO / 32, LCD_BACKLIGHT_GPIO % 32); + + ok = CYGACC_CALL_IF_FLASH_CFG_OP(CYGNUM_CALL_IF_FLASH_CFG_GET, + "bootsplash_enable", + &bootsplash_feature_enable, CONFIG_BOOL); + if (!ok) { + diag_printf("fconfig variable bootsplash_enable not found\n"); + } + if (ok && bootsplash_feature_enable) { + do_logo_load(&ldim); + } +} + +#ifdef CYGPKG_REDBOOT +RedBoot_init(redboot_bootsplash_display, RedBoot_INIT_SECOND); + +RedBoot_config_option("Enable splash display at boot", + bootsplash_enable, + ALWAYS_ENABLED, true, + CONFIG_BOOL, + false + ); + +RedBoot_config_option("LCD frame buffer address", + lcd_buffer_addr, + "bootsplash_enable", true, + CONFIG_INT, + RAM_BANK0_BASE + RAM_BANK0_SIZE + ); + +RedBoot_config_option("Pixel clock period (in ps)", + lcd_clk_period, + "bootsplash_enable", true, + CONFIG_INT, + 33333 + ); + +RedBoot_config_option("Pixel clock polarity active low", + lcd_clk_polarity, + "bootsplash_enable", true, + CONFIG_BOOL, + false + ); + +RedBoot_config_option("LCD panel width (in pixels)", + lcd_panel_width, + "bootsplash_enable", true, + CONFIG_INT, + 640 + ); + +RedBoot_config_option("LCD panel height (in pixels)", + lcd_panel_height, + "bootsplash_enable", true, + CONFIG_INT, + 480 + ); + +RedBoot_config_option("LCD color depth (BPP)", + lcd_bpp, + "bootsplash_enable", true, + CONFIG_INT, + 16 + ); + +RedBoot_config_option("HSYNC pulse width (in pixels)", + lcd_hsync_width, + "bootsplash_enable", true, + CONFIG_INT, + 64 + ); + +RedBoot_config_option("HSYNC polarity active low", + lcd_hsync_polarity, + "bootsplash_enable", true, + CONFIG_BOOL, + true + ); + +RedBoot_config_option("Left margin (in pixels)", + lcd_margin_left, + "bootsplash_enable", true, + CONFIG_INT, + 96 + ); + +RedBoot_config_option("Right margin (in pixels)", + lcd_margin_right, + "bootsplash_enable", true, + CONFIG_INT, + 80 + ); + +RedBoot_config_option("VSYNC pulse width (in scan lines)", + lcd_vsync_width, + "bootsplash_enable", true, + CONFIG_INT, + 3 + ); + +RedBoot_config_option("VSYNC polarity active low", + lcd_vsync_polarity, + "bootsplash_enable", true, + CONFIG_BOOL, + true + ); + +RedBoot_config_option("Top margin (in scan lines)", + lcd_margin_top, + "bootsplash_enable", true, + CONFIG_INT, + 46 + ); + +RedBoot_config_option("Bottom margin (in scan lines)", + lcd_margin_bottom, + "bootsplash_enable", true, + CONFIG_INT, + 39 + ); +#endif diff --git a/packages/hal/arm/mx53/karo/v1_0/cdl/hal_arm_tx53.cdl b/packages/hal/arm/mx53/karo/v1_0/cdl/hal_arm_tx53.cdl new file mode 100644 index 00000000..c367c7ae --- /dev/null +++ b/packages/hal/arm/mx53/karo/v1_0/cdl/hal_arm_tx53.cdl @@ -0,0 +1,411 @@ +# ==================================================================== +# +# hal_arm_tx53.cdl +# +# ==================================================================== +#####ECOSGPLCOPYRIGHTBEGIN#### +## ------------------------------------------- +## This file is part of eCos, the Embedded Configurable Operating System. +## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +## +## eCos is free software; you can redistribute it and/or modify it under +## the terms of the GNU General Public License as published by the Free +## Software Foundation; either version 2 or (at your option) any later version. +## +## eCos is distributed in the hope that it will be useful, but WITHOUT ANY +## WARRANTY; without even the implied warranty of MERCHANTABILITY or +## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +## for more details. +## +## You should have received a copy of the GNU General Public License along +## with eCos; if not, write to the Free Software Foundation, Inc., +## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +## +## As a special exception, if other files instantiate templates or use macros +## or inline functions from this file, or you compile this file and link it +## with other works to produce a work based on this file, this file does not +## by itself cause the resulting work to be covered by the GNU General Public +## License. However the source code for this file must still be made available +## in accordance with section (3) of the GNU General Public License. +## +## This exception does not invalidate any other reasons why a work based on +## this file might be covered by the GNU General Public License. +## +## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +## at http://sources.redhat.com/ecos/ecos-license/ +## ------------------------------------------- +#####ECOSGPLCOPYRIGHTEND#### + +cdl_package CYGPKG_HAL_ARM_TX53KARO { + display "Ka-Ro TX53 module" + parent CYGPKG_HAL_ARM_MX53 + requires CYGINT_ISO_CTYPE + hardware + include_dir cyg/hal + define_header hal_arm_tx53.h + description " + This HAL platform package provides generic + support for the Ka-Ro electronics TX53 module." + + compile tx53_misc.c + implements CYGINT_HAL_DEBUG_GDB_STUBS + implements CYGINT_HAL_DEBUG_GDB_STUBS_BREAK + implements CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT + + implements CYGHWR_HAL_ARM_SOC_UART1 + implements CYGHWR_HAL_ARM_SOC_UART2 + implements CYGHWR_HAL_ARM_SOC_UART3 + implements CYGHWR_HAL_ARM_SOC_UART4 + + requires {CYGBLD_BUILD_REDBOOT == 1} + + define_proc { + puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H " + puts $::cdl_system_header "#define CYGBLD_HAL_VARIANT_H " + puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H " + puts $::cdl_system_header "#define CYGBLD_HAL_PLF_DEFS_H " + puts $::cdl_header "#define HAL_PLATFORM_CPU \"Freescale i.MX53 based\"" + puts $::cdl_header "#define HAL_PLATFORM_BOARD \"Ka-Ro TX53 processor module\"" + puts $::cdl_header "#define HAL_PLATFORM_MACHINE_TYPE 3279" + puts $::cdl_header "#define HAL_ARCH_PROGRAM_NEW_STACK tx53_program_new_stack" + } + + cdl_component CYG_HAL_STARTUP { + display "Startup type" + flavor data + default_value { "ROMRAM" } + legal_values { "ROMRAM" "RAM" } + no_define + define -file system.h CYG_HAL_STARTUP + description " + 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_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD { + display "Diagnostic serial port baud rate" + flavor data + legal_values 9600 19200 38400 57600 115200 + default_value 115200 + description " + 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_DEBUG_CHANNEL_BAUD { + display "GDB serial port baud rate" + flavor data + legal_values 9600 19200 38400 57600 115200 + default_value 115200 + description " + 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_COMM_CHANNELS { + display "Number of communication channels on the TX53" + flavor data + calculated 5 + } + + cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL { + display "Debug serial port" + active_if CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE + flavor data + legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 + default_value 0 + description " + The TX53 provides access to five serial ports. This option + chooses which port will be used to connect to a host + running GDB." + } + + cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT { + display "Default console channel." + flavor data + legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 + calculated 0 + } + + cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL { + display "Console serial port" + active_if CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE + flavor data + legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 + default_value CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT + description " + The TX53 provides access to three serial ports. This option + chooses which port will be used for console output." + } + + cdl_component CYGBLD_GLOBAL_OPTIONS { + display "Global build options" + flavor none + no_define + description " + Global build options including control over + compiler flags, linker flags and choice of toolchain." + + + parent CYGPKG_NONE + + cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX { + display "Global command prefix" + flavor data + no_define + default_value { "arm-926ejs-linux-gnu" } + description " + This option specifies the command prefix used when + invoking the build tools." + } + + cdl_option CYGBLD_GLOBAL_CFLAGS { + display "Global compiler flags" + flavor data + no_define + requires CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS + default_value { "-march=armv5 -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" } + description " + 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_LDFLAGS { + display "Global linker flags" + flavor data + no_define + default_value { "-Wl,--gc-sections -Wl,-static -O2 -nostdlib" } + description " + This option controls the global linker flags. Individual + packages may define options which override these global flags." + } + } + + cdl_component CYGPKG_HAL_ARM_TX53_OPTIONS { + display "Ka-Ro electronics TX53 module build options" + flavor none + no_define + requires { CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 } + description " + Package specific build options including control over + compiler flags used only in building this package, + and details of which tests are built." + + cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_TYPE { + display "SDRAM DDR type" + flavor data + legal_values { 2 3 } + default_value { 2 } + description " + This option specifies the SDRAM type of the TX53 module. + Valid options are '2' for DDR2 and '3' for DDR3." + } + + cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_SIZE { + display "SDRAM size" + flavor data + legal_values { 0x40000000 0x20000000 } + default_value { 0x20000000 } +# This is what I would like to do, but define_proc currently does not allow for +# accessing variables +# display "SDRAM size in MiB" +# legal_values { 1024 512 } +# default_value { 1024 } +# define_proc { +# puts $::cdl_header "#define CYGNUM_HAL_ARM_TX53_SDRAM_SIZE \ +# [format "0x%08x" [expr $CYGNUM_HAL_ARM_TX53_SDRAM_SIZE * 1048576]]" +# } + description " + This option specifies the SDRAM size of the TX53 module." + } + + cdl_option CYGNUM_HAL_ARM_TX53_CPU_CLK { + display "CPU clock" + flavor data + legal_values { 800 1000 } + default_value { 1000 } + description " + This option specifies the CPU clock in MHz of the TX51 module." + } + + cdl_option CYGOPT_HAL_ARM_TX53_DEBUG { + display "Enable low level debugging with LED" + flavor bool + default_value { false } + description " + This option enables low level debugging by blink codes + of the LED on STK5." + } + + cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_ADD { + display "Additional compiler flags" + flavor data + no_define + default_value { "" } + description " + This option modifies the set of compiler flags for + building the TX53 HAL. These flags are used in addition + to the set of global flags." + } + + cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_REMOVE { + display "Suppressed compiler flags" + flavor data + no_define + default_value { "" } + description " + This option modifies the set of compiler flags for + building the TX53 HAL. These flags are removed from + the set of global flags if present." + } + + cdl_option CYGHWR_MX53_LCD_LOGO { + display "Show a splash screen from the FIS partition: 'logo'" + active_if { CYGPKG_DEVS_IMX_IPU } + 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 mx53_fastlogo.c + } + } + + cdl_component CYGHWR_HAL_ARM_TX53_DDR2_OPTIONS { + display "Options for DDR2 SDRAM" + active_if { CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 } + flavor none + no_define + + cdl_option CYGNUM_HAL_ARM_TX53_DDR2_CLK { + display "SDRAM clock" + flavor data + legal_values { 216 266 333 400 } + default_value { 400 } + description " + This option specifies the SDRAM clock im MHz of the TX53 module." + } + } + + cdl_component CYGHWR_HAL_ARM_TX53_DDR3_OPTIONS { + display "Options for DDR3 SDRAM" + active_if { CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 } + flavor none + no_define + + cdl_option CYGNUM_HAL_ARM_TX53_DDR3_CLK { + display "SDRAM clock" + flavor data + legal_values { 333 } + default_value { 333 } + description " + This option specifies the SDRAM clock im MHz of the TX53 module." + } + } + + cdl_component CYGHWR_MEMORY_LAYOUT { + display "Memory layout" + flavor data + no_define + calculated { "arm_tx53_romram" } + + cdl_option CYGHWR_MEMORY_LAYOUT_LDI { + display "Memory layout linker script fragment" + flavor data + no_define + define -file system.h CYGHWR_MEMORY_LAYOUT_LDI + calculated { "" } + } + + cdl_option CYGHWR_MEMORY_LAYOUT_H { + display "Memory layout header file" + flavor data + no_define + define -file system.h CYGHWR_MEMORY_LAYOUT_H + calculated { "" } + } + } + + cdl_option CYGSEM_HAL_ROM_MONITOR { + display "Behave as a ROM monitor" + flavor bool + default_value 0 + parent CYGPKG_HAL_ROM_MONITOR + requires { CYG_HAL_STARTUP == "ROM" || CYG_HAL_STARTUP == "ROMRAM" } + description " + Enable this option if this program is to be used as a ROM monitor, + i.e. applications will be loaded into RAM on the TX53 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_USE_ROM_MONITOR { + display "Work with a ROM monitor" + flavor booldata + legal_values { "Generic" "GDB_stubs" } + default_value { CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 } + parent CYGPKG_HAL_ROM_MONITOR + requires { CYG_HAL_STARTUP == "RAM" } + description " + 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_component CYGPKG_REDBOOT_HAL_OPTIONS { + display "Redboot HAL options" + flavor none + no_define + parent CYGPKG_REDBOOT + active_if CYGPKG_REDBOOT + description " + This option lists the target's requirements for a valid Redboot + configuration." + + compile -library=libextras.a redboot_cmds.c + + cdl_option CYGBLD_BUILD_REDBOOT_BIN { + display "Build Redboot ROM binary image" + active_if CYGBLD_BUILD_REDBOOT + default_value 1 + no_define + description "This option enables the conversion of the Redboot ELF + image to a binary image suitable for ROM programming." + + make -priority 325 { + /bin/redboot.bin : /bin/redboot.elf + $(OBJCOPY) --strip-debug $< $(@:.bin=.img) + $(OBJCOPY) -O srec $< $(@:.bin=.srec) + $(OBJCOPY) -O binary $< $@ + $(COMMAND_PREFIX)nm $< | awk 'NF == 3 {print}' | sort > $(<:.elf=.map) + } + } + } + + cdl_component CYGPKG_REDBOOT_HAL_TX53_OPTIONS { + display "Redboot HAL variant options" + flavor none + no_define + parent CYGPKG_REDBOOT + active_if CYGPKG_REDBOOT + + # RedBoot details + requires { CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT == 0x70108000 } + define_proc { + puts $::cdl_header "#define CYGHWR_REDBOOT_ARM_TRAMPOLINE_ADDRESS 0x00001f00" + } + } +} diff --git a/packages/hal/arm/mx53/karo/v1_0/include/hal_platform_setup.h b/packages/hal/arm/mx53/karo/v1_0/include/hal_platform_setup.h new file mode 100644 index 00000000..4b659414 --- /dev/null +++ b/packages/hal/arm/mx53/karo/v1_0/include/hal_platform_setup.h @@ -0,0 +1,1079 @@ +#ifndef CYGONCE_HAL_PLATFORM_SETUP_H +#define CYGONCE_HAL_PLATFORM_SETUP_H + +//============================================================================= +// +// hal_platform_setup.h +// +// Platform specific support for HAL (assembly code) +// +//============================================================================= +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//=========================================================================== + +#include // System-wide configuration info +#include CYGBLD_HAL_VARIANT_H // Variant specific configuration +#include CYGBLD_HAL_PLATFORM_H // Platform specific configuration +#include // Variant specific hardware definitions +#include // MMU definitions +#include CYGBLD_HAL_PLF_DEFS_H // Platform specific hardware definitions +#include CYGHWR_MEMORY_LAYOUT_H + +#define CPU_CLK CYGNUM_HAL_ARM_TX53_CPU_CLK + +#if defined(CYGNUM_HAL_ARM_TX53_DDR2_CLK) +#define SDRAM_CLK CYGNUM_HAL_ARM_TX53_DDR2_CLK +#elif defined(CYGNUM_HAL_ARM_TX53_DDR3_CLK) +#define SDRAM_CLK CYGNUM_HAL_ARM_TX53_DDR3_CLK +#else +#error SDRAM clock not defined +#endif + +#define DEBUG_LED_BIT 20 +#define LED_GPIO_BASE GPIO2_BASE_ADDR +#define LED_MUX_OFFSET 0x174 +#define LED_MUX_MODE 0x11 + +#ifdef CYGOPT_HAL_ARM_TX53_DEBUG +#define LED_ON bl led_on +#define LED_OFF bl led_off +#else +#define LED_ON +#define LED_OFF +#endif + +#if defined(CYG_HAL_STARTUP_ROM) || defined(CYG_HAL_STARTUP_ROMRAM) +#define PLATFORM_SETUP1 _platform_setup1 +#define CYGHWR_HAL_ARM_HAS_MMU + +#ifdef CYG_HAL_STARTUP_ROMRAM +#define CYGSEM_HAL_ROM_RESET_USES_JUMP +#endif + +#define TX53_NAND_PAGE_SIZE 2048 +#define TX53_NAND_BLKS_PER_PAGE 64 + +#define PLATFORM_PREAMBLE flash_header + +// This macro represents the initial startup code for the platform + .macro _platform_setup1 +KARO_TX53_SETUP_START: + mrs r0, CPSR + bic r0, r0, #0x1f + orr r0, r0, #0xd3 + msr CPSR_fc, r0 + + /* + * Invalidate L1 I/D + */ + mov r0, #0 @ set up for MCR + mcr p15, 0, r0, c8, c7, 0 @ invalidate TLBs + mcr p15, 0, r0, c7, c5, 0 @ invalidate icache + + /* + * disable MMU stuff and caches + */ + mrc p15, 0, r0, c1, c0, 0 + bic r0, r0, #0x00002000 @ clear bits 13 (--V-) + bic r0, r0, #0x00000007 @ clear bits 2:0 (-CAM) + orr r0, r0, #0x00000002 @ set bit 1 (--A-) Align + orr r0, r0, #0x00000800 @ set bit 12 (Z---) BTB + mcr p15, 0, r0, c1, c0, 0 + + setup_sdram + + /* ARM errata ID #468414 */ + mrc 15, 0, r1, c1, c0, 1 + orr r1, r1, #(1 << 5) /* enable L1NEON bit */ + mcr 15, 0, r1, c1, c0, 1 + + // Explicitly disable L2 cache + mrc 15, 0, r0, c1, c0, 1 + bic r0, r0, #0x2 + mcr 15, 0, r0, c1, c0, 1 + + // reconfigure L2 cache aux control reg + mov r0, #0xC0 // tag RAM + add r0, r0, #0x4 // data RAM + orr r0, r0, #(1 << 24) // disable write allocate delay + orr r0, r0, #(1 << 23) // disable write allocate combine + orr r0, r0, #(1 << 22) // disable write allocate + + mcr 15, 1, r0, c9, c0, 2 + +init_aips_start: + init_aips + /* switch off LCD backlight */ + ldr r10, =GPIO1_BASE_ADDR + + ldr r9, [r10, #GPIO_DR] + orr r9, r9, #(1 << 1) + str r9, [r10, #GPIO_DR] + + ldr r9, [r10, #GPIO_GDIR] + orr r9, r9, #(1 << 1) + str r9, [r10, #GPIO_GDIR] + + LED_INIT + LED_BLINK 1 + +init_clock_start: + init_clock + LED_BLINK 2 + +Normal_Boot_Continue: +/* + * Note: + * IOMUX/PBC setup is done in C function plf_hardware_init() for simplicity + */ +STACK_Setup: + @ Set up a stack [for calling C code] + ldr r1, =__startup_stack + ldr r2, =RAM_BANK0_BASE + orr sp, r1, r2 + + @ Create MMU tables + bl hal_mmu_init + LED_BLINK 3 + + /* Workaround for arm erratum #709718 */ + @ Setup PRRR so device is always mapped to non-shared + mrc MMU_CP, 0, r1, c10, c2, 0 // Read Primary Region Remap Register + bic r1, #(3 << 16) + mcr MMU_CP, 0, r1, c10, c2, 0 // Write Primary Region Remap Register + + @ Enable MMU + ldr r2, =10f + mrc MMU_CP, 0, r1, MMU_Control, c0 + orr r1, r1, #7 @ enable MMU bit + orr r1, r1, #0x800 @ enable z bit + orr r1, r1, #(1 << 28) @ Enable TEX remap, workaround for L1 cache issue + mcr MMU_CP, 0, r1, MMU_Control, c0 + + /* Workaround for arm errata #621766 */ + mrc MMU_CP, 0, r1, MMU_Control, c0, 1 + orr r1, r1, #(1 << 5) @ enable L1NEON bit + mcr MMU_CP, 0, r1, MMU_Control, c0, 1 + + mov pc, r2 @ Change address spaces + .align 5 +10: + LED_BLINK 4 + .endm @ _platform_setup1 + + /* AIPS setup - Only setup MPROTx registers. The PACR default values are good.*/ + .macro init_aips + /* + * Set all MPROTx to be non-bufferable, trusted for R/W, + * not forced to user-mode. + */ + ldr r0, =AIPS1_CTRL_BASE_ADDR + ldr r1, AIPS1_PARAM + str r1, [r0, #0x00] + str r1, [r0, #0x04] + ldr r0, =AIPS2_CTRL_BASE_ADDR + str r1, [r0, #0x00] + str r1, [r0, #0x04] + .endm /* init_aips */ + + .macro init_clock + ldr r0, =CCM_BASE_ADDR + ldr r1, [r0, #CLKCTL_CCR] + tst r1, #(1 << 12) + bne osc_ok + + orr r1, r1, #(1 << 12) + str r1, [r0, #CLKCTL_CCR] +osc_ok: + /* Switch ARM to step clock */ + mov r1, #0x4 + str r1, [r0, #CLKCTL_CCSR] + +#if CPU_CLK == 1000 + setup_pll PLL1_BASE_ADDR, 1000 +#elif CPU_CLK == 800 + setup_pll PLL1_BASE_ADDR, 800 +#else +#error Bad CPU clock +#endif + setup_pll PLL3_BASE_ADDR, 400 + + /* Switch peripherals to PLL3 */ + ldr r1, CCM_CBCMR_VAL1 + str r1, [r0, #CLKCTL_CBCMR] + + ldr r1, CCM_CBCDR_VAL1 + str r1, [r0, #CLKCTL_CBCDR] +1: + /* make sure change is effective */ + ldr r1, [r0, #CLKCTL_CDHIPR] + LED_BLINK 1 + cmp r1, #0x0 + bne 1b + +#if SDRAM_CLK == 400 + setup_pll PLL2_BASE_ADDR, 400 +#elif SDRAM_CLK == 333 + setup_pll PLL2_BASE_ADDR, 333 +#elif SDRAM_CLK == 266 + setup_pll PLL2_BASE_ADDR, 266 +#elif SDRAM_CLK == 216 + setup_pll PLL2_BASE_ADDR, 216 +#elif SDRAM_CLK == 666 + setup_pll PLL2_BASE_ADDR, 666 +#else +#error Bad SDRAM_CLK +#endif + /* Switch peripheral to PLL2 */ + ldr r1, CCM_CBCDR_VAL2 + str r1, [r0, #CLKCTL_CBCDR] + + ldr r1, CCM_CBCMR_VAL2 + str r1, [r0, #CLKCTL_CBCMR] + + /* make sure change is effective */ +1: + ldr r1, [r0, #CLKCTL_CDHIPR] + LED_BLINK 1 + cmp r1, #0x0 + bne 1b + + setup_pll PLL3_BASE_ADDR, 216 + + /* Set the platform clock dividers */ + ldr r2, =PLATFORM_BASE_ADDR + ldr r1, PLATFORM_CLOCK_DIV + str r1, [r2, #PLATFORM_ICGC] + + mov r1, #0 + str r1, [r0, #CLKCTL_CACRR] /* ARM podf */ + + /* Switch ARM back to PLL 1. */ + mov r1, #0 + str r1, [r0, #CLKCTL_CCSR] + + /* setup the rest */ + ldr r1, W_CSCDR1_VAL + str r1, [r0, #CLKCTL_CSCDR1] + ldr r1, W_CSCMR1_VAL + str r1, [r0, #CLKCTL_CSCMR1] + + mov r1, #0x00000 + str r1, [r0, #CLKCTL_CCDR] + + /* for cko - for ARM div by 8 */ + mov r1, #0x000A0000 + orr r1, r1, #0x00000F0 + str r1, [r0, #CLKCTL_CCOSR] +end_clk_init: + .endm @ init_clock + + .macro setup_pll pll, mhz + ldr r2, =\pll + ldr r1, =0x1232 + str r1, [r2, #PLL_DP_CTL] @ Set DPLL ON (set UPEN bit); BRMO=1 + mov r1, #0x2 + str r1, [r2, #PLL_DP_CONFIG] @ Enable auto-restart AREN bit + + ldr r1, W_DP_OP_\mhz + str r1, [r2, #PLL_DP_OP] + str r1, [r2, #PLL_DP_HFS_OP] + + ldr r1, W_DP_MFD_\mhz + str r1, [r2, #PLL_DP_MFD] + str r1, [r2, #PLL_DP_HFS_MFD] + + ldr r1, W_DP_MFN_\mhz + str r1, [r2, #PLL_DP_MFN] + str r1, [r2, #PLL_DP_HFS_MFN] + + /* Now restart PLL */ + ldr r1, =0x1232 + str r1, [r2, #PLL_DP_CTL] +101: + ldr r1, [r2, #PLL_DP_CTL] + ands r1, r1, #0x1 + beq 101b + .endm + + .macro setup_sdram +#if 0 + /* Decrease the DRAM SDCLK pads to HIGH Drive strength */ + ldr r0, =IOMUXC_BASE_ADDR + ldr r1, =0x000000e5 + str r1, [r0, #0x4b8] + /* Change the delay line configuration */ + ldr r0, =ESDCTL_BASE_ADDR + ldr r1, =0x00f49400 + str r1, [r0, #ESDCTL_ESDCDLY1] + ldr r1, =0x00f49a00 + str r1, [r0, #ESDCTL_ESDCDLY2] + ldr r1, =0x00f49100 + str r1, [r0, #ESDCTL_ESDCDLY3] + ldr r1, =0x00f48900 + str r1, [r0, #ESDCTL_ESDCDLY4] + ldr r1, =0x00f49400 + str r1, [r0, #ESDCTL_ESDCDLY5] +#endif + .endm +#else // defined(CYG_HAL_STARTUP_ROM) || defined(CYG_HAL_STARTUP_ROMRAM) +#define PLATFORM_SETUP1 +#endif +#ifndef CYGOPT_HAL_ARM_TX53_DEBUG + .macro LED_BLINK,val + .endm + .macro DELAY,ms + .endm +#else +#define CYGHWR_LED_MACRO LED_BLINK \x + + .macro DELAY,ms + ldr r10, =\ms + bl delay + .endm + + .macro LED_BLINK,val + ldr r8, =\val + bl led_blink + .endm +#endif + + .macro LED_INIT + // initialize GPIO4_10 (PAD CSI2_D13) for LED on STK5 + ldr r10, =LED_GPIO_BASE + // GPIO_DR + ldr r9, [r10, #GPIO_DR] + bic r9, #(1 << DEBUG_LED_BIT) @ LED OFF + str r9, [r10, #GPIO_DR] + // GPIO_GDIR + ldr r9, [r10, #GPIO_GDIR] + orr r9, r9, #(1 << DEBUG_LED_BIT) + str r9, [r10, #GPIO_GDIR] + // iomux + ldr r10, =IOMUXC_BASE_ADDR + mov r9, #LED_MUX_MODE + str r9, [r10, #LED_MUX_OFFSET] + .endm + +#ifdef CYGOPT_HAL_ARM_TX53_DEBUG +led_on: + ldr r10, =LED_GPIO_BASE + // GPIO_DR + ldr r9, [r10, #GPIO_DR] + orr r9, #(1 << DEBUG_LED_BIT) @ LED ON + str r9, [r10, #GPIO_DR] + mov pc, lr + +led_off: + ldr r10, =LED_GPIO_BASE + // GPIO_DR + ldr r9, [r10, #GPIO_DR] + bic r9, #(1 << DEBUG_LED_BIT) @ LED OFF + str r9, [r10, #GPIO_DR] + mov pc, lr + +delay: + subs r10, r10, #1 + movmi pc, lr + + ldr r9, =(36000 / 10 / 10) +2: + subs r9, r9, #1 + bne 2b + b delay + +led_blink: + mov r7, lr +1: + subs r8, r8, #1 + bmi 2f + + LED_ON + DELAY 200 + LED_OFF + DELAY 300 + b 1b +2: + DELAY 700 + mov pc, r7 +#endif + +#define PLATFORM_VECTORS _platform_vectors + .macro _platform_vectors + .globl _KARO_MAGIC +_KARO_MAGIC: + .ascii "KARO_CE6" + .globl _KARO_STRUCT_SIZE +_KARO_STRUCT_SIZE: + .word 0 // reserve space structure length + + .globl _KARO_CECFG_START +_KARO_CECFG_START: + .rept 1024 / 4 + .word 0 // reserve space for CE configuration + .endr + + .globl _KARO_CECFG_END +_KARO_CECFG_END: + .endm + + .align 5 + .ascii "KARO TX53 " __DATE__ " " __TIME__ + .align + +#define CPU_2_BE_32(l) \ + ((((l) << 24) & 0xFF000000) | \ + (((l) << 8) & 0x00FF0000) | \ + (((l) >> 8) & 0x0000FF00) | \ + (((l) >> 24) & 0x000000FF)) + +#define MXC_DCD_ITEM(addr, val) \ + .word CPU_2_BE_32(addr) ; \ + .word CPU_2_BE_32(val) + +#define MXC_DCD_CMD_SZ_BYTE 1 +#define MXC_DCD_CMD_SZ_SHORT 2 +#define MXC_DCD_CMD_SZ_WORD 4 +#define MXC_DCD_CMD_FLAG_WRITE 0x0 +#define MXC_DCD_CMD_FLAG_CLR 0x2 +#define MXC_DCD_CMD_FLAG_SET 0x3 +#define MXC_DCD_CMD(type, flags, next) \ + .word CPU_2_BE_32((0xcc << 24) | (((next) - .) << 8) | ((flags) << 3) | (type)) + +#define NS_TO_CK(ns) (((ns) * SDRAM_CLK + 999) / 1000) + + .macro CK_VAL, name, clks, offs, max + .iflt \clks - \offs + .set \name, 0 + .else + .ifle \clks - \offs - \max + .set \name, \clks - \offs + .endif + .endif + .endm + + .macro NS_VAL, name, ns, offs, max + .iflt \ns - \offs + .set \name, 0 + .else + CK_VAL \name, NS_TO_CK(\ns), \offs, \max + .endif + .endm + + .macro CK_MAX, name, ck1, ck2, offs, max + .ifgt \ck1 - \ck2 + CK_VAL \name, \ck1, \offs, \max + .else + CK_VAL \name, \ck2, \offs, \max + .endif + .endm + +#define SDRAM_TYPE_DDR2 2 +#define SDRAM_TYPE_DDR3 3 + +#define ESDMISC_DDR_TYPE_DDR3 0 +#define ESDMISC_DDR_TYPE_LPDDR2 1 +#define ESDMISC_DDR_TYPE_DDR2 2 + +#define ESDOR_CLK_PERIOD 15625 /* base clock for ESDOR values 15.625uS */ + +#if CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == SDRAM_TYPE_DDR2 +#define SDRAM_BURST_LENGTH 4 +#define BANK_ADDR_BITS 1 +#define COL_ADDR_BITS 10 +#define RALAT 4 +#define WALAT 0 +#define ADDR_MIRROR 0 +#define DDR_TYPE ESDMISC_DDR_TYPE_DDR2 + +#if SDRAM_SIZE > SZ_512M +#define ROW_ADDR_BITS 15 + +/* 1GiB SDRAM: MEM2G08D2DABG */ +/* ESDCFG0 0x0c */ +NS_VAL tRFC, 195, 1, 255 /* clks - 1 (0..255) */ +CK_VAL tXS, tRFC + 1 + NS_TO_CK(10), 1, 255 /* clks - 1 (0..255) tRFC + 10 */ +CK_VAL tXP, 2, 1, 7 /* clks - 1 (0..7) */ +CK_VAL tXPDLL /* => tXARD */, 2, 1, 15 /* clks - 1 (0..15) */ +NS_VAL tFAW, 35, 1, 31 /* clks - 1 (0..31) */ +CK_VAL tCL, 5, 3, 8 /* clks - 3 (0..8) CAS Latency */ + +/* ESDCFG1 0x10 */ +NS_VAL tRCD, 13, 1, 7 /* clks - 1 (0..7) */ +NS_VAL tRP, 13, 1, 7 /* clks - 1 (0..7) */ +NS_VAL tRC, 58, 1, 31 /* clks - 1 (0..31) */ +NS_VAL tRAS, 45, 1, 31 /* clks - 1 (0..31) */ +CK_VAL tRPA, 1, 0, 1 /* clks (0..1) */ +NS_VAL tWR, 15, 1, 15 /* clks - 1 (0..15) */ +CK_VAL tMRD, 2, 1, 15 /* clks - 1 (0..15) */ +CK_VAL tCWL, tCL + 3 - 1, 2, 6 /* clks - 2 (0..6) tCL - 1 */ + +/* ESDCFG2 0x14 */ +CK_VAL tDLLK, 200, 1, 511 /* clks - 1 (0..511) */ +NS_VAL tRTP, 8, 1, 7 /* clks - 1 (0..7) */ +NS_VAL tWTR, 8, 1, 7 /* clks - 1 (0..7) */ +NS_VAL tRRD, 8, 1, 6 /* clks - 1 (0..6) */ +#else +#define ROW_ADDR_BITS 14 + +/* 512MiB SDRAM: V59C1G01(808) */ +/* ESDCFG0 0x0c */ +NS_VAL tRFC, 128, 1, 255 /* clks - 1 (0..255) */ +CK_VAL tXS, tRFC + 1 + NS_TO_CK(10), 1, 255 /* clks - 1 (0..255) tRFC + 10 */ +CK_VAL tXP, 2, 1, 7 /* clks - 1 (0..7) */ +CK_VAL tXPDLL, /* tXARD */ 2, 1, 15 /* clks - 1 (0..15) */ +NS_VAL tFAW, 50, 1, 31 /* clks - 1 (0..31) */ +CK_VAL tCL, 5, 3, 8 /* clks - 3 (0..8) CAS Latency */ + +/* ESDCFG1 0x10 */ +NS_VAL tRCD, 15, 1, 7 /* clks - 1 (0..7) */ +NS_VAL tRP, 15, 1, 7 /* clks - 1 (0..7) */ +NS_VAL tRC, 60, 1, 31 /* clks - 1 (0..31) */ +NS_VAL tRAS, 45, 1, 31 /* clks - 1 (0..31) */ +CK_VAL tRPA, 1, 0, 1 /* clks (0..1) */ +NS_VAL tWR, 15, 1, 15 /* clks - 1 (0..15) */ +CK_VAL tMRD, 2, 1, 15 /* clks - 1 (0..15) */ +CK_VAL tCWL, tCL + 3 - 1, 2, 6 /* clks - 2 (0..6) tCL - 1 */ + +/* ESDCFG2 0x14 */ +CK_VAL tDLLK, 200, 1, 511 /* clks - 1 (0..511) */ +NS_VAL tRTP, 8, 1, 7 /* clks - 1 (0..7) */ +CK_VAL tWTR, 2, 1, 7 /* clks - 1 (0..7) */ +NS_VAL tRRD, 10, 1, 6 /* clks - 1 (0..6) */ +#endif + +/* ESDOR 0x30 */ +NS_VAL tXPR, 400, 1, 255 /* clks - 1 (1..255) */ + +#define tSDE_RST 0 /* not relevant for DDR2 */ +#define tRST_CKE ((200000 + (ESDOR_CLK_PERIOD - 1)) / ESDOR_CLK_PERIOD) + +#define ESDSCR_MRS_VAL (0x8000 | (3 << 4) | \ + ((((tCL + 3) << 4) | \ + (tWR << 9) | \ + ((1 - (SDRAM_BURST_LENGTH / 8)) << 1)) << 16)) + +#elif CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == SDRAM_TYPE_DDR3 +/* DDR3 SDRAM */ +#if SDRAM_SIZE > SZ_512M +#define BANK_ADDR_BITS 2 +#else +#define BANK_ADDR_BITS 1 +#endif +#define SDRAM_BURST_LENGTH 8 +#define RALAT 5 +#define WALAT 1 +#define ADDR_MIRROR 0 +#define DDR_TYPE ESDMISC_DDR_TYPE_DDR3 + +/* 512/1024MiB SDRAM: NT5CB128M16P-CG */ +/* ESDCFG0 0x0c */ +NS_VAL tRFC, 160, 1, 255 /* clks - 1 (0..255) */ +CK_MAX tXS, tRFC + 1 + NS_TO_CK(10), 5, 1, 255 /* clks - 1 (0..255) tRFC + 10 */ +CK_MAX tXP, 3, NS_TO_CK(6), 1, 7 /* clks - 1 (0..7) */ /* max(6ns, 3*CK) */ +CK_MAX tXPDLL, NS_TO_CK(24), 2, 1, 15 /* clks - 1 (0..15) */ +NS_VAL tFAW, 45, 1, 31 /* clks - 1 (0..31) */ +CK_VAL tCL, 9, 3, 8 /* clks - 3 (0..8) CAS Latency */ + +/* ESDCFG1 0x10 */ +NS_VAL tRCD, 14, 1, 7 /* clks - 1 (0..7) */ +NS_VAL tRP, 14, 1, 7 /* clks - 1 (0..7) */ +NS_VAL tRC, 50, 1, 31 /* clks - 1 (0..31) */ +NS_VAL tRAS, 36, 1, 31 /* clks - 1 (0..31) */ +CK_VAL tRPA, 0, 0, 1 /* clks (0..1) */ +NS_VAL tWR, 15, 1, 15 /* clks - 1 (0..15) */ +CK_VAL tMRD, 4, 1, 15 /* clks - 1 (0..15) */ +CK_VAL tCWL, 7, 2, 6 /* clks - 2 (0..6) */ + +/* ESDCFG2 0x14 */ +CK_VAL tDLLK, 512, 1, 511 /* clks - 1 (0..511) */ +CK_MAX tRTP, 4, NS_TO_CK(8), 1, 7 /* clks - 1 (0..7) */ +CK_MAX tWTR, 4, NS_TO_CK(8), 1, 7 /* clks - 1 (0..7) */ +CK_MAX tRRD, 4, NS_TO_CK(8), 1, 7 /* clks - 1 (0..7) */ + +/* ESDOR 0x30 */ +CK_MAX tXPR, NS_TO_CK(160 + 10), 5, 1, 255 /* max(tRFC + 10, 5CK) */ + +#define tSDE_RST ((200000 + (ESDOR_CLK_PERIOD - 1)) / ESDOR_CLK_PERIOD) +#define tRST_CKE ((500000 + (ESDOR_CLK_PERIOD - 1)) / ESDOR_CLK_PERIOD) + +#define ROW_ADDR_BITS 14 +#define COL_ADDR_BITS 10 + + .iflt tWR - 7 + .set ESDSCR_MRS_VAL, (0x8000 | (3 << 4) | \ + (((tWR - 3) << 9) | \ + (((tCL + 3) - 4) << 4)) << 16) + .else + .set ESDSCR_MRS_VAL, (0x8000 | (3 << 4) | \ + ((((tWR + 1) / 2) << 9) | \ + (((tCL + 3) - 4) << 4)) << 16) + .endif + +#else +#error Unsupported SDRAM type selected +#endif + +#define ESDCFG0_VAL ( \ + ((tRFC) << 24) | \ + ((tXS) << 16) | \ + ((tXP) << 13) | \ + ((tXPDLL) << 9) | \ + ((tFAW) << 4) | \ + ((tCL) << 0)) \ + +#define ESDCFG1_VAL ( \ + ((tRCD) << 29) | \ + ((tRP) << 26) | \ + ((tRC) << 21) | \ + ((tRAS) << 16) | \ + ((tRPA) << 15) | \ + ((tWR) << 9) | \ + ((tMRD) << 5) | \ + ((tCWL) << 0)) \ + +#define ESDCFG2_VAL ( \ + ((tDLLK) << 16) | \ + ((tRTP) << 6) | \ + ((tWTR) << 3) | \ + ((tRRD) << 0)) + +#define BL (SDRAM_BURST_LENGTH / 8) /* 0: 4 byte 1: 8 byte */ +#define ESDCTL_VAL (((ROW_ADDR_BITS - 11) << 24) | \ + ((COL_ADDR_BITS - 9) << 20) | \ + (BL << 19) | \ + (1 << 16) | /* SDRAM bus width */ \ + ((-1) << (32 - BANK_ADDR_BITS))) + +#define ESDMISC_VAL ((1 << 12) | \ + (0x3 << 9) | \ + (RALAT << 6) | \ + (WALAT << 16) | \ + (ADDR_MIRROR << 19) | \ + (DDR_TYPE << 3)) + +#define ESDOR_VAL ((tXPR << 16) | (tSDE_RST << 8) | (tRST_CKE << 0)) + + .macro flash_header +__text_start: +fcb_start: + b reset_vector + .word 0x20424346 /* "FCB " marker */ + .word 0x01 /* FCB version number */ + .org 0x68 + .word 0x0 /* primary image starting page number */ + .word 0x0 /* secondary image starting page number */ + .word 0x6b + .word 0x6b + .word 0x0 /* DBBT start page (0 == NO DBBT) */ + .word 0 /* Bad block marker offset in main area (unused) */ + .org 0xac + .word 0 /* BI Swap disabled */ + .word 0 /* Bad Block marker offset in spare area */ +fcb_end: +#if 1 + .word 0 +tRFC_VAL: + .byte tRFC +tXS_VAL: + .byte tXS +tXP_VAL: + .byte tXP +tXPDLL_VAL: + .byte tXPDLL +tFAW_VAL: + .byte tFAW +tCL_VAL: + .byte tCL +tRCD_VAL: + .byte tRCD +tRP_VAL: + .byte tRP +tRC_VAL: + .byte tRC +tRAS_VAL: + .byte tRAS +tRPA_VAL: + .byte tRPA +tWR_VAL: + .byte tWR +tMRD_VAL: + .byte tMRD +tCWL_VAL: + .byte tCWL +tDLLK_VAL: + .byte tDLLK +tRTP_VAL: + .byte tRTP +tWTR_VAL: + .byte tWTR +tRRD_VAL: + .byte tRRD +tXPR_VAL: + .byte tXPR +tSDE_RST_VAL: + .byte tSDE_RST +tRST_CKE_VAL: + .byte tRST_CKE + .align 2 +W_ESDCTL_VAL: + .word ESDCTL_VAL +W_ESDMISC_VAL: + .word ESDMISC_VAL +W_ESDCFG0_VAL: + .word ESDCFG0_VAL +W_ESDCFG1_VAL: + .word ESDCFG1_VAL +W_ESDCFG2_VAL: + .word ESDCFG2_VAL +W_ESDOR_VAL: + .word ESDOR_VAL +W_ESDSCR_MRS_VAL: + .word ESDSCR_MRS_VAL +#endif +#if 0 +#undef ESDCFG0_VAL +#undef ESDCFG1_VAL +#undef ESDMISC_VAL + +#define ESDCFG0_VAL 0x9f5152e3 +#define ESDCFG1_VAL 0xb68e8a63 +#define ESDMISC_VAL 0x00011740 +W_ESDMISC_VAL_FSL: + .word ESDMISC_VAL +W_ESDCFG0_VAL_FSL: + .word ESDCFG0_VAL +W_ESDCFG1_VAL_FSL: + .word ESDCFG1_VAL +#endif + .org 0x400 +ivt_header: + .word CPU_2_BE_32((0xd1 << 24) | (32 << 8) | 0x40) +app_start_addr: + .long reset_vector + .long 0x0 +dcd_ptr: + .long dcd_hdr +boot_data_ptr: + .word boot_data +self_ptr: + .word ivt_header +app_code_csf: + .word 0x0 + .word 0x0 +boot_data: + .long __text_start +image_len: + .long REDBOOT_IMAGE_SIZE +plugin: + .word 0 +ivt_end: + +#define DCD_VERSION 0x40 + +dcd_hdr: + .word CPU_2_BE_32((0xd2 << 24) | + ((dcd_end - .) << 8) | DCD_VERSION) +dcd_start: + MXC_DCD_CMD(MXC_DCD_CMD_SZ_WORD, MXC_DCD_CMD_FLAG_WRITE, dcd_end) + /* disable all irrelevant clocks */ + MXC_DCD_ITEM(CCM_BASE_ADDR + CLKCTL_CCGR0, 0xffcc00cf) + MXC_DCD_ITEM(CCM_BASE_ADDR + CLKCTL_CCGR1, 0x000fffc3) + MXC_DCD_ITEM(CCM_BASE_ADDR + CLKCTL_CCGR2, 0x033c0000) + MXC_DCD_ITEM(CCM_BASE_ADDR + CLKCTL_CCGR3, 0x00000000) + MXC_DCD_ITEM(CCM_BASE_ADDR + CLKCTL_CCGR4, 0x00000000) + MXC_DCD_ITEM(CCM_BASE_ADDR + CLKCTL_CCGR5, 0x00fff033) + MXC_DCD_ITEM(CCM_BASE_ADDR + CLKCTL_CCGR6, 0x0f00030f) + MXC_DCD_ITEM(CCM_BASE_ADDR + CLKCTL_CCGR7, 0xfff00000) + MXC_DCD_ITEM(CCM_BASE_ADDR + CLKCTL_CMEOR, 0x00000000) + + MXC_DCD_ITEM(IOMUXC_BASE_ADDR + 0x174, 0x00000011) /* EIM_D18 => GPIO2[20] STK5-LED */ + + MXC_DCD_ITEM(0x63fd800c, 0x00000000) /* M4IF: MUX NFC signals on WEIM */ +#if CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == SDRAM_TYPE_DDR2 + /* setup SDRAM pads */ + MXC_DCD_ITEM(0x53fa8554, 0x00200000) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_DQM3 + MXC_DCD_ITEM(0x53fa8560, 0x00200000) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_DQM2 + MXC_DCD_ITEM(0x53fa8594, 0x00200000) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_DQM1 + MXC_DCD_ITEM(0x53fa8584, 0x00200000) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_DQM0 + + MXC_DCD_ITEM(0x53fa8558, 0x00200040) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_SDQS3 + MXC_DCD_ITEM(0x53fa8568, 0x00200040) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_SDQS2 + MXC_DCD_ITEM(0x53fa8590, 0x00200040) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_SDQS1 + MXC_DCD_ITEM(0x53fa857c, 0x00200040) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_SDQS0 + + MXC_DCD_ITEM(0x53fa8564, 0x00200040) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_SDODT1 + MXC_DCD_ITEM(0x53fa8580, 0x00200040) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_SDODT0 + MXC_DCD_ITEM(0x53fa8570, 0x00200000) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_SDCLK_1 + MXC_DCD_ITEM(0x53fa8578, 0x00200000) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_SDCLK_0 + + MXC_DCD_ITEM(0x53fa872c, 0x00200000) @ IOMUXC_SW_PAD_CTL_GRP_B3DS + MXC_DCD_ITEM(0x53fa8728, 0x00200000) @ IOMUXC_SW_PAD_CTL_GRP_B2DS + MXC_DCD_ITEM(0x53fa871c, 0x00200000) @ IOMUXC_SW_PAD_CTL_GRP_B1DS + MXC_DCD_ITEM(0x53fa8718, 0x00200000) @ IOMUXC_SW_PAD_CTL_GRP_B0DS + + MXC_DCD_ITEM(0x53fa8574, 0x00280000) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_CAS + MXC_DCD_ITEM(0x53fa8588, 0x00280000) @ IOMUXC_SW_PAD_CTL_PAD_DRAM_RAS + MXC_DCD_ITEM(0x53fa86f0, 0x00280000) @ IOMUXC_SW_PAD_CTL_GRP_ADDDS + MXC_DCD_ITEM(0x53fa8720, 0x00280000) @ IOMUXC_SW_PAD_CTL_GRP_CTLDS + + MXC_DCD_ITEM(0x53fa86fc, 0x00000000) @ IOMUXC_SW_PAD_CTL_GRP_DDRPKE + +#if CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == SDRAM_TYPE_DDR2 + MXC_DCD_ITEM(0x53fa86f4, 0x00000200) @ IOMUXC_SW_PAD_CTL_GRP_DDRMODE_CTL - DQS DIFF mode + MXC_DCD_ITEM(0x53fa8714, 0x00000000) @ IOMUXC_SW_PAD_CTL_GRP_DDRMODE - Data CMOS mode + MXC_DCD_ITEM(0x53fa8724, 0x06000000) @ IOMUXC_SW_PAD_CTL_GRP_DDR_TYPE - DDR_SEL=01 +#else + MXC_DCD_ITEM(0x53fa86f4, 0x00000000) @ IOMUXC_SW_PAD_CTL_GRP_DDRMODE_CTL - DQS DIFF mode + MXC_DCD_ITEM(0x53fa8714, 0x00000000) @ IOMUXC_SW_PAD_CTL_GRP_DDRMODE - Data CMOS mode + MXC_DCD_ITEM(0x53fa8724, 0x04000000) @ IOMUXC_SW_PAD_CTL_GRP_DDR_TYPE - DDR_SEL=10 +#endif + /* memory timing setup */ + MXC_DCD_ITEM(0x63fd9088, 0x36353b38) + MXC_DCD_ITEM(0x63fd9090, 0x49434942) + MXC_DCD_ITEM(0x63fd90F8, 0x00000800) + MXC_DCD_ITEM(0x63fd907c, 0x01350138) + MXC_DCD_ITEM(0x63fd9080, 0x01380139) + MXC_DCD_ITEM(0x63fd9018, ESDMISC_VAL) @ ESDMISC + MXC_DCD_ITEM(0x63fd9000, ESDCTL_VAL) + MXC_DCD_ITEM(0x63fd900c, ESDCFG0_VAL) + MXC_DCD_ITEM(0x63fd9010, ESDCFG1_VAL) + MXC_DCD_ITEM(0x63fd9014, ESDCFG2_VAL) + + MXC_DCD_ITEM(0x63fd902c, 0x000026d2) @ command delay + MXC_DCD_ITEM(0x63fd9030, ESDOR_VAL) @ out of reset delays + MXC_DCD_ITEM(0x63fd9008, 0x12273030) @ ODT timings + MXC_DCD_ITEM(0x63fd9004, 0x00030012) @ Power down control + + /********************************* + * DDR device configuration: + **********************************/ + /* CS0 */ +#if CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == SDRAM_TYPE_DDR2 + MXC_DCD_ITEM(0x63fd901c, 0x04008010) + MXC_DCD_ITEM(0x63fd901c, 0x00008020) + MXC_DCD_ITEM(0x63fd901c, 0x00008020) +#endif + MXC_DCD_ITEM(0x63fd901c, ESDSCR_MRS_VAL) + //MXC_DCD_ITEM(0x63fd901c, 0x0a528030) @ MRS: BL: 4, BT: seq, CL: 5, WR: 6 +#if CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == SDRAM_TYPE_DDR2 + MXC_DCD_ITEM(0x63fd901c, 0x03868031) @ EMRS(1): OCD calibration default + MXC_DCD_ITEM(0x63fd901c, 0x00068031) @ EMRS(1): OCD calibration exit + MXC_DCD_ITEM(0x63fd901c, 0x00008032) @ EMRS(2): 0 +#else + MXC_DCD_ITEM(0x63fd901c, 0x00008032) @ MR2: 0 + MXC_DCD_ITEM(0x63fd901c, 0x00008032) @ MR3: 0 + MXC_DCD_ITEM(0x63fd901c, 0x00028031) @ MR1: + MXC_DCD_ITEM(0x63fd901c, 0x092080b0) @ MR0: WHY 80b0 instead of 8030? Undocumented bit# 7? + MXC_DCD_ITEM(0x63fd901c, 0x04008040) +#endif +#if BANK_ADDR_BITS > 1 +#if CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == SDRAM_TYPE_DDR2 + MXC_DCD_ITEM(0x63fd901c, 0x04008018) + MXC_DCD_ITEM(0x63fd901c, 0x00008028) + MXC_DCD_ITEM(0x63fd901c, 0x00008028) +#endif + MXC_DCD_ITEM(0x63fd901c, 0x0a528038) @ MRS: BL: 4, BT: seq, CL: 5, WR: 6 + MXC_DCD_ITEM(0x63fd901c, 0x03868039) @ EMRS(1): OCD calibration default + MXC_DCD_ITEM(0x63fd901c, 0x00068039) @ EMRS(1): OCD calibration exit + MXC_DCD_ITEM(0x63fd901c, 0x0000803a) @ EMRS(2): 0 +#endif + MXC_DCD_ITEM(0x63fd9020, 0x00005800) + MXC_DCD_ITEM(0x63fd9058, 0x00033332) @ ODT control: 50Ohms, ODT act enable + MXC_DCD_ITEM(0x63fd901c, 0x00000000) + + MXC_DCD_ITEM(0x63fd901c, 0x00448031) @ full drive strength, enable 50ohm ODT + MXC_DCD_ITEM(0x63fd901c, 0x04008018) + MXC_DCD_ITEM(0x63fd901c, 0x00000000) + + /* Enable ZQ calibration to tightly control the impedance of the DDR IO pads */ + MXC_DCD_ITEM(0x63fd9040, 0x04b80003) @ keep ZQ HW control values and enable it +#else +MXC_DCD_ITEM(0x53fa8554, 0x00300000) +MXC_DCD_ITEM(0x53fa8560, 0x00300000) +MXC_DCD_ITEM(0x53fa8594, 0x00300000) +MXC_DCD_ITEM(0x53fa8584, 0x00300000) + +MXC_DCD_ITEM(0x53fa8558, 0x00f00000) +MXC_DCD_ITEM(0x53fa8568, 0x00f00000) +MXC_DCD_ITEM(0x53fa8590, 0x00f00000) +MXC_DCD_ITEM(0x53fa857c, 0x00f00000) + +MXC_DCD_ITEM(0x53fa8564, 0x00300040) +MXC_DCD_ITEM(0x53fa8580, 0x00300040) +MXC_DCD_ITEM(0x53fa8570, 0x00300000) +MXC_DCD_ITEM(0x53fa8578, 0x00300000) + +MXC_DCD_ITEM(0x53fa872c, 0x00300000) +MXC_DCD_ITEM(0x53fa8728, 0x00300000) +MXC_DCD_ITEM(0x53fa871c, 0x00300000) +MXC_DCD_ITEM(0x53fa8718, 0x00300000) + +MXC_DCD_ITEM(0x53fa8574, 0x00300000) +MXC_DCD_ITEM(0x53fa8588, 0x00300000) +MXC_DCD_ITEM(0x53fa86f0, 0x00300000) +MXC_DCD_ITEM(0x53fa8720, 0x00300000) + +MXC_DCD_ITEM(0x53fa86fc, 0x00000000) + +MXC_DCD_ITEM(0x53fa86f4, 0x00000000) +MXC_DCD_ITEM(0x53fa8714, 0x00000000) + +MXC_DCD_ITEM(0x53fa8724, 0x04000000) + +MXC_DCD_ITEM(0x63fd9088, 0x35343535) +MXC_DCD_ITEM(0x63fd9090, 0x4d444c44) +MXC_DCD_ITEM(0x63fd907c, 0x01370138) +MXC_DCD_ITEM(0x63fd9080, 0x013b013c) + +MXC_DCD_ITEM(0x63fd9018, 0x00011740) +MXC_DCD_ITEM(0x63fd9000, 0xc3190000) +MXC_DCD_ITEM(0x63fd900c, 0x9f5152e3) +MXC_DCD_ITEM(0x63fd9010, 0xb68e8a63) +MXC_DCD_ITEM(0x63fd9014, 0x01ff00db) + +MXC_DCD_ITEM(0x63fd902c, 0x000026d2) +MXC_DCD_ITEM(0x63fd9030, 0x009f0e21) +MXC_DCD_ITEM(0x63fd9008, 0x12273030) +MXC_DCD_ITEM(0x63fd9004, 0x0002002d) +@ MR0 - CS0 +MXC_DCD_ITEM(0x63fd901c, 0x00008032) +MXC_DCD_ITEM(0x63fd901c, 0x00008033) +MXC_DCD_ITEM(0x63fd901c, 0x00028031) +MXC_DCD_ITEM(0x63fd901c, 0x092080b0) +MXC_DCD_ITEM(0x63fd901c, 0x04008040) +@ MR0 - CS1 +#if SDRAM_SIZE > SZ_512M +MXC_DCD_ITEM(0x63fd901c, 0x0000803a) +MXC_DCD_ITEM(0x63fd901c, 0x0000803b) +MXC_DCD_ITEM(0x63fd901c, 0x00028039) +MXC_DCD_ITEM(0x63fd901c, 0x09208138) + +MXC_DCD_ITEM(0x63fd901c, 0x04008048) +#endif +MXC_DCD_ITEM(0x63fd9020, 0x00005800) +MXC_DCD_ITEM(0x63fd9040, 0x04b80003) +MXC_DCD_ITEM(0x63fd9058, 0x00022227) +MXC_DCD_ITEM(0x63fd901c, 0x00000000) +#endif + MXC_DCD_ITEM(0x53fa8004, 0x00194005) @ set LDO to 1.3V + + /* setup NFC pads */ + /* MUX_SEL */ + MXC_DCD_ITEM(0x53fa819c, 0x00000000) @ EIM_DA0 + MXC_DCD_ITEM(0x53fa81a0, 0x00000000) @ EIM_DA1 + MXC_DCD_ITEM(0x53fa81a4, 0x00000000) @ EIM_DA2 + MXC_DCD_ITEM(0x53fa81a8, 0x00000000) @ EIM_DA3 + MXC_DCD_ITEM(0x53fa81ac, 0x00000000) @ EIM_DA4 + MXC_DCD_ITEM(0x53fa81b0, 0x00000000) @ EIM_DA5 + MXC_DCD_ITEM(0x53fa81b4, 0x00000000) @ EIM_DA6 + MXC_DCD_ITEM(0x53fa81b8, 0x00000000) @ EIM_DA7 + MXC_DCD_ITEM(0x53fa81dc, 0x00000000) @ WE_B + MXC_DCD_ITEM(0x53fa81e0, 0x00000000) @ RE_B + MXC_DCD_ITEM(0x53fa8228, 0x00000000) @ CLE + MXC_DCD_ITEM(0x53fa822c, 0x00000000) @ ALE + MXC_DCD_ITEM(0x53fa8230, 0x00000000) @ WP_B + MXC_DCD_ITEM(0x53fa8234, 0x00000000) @ RB0 + MXC_DCD_ITEM(0x53fa8238, 0x00000000) @ CS0 + /* PAD_CTL */ + MXC_DCD_ITEM(0x53fa84ec, 0x000000e4) @ EIM_DA0 + MXC_DCD_ITEM(0x53fa84f0, 0x000000e4) @ EIM_DA1 + MXC_DCD_ITEM(0x53fa84f4, 0x000000e4) @ EIM_DA2 + MXC_DCD_ITEM(0x53fa84f8, 0x000000e4) @ EIM_DA3 + MXC_DCD_ITEM(0x53fa84fc, 0x000000e4) @ EIM_DA4 + MXC_DCD_ITEM(0x53fa8500, 0x000000e4) @ EIM_DA5 + MXC_DCD_ITEM(0x53fa8504, 0x000000e4) @ EIM_DA6 + MXC_DCD_ITEM(0x53fa8508, 0x000000e4) @ EIM_DA7 + MXC_DCD_ITEM(0x53fa852c, 0x00000004) @ NANDF_WE_B + MXC_DCD_ITEM(0x53fa8530, 0x00000004) @ NANDF_RE_B + MXC_DCD_ITEM(0x53fa85a0, 0x00000004) @ NANDF_CLE_B + MXC_DCD_ITEM(0x53fa85a4, 0x00000004) @ NANDF_ALE_B + MXC_DCD_ITEM(0x53fa85a8, 0x000000e4) @ NANDF_WE_B + MXC_DCD_ITEM(0x53fa85ac, 0x000000e4) @ NANDF_RB0 + MXC_DCD_ITEM(0x53fa85b0, 0x00000004) @ NANDF_CS0 +dcd_end: + .endm + +AIPS1_PARAM: .word 0x77777777 +MXC_REDBOOT_ROM_START: .long SDRAM_BASE_ADDR + SDRAM_SIZE - REDBOOT_OFFSET + +#if SDRAM_CLK > 333 +CCM_CBCDR_VAL1: .word 0x02888944 +CCM_CBCMR_VAL1: .word 0x00015154 +CCM_CBCDR_VAL2: .word 0x00888944 +CCM_CBCMR_VAL2: .word 0x00016154 +#else +CCM_CBCDR_VAL1: .word 0x02888644 +CCM_CBCMR_VAL1: .word 0x00015154 +CCM_CBCDR_VAL2: .word 0x00888644 +CCM_CBCMR_VAL2: .word 0x00016154 +#endif + +W_CSCMR1_VAL: .word 0xa6a2a020 +W_CSCDR1_VAL: .word 0x00080b18 +W_DP_OP_1000: .word DP_OP_1000 +W_DP_MFD_1000: .word DP_MFD_1000 +W_DP_MFN_1000: .word DP_MFN_1000 +W_DP_OP_800: .word DP_OP_800 +W_DP_MFD_800: .word DP_MFD_800 +W_DP_MFN_800: .word DP_MFN_800 +W_DP_OP_700: .word DP_OP_700 +W_DP_MFD_700: .word DP_MFD_700 +W_DP_MFN_700: .word DP_MFN_700 +W_DP_OP_400: .word DP_OP_400 +W_DP_MFD_400: .word DP_MFD_400 +W_DP_MFN_400: .word DP_MFN_400 +W_DP_OP_532: .word DP_OP_532 +W_DP_MFD_532: .word DP_MFD_532 +W_DP_MFN_532: .word DP_MFN_532 +W_DP_OP_666: .word DP_OP_666 +W_DP_MFD_666: .word DP_MFD_666 +W_DP_MFN_666: .word DP_MFN_666 +W_DP_OP_665: .word DP_OP_665 +W_DP_MFD_665: .word DP_MFD_665 +W_DP_MFN_665: .word DP_MFN_665 +W_DP_OP_216: .word DP_OP_216 +W_DP_MFD_216: .word DP_MFD_216 +W_DP_MFN_216: .word DP_MFN_216 +W_DP_OP_333: .word DP_OP_333 +W_DP_MFD_333: .word DP_MFD_333 +W_DP_MFN_333: .word DP_MFN_333 +W_DP_OP_266: .word DP_OP_266 +W_DP_MFD_266: .word DP_MFD_266 +W_DP_MFN_266: .word DP_MFN_266 +PLATFORM_CLOCK_DIV: .word 0x00000124 + +/*----------------------------------------------------------------------*/ +/* end of hal_platform_setup.h */ +#endif /* CYGONCE_HAL_PLATFORM_SETUP_H */ diff --git a/packages/hal/arm/mx53/karo/v1_0/include/karo_tx53.h b/packages/hal/arm/mx53/karo/v1_0/include/karo_tx53.h new file mode 100644 index 00000000..1bc6d0d7 --- /dev/null +++ b/packages/hal/arm/mx53/karo/v1_0/include/karo_tx53.h @@ -0,0 +1,166 @@ +#ifndef CYGONCE_KARO_TX53_H +#define CYGONCE_KARO_TX53_H + +//============================================================================= +// +// Platform specific support (register layout, etc) +// +//============================================================================= +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//=========================================================================== + +#include // Hardware definitions +#include + +#include CYGHWR_MEMORY_LAYOUT_H + +#define GPIO_DR 0x00 +#define GPIO_GDIR 0x04 +#define GPIO_PSR 0x08 + +#define STK5_LED_MASK (1 << 20) +#define STK5_LED_REG_ADDR (GPIO2_BASE_ADDR + GPIO_DR) + +#define LED_MAX_NUM 1 + +#define SOC_FEC_MAC_BASE (IIM_BASE_ADDR + 0xc24) + +#define TX53_SDRAM_SIZE SDRAM_SIZE + +#define LED_IS_ON(n) ({ \ + CYG_WORD32 __val; \ + HAL_READ_UINT32(STK5_LED_REG_ADDR, __val); \ + __val & STK5_LED_MASK; \ +}) + +#define TURN_LED_ON(n) \ + CYG_MACRO_START \ + CYG_WORD32 __val; \ + HAL_READ_UINT32(STK5_LED_REG_ADDR, __val); \ + __val |= STK5_LED_MASK; \ + HAL_WRITE_UINT32(STK5_LED_REG_ADDR, __val); \ + CYG_MACRO_END + +#define TURN_LED_OFF(n) \ + CYG_MACRO_START \ + CYG_WORD32 __val; \ + HAL_READ_UINT32(STK5_LED_REG_ADDR, __val); \ + __val &= ~STK5_LED_MASK; \ + HAL_WRITE_UINT32(STK5_LED_REG_ADDR, __val); \ + CYG_MACRO_END + +#define BOARD_DEBUG_LED(n) \ + CYG_MACRO_START \ + if (n >= 0 && n < LED_MAX_NUM) { \ + if (LED_IS_ON(n)) \ + TURN_LED_OFF(n); \ + else \ + TURN_LED_ON(n); \ + } \ + CYG_MACRO_END + +#define BLINK_LED(l, n) \ + CYG_MACRO_START \ + int _i; \ + for (_i = 0; _i < (n); _i++) { \ + BOARD_DEBUG_LED(l); \ + HAL_DELAY_US(200000); \ + BOARD_DEBUG_LED(l); \ + HAL_DELAY_US(300000); \ + } \ + HAL_DELAY_US(1000000); \ + CYG_MACRO_END + +#if !defined(__ASSEMBLER__) +extern int tx53_fuse_voltage(int on); +#define FUSE_PROG_START() tx53_fuse_voltage(1) +#define FUSE_PROG_DONE() tx53_fuse_voltage(0) + +void mxc_ipu_iomux_config(void); + +enum { + BOARD_TYPE_TX53KARO, +}; + +#define gpio_tst_bit(__grp, __gpio) \ + CYG_MACRO_START \ + CYG_ADDRESS addr = MX53_GPIO_ADDR(__grp); \ + CYG_WORD32 val; \ + \ + if (addr == 0) \ + return; \ + if (__gpio < 0 || __gpio >= GPIO_NUM_PIN) { \ + return 0; \ + } \ + HAL_READ_UINT32(addr + GPIO_PSR, val); \ + return !!(val & (1 << __gpio)); \ + CYG_MACRO_END + +#define gpio_set_bit(__grp, __gpio) \ + CYG_MACRO_START \ + CYG_WORD32 val; \ + CYG_ADDRESS addr = MX53_GPIO_ADDR(__grp); \ + \ + if (addr == 0) \ + return; \ + if (__gpio < 0 || __gpio >= GPIO_NUM_PIN) \ + return; \ + \ + HAL_READ_UINT32(addr + GPIO_DR, val); \ + HAL_WRITE_UINT32(addr + GPIO_DR, val | (1 << __gpio)); \ + \ + HAL_READ_UINT32(addr + GPIO_GDIR, val); \ + HAL_WRITE_UINT32(addr + GPIO_GDIR, val | (1 << __gpio)); \ + CYG_MACRO_END + +#define gpio_clr_bit(__grp, __gpio) \ + CYG_MACRO_START \ + CYG_WORD32 val; \ + CYG_ADDRESS addr = MX53_GPIO_ADDR(__grp); \ + \ + if (addr == 0) \ + return; \ + if (__gpio < 0 || __gpio >= GPIO_NUM_PIN) \ + return; \ + \ + HAL_READ_UINT32(addr + GPIO_DR, val); \ + HAL_WRITE_UINT32(addr + GPIO_DR, val & ~(1 << __gpio)); \ + \ + HAL_READ_UINT32(addr + GPIO_GDIR, val); \ + HAL_WRITE_UINT32(addr + GPIO_GDIR, val | (1 << __gpio)); \ + CYG_MACRO_END + +#endif /* __ASSEMBLER__ */ + +#endif /* CYGONCE_KARO_TX53_H */ diff --git a/packages/hal/arm/mx53/karo/v1_0/include/pkgconf/mlt_arm_tx53_romram.h b/packages/hal/arm/mx53/karo/v1_0/include/pkgconf/mlt_arm_tx53_romram.h new file mode 100644 index 00000000..fab487a9 --- /dev/null +++ b/packages/hal/arm/mx53/karo/v1_0/include/pkgconf/mlt_arm_tx53_romram.h @@ -0,0 +1,46 @@ +// eCos memory layout - Fri Oct 20 05:56:55 2000 + +// This is a generated file - do not edit +#include +#include CYGBLD_HAL_VARIANT_H +#include CYGBLD_HAL_PLATFORM_H +#include // Hardware definitions +#include // SZ_* definitions +#include + +#define SDRAM_BASE_ADDR CSD0_BASE_ADDR +#define SDRAM_SIZE CYGNUM_HAL_ARM_TX53_SDRAM_SIZE + +#define UNCACHED_RAM_BASE_VIRT 0xB0000000 + +#define SZ_128M 0x08000000 +#define SZ_256M 0x10000000 +#define RAM_BANK0_BASE CSD0_BASE_ADDR +#define RAM_BANK1_BASE CSD1_BASE_ADDR +#define RAM_BANK0_SIZE SZ_1G +#if SDRAM_SIZE > RAM_BANK0_SIZE +#define RAM_BANK1_SIZE (SDRAM_SIZE - RAM_BANK0_SIZE) +#endif + +#define REDBOOT_IMAGE_SIZE CYGBLD_REDBOOT_MIN_IMAGE_SIZE + +#ifndef REDBOOT_BOTTOM +#define REDBOOT_OFFSET REDBOOT_IMAGE_SIZE +#define CYGMEM_REGION_ram SDRAM_BASE_ADDR +#define CYGMEM_REGION_rom (CYGMEM_REGION_ram + CYGMEM_REGION_ram_SIZE) +#else +#define REDBOOT_OFFSET 0x00100000 +#define CYGMEM_REGION_ram (SDRAM_BASE_ADDR + REDBOOT_OFFSET) +#define CYGMEM_REGION_rom SDRAM_BASE_ADDR +#endif + +#define CYGMEM_REGION_ram_SIZE (SDRAM_SIZE - REDBOOT_OFFSET) +#define CYGMEM_REGION_ram_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W) + +#define CYGMEM_REGION_rom_SIZE REDBOOT_OFFSET +#define CYGMEM_REGION_rom_ATTR CYGMEM_REGION_ATTR_R +#ifndef __ASSEMBLER__ +extern char CYG_LABEL_NAME(__heap1)[]; +#endif +#define CYGMEM_SECTION_heap1 (CYG_LABEL_NAME(__heap1)) +#define CYGMEM_SECTION_heap1_SIZE (CYGMEM_REGION_rom - (size_t)CYG_LABEL_NAME(__heap1)) diff --git a/packages/hal/arm/mx53/karo/v1_0/include/pkgconf/mlt_arm_tx53_romram.ldi b/packages/hal/arm/mx53/karo/v1_0/include/pkgconf/mlt_arm_tx53_romram.ldi new file mode 100644 index 00000000..46cb5934 --- /dev/null +++ b/packages/hal/arm/mx53/karo/v1_0/include/pkgconf/mlt_arm_tx53_romram.ldi @@ -0,0 +1,34 @@ +// eCos memory layout - Fri Oct 20 05:56:55 2000 + +// This is a generated file - do not edit + +#include +#define __ASSEMBLER__ +#include CYGHWR_MEMORY_LAYOUT_H + +MEMORY +{ + ram : ORIGIN = CYGMEM_REGION_ram, LENGTH = CYGMEM_REGION_ram_SIZE + rom : ORIGIN = CYGMEM_REGION_rom, LENGTH = CYGMEM_REGION_rom_SIZE +} + +SECTIONS +{ + SECTIONS_BEGIN + SECTION_rom_vectors (rom, CYGMEM_REGION_rom, LMA_EQ_VMA) + SECTION_RELOCS(rom, ALIGN (0x1), LMA_EQ_VMA) + SECTION_text (rom, ALIGN (0x4), LMA_EQ_VMA) + SECTION_fini (rom, ALIGN (0x4), LMA_EQ_VMA) + SECTION_rodata (rom, ALIGN (0x4), LMA_EQ_VMA) + SECTION_rodata1 (rom, ALIGN (0x4), LMA_EQ_VMA) + SECTION_got (rom, ALIGN (0x4), LMA_EQ_VMA) + SECTION_extab (rom, ALIGN (0x4), LMA_EQ_VMA) + SECTION_exidx (rom, ALIGN (0x4), LMA_EQ_VMA) + SECTION_fixup (rom, ALIGN (0x4), LMA_EQ_VMA) + SECTION_gcc_except_table (rom, ALIGN (0x4), LMA_EQ_VMA) + SECTION_fixed_vectors (ram, CYGMEM_REGION_ram + 0x20, LMA_EQ_VMA) + SECTION_data (ram, CYGMEM_REGION_ram + 0x8000, FOLLOWING (.gcc_except_table)) + SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA) + CYG_LABEL_DEFN(__heap1) = ALIGN (0x8); + SECTIONS_END +} diff --git a/packages/hal/arm/mx53/karo/v1_0/include/plf_io.h b/packages/hal/arm/mx53/karo/v1_0/include/plf_io.h new file mode 100644 index 00000000..0b164f65 --- /dev/null +++ b/packages/hal/arm/mx53/karo/v1_0/include/plf_io.h @@ -0,0 +1,69 @@ +#ifndef CYGONCE_HAL_ARM_BOARD_PLF_IO_H +#define CYGONCE_HAL_ARM_BOARD_PLF_IO_H + +//============================================================================= +// +// plf_io.h +// +// Platform specific support (register layout, etc) +// +//============================================================================= +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//============================================================================= + +#include CYGBLD_HAL_PLF_DEFS_H +#include + +#define CYGHWR_REDBOOT_LINUX_ATAG_MEM(_p_) \ + CYG_MACRO_START \ + { \ + extern unsigned int system_rev; \ + /* Next ATAG_MEM. */ \ + _p_->hdr.size = (sizeof(struct tag_mem32) + sizeof(struct tag_header))/sizeof(long); \ + _p_->hdr.tag = ATAG_MEM; \ + /* Round up so there's only one bit set in the memory size. \ + * Don't double it if it's already a power of two, though. \ + */ \ + _p_->u.mem.size = 1<u.mem.size < CYGMEM_REGION_ram_SIZE) \ + _p_->u.mem.size <<= 1; \ + _p_->u.mem.start = CYGARC_PHYSICAL_ADDRESS(CYGMEM_REGION_ram); \ + _p_ = (struct tag *)((long *)_p_ + _p_->hdr.size); \ + _p_->hdr.size = ((sizeof(struct tag_revision)) + sizeof(struct tag_header))/sizeof(long); \ + _p_->hdr.tag = ATAG_REVISION; \ + _p_->u.revision.rev = system_rev; \ + } \ + CYG_MACRO_END + +#endif // CYGONCE_HAL_ARM_BOARD_PLF_IO_H diff --git a/packages/hal/arm/mx53/karo/v1_0/include/plf_mmap.h b/packages/hal/arm/mx53/karo/v1_0/include/plf_mmap.h new file mode 100644 index 00000000..6dc8ea31 --- /dev/null +++ b/packages/hal/arm/mx53/karo/v1_0/include/plf_mmap.h @@ -0,0 +1,104 @@ +#ifndef CYGONCE_HAL_BOARD_PLATFORM_PLF_MMAP_H +#define CYGONCE_HAL_BOARD_PLATFORM_PLF_MMAP_H +//============================================================================= +// +// plf_mmap.h +// +// Platform specific memory map support +// +//============================================================================= +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//=========================================================================== + +#include +#include CYGHWR_MEMORY_LAYOUT_H + +// Get the pagesize for a particular virtual address: + +// This does not depend on the vaddr. +#define HAL_MM_PAGESIZE(vaddr, pagesize) CYG_MACRO_START \ + (pagesize) = SZ_1M; \ +CYG_MACRO_END + +// Get the physical address from a virtual address: +#define HAL_VIRT_TO_PHYS_ADDRESS(vaddr, paddr) \ + CYG_MACRO_START \ + (paddr) = hal_virt_to_phy(vaddr); \ + CYG_MACRO_END + +/* + * translate the virtual address of ram space to physical address + * It is dependent on the implementation of hal_mmu_init + */ +#ifndef RAM_BANK0_SIZE +#warning using SDRAM_SIZE for RAM_BANK0_SIZE +#define RAM_BANK0_SIZE SDRAM_SIZE +#endif + +static unsigned long __inline__ hal_virt_to_phy(unsigned long virt) +{ + if (((virt & 0xF0000000) == CSD0_BASE_ADDR) || + ((virt & 0xF0000000) == UNCACHED_RAM_BASE_VIRT)) { + virt &= ~0xF0000000; + } + if (virt < SDRAM_SIZE) { + return virt | (virt < RAM_BANK0_SIZE ? CSD0_BASE_ADDR : CSD1_BASE_ADDR); + } + if ((virt & 0xF0000000) == UNCACHED_RAM_BASE_VIRT) { + if (virt >= RAM_BANK0_SIZE) { + virt = virt - CSD0_BASE_ADDR + CSD1_BASE_ADDR - RAM_BANK0_SIZE; + } + } + return virt; +} + +/* + * remap the physical address of ram space to uncacheable virtual address space + * It is dependent on the implementation of hal_mmu_init + */ +static unsigned long __inline__ hal_ioremap_nocache(unsigned long phy) +{ + /* 0xb0000000 .. (0xb0000000 + SDRAM_SIZE) is + * uncacheable memory space which is mapped to SDRAM + */ + if ((phy & 0xF0000000) == CSD0_BASE_ADDR) { + phy = (phy - CSD0_BASE_ADDR) | UNCACHED_RAM_BASE_VIRT; + } + if ((phy & 0xF0000000) == CSD1_BASE_ADDR) { + phy = (phy - CSD1_BASE_ADDR + CSD0_BASE_ADDR + RAM_BANK0_SIZE) | UNCACHED_RAM_BASE_VIRT; + } + return phy; +} + +#endif // CYGONCE_HAL_BOARD_PLATFORM_PLF_MMAP_H diff --git a/packages/hal/arm/mx53/karo/v1_0/misc/redboot_ROMRAM.ecm b/packages/hal/arm/mx53/karo/v1_0/misc/redboot_ROMRAM.ecm new file mode 100644 index 00000000..cc0fefd6 --- /dev/null +++ b/packages/hal/arm/mx53/karo/v1_0/misc/redboot_ROMRAM.ecm @@ -0,0 +1,223 @@ +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 }; + +cdl_configuration eCos { + description "RedBoot configuration for Ka-Ro TX53 processor module" ; + + # These fields should not be modified. + hardware tx53karo ; + template redboot ; + package -hardware CYGPKG_HAL_ARM current ; + package -hardware CYGPKG_HAL_ARM_MX53 current ; + package -hardware CYGPKG_HAL_ARM_TX53KARO 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_TX53 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 -hardware CYGPKG_DEVS_MXC_I2C current ; + package -hardware CYGPKG_DEVS_IMX_IPU 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 ; +}; + +cdl_option CYGFUN_LIBC_STRING_BSD_FUNCS { + inferred_value 0 +}; + +cdl_option CYGHWR_DEVS_ETH_PHY_LAN8700 { + inferred_value 1 +}; + +cdl_option CYGIMP_LIBC_RAND_SIMPLE1 { + user_value 0 +}; + +cdl_option CYGIMP_LIBC_RAND_KNUTH1 { + user_value 1 +}; + +cdl_option CYGFUN_LIBC_STDLIB_CONV_LONGLONG { + user_value 0 +}; + +cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK { + inferred_value 0 +}; + +cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT { + inferred_value 0 +}; + +cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM { + inferred_value 0 +}; + +cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS { + inferred_value 0 +}; + +cdl_option CYGSEM_HAL_ROM_MONITOR { + inferred_value 1 +}; + +cdl_component CYGBLD_BUILD_REDBOOT { + inferred_value 1 +}; + +cdl_option CYGBLD_BUILD_REDBOOT_WITH_GDB { + inferred_value 0 +}; + +cdl_option CYGDAT_REDBOOT_CUSTOM_VERSION { + inferred_value 1 "Ka-Ro [exec date -I]" +}; + +cdl_option CYGSEM_REDBOOT_FIS_CRC_CHECK { + inferred_value 0 +}; + +cdl_option CYGPRI_REDBOOT_ZLIB_FLASH_FORCE { + inferred_value 1 +}; + +cdl_option CYGBLD_BUILD_REDBOOT_WITH_WINCE_SUPPORT { + user_value 1 +}; + +cdl_option CYGSEM_REDBOOT_NET_HTTP_DOWNLOAD { + user_value 0 +}; + +cdl_option CYGPKG_REDBOOT_ANY_CONSOLE { + inferred_value 0 +}; + +cdl_option CYGSEM_REDBOOT_PLF_ESA_VALIDATE { + inferred_value 1 +}; + +cdl_option CYGPKG_REDBOOT_MAX_CMD_LINE { + inferred_value 1024 +}; + +cdl_option CYGBLD_REDBOOT_MIN_IMAGE_SIZE { + inferred_value 0x00040000 +}; + +cdl_option CYGNUM_REDBOOT_FLASH_SCRIPT_SIZE { + inferred_value 2048 +}; + +cdl_component CYGPKG_REDBOOT_DISK { + user_value 0 +}; + +cdl_option CYGNUM_REDBOOT_BOOT_SCRIPT_TIMEOUT_RESOLUTION { + inferred_value 10 +}; + +cdl_option CYGNUM_REDBOOT_BOOT_SCRIPT_DEFAULT_TIMEOUT { + inferred_value 1 +}; + +cdl_option CYGHWR_REDBOOT_ARM_LINUX_EXEC_ADDRESS_DEFAULT { + inferred_value 0xA0108000 +}; + +cdl_option CYGBLD_ISO_CTYPE_HEADER { + inferred_value 1 +}; + +cdl_option CYGBLD_ISO_ERRNO_CODES_HEADER { + inferred_value 1 +}; + +cdl_option CYGBLD_ISO_ERRNO_HEADER { + inferred_value 1 +}; + +cdl_option CYGBLD_ISO_STDLIB_STRCONV_HEADER { + inferred_value 1 +}; + +cdl_option CYGBLD_ISO_STDLIB_ABS_HEADER { + inferred_value 1 +}; + +cdl_option CYGBLD_ISO_STDLIB_DIV_HEADER { + inferred_value 1 +}; + +cdl_option CYGBLD_ISO_STRERROR_HEADER { + inferred_value 1 +}; + +cdl_option CYGBLD_ISO_STRTOK_R_HEADER { + inferred_value 1 +}; + +cdl_option CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER { + inferred_value 1 +}; + +cdl_option CYGBLD_ISO_STRING_BSD_FUNCS_HEADER { + inferred_value 1 +}; + +cdl_option CYGBLD_ISO_STRING_MEMFUNCS_HEADER { + inferred_value 1 +}; + +cdl_option CYGBLD_ISO_STRING_STRFUNCS_HEADER { + inferred_value 1 +}; + +cdl_option CYGSEM_IO_FLASH_READ_INDIRECT { + inferred_value 1 +}; + +cdl_option CYGSEM_IO_FLASH_VERIFY_PROGRAM { + inferred_value 0 +}; + +cdl_option CYGHWR_DEVS_FLASH_MXC_NOR { + inferred_value 0 +}; + +cdl_option CYGHWR_DEVS_FLASH_MXC_NAND { + inferred_value 1 +}; + +cdl_option CYGHWR_DEVS_IPU_3_EX { + inferred_value 1 +}; + +cdl_component CYGHWR_FLASH_NAND_BBT_HEADER { + inferred_value 1 +}; + +cdl_option CYGHWR_DEVS_FLASH_MXC_MULTI { + inferred_value 0 +}; + +cdl_option CYGSEM_ERROR_PER_THREAD_ERRNO { + inferred_value 0 +}; + diff --git a/packages/hal/arm/mx53/karo/v1_0/src/mx53_fastlogo.c b/packages/hal/arm/mx53/karo/v1_0/src/mx53_fastlogo.c new file mode 100644 index 00000000..b7033cf2 --- /dev/null +++ b/packages/hal/arm/mx53/karo/v1_0/src/mx53_fastlogo.c @@ -0,0 +1,309 @@ +//========================================================================== +// +// mx53_fastlogo.c +// +// MX53 Fast Logo Implementation +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================== + +#include + +// DI counter definitions +#define DI_COUNTER_BASECLK 0 +#define DI_COUNTER_IHSYNC 1 +#define DI_COUNTER_OHSYNC 2 +#define DI_COUNTER_OVSYNC 3 +#define DI_COUNTER_ALINE 4 +#define DI_COUNTER_ACLOCK 5 + +//extern display_buffer_info_t display_buffer; +static display_buffer_info_t display_buffer; + +void fastlogo_init(display_buffer_info_t *di) +{ + display_buffer = *di; +} + +void fastlogo_dma(void) +{ + ipu_channel_parameter_t ipu_channel_params; + + ipu_idmac_channel_enable(display_buffer.channel, 0); + + ipu_idmac_params_init(&ipu_channel_params); + ipu_channel_params.channel = display_buffer.channel; + ipu_channel_params.eba0 = display_buffer.startAddr / 8; + ipu_channel_params.fw = display_buffer.width - 1; /* frame width */ + ipu_channel_params.fh = display_buffer.height - 1; /* frame height */ + ipu_channel_params.sl = (display_buffer.width * display_buffer.bpp) / 8 - 1; + ipu_channel_params.npb = 31; /* 16 pixels per burst */ + ipu_channel_params.pfs = 7; /* 1->4:2:2 non-interleaved, 7->rgb */ + + switch (display_buffer.bpp) { + case 32: + ipu_channel_params.bpp = 0; + break; + case 24: + ipu_channel_params.bpp = 1; + break; + case 18: + ipu_channel_params.bpp = 2; + break; + case 16: + ipu_channel_params.bpp = 3; + break; + default: + diag_printf("%s: unsupported bpp value: %d\n", __FUNCTION__, + display_buffer.bpp); + return; + } + + switch (display_buffer.dataFormat) { + case RGB565: + ipu_channel_params.wid0 = 5 - 1; + ipu_channel_params.wid1 = 6 - 1; + ipu_channel_params.wid2 = 5 - 1; + ipu_channel_params.wid3 = 0; + ipu_channel_params.ofs0 = 0; + ipu_channel_params.ofs1 = 5; + ipu_channel_params.ofs2 = 11; + ipu_channel_params.ofs3 = 16; + break; + + case RGB666: + ipu_channel_params.wid0 = 6 - 1; + ipu_channel_params.wid1 = 6 - 1; + ipu_channel_params.wid2 = 6 - 1; + ipu_channel_params.wid3 = 0; + ipu_channel_params.ofs0 = 0; + ipu_channel_params.ofs1 = 6; + ipu_channel_params.ofs2 = 12; + ipu_channel_params.ofs3 = 18; + break; + + case RGB888: + ipu_channel_params.wid0 = 8 - 1; + ipu_channel_params.wid1 = 8 - 1; + ipu_channel_params.wid2 = 8 - 1; + ipu_channel_params.wid3 = 0; + ipu_channel_params.ofs0 = 0; + ipu_channel_params.ofs1 = 8; + ipu_channel_params.ofs2 = 16; + ipu_channel_params.ofs3 = 24; + break; + + case RGBA8888: + ipu_channel_params.wid0 = 8 - 1; + ipu_channel_params.wid1 = 8 - 1; + ipu_channel_params.wid2 = 8 - 1; + ipu_channel_params.wid3 = 8 - 1; + ipu_channel_params.ofs0 = 0; + ipu_channel_params.ofs1 = 8; + ipu_channel_params.ofs2 = 16; + ipu_channel_params.ofs3 = 24; + break; + + default: + diag_printf("%s: unsupported data format: %d\n", __FUNCTION__, + display_buffer.dataFormat); + return; + } + ipu_channel_params.bm = 0; + ipu_channel_params.hf = 0; + ipu_channel_params.vf = 0; + ipu_channel_params.id = 0; + ipu_idmac_interleaved_channel_config(ipu_channel_params); + + ipu_idmac_channel_mode_sel(display_buffer.channel, 0); + ipu_idmac_channel_enable(display_buffer.channel, 1); +} + +void fastlogo_dmfc(void) +{ + ipu_dmfc_fifo_allocate(display_buffer.channel, 1, 0, 4); +} + +void fastlogo_dc(void) +{ + const int display_port = 0; + + //***************************************************/ + //DI CONFIGURATION + //****************************************************/ + /* MICROCODE */ + dc_microcode_t microcode; + microcode.addr = 4; + microcode.stop = 1; + microcode.opcode = "WROD"; + microcode.lf = 0; + microcode.af = 0; + microcode.operand = 0; + microcode.mapping = 2; + microcode.waveform = 1; + microcode.gluelogic = 0; + microcode.sync = 5; + ipu_dc_microcode_config(microcode); + + ipu_dc_microcode_event(1, "NEW_DATA", 1, 4); + + /* WRITE_CHAN */ + ipu_dc_write_channel_config(display_buffer.channel, display_port, 0, 0); + + /* DISP_CONF */ + ipu_dc_display_config(display_port, 2 /* paralell */, 0, + display_buffer.width); + + /* output data pixel format */ + ipu_dc_map(1, RGB888); +} + +void fastlogo_di(void) +{ + di_sync_wave_gen_t syncWaveformGen = { 0 }; + int clkUp, clkDown; + int hSyncStartWidth = 36; + int hSyncWidth = 96; + int hSyncEndWidth = 76; + int delayH2V = display_buffer.width; + int hDisp = display_buffer.width; + int vSyncStartWidth = 11; + int vSyncWidth = 2; + int vSyncEndWidth = 32; + int vDisp = display_buffer.height; + int ipuClk = 133000000; // ipu clk is 133M + int typPixClk = 24000000;//25175000; // typical value of pixel clock + int div = (int)((float)ipuClk / (float)typPixClk + 0.5); // get the nearest value of typical pixel clock + + /* DI0_SCR, set the screen height */ + ipu_di_screen_set(0, vDisp + vSyncStartWidth + vSyncWidth + vSyncEndWidth - 1); + + /* set DI_PIN15 to be waveform according to DI data wave set 3 */ + ipu_di_pointer_config(0, 0, div - 1, div - 1, 0, 0, 0, 0, 0, 2, 0, 0); + + /* set the up & down of data wave set 3. */ + ipu_di_waveform_config(0, 0, 2, 0, div * 2); // one bit for fraction part + + /* set clk for DI0, generate the base clock of DI0. */ + clkUp = div - 2; + clkDown = clkUp * 2; + ipu_di_bsclk_gen(0, div << 4, clkUp, clkDown); + + /* + DI0 configuration: + hsync - DI0 pin 3 + vsync - DI0 pin 2 + data_en - DI0 pin 15 + clk - DI0 disp clk + COUNTER 2 for VSYNC + COUNTER 3 for HSYNC + */ + /* internal HSYNC */ + syncWaveformGen.runValue = hDisp + hSyncStartWidth + hSyncWidth + hSyncEndWidth - 1; + syncWaveformGen.runResolution = DI_COUNTER_BASECLK + 1; + syncWaveformGen.offsetValue = 0; + syncWaveformGen.offsetResolution = 0; + syncWaveformGen.cntAutoReload = 1; + syncWaveformGen.stepRepeat = 0; + syncWaveformGen.cntClrSel = 0; + syncWaveformGen.cntPolarityGenEn = 0; + syncWaveformGen.cntPolarityTrigSel = 0; + syncWaveformGen.cntPolarityClrSel = 0; + syncWaveformGen.cntUp = 0; + syncWaveformGen.cntDown = 1; + ipu_di_sync_config(0, DI_COUNTER_IHSYNC, syncWaveformGen); + + /* OUTPUT HSYNC */ + syncWaveformGen.runValue = hDisp + hSyncStartWidth + hSyncWidth + hSyncEndWidth - 1; + syncWaveformGen.runResolution = DI_COUNTER_BASECLK + 1; + syncWaveformGen.offsetValue = delayH2V; + syncWaveformGen.offsetResolution = DI_COUNTER_BASECLK + 1; + syncWaveformGen.cntAutoReload = 1; + syncWaveformGen.stepRepeat = 0; + syncWaveformGen.cntClrSel = 0; + syncWaveformGen.cntPolarityGenEn = 0; + syncWaveformGen.cntPolarityTrigSel = 0; + syncWaveformGen.cntPolarityClrSel = 0; + syncWaveformGen.cntUp = 0; + syncWaveformGen.cntDown = div * hSyncWidth; + ipu_di_sync_config(0, DI_COUNTER_OHSYNC, syncWaveformGen); + + /* Output Vsync */ + syncWaveformGen.runValue = vDisp + vSyncStartWidth + vSyncWidth + vSyncEndWidth - 1; + syncWaveformGen.runResolution = DI_COUNTER_IHSYNC + 1; + syncWaveformGen.offsetValue = 0; + syncWaveformGen.offsetResolution = 0; + syncWaveformGen.cntAutoReload = 1; + syncWaveformGen.stepRepeat = 0; + syncWaveformGen.cntClrSel = 0; + syncWaveformGen.cntPolarityGenEn = 1; + syncWaveformGen.cntPolarityTrigSel = 2; + syncWaveformGen.cntPolarityClrSel = 0; + syncWaveformGen.cntUp = 0; + syncWaveformGen.cntDown = vSyncWidth; + ipu_di_sync_config(0, DI_COUNTER_OVSYNC, syncWaveformGen); + + /* Active Lines start points */ + syncWaveformGen.runValue = 0; + syncWaveformGen.runResolution = DI_COUNTER_OHSYNC + 1; + syncWaveformGen.offsetValue = vSyncWidth; + syncWaveformGen.offsetResolution = DI_COUNTER_OHSYNC + 1; + syncWaveformGen.cntAutoReload = 0; + syncWaveformGen.stepRepeat = vDisp; + syncWaveformGen.cntClrSel = DI_COUNTER_OVSYNC + 1; + syncWaveformGen.cntPolarityGenEn = 0; + syncWaveformGen.cntPolarityTrigSel = 0; + syncWaveformGen.cntPolarityClrSel = 0; + syncWaveformGen.cntUp = 0; + syncWaveformGen.cntDown = 0; + ipu_di_sync_config(0, DI_COUNTER_ALINE, syncWaveformGen); + + /* Active clock start points */ + syncWaveformGen.runValue = 0; + syncWaveformGen.runResolution = DI_COUNTER_BASECLK + 1; + syncWaveformGen.offsetValue = hSyncWidth; + syncWaveformGen.offsetResolution = DI_COUNTER_BASECLK + 1; + syncWaveformGen.cntAutoReload = 0; + syncWaveformGen.stepRepeat = hDisp; + syncWaveformGen.cntClrSel = DI_COUNTER_ALINE + 1; + syncWaveformGen.cntPolarityGenEn = 0; + syncWaveformGen.cntPolarityTrigSel = 0; + syncWaveformGen.cntPolarityClrSel = 0; + syncWaveformGen.cntUp = 0; + syncWaveformGen.cntDown = 0; + ipu_di_sync_config(0, DI_COUNTER_ACLOCK, syncWaveformGen); + + ipu_di_general_set(0, 1, 2, 1, 0); +} diff --git a/packages/hal/arm/mx53/karo/v1_0/src/redboot_cmds.c b/packages/hal/arm/mx53/karo/v1_0/src/redboot_cmds.c new file mode 100644 index 00000000..0372649b --- /dev/null +++ b/packages/hal/arm/mx53/karo/v1_0/src/redboot_cmds.c @@ -0,0 +1,216 @@ +//========================================================================== +// +// redboot_cmds.c +// +// Board [platform] specific RedBoot commands +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================== +#include +#include +#include +#include +#include CYGBLD_HAL_PLF_DEFS_H // Platform specific hardware definitions + +#ifdef CYGSEM_REDBOOT_FLASH_CONFIG +#include + +#if (REDBOOT_IMAGE_SIZE != CYGBLD_REDBOOT_MIN_IMAGE_SIZE) +#error REDBOOT_IMAGE_SIZE != CYGBLD_REDBOOT_MIN_IMAGE_SIZE +#endif + +#endif //CYGSEM_REDBOOT_FLASH_CONFIG + +#ifdef CYGPKG_IO_FLASH +#include +#endif + +char HAL_PLATFORM_EXTRA[40] = "PASS x.x [x32 DDR]"; + +static void runImg(int argc, char *argv[]); +static void do_mem(int argc, char *argv[]); + +RedBoot_cmd("mem", + "Set a memory location", + "[-h|-b] [-n] [-a
] ", + do_mem + ); + +RedBoot_cmd("run", + "Run an image at a location with MMU off", + "[]", + runImg + ); + +static void do_mem(int argc, char *argv[]) +{ + struct option_info opts[4]; + bool mem_half_word, mem_byte; + bool no_verify; + bool addr_set; + unsigned long address; + unsigned int value; + int ret; + init_opts(&opts[0], 'b', false, OPTION_ARG_TYPE_FLG, + &mem_byte, NULL, "write a byte"); + init_opts(&opts[1], 'h', false, OPTION_ARG_TYPE_FLG, + &mem_half_word, NULL, "write a half-word"); + init_opts(&opts[2], 'a', true, OPTION_ARG_TYPE_NUM, + &address, &addr_set, "address to write to"); + init_opts(&opts[3], 'n', false, OPTION_ARG_TYPE_FLG, + &no_verify, NULL, "noverify"); + + ret = scan_opts(argc, argv, 1, opts, sizeof(opts) / sizeof(opts[0]), + &value, OPTION_ARG_TYPE_NUM, "value to be written"); + if (ret == 0) { + return; + } + if (!addr_set) { + diag_printf("** Error: '-a
' must be specified\n"); + return; + } + if (ret == argc + 1) { + diag_printf("** Error: non-option argument '' must be specified\n"); + return; + } + if (mem_byte && mem_half_word) { + diag_printf("** Error: Should not specify both byte and half-word access\n"); + } else if (mem_byte) { + value &= 0xff; + *(volatile cyg_uint8*)address = (cyg_uint8)value; + if (no_verify) { + diag_printf(" Set 0x%08lX to 0x%02X\n", address, value); + } else { + diag_printf(" Set 0x%08lX to 0x%02X (result 0x%02X)\n", + address, value, (int)*(cyg_uint8*)address ); + } + } else if (mem_half_word) { + if (address & 1) { + diag_printf("** Error: address for half-word access must be half-word aligned\n"); + } else { + value &= 0xffff; + *(volatile cyg_uint16*)address = (cyg_uint16)value; + if (no_verify) { + diag_printf(" Set 0x%08lX to 0x%04X\n", address, value); + } else { + diag_printf(" Set 0x%08lX to 0x%04X (result 0x%04X)\n", + address, value, (int)*(cyg_uint16*)address); + } + } + } else { + if (address & 3) { + diag_printf("** Error: address for word access must be word aligned\n"); + } else { + *(volatile cyg_uint32*)address = (cyg_uint32)value; + if (no_verify) { + diag_printf(" Set 0x%08lX to 0x%08X\n", address, value); + } else { + diag_printf(" Set 0x%08lX to 0x%08X (result 0x%08X)\n", + address, value, (int)*(cyg_uint32*)address); + } + } + } +} + +void launchRunImg(unsigned long addr) +{ + asm volatile ("mov r1, r0;"); + HAL_MMU_OFF(); + asm volatile ( + "mov r11, #0;" + "mov r12, #0;" + "mrs r10, cpsr;" + "bic r10, r10, #0xF0000000;" + "msr cpsr_f, r10;" + "mov pc, r1" + ); +} + +static void runImg(int argc,char *argv[]) +{ + unsigned int virt_addr, phys_addr; + + // Default physical entry point for Symbian + if (entry_address == 0xFFFFFFFF) + virt_addr = 0x800000; + else + virt_addr = entry_address; + + if (!scan_opts(argc, argv, 1, 0, 0, &virt_addr, + OPTION_ARG_TYPE_NUM, "virtual address")) + return; + + if (entry_address != 0xFFFFFFFF) + diag_printf("load entry_address=0x%lx\n", entry_address); + HAL_VIRT_TO_PHYS_ADDRESS(virt_addr, phys_addr); + + diag_printf("virt_addr=0x%x\n",virt_addr); + diag_printf("phys_addr=0x%x\n",phys_addr); + + launchRunImg(phys_addr); +} + +#if defined(CYGSEM_REDBOOT_FLASH_CONFIG) && defined(CYG_HAL_STARTUP_ROMRAM) + +RedBoot_cmd("romupdate", + "Update Redboot with currently running image", + "", + romupdate + ); + +#ifdef CYGPKG_IO_FLASH +void romupdate(int argc, char *argv[]) +{ + void *err_addr, *base_addr; + int stat; + + base_addr = (void*)(MXC_NAND_BASE_DUMMY + CYGBLD_REDBOOT_FLASH_BOOT_OFFSET); + diag_printf("Updating RedBoot in NAND flash\n"); + + // Erase area to be programmed + if ((stat = flash_erase(base_addr, CYGBLD_REDBOOT_MIN_IMAGE_SIZE, &err_addr)) != 0) { + diag_printf("Can't erase region at %p: %s\n", + err_addr, flash_errmsg(stat)); + return; + } + // Now program it + if ((stat = flash_program(base_addr, ram_end, + CYGBLD_REDBOOT_MIN_IMAGE_SIZE, &err_addr)) != 0) { + diag_printf("Can't program region at %p: %s\n", + err_addr, flash_errmsg(stat)); + } +} +#endif //CYGPKG_IO_FLASH +#endif /* CYG_HAL_STARTUP_ROMRAM */ diff --git a/packages/hal/arm/mx53/karo/v1_0/src/tx53_misc.c b/packages/hal/arm/mx53/karo/v1_0/src/tx53_misc.c new file mode 100644 index 00000000..39de7b5f --- /dev/null +++ b/packages/hal/arm/mx53/karo/v1_0/src/tx53_misc.c @@ -0,0 +1,804 @@ +//========================================================================== +// +// tx53_misc.c +// +// HAL misc board support code for the tx53 +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================*/ + +#include +#include +#include +#include +#include +#include CYGBLD_HAL_PLATFORM_H + +#include // base types +#include // tracing macros +#include // assertion macros + +#include // IO macros +#include // Register state info +#include +#include // Interrupt names +#include +#include // Hardware definitions +#include CYGBLD_HAL_PLF_DEFS_H // Platform specifics + +#include // diag_printf + +// All the MM table layout is here: +#include + +/* MMU table definitions */ +#define SD_P0 (RAM_BANK0_BASE >> 20) /* physical RAM bank 0 address */ +#define SD_C0 SD_P0 /* virtual address for cached 1:1 mapping */ +#define SD_S0 (RAM_BANK0_SIZE >> 20) /* RAM bank 0 size */ +#define SD_U0 (UNCACHED_RAM_BASE_VIRT >> 20) +#ifdef RAM_BANK1_SIZE +#define SD_P1 (RAM_BANK1_BASE >> 20) /* physical RAM bank 1 address */ +#define SD_C1 (SD_P0 + SD_S0) +#define SD_S1 (RAM_BANK1_SIZE >> 20) /* RAM bank 1 size */ +#define SD_U1 (SD_U0 + SD_S0) +#define SD_HI (SD_P1 + (SD_S1 - 1)) +#endif + +static unsigned long ttb_base = RAM_BANK0_BASE + 0x4000; + +void hal_mmu_init(void) +{ + unsigned long i; + /* + * Set the TTB register + */ + asm volatile ("mcr p15,0,%0,c2,c0,0" : : "r"(ttb_base)); + + /* + * Set the Domain Access Control Register + */ + i = ARM_ACCESS_DACR_DEFAULT; + asm volatile ("mcr p15,0,%0,c3,c0,0" : : "r"(i) /*:*/); + + /* + * First clear all TT entries - ie Set them to Faulting + */ + memset((void *)ttb_base, 0, ARM_FIRST_LEVEL_PAGE_TABLE_SIZE); + + /* Physical Virtual Size Attributes access permissions Function */ + /* Base Base MB cached? buffered? */ + /* xxx00000 xxx00000 */ + X_ARM_MMU_SECTION(0x000, 0x200, 0x001, ARM_CACHEABLE, ARM_BUFFERABLE, ARM_ACCESS_PERM_RW_RW); /* Boot Rom */ +// X_ARM_MMU_SECTION(0x1FF, 0x1FF, 0x001, ARM_UNCACHEABLE, ARM_UNBUFFERABLE, ARM_ACCESS_PERM_RW_RW); /* IRAM */ + X_ARM_MMU_SECTION(0x180, 0x180, 0x080, ARM_UNCACHEABLE, ARM_UNBUFFERABLE, ARM_ACCESS_PERM_RW_RW); /* IPUv3D */ + X_ARM_MMU_SECTION(0x500, 0x500, 0x200, ARM_UNCACHEABLE, ARM_UNBUFFERABLE, ARM_ACCESS_PERM_RW_RW); /* Internal Registers */ + X_ARM_MMU_SECTION(SD_P0, 0x000, SD_S0, ARM_CACHEABLE, ARM_BUFFERABLE, ARM_ACCESS_PERM_RW_RW); /* SDRAM */ + X_ARM_MMU_SECTION(SD_P0, SD_C0, SD_S0, ARM_CACHEABLE, ARM_BUFFERABLE, ARM_ACCESS_PERM_RW_RW); /* SDRAM */ + X_ARM_MMU_SECTION(SD_P0, SD_U0, SD_S0, ARM_UNCACHEABLE, ARM_UNBUFFERABLE, ARM_ACCESS_PERM_RW_RW); /* SDRAM (uncached) */ +#ifdef RAM_BANK1_SIZE + X_ARM_MMU_SECTION(SD_P1, SD_S0, SD_S1, ARM_CACHEABLE, ARM_BUFFERABLE, ARM_ACCESS_PERM_RW_RW); /* SDRAM */ + X_ARM_MMU_SECTION(SD_P1, SD_C1, SD_S1, ARM_CACHEABLE, ARM_BUFFERABLE, ARM_ACCESS_PERM_RW_RW); /* SDRAM */ + X_ARM_MMU_SECTION(SD_P1, SD_U1, SD_S1, ARM_UNCACHEABLE, ARM_UNBUFFERABLE, ARM_ACCESS_PERM_RW_RW); /* SDRAM */ + /* make sure the last MiB in the upper bank of SDRAM (where RedBoot resides) + * has a unity mapping (required when switching MMU on) */ + X_ARM_MMU_SECTION(SD_HI, SD_HI, 0x001, ARM_CACHEABLE, ARM_BUFFERABLE, ARM_ACCESS_PERM_RO_RO); /* SDRAM bank1 identity mapping */ +#endif + X_ARM_MMU_SECTION(0xF40, 0xF40, 0x040, ARM_UNCACHEABLE, ARM_UNBUFFERABLE, ARM_ACCESS_PERM_RW_RW); /* CS1 EIM control & NFC buffer */ +} + +static inline void set_reg(CYG_ADDRESS addr, CYG_WORD32 set, CYG_WORD32 clr) +{ + CYG_WORD32 val; + + HAL_READ_UINT32(addr, val); + val = (val & ~clr) | set; + HAL_WRITE_UINT32(addr, val); +} + +static inline void setup_gpio(int grp, int bit) +{ + CYG_ADDRESS base = MX53_GPIO_ADDR(grp); + + if (base == 0) + return; + set_reg(base + GPIO_DR, 0, 1 << bit); + set_reg(base + GPIO_GDIR, 1 << bit, 0); +} + +// +// Platform specific initialization +// +#define PAD_CTL_UART_OUT MUX_PAD_CTRL(PAD_CTL_PKE | PAD_CTL_PUE | \ + PAD_CTL_PUS_100K_DOWN | PAD_CTL_DSE_HIGH | \ + PAD_CTL_SRE_FAST) +#define PAD_CTL_UART_IN (MUX_PAD_CTRL(PAD_CTL_HYS) | PAD_CTL_UART_OUT) + +static iomux_v3_cfg_t tx53_uart_pads[] = { + MX53_PAD_PATA_DIOW__UART1_TXD_MUX | PAD_CTL_UART_OUT, + MX53_PAD_PATA_DMACK__UART1_RXD_MUX | PAD_CTL_UART_IN, + + MX53_PAD_PATA_DMARQ__UART2_TXD_MUX | PAD_CTL_UART_OUT, + MX53_PAD_PATA_BUFFER_EN__UART2_RXD_MUX | PAD_CTL_UART_IN, + + MX53_PAD_PATA_CS_0__UART3_TXD_MUX | PAD_CTL_UART_OUT, + MX53_PAD_PATA_CS_1__UART3_RXD_MUX | PAD_CTL_UART_IN, +}; + +static void uart_gpio_init(void) +{ + mx53_iomux_setup_pads(tx53_uart_pads, CYG_NELEM(tx53_uart_pads)); +} + +/* GPIOs to set up for TX53/Starterkit-5: + Function FCT GPIO Pad IOMUXC SW_PAD SW_INP mode + OFFSET CTRL SEL +FEC_REF_CLK 0 1,23 FEC_REF_CLK 0x24c 0x5c8 +FEC_MDC 0 1,31 FEC_MDC 0x26c 0x5e8 +FEC_MDIO 0 1,22 FEC_MDIO 0x248 0x5c4 0x804 1 +FEC_RXD0 0 1,27 FEC_RXD0 0x25c 0x5d8 +FEC_RXD1 0 1,26 FEC_RXD1 0x258 0x5d4 +FEC_RX_ER 0 1,24 FEC_RX_ER 0x250 0x5cc +FEC_TX_EN 0 1,28 FEC_TX_EN 0x260 0x5dc +FEC_TXD0 0 1,30 FEC_TXD0 0x268 0x5e4 +FEC_TXD1 0 1,29 FEC_TXD1 0x264 0x5e0 +FEC_CRS_DV 0 1,25 FEC_CRS_DV 0x254 0x5d0 + +FEC_RESET# 1 7,6 PATA_DA_0 0x290 0x610 +FEC_ENABLE 1 3,20 EIM_D20 0x128 0x470 +*/ +static iomux_v3_cfg_t tx53_fec_pads[] = { + /* setup FEC PHY pins for GPIO function (with SION set) */ + MX53_PAD_FEC_REF_CLK__GPIO_1_23 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_MDC__GPIO_1_31 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_MDIO__GPIO_1_22 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_RXD0__GPIO_1_27 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_RXD1__GPIO_1_26 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_RX_ER__GPIO_1_24 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_TX_EN__GPIO_1_28 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_TXD0__GPIO_1_30 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_TXD1__GPIO_1_29 | IOMUX_CONFIG_SION, + MX53_PAD_FEC_CRS_DV__GPIO_1_25 | IOMUX_CONFIG_SION, + + /* PHY reset */ + MX53_PAD_PATA_DA_0__GPIO_7_6 | IOMUX_CONFIG_SION, + /* PHY power */ + MX53_PAD_EIM_D20__GPIO_3_20 | IOMUX_CONFIG_SION, +}; + +static iomux_v3_cfg_t tx53_i2c_pads[] = { + MX53_PAD_EIM_D21__I2C1_SCL | MUX_PAD_CTRL(PAD_CTL_DSE_HIGH | + PAD_CTL_HYS | + PAD_CTL_ODE) | + IOMUX_CONFIG_SION, + MX53_PAD_EIM_D28__I2C1_SDA | MUX_PAD_CTRL(PAD_CTL_DSE_HIGH | + PAD_CTL_HYS | + PAD_CTL_ODE) | + IOMUX_CONFIG_SION, +}; + +static void fec_gpio_init(void) +{ + /* setup GPIO data register to 0 and DDIR output for FEC PHY pins */ + setup_gpio(1, 23); + setup_gpio(1, 31); + setup_gpio(1, 22); + setup_gpio(1, 25); + setup_gpio(1, 27); + setup_gpio(1, 26); + setup_gpio(1, 24); + setup_gpio(1, 28); + setup_gpio(1, 30); + setup_gpio(1, 29); + + setup_gpio(7, 6); + setup_gpio(3, 20); + + /* setup input mux for FEC pins */ + mx53_iomux_setup_pads(tx53_fec_pads, CYG_NELEM(tx53_fec_pads)); + mx53_iomux_setup_pads(tx53_i2c_pads, CYG_NELEM(tx53_i2c_pads)); +} + +#ifdef CYGHWR_MX53_LCD_LOGO +static iomux_v3_cfg_t tx53_lcd_pads[] = { +#define PAD_CTL_LCD MUX_PAD_CTRL(PAD_CTL_DSE_HIGH | PAD_CTL_DSE_HIGH) + MX53_PAD_DISP0_DAT0__IPU_DISP0_DAT_0 | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT1, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT2, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT3, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT4, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT5, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT6, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT7, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT8, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT9, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT10, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT12, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT13, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT14, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT15, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT16, | PAD_CTL_LCD, + MX53_PAD_DISP0_DAT17, | PAD_CTL_LCD, + + /* HSYNC, VSYNC */ + MX53_PAD_DI0_PIN2__IPU_DI0_PIN2 | PAD_CTL_LCD, + MX53_PAD_DI0_PIN3__IPU_DI0_PIN3 | PAD_CTL_LCD, + /* OE_ACD */ + MX53_PAD_DI0_PIN15__IPU_DI0_PIN15 | MUX_PAD_CRTL(PAD_CTL_LCD | PAD_CTL_PKE), + MX53_PAD_DI0_DISP_CLK__IPU_DI0_DISP_CLK | MUX_PAD_CTRL(PAD_CTL_LCD), + + /* LCD Power Enable */ + MX53_PAD_EIM_EB3__GPIO_2_31, + /* LCD Reset */ + MX53_PAD_EIM_D29__GPIO_3_29, + /* LCD backlight */ + MX53_PAD_GPIO_1__GPIO_1_1, +}; + +void mxc_ipu_iomux_config(void) +{ + /* LCD Power Enable GPIO_2_31 (active High) */ + gpio_clr_bit(2, 31); + + /* LCD Reset GPIO_3_29 (active Low) */ + gpio_clr_bit(3, 29); + + /* LCD Backlight GPIO_1_1 (PWM 0: full brightness 1: off) */ + gpio_set_bit(1, 1); + + mx53_iomux_setup_pads(tx53_lcd_pads, CYG_NELEM(tx53_lcd_pads)); +} +RedBoot_init(mxc_ipu_iomux_config, RedBoot_INIT_SECOND); +#endif + +// +// Platform specific initialization +// + +void plf_hardware_init(void) +{ +#ifdef RAM_BANK1_SIZE + /* destroy mapping for high area in SDRAM */ + X_ARM_MMU_SECTION(SD_HI, 0, 0, 0, 0, ARM_ACCESS_PERM_NONE_NONE); +#endif + uart_gpio_init(); + fec_gpio_init(); + + /* NFC setup */ + writel(readl(NFC_FLASH_CONFIG3_REG) | + (1 << 15) | /* assert RBB_MODE (see Errata: ENGcm09970) */ + (1 << 20) | /* assert NO_SDMA */ + (1 << 3), /* set bus width to 8bit */ + NFC_FLASH_CONFIG3_REG); +} + +#define SOC_I2C1_BASE UL(0x63fc8000) + +/* Address offsets of the I2C registers */ +#define MXC_IADR 0x00 /* Address Register */ +#define MXC_IFDR 0x04 /* Freq div register */ +#define MXC_I2CR 0x08 /* Control regsiter */ +#define MXC_I2SR 0x0C /* Status register */ +#define MXC_I2DR 0x10 /* Data I/O register */ + +/* Bit definitions of I2CR */ +#define MXC_I2CR_IEN 0x0080 +#define MXC_I2CR_IIEN 0x0040 +#define MXC_I2CR_MSTA 0x0020 +#define MXC_I2CR_MTX 0x0010 +#define MXC_I2CR_TXAK 0x0008 +#define MXC_I2CR_RSTA 0x0004 + +/* Bit definitions of I2SR */ +#define MXC_I2SR_ICF 0x0080 +#define MXC_I2SR_IAAS 0x0040 +#define MXC_I2SR_IBB 0x0020 +#define MXC_I2SR_IAL 0x0010 +#define MXC_I2SR_SRW 0x0004 +#define MXC_I2SR_IIF 0x0002 +#define MXC_I2SR_RXAK 0x0001 + +#define LP3972_SLAVE_ADDR 0x34 + +static inline cyg_uint8 i2c_addr(cyg_uint8 addr, int rw) +{ + return (addr << 1) | !!rw; +} + +static inline cyg_uint8 tx53_i2c_read(cyg_uint8 reg) +{ + cyg_uint16 val; + HAL_READ_UINT16(SOC_I2C1_BASE + reg, val); + return val; +} + +static inline void tx53_i2c_write(cyg_uint8 reg, cyg_uint8 val) +{ + HAL_WRITE_UINT16(SOC_I2C1_BASE + reg, val); +} + +static inline void tx53_i2c_set_reg(cyg_uint8 reg, cyg_uint8 set, cyg_uint8 clr) +{ + cyg_uint8 val = tx53_i2c_read(reg); + val = (val & ~clr) | set; + tx53_i2c_write(reg, val); +} + +static void tx53_i2c_disable(void) +{ + /* disable I2C controller */ + tx53_i2c_set_reg(MXC_I2CR, 0, MXC_I2CR_IEN); + /* disable I2C clock */ + set_reg(CCM_BASE_ADDR + CLKCTL_CGPR, 0, (1 << 4)); +} + +static int tx53_i2c_init(void) +{ + int ret; + + /* enable I2C clock */ + set_reg(CCM_BASE_ADDR + CLKCTL_CGPR, (1 << 4), 0); + + /* setup I2C clock divider */ + tx53_i2c_write(MXC_IFDR, 0x2c); + tx53_i2c_write(MXC_I2SR, 0); + + /* enable I2C controller in master mode */ + tx53_i2c_write(MXC_I2CR, MXC_I2CR_IEN); + + ret = tx53_i2c_read(MXC_I2SR); + if (ret & MXC_I2SR_IBB) { + diag_printf("I2C bus busy\n"); + tx53_i2c_disable(); + return -EIO; + } + return 0; +} + +static int tx53_i2c_wait_busy(int set) +{ + int ret; + const int max_loops = 100; + int retries = max_loops; + + cyg_uint8 mask = set ? MXC_I2SR_IBB : 0; + + while ((ret = mask ^ (tx53_i2c_read(MXC_I2SR) & MXC_I2SR_IBB)) && --retries > 0) { + HAL_DELAY_US(3); + } + if (ret != 0) { + diag_printf("i2c: Waiting for IBB to %s timed out\n", set ? "set" : "clear"); + return -ETIMEDOUT; + } + return ret; +} + +static int tx53_i2c_wait_tc(void) +{ + int ret; + const int max_loops = 1000; + int retries = max_loops; + + while (!((ret = tx53_i2c_read(MXC_I2SR)) & MXC_I2SR_IIF) && --retries > 0) { + HAL_DELAY_US(3); + } + tx53_i2c_write(MXC_I2SR, 0); + if (!(ret & MXC_I2SR_IIF)) { + diag_printf("i2c: Wait for transfer completion timed out\n"); + return -ETIMEDOUT; + } + if (ret & MXC_I2SR_ICF) { + if (tx53_i2c_read(MXC_I2CR) & MXC_I2CR_MTX) { + if (!(ret & MXC_I2SR_RXAK)) { + ret = 0; + } else { + diag_printf("i2c: No ACK received after writing data\n"); + return -ENXIO; + } + } + } + return ret; +} + +static int tx53_i2c_stop(void) +{ + int ret; + + tx53_i2c_set_reg(MXC_I2CR, 0, MXC_I2CR_MSTA | MXC_I2CR_MTX); + ret = tx53_i2c_wait_busy(0); + return ret; +} + +static int tx53_i2c_start(cyg_uint8 addr, int rw) +{ + int ret; + + ret = tx53_i2c_init(); + if (ret < 0) { + diag_printf("I2C bus init failed; cannot switch fuse programming voltage\n"); + return ret; + } + tx53_i2c_set_reg(MXC_I2CR, MXC_I2CR_MSTA, 0); + ret = tx53_i2c_wait_busy(1); + if (ret == 0) { + tx53_i2c_set_reg(MXC_I2CR, MXC_I2CR_MTX, 0); + tx53_i2c_write(MXC_I2DR, i2c_addr(addr, rw)); + ret = tx53_i2c_wait_tc(); + if (ret < 0) { + tx53_i2c_stop(); + } + } + return ret; +} + +static int tx53_i2c_repeat_start(cyg_uint8 addr, int rw) +{ + int ret; + + tx53_i2c_set_reg(MXC_I2CR, MXC_I2CR_RSTA, 0); + HAL_DELAY_US(3); + tx53_i2c_write(MXC_I2DR, i2c_addr(addr, rw)); + ret = tx53_i2c_wait_tc(); + if (ret < 0) { + tx53_i2c_stop(); + } + return ret; +} + +static int tx53_i2c_read_byte(void) +{ + int ret; + + tx53_i2c_set_reg(MXC_I2CR, MXC_I2CR_TXAK, MXC_I2CR_MTX); + (void)tx53_i2c_read(MXC_I2DR); /* dummy read after address cycle */ + ret = tx53_i2c_wait_tc(); + tx53_i2c_stop(); + if (ret < 0) { + return ret; + } + ret = tx53_i2c_read(MXC_I2DR); + return ret; +} + +static int tx53_i2c_write_byte(cyg_uint8 data, int last) +{ + int ret; + + tx53_i2c_set_reg(MXC_I2CR, MXC_I2CR_MTX, 0); + tx53_i2c_write(MXC_I2DR, data); + if ((ret = tx53_i2c_wait_tc()) < 0 || last) { + tx53_i2c_stop(); + } + return ret; +} + +static int tx53_i2c_reg_read(cyg_uint8 slave_addr, cyg_uint8 reg) +{ + int ret; + + ret = tx53_i2c_start(slave_addr, 0); + if (ret < 0) { + return ret; + } + ret = tx53_i2c_write_byte(reg, 0); + if (ret < 0) { + return ret; + } + ret = tx53_i2c_repeat_start(slave_addr, 1); + if (ret < 0) { + return ret; + } + ret = tx53_i2c_read_byte(); + tx53_i2c_disable(); + return ret; +} + +static int tx53_i2c_reg_write(cyg_uint8 slave_addr, cyg_uint8 reg, cyg_uint8 val) +{ + int ret; + + ret = tx53_i2c_start(slave_addr, 0); + if (ret < 0) { + return ret; + } + ret = tx53_i2c_write_byte(reg, 0); + if (ret < 0) { + return ret; + } + ret = tx53_i2c_write_byte(val, 1); + tx53_i2c_disable(); + return ret; +} + +int tx53_mac_addr_program(unsigned char mac_addr[ETHER_ADDR_LEN]) +{ + int ret = 0; + int i; + + for (i = 0; i < ETHER_ADDR_LEN; i++) { + unsigned char fuse = readl(SOC_FEC_MAC_BASE + (i << 2)); + + if ((fuse | mac_addr[i]) != mac_addr[i]) { + diag_printf("MAC address fuse cannot be programmed: fuse[%d]=0x%02x -> 0x%02x\n", + i, fuse, mac_addr[i]); + return -1; + } + if (fuse != mac_addr[i]) { + ret = 1; + } + } + if (ret == 0) { + return ret; + } + + for (i = 0; i < ETHER_ADDR_LEN; i++) { + unsigned char fuse = readl(SOC_FEC_MAC_BASE + (i << 2)); + int row = SOC_MAC_ADDR_FUSE + i; + + if (fuse == mac_addr[i]) { + continue; + } + fuse_blow_row(SOC_MAC_ADDR_FUSE_BANK, row, mac_addr[i]); + ret = sense_fuse(SOC_MAC_ADDR_FUSE_BANK, row, 0); + if (ret != mac_addr[i]) { + diag_printf("Failed to verify fuse bank %d row %d; expected %02x got %02x\n", + SOC_MAC_ADDR_FUSE_BANK, row, mac_addr[i], ret); + goto out; + } + } +#ifdef SOC_MAC_ADDR_LOCK_BIT + fuse_blow_row(SOC_MAC_ADDR_FUSE_BANK, SOC_MAC_ADDR_LOCK_FUSE, + (1 << SOC_MAC_ADDR_LOCK_BIT)); +#endif +out: + return ret; +} + +#include CYGHWR_MEMORY_LAYOUT_H + +typedef void code_fun(void); + +void tx53_program_new_stack(void *func) +{ + register CYG_ADDRESS stack_ptr asm("sp"); + register CYG_ADDRESS old_stack asm("r4"); + register code_fun *new_func asm("r0"); + + old_stack = stack_ptr; + stack_ptr = CYGMEM_REGION_ram + CYGMEM_REGION_ram_SIZE - sizeof(CYG_ADDRESS); + new_func = (code_fun*)func; + new_func(); + stack_ptr = old_stack; +} + +#if CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 +#define PMIC_NAME "LP3972" +#elif CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 +#define PMIC_NAME "LT3598" +#else +#error Bad CYGNUM_HAL_ARM_TX53_SDRAM_TYPE +#endif + +static int pmic_reg_read(cyg_uint8 reg) +{ + int ret; + + ret = tx53_i2c_reg_read(LP3972_SLAVE_ADDR, reg); + if (ret < 0) + diag_printf("Failed to read %s reg 0x%02x %d\n", PMIC_NAME, + reg, ret); + return ret; +} + +static int pmic_reg_write(cyg_uint8 reg, cyg_uint8 val) +{ + int ret; + + ret = tx53_i2c_reg_write(LP3972_SLAVE_ADDR, reg, val); + if (ret) + diag_printf("Failed to write 0x%02x to %s reg 0x%02x: %d\n", + val, PMIC_NAME, reg, ret); + return ret; +} + +#if CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 +int tx53_fuse_voltage(int on) +{ + int ret; + + ret = pmic_reg_read(0x81); + if (ret < 0) + return ret; + + /* Try to enable FUSE_VDD by asserting LP3972 GPIO1 */ + ret = (ret & ~0x3) | (on ? 1 : 3); + ret = pmic_reg_write(0x81, ret); + if (ret) { + return ret; + } + ret = pmic_reg_read(0x81); + if ((ret & 0x3) != (on ? 0x1 : 0x3)) { + return -EIO; + } + return 0; +} + +#define CORE_VOLTAGE_HIGH 0x1b +#define CORE_VOLTAGE_LOW 0x03 +#if CYGNUM_HAL_ARM_TX53_SDRAM_SIZE == SZ_512M +#define SDRAM_SIZE_STR '0' +#else +#if CYGNUM_HAL_ARM_TX53_CPU_CLK == 1000 +#define SDRAM_SIZE_STR '2' +#else +#define SDRAM_SIZE_STR '1' +#endif /* CYGNUM_HAL_ARM_TX53_CPU_CLK == 1000 */ +#endif /* CYGNUM_HAL_ARM_TX53_SDRAM_SIZE == SZ512M */ + +#elif CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 3 +int tx53_fuse_voltage(int on) +{ + int ret; + + if (on) { + ret = pmic_reg_read(0x33); + if (ret < 0) + return ret; + if ((ret & 0xe0) != 0xe0) { + ret = pmic_reg_write(0x33, ret | 0xe0); + if (ret) + return ret; + + ret = pmic_reg_read(0x33); + if (ret < 0) + return ret; + + if ((ret & 0xe0) != 0xe0) { + diag_printf("Could not adjust LT3589 LDO4 output voltage\n"); + return -EIO; + } + } + + ret = pmic_reg_read(0x12); + if (ret < 0) + return ret; + + if (!(ret & (1 << 6))) { + ret |= 1 << 6; /* LDO4 Startup: don't wait for output < 300mV */ + ret = pmic_reg_write(0x12, ret); + if (ret) + return -EIO; + ret = pmic_reg_read(0x12); + if (!(ret & (1 << 6))) { + diag_printf("Could not set LT3589 LDO4 Startup control\n"); + return -EIO; + } + } + } + /* enable SW regulator control and all regulators (except LDO4, if !on) */ + ret = pmic_reg_write(0x10, 0xbf | (!!on << 6)); + if (ret) + return ret; + + ret = pmic_reg_read(0x10); + if (ret < 0) + return ret; + + if (!(ret & (1 << 6)) ^ !on) { + diag_printf("Could not enable LT3589 LDO4 output\n"); + return -EIO; + } + return 0; +} + +#define CORE_VOLTAGE_HIGH 0x1c +#define CORE_VOLTAGE_LOW 0x17 +#if CYGNUM_HAL_ARM_TX53_SDRAM_SIZE == SZ_512M +#define SDRAM_SIZE_STR '0' +#else +#define SDRAM_SIZE_STR '1' +#endif +#endif + +void increase_core_voltage(bool high) +{ + int ret; + const int volt = high ? CORE_VOLTAGE_HIGH : CORE_VOLTAGE_LOW; + + ret = pmic_reg_read(0x23); + if (ret < 0) { + diag_printf("Failed to read core voltage: %d\n", ret); + return; + } + + ret = pmic_reg_write(0x23, volt); + if (ret < 0) { + diag_printf("Failed to write core voltage: %d\n", ret); + } +} + +static void display_board_type(void) +{ + char cpu_freq; + const char *ddr_type = _stringify(CYGNUM_HAL_ARM_TX53_SDRAM_TYPE); + + switch (CYGNUM_HAL_ARM_TX53_CPU_CLK) { + case 800: + cpu_freq = '8'; + break; + + case 1000: + cpu_freq = '1'; + break; + + default: + cpu_freq = '?'; + } + + diag_printf("\nBoard Type: Ka-Ro TX53-%c%c%s%c\n", + cpu_freq, CYGNUM_HAL_ARM_TX53_SDRAM_TYPE == 2 ? '0' : 'x', + ddr_type, SDRAM_SIZE_STR); +} + +static void display_board_info(void) +{ + display_board_type(); +} +RedBoot_init(display_board_info, RedBoot_INIT_LAST); + +void mxc_i2c_init(unsigned int module_base) +{ + switch (module_base) { + case I2C1_BASE_ADDR: + writel(0x15, IOMUXC_BASE_ADDR + 0x12c); + writel(0x10c, IOMUXC_BASE_ADDR + 0x474); + writel(0x1, IOMUXC_BASE_ADDR + 0x814); + + writel(0x15, IOMUXC_BASE_ADDR + 0x14c); + writel(0x10c, IOMUXC_BASE_ADDR + 0x494); + writel(0x1, IOMUXC_BASE_ADDR + 0x818); + break; + + case I2C3_BASE_ADDR: + writel(0x11, IOMUXC_BASE_ADDR + 0x120); + writel(0x1fc, IOMUXC_BASE_ADDR + 0x468); + + writel(0x11, IOMUXC_BASE_ADDR + 0x118); + writel(0x1fc, IOMUXC_BASE_ADDR + 0x460); + break; + + default: + diag_printf("Invalid I2C base: 0x%x\n", module_base); + } +} diff --git a/packages/hal/arm/mx53/var/v2_0/cdl/hal_arm_soc.cdl b/packages/hal/arm/mx53/var/v2_0/cdl/hal_arm_soc.cdl new file mode 100644 index 00000000..4301d79e --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/cdl/hal_arm_soc.cdl @@ -0,0 +1,161 @@ +# ==================================================================== +#####ECOSGPLCOPYRIGHTBEGIN#### +## ------------------------------------------- +## This file is part of eCos, the Embedded Configurable Operating System. +## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +## +## eCos is free software; you can redistribute it and/or modify it under +## the terms of the GNU General Public License as published by the Free +## Software Foundation; either version 2 or (at your option) any later version. +## +## eCos is distributed in the hope that it will be useful, but WITHOUT ANY +## WARRANTY; without even the implied warranty of MERCHANTABILITY or +## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +## for more details. +## +## You should have received a copy of the GNU General Public License along +## with eCos; if not, write to the Free Software Foundation, Inc., +## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +## +## As a special exception, if other files instantiate templates or use macros +## or inline functions from this file, or you compile this file and link it +## with other works to produce a work based on this file, this file does not +## by itself cause the resulting work to be covered by the GNU General Public +## License. However the source code for this file must still be made available +## in accordance with section (3) of the GNU General Public License. +## +## This exception does not invalidate any other reasons why a work based on +## this file might be covered by the GNU General Public License. +## +## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +## at http://sources.redhat.com/ecos/ecos-license/ +## ------------------------------------------- +#####ECOSGPLCOPYRIGHTEND#### +# ==================================================================== +######DESCRIPTIONBEGIN#### +# +# Author(s): gthomas +# Original data: gthomas +# Contributors: +# Date: 2000-05-08 +# +#####DESCRIPTIONEND#### +# +# ==================================================================== +cdl_package CYGPKG_HAL_ARM_MX53 { + display "Freescale SoC architecture" + parent CYGPKG_HAL_ARM + hardware + include_dir cyg/hal + define_header hal_arm_soc.h + description " + This HAL variant package provides generic + support for the Freescale SoC. It is also + necessary to select a specific target platform HAL + package." + + implements CYGINT_HAL_ARM_ARCH_ARM9 + implements CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT + + # Let the architectural HAL see this variant's interrupts file - + # the SoC has no variation between targets here. + define_proc { + puts $::cdl_header "#define CYGBLD_HAL_VAR_INTS_H " + puts $::cdl_system_header "#define CYGBLD_HAL_ARM_VAR_IO_H" + + puts $::cdl_header "#define CYGPRI_KERNEL_TESTS_DHRYSTONE_PASSES 1000000" + } + + compile soc_diag.c soc_misc.c + compile -library=libextras.a cmds.c + + cdl_option CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK { + display "Processor clock rate" + active_if { CYG_HAL_STARTUP == "ROM" } + flavor data + legal_values 150000 200000 + default_value { CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT ? + CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT : 150000} + description " + 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." + } + + # Real-time clock/counter specifics + cdl_component CYGNUM_HAL_RTC_CONSTANTS { + display "Real-time clock constants" + flavor none + no_define + + cdl_option CYGNUM_HAL_RTC_NUMERATOR { + display "Real-time clock numerator" + flavor data + calculated 1000000000 + } + cdl_option CYGNUM_HAL_RTC_DENOMINATOR { + display "Real-time clock denominator" + flavor data + default_value 100 + description " + 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_PERIOD { + display "Real-time clock period" + flavor data + calculated (3686400/CYGNUM_HAL_RTC_DENOMINATOR) ;# Clock for OS Timer is 3.6864MHz + } + } + + # Control over hardware layout. + cdl_interface CYGHWR_HAL_ARM_SOC_UART1 { + display "UART1 available as diagnostic/debug channel" + description " + 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 { + display "UART2 available as diagnostic/debug channel" + description " + 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 { + display "UART3 available as diagnostic/debug channel" + description " + 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 { + display "UART4 available as diagnostic/debug channel" + description " + 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 { + display "UART5 available as diagnostic/debug channel" + description " + 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." + } +} diff --git a/packages/hal/arm/mx53/var/v2_0/include/hal_cache.h b/packages/hal/arm/mx53/var/v2_0/include/hal_cache.h new file mode 100644 index 00000000..81aad64e --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/include/hal_cache.h @@ -0,0 +1,350 @@ +#ifndef CYGONCE_HAL_CACHE_H +#define CYGONCE_HAL_CACHE_H + +//============================================================================= +// +// hal_cache.h +// +// HAL cache control API +// +//============================================================================= +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//============================================================================= + +#include +#include // Variant specific hardware definitions + +//----------------------------------------------------------------------------- +// Global control of data cache + +// Enable the data cache +#define HAL_DCACHE_ENABLE_L1() \ + CYG_MACRO_START \ + asm volatile ( \ + "mrc p15, 0, r1, c1, c0, 0;" \ + "orr r1, r1, #0x0007;" /* enable DCache (also ensures \ + that MMU and alignment faults \ + are enabled) */ \ + "mcr p15, 0, r1, c1, c0, 0" \ + : \ + : \ + : "r1" /* Clobber list */ \ + ); \ + CYG_MACRO_END + +// Clean+invalidate the both D+I caches at L1 and L2 levels +#define HAL_CACHE_FLUSH_ALL() \ + CYG_MACRO_START \ + asm volatile ( \ + "stmfd sp!, {r0-r5, r7, r9-r11};" \ + "mrc p15, 1, r0, c0, c0, 1;" /* read clidr */ \ + "ands r3, r0, #0x7000000;" /* extract loc from clidr */ \ + "mov r3, r3, lsr #23;" /* left align loc bit field */ \ + "beq 555f;" /* if loc is 0, then no need to clean */ \ + "mov r10, #0;" /* start clean at cache level 0 */ \ + "111:" \ + "add r2, r10, r10, lsr #1;" /* work out 3x current cache level */ \ + "mov r1, r0, lsr r2;"/* extract cache type bits from clidr */ \ + "and r1, r1, #7;" /* mask of the bits for current cache only */ \ + "cmp r1, #2;" /* see what cache we have at this level*/ \ + "blt 444f;" /* skip if no cache, or just i-cache */ \ + "mcr p15, 2, r10, c0, c0, 0;" /* select current cache level in cssr */ \ + "mcr p15, 0, r10, c7, c5, 4;" /* isb to synch the new cssr & csidr */ \ + "mrc p15, 1, r1, c0, c0, 0;" /* read the new csidr */ \ + "and r2, r1, #7;" /* extract the length of the cache lines */ \ + "add r2, r2, #4;" /* add 4 (line length offset) */ \ + "ldr r4, =0x3ff;" \ + "ands r4, r4, r1, lsr #3;" /* find maximum number on the way size */ \ + "clz r5, r4;" /* find bit position of way size increment*/ \ + "ldr r7, =0x7fff;" \ + "ands r7, r7, r1, lsr #13;" /* extract max number of the index size */ \ + "222:" \ + "mov r9, r4;" /* create working copy of max way size */ \ + "333:" \ + "orr r11, r10, r9, lsl r5;" /* factor way and cache number into r11 */ \ + "orr r11, r11, r7, lsl r2;" /* factor index number into r11 */ \ + "mcr p15, 0, r11, c7, c14, 2;" /* clean & invalidate by set/way */ \ + "subs r9, r9, #1;" /* decrement the way */ \ + "bge 333b;" \ + "subs r7, r7, #1;" /* decrement the index */ \ + "bge 222b;" \ + "444:" \ + "add r10, r10, #2;" /* increment cache number */ \ + "cmp r3, r10;" \ + "bgt 111b;" \ + "555:" \ + "mov r10, #0;" /* swith back to cache level 0 */ \ + "mcr p15, 2, r10, c0, c0, 0;" /* select current cache level in cssr */ \ + "mcr p15, 0, r10, c7, c5, 4;" /* isb to synch the new cssr & csidr */ \ + "ldmfd sp!, {r0-r5, r7, r9-r11};" \ + "666:" \ + "mov r0, #0x0;" \ + "mcr p15, 0, r0, c7, c5, 0;" /* invalidate I+BTB */ \ + "mcr p15, 0, r0, c7, c10, 4;" /* drain WB */ \ + : \ + : \ + : "r0" /* Clobber list */ \ + ); \ + CYG_MACRO_END + +// Disable the data cache +#define HAL_DCACHE_DISABLE_L1() \ + CYG_MACRO_START \ + asm volatile ( \ + "mrc p15, 0, r1, c1, c0, 0;" \ + "bic r1, r1, #0x0004;" /* disable DCache by clearing C bit, \ + but not MMU and alignment faults */ \ + "mcr p15, 0, r1, c1, c0, 0" \ + : \ + : \ + : "r1" /* Clobber list */ \ + ); \ + CYG_MACRO_END + +// Query the state of the data cache +#define HAL_DCACHE_IS_ENABLED(_state_) \ + CYG_MACRO_START \ + register int reg; \ + asm volatile ( \ + "mrc p15, 0, %0, c1, c0, 0;" \ + : "=r"(reg) \ + : \ + ); \ + (_state_) = (0 != (4 & reg)); /* Bit 2 is DCache enable */ \ + CYG_MACRO_END + +//----------------------------------------------------------------------------- +// Global control of Instruction cache + +// Enable the instruction cache +#define HAL_ICACHE_ENABLE_L1() \ + CYG_MACRO_START \ + asm volatile ( \ + "mrc p15, 0, r1, c1, c0, 0;" \ + "orr r1, r1, #0x1000;" \ + "orr r1, r1, #0x0003;" /* enable ICache (also ensures \ + that MMU and alignment faults \ + are enabled) */ \ + "mcr p15, 0, r1, c1, c0, 0" \ + : \ + : \ + : "r1" /* Clobber list */ \ + ); \ + CYG_MACRO_END + +// Query the state of the instruction cache +#define HAL_ICACHE_IS_ENABLED(_state_) \ + CYG_MACRO_START \ + register cyg_uint32 reg; \ + asm volatile ( \ + "mrc p15, 0, %0, c1, c0, 0" \ + : "=r"(reg) \ + : \ + ); \ + (_state_) = (0 != (0x1000 & reg)); /* Bit 12 is ICache enable */ \ + CYG_MACRO_END + +// Disable the instruction cache +#define HAL_ICACHE_DISABLE_L1() \ +CYG_MACRO_START \ + asm volatile ( \ + /* prepare to disable ICache (but not MMU, etc) */ \ + "mrc p15, 0, r2, c1, c0, 0;" \ + "mov r1, #0;" \ + "bic r2, r2, #0x1000;" \ + /* align to cache line */ \ + "b 1f;" \ + ".align 5;" \ + "1:;" \ + /* flush icache */ \ + "mcr p15, 0, r1, c7, c5, 0;" /* flush ICache */ \ + "mcr p15, 0, r1, c8, c5, 0;" /* flush ITLB only */ \ + "mcr p15, 0, r1, c7, c5, 4;" /* flush prefetch buffer */ \ + /* disable icache */ \ + "mcr p15, 0, r2, c1, c0, 0;" \ + "nop;" /* next few instructions may be via cache */ \ + "nop;" \ + "nop;" \ + "nop;" \ + "nop;" \ + "nop;" \ + : \ + : \ + : "r1","r2" /* Clobber list */ \ + ); \ +CYG_MACRO_END + +// Invalidate the entire cache +#define HAL_ICACHE_INVALIDATE_ALL_L1() +#ifdef TODO +#define HAL_ICACHE_INVALIDATE_ALL_L1() \ + CYG_MACRO_START \ + /* this macro can discard dirty cache lines (N/A for ICache) */ \ + asm volatile ( \ + "mov r1, #0;" \ + "mcr p15, 0, r1, c7, c5, 0;" /* flush ICache */ \ + "mcr p15, 0, r1, c8, c5, 0;" /* flush ITLB only */ \ + "mcr p15, 0, r1, c7, c5, 4;" /* flush prefetch buffer */ \ + "nop;" /* next few instructions may be via cache */ \ + "nop;" \ + "nop;" \ + "nop;" \ + "nop;" \ + "nop;" \ + : \ + : \ + : "r1" /* Clobber list */ \ + ); \ + CYG_MACRO_END +#endif + +// Synchronize the contents of the cache with memory. +// (which includes flushing out pending writes) +#define HAL_ICACHE_SYNC() +#ifdef TODO +#define HAL_ICACHE_SYNC() \ + CYG_MACRO_START \ + HAL_DCACHE_SYNC(); /* ensure data gets to RAM */ \ + HAL_ICACHE_INVALIDATE_ALL(); /* forget all we know */ \ + CYG_MACRO_END +#endif + +#ifdef L2CC_ENABLED +// Query the state of the L2 cache +#define HAL_L2CACHE_IS_ENABLED(_state_) \ + CYG_MACRO_START \ + register int reg; \ + asm volatile ( \ + "nop;" \ + "nop;" \ + "nop;" \ + "nop;" \ + "mrc p15, 0, %0, c1, c0, 1;" \ + : "=r"(reg) \ + ); \ + (_state_) = (0 != (2 & reg)); /* Bit 1 is L2 Cache enable */ \ + CYG_MACRO_END + +#define HAL_ENABLE_L2() \ + CYG_MACRO_START \ + asm volatile( \ + "mrc 15, 0, r0, c1, c0, 1;" \ + "orr r0, r0, #0x2;" \ + "mcr 15, 0, r0, c1, c0, 1;" \ + : \ + : \ + : "r0" \ + ); \ + CYG_MACRO_END + +#define HAL_DISABLE_L2() \ + CYG_MACRO_START \ + asm volatile( \ + "mrc 15, 0, r0, c1, c0, 1;" \ + "bic r0, r0, #0x2;" \ + "mcr 15, 0, r0, c1, c0, 1;" \ + : \ + : \ + : "r0" \ + ); \ + CYG_MACRO_END + +#else //L2CC_ENABLED + +#define HAL_ENABLE_L2() CYG_EMPTY_STATEMENT +#define HAL_DISABLE_L2() CYG_EMPTY_STATEMENT +#endif //L2CC_ENABLED + +/*********************** Exported macros *******************/ + +#define HAL_DCACHE_ENABLE() { \ + HAL_ENABLE_L2(); \ + HAL_DCACHE_ENABLE_L1(); \ +} + +#define HAL_DCACHE_DISABLE() { \ + HAL_CACHE_FLUSH_ALL(); \ + HAL_DCACHE_DISABLE_L1(); \ +} + +#define HAL_DCACHE_INVALIDATE_ALL() { \ + HAL_CACHE_FLUSH_ALL(); \ +} + +// not needed +#define HAL_DCACHE_SYNC() \ + HAL_CACHE_FLUSH_ALL(); \ + +#define HAL_ICACHE_INVALIDATE_ALL() { \ + HAL_CACHE_FLUSH_ALL(); \ +} + +#define HAL_ICACHE_DISABLE() { \ + HAL_ICACHE_DISABLE_L1(); \ +} + +#define HAL_ICACHE_ENABLE() { \ + HAL_ICACHE_ENABLE_L1(); \ +} + +#define CYGARC_HAL_MMU_OFF(__paddr__) \ + "mrc p15, 0, r0, c1, c0, 0;" /* read c1 */ \ + "bic r0, r0, #0x7;" /* disable DCache and MMU */ \ + "bic r0, r0, #0x1000;" /* disable ICache */ \ + "mcr p15, 0, r0, c1, c0, 0;" /* */ \ + "nop;" /* flush i+d-TLBs */ \ + "nop;" /* flush i+d-TLBs */ \ + "nop;" /* flush i+d-TLBs */ + +#define HAL_MMU_OFF() \ + CYG_MACRO_START \ + asm volatile ( \ + CYGARC_HAL_MMU_OFF() \ + ); \ + CYG_MACRO_END + +#if 1 +/* There is no direct access to the flash area, thus there is no need for these macros */ +#define HAL_FLASH_CACHES_OFF(d,i) \ + CYG_MACRO_START \ + /* prevent 'unused variable' warnings */ \ + (void)d; \ + (void)i; \ + CYG_MACRO_END + +#define HAL_FLASH_CACHES_ON(d,i) CYG_EMPTY_STATEMENT +#endif + +#endif // ifndef CYGONCE_HAL_CACHE_H +// End of hal_cache.h diff --git a/packages/hal/arm/mx53/var/v2_0/include/hal_diag.h b/packages/hal/arm/mx53/var/v2_0/include/hal_diag.h new file mode 100644 index 00000000..e4919088 --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/include/hal_diag.h @@ -0,0 +1,83 @@ +#ifndef CYGONCE_HAL_DIAG_H +#define CYGONCE_HAL_DIAG_H + +/*============================================================================= +// +// hal_diag.h +// +// HAL Support for Kernel Diagnostic Routines +// +//============================================================================= +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//===========================================================================*/ + +#include + +#include + +#if defined(CYGSEM_HAL_VIRTUAL_VECTOR_DIAG) + +#include + +#define HAL_DIAG_INIT() hal_if_diag_init() +#define HAL_DIAG_WRITE_CHAR(_c_) hal_if_diag_write_char(_c_) +#define HAL_DIAG_READ_CHAR(_c_) hal_if_diag_read_char(&_c_) + +#else // everything by steam + +/*---------------------------------------------------------------------------*/ +/* functions implemented in hal_diag.c */ + +externC void hal_diag_init(void); +externC void hal_diag_write_char(char c); +externC void hal_diag_read_char(char *c); + +/*---------------------------------------------------------------------------*/ + +#define HAL_DIAG_INIT() hal_diag_init() + +#define HAL_DIAG_WRITE_CHAR(_c_) hal_diag_write_char(_c_) + +#define HAL_DIAG_READ_CHAR(_c_) hal_diag_read_char(&_c_) + +#endif // CYGSEM_HAL_VIRTUAL_VECTOR_DIAG + +/*---------------------------------------------------------------------------*/ +// LED + +externC void hal_diag_led(int n); + +/*---------------------------------------------------------------------------*/ +/* end of hal_diag.h */ +#endif /* CYGONCE_HAL_DIAG_H */ diff --git a/packages/hal/arm/mx53/var/v2_0/include/hal_mm.h b/packages/hal/arm/mx53/var/v2_0/include/hal_mm.h new file mode 100644 index 00000000..f24b0376 --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/include/hal_mm.h @@ -0,0 +1,170 @@ +#ifndef CYGONCE_HAL_MM_H +#define CYGONCE_HAL_MM_H + +//============================================================================= +// +// hal_mm.h +// +//============================================================================= +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//============================================================================= +// ------------------------------------------------------------------------- +// MMU initialization: +// +// These structures are laid down in memory to define the translation +// table. +// + +/* + * Translation Table Base Bit Masks + */ +#define ARM_TRANSLATION_TABLE_MASK 0xFFFFC000 + +/* + * Domain Access Control Bit Masks + */ +#define ARM_ACCESS_TYPE_NO_ACCESS(domain_num) (0x0 << ((domain_num) * 2)) +#define ARM_ACCESS_TYPE_CLIENT(domain_num) (0x1 << ((domain_num) * 2)) +#define ARM_ACCESS_TYPE_MANAGER(domain_num) (0x3 << ((domain_num) * 2)) + +struct ARM_MMU_FIRST_LEVEL_FAULT { + unsigned int id : 2; + unsigned int sbz : 30; +}; + +#define ARM_MMU_FIRST_LEVEL_FAULT_ID 0x0 + +struct ARM_MMU_FIRST_LEVEL_PAGE_TABLE { + unsigned int id : 2; + unsigned int imp : 2; + unsigned int domain : 4; + unsigned int sbz : 1; + unsigned int base_address : 23; +}; + +#define ARM_MMU_FIRST_LEVEL_PAGE_TABLE_ID 0x1 + +struct ARM_MMU_FIRST_LEVEL_SECTION { + unsigned int id : 2; + unsigned int b : 1; + unsigned int c : 1; + unsigned int imp : 1; + unsigned int domain : 4; + unsigned int sbz0 : 1; + unsigned int ap : 2; + unsigned int sbz1 : 8; + unsigned int base_address : 12; +}; + +#define ARM_MMU_FIRST_LEVEL_SECTION_ID 0x2 + +struct ARM_MMU_FIRST_LEVEL_RESERVED { + unsigned int id : 2; + unsigned int sbz : 30; +}; + +#define ARM_MMU_FIRST_LEVEL_RESERVED_ID 0x3 + +#define ARM_MMU_FIRST_LEVEL_DESCRIPTOR_ADDRESS(ttb_base, table_index) \ + ((unsigned long *)(ttb_base) + (table_index)) + +#define ARM_FIRST_LEVEL_PAGE_TABLE_SIZE 0x4000 + +#define ARM_MMU_SECTION(ttb_base, actual_base, virtual_base, \ + cacheable, bufferable, perm) \ + CYG_MACRO_START \ + register union ARM_MMU_FIRST_LEVEL_DESCRIPTOR desc; \ + \ + desc.word = 0; \ + desc.section.id = ARM_MMU_FIRST_LEVEL_SECTION_ID; \ + desc.section.domain = 0; \ + desc.section.c = cacheable; \ + desc.section.b = bufferable; \ + desc.section.ap = perm; \ + desc.section.base_address = actual_base; \ + *ARM_MMU_FIRST_LEVEL_DESCRIPTOR_ADDRESS(ttb_base, virtual_base) = desc.word; \ + CYG_MACRO_END + +#define X_ARM_MMU_SECTION(abase,vbase,size,cache,buff,access) \ + CYG_MACRO_START \ + int i; int j = abase; int k = vbase; \ + for (i = size; i > 0 ; i--, j++, k++) { \ + ARM_MMU_SECTION(ttb_base, j, k, cache, buff, access); \ + } \ + CYG_MACRO_END + +union ARM_MMU_FIRST_LEVEL_DESCRIPTOR { + unsigned long word; + struct ARM_MMU_FIRST_LEVEL_FAULT fault; + struct ARM_MMU_FIRST_LEVEL_PAGE_TABLE page_table; + struct ARM_MMU_FIRST_LEVEL_SECTION section; + struct ARM_MMU_FIRST_LEVEL_RESERVED reserved; +}; + +#define ARM_UNCACHEABLE 0 +#define ARM_CACHEABLE 1 +#define ARM_UNBUFFERABLE 0 +#define ARM_BUFFERABLE 1 + +#define ARM_ACCESS_PERM_NONE_NONE 0 +#define ARM_ACCESS_PERM_RO_NONE 0 +#define ARM_ACCESS_PERM_RO_RO 0 +#define ARM_ACCESS_PERM_RW_NONE 1 +#define ARM_ACCESS_PERM_RW_RO 2 +#define ARM_ACCESS_PERM_RW_RW 3 + +/* + * Initialization for the Domain Access Control Register + */ +#define ARM_ACCESS_DACR_DEFAULT ( \ + ARM_ACCESS_TYPE_MANAGER(0) | \ + ARM_ACCESS_TYPE_NO_ACCESS(1) | \ + ARM_ACCESS_TYPE_NO_ACCESS(2) | \ + ARM_ACCESS_TYPE_NO_ACCESS(3) | \ + ARM_ACCESS_TYPE_NO_ACCESS(4) | \ + ARM_ACCESS_TYPE_NO_ACCESS(5) | \ + ARM_ACCESS_TYPE_NO_ACCESS(6) | \ + ARM_ACCESS_TYPE_NO_ACCESS(7) | \ + ARM_ACCESS_TYPE_NO_ACCESS(8) | \ + ARM_ACCESS_TYPE_NO_ACCESS(9) | \ + ARM_ACCESS_TYPE_NO_ACCESS(10) | \ + ARM_ACCESS_TYPE_NO_ACCESS(11) | \ + ARM_ACCESS_TYPE_NO_ACCESS(12) | \ + ARM_ACCESS_TYPE_NO_ACCESS(13) | \ + ARM_ACCESS_TYPE_NO_ACCESS(14) | \ + ARM_ACCESS_TYPE_NO_ACCESS(15) ) + +// ------------------------------------------------------------------------ +#endif // ifndef CYGONCE_HAL_MM_H +// End of hal_mm.h diff --git a/packages/hal/arm/mx53/var/v2_0/include/hal_soc.h b/packages/hal/arm/mx53/var/v2_0/include/hal_soc.h new file mode 100644 index 00000000..94ac0c1e --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/include/hal_soc.h @@ -0,0 +1,624 @@ +//========================================================================== +// +// hal_soc.h +// +// SoC chip definitions +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// Copyright (C) 2002 Gary Thomas +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================*/ + +#ifndef __HAL_SOC_H__ +#define __HAL_SOC_H__ + +#ifdef __ASSEMBLER__ +#define UL(a) (a) +#define VA(a) (a) +#define REG8(a) (a) +#define REG16(a) (a) +#define REG32(a) (a) + +#else /* __ASSEMBLER__ */ +#define UL(a) (a##UL) +#define VA(a) ((void *)(a)) + +extern char HAL_PLATFORM_EXTRA[40]; +externC void plf_hardware_init(void); +extern void increase_core_voltage(bool i); + +#define REG8(a) (*(volatile unsigned char *)(a)) +#define REG16(a) (*(volatile unsigned short *)(a)) +#define REG32(a) (*(volatile unsigned int *)(a)) + +#define readb(a) (*(volatile unsigned char *)(a)) +#define readw(a) (*(volatile unsigned short *)(a)) +#define readl(a) (*(volatile unsigned int *)(a)) +#define writeb(v,a) (*(volatile unsigned char *)(a) = (v)) +#define writew(v,a) (*(volatile unsigned short *)(a) = (v)) +#define writel(v,a) (*(volatile unsigned int *)(a) = (v)) + +#endif /* __ASSEMBLER__ */ + +#include + +/* + * Default Memory Layout Definitions + */ + +#define MXC_NAND_BASE_DUMMY 0 + +/* + * UART Chip level Configuration that a user may not have to edit. These + * configuration vary depending on how the UART module is integrated with + * the ARM core + */ +#define MXC_UART_NR 3 +/*! + * This option is used to set or clear the RXDMUXSEL bit in control reg 3. + * Certain platforms need this bit to be set in order to receive Irda data. + */ +#define MXC_UART_IR_RXDMUX 0x0004 +/*! + * This option is used to set or clear the RXDMUXSEL bit in control reg 3. + * Certain platforms need this bit to be set in order to receive UART data. + */ +#define MXC_UART_RXDMUX 0x0004 + +/* + * ROM address + */ +#define ROM_BASE_ADDR UL(0x00000000) +//#define ROM_BASE_ADDR_VIRT VA(0x20000000) + +//#define ROM_SI_REV_OFFSET 0x48 + +#define PLATFORM_BASE_ADDR ARM_ELBOW_BASE_ADDR +#define PLATFORM_ICGC 0x14 + +/* + * GPU control registers + */ +#define IPU_CTRL_BASE_ADDR UL(0x18000000) +#define GPU_2D_BASE_ADDR UL(0x20000000) +#define GPU_3D_BASE_ADDR UL(0x30000000) + +#define TZIC_BASE_ADDR UL(0x0FFFC000) + +#define DEBUG_BASE_ADDR UL(0x40000000) +#define DEBUG_ROM_ADDR (DEBUG_BASE_ADDR + 0x0) +#define ETB_BASE_ADDR (DEBUG_BASE_ADDR + 0x00001000) +#define ETM_BASE_ADDR (DEBUG_BASE_ADDR + 0x00002000) +#define TPIU_BASE_ADDR (DEBUG_BASE_ADDR + 0x00003000) +#define CTI0_BASE_ADDR (DEBUG_BASE_ADDR + 0x00004000) +#define CTI1_BASE_ADDR (DEBUG_BASE_ADDR + 0x00005000) +#define CTI2_BASE_ADDR (DEBUG_BASE_ADDR + 0x00006000) +#define CTI3_BASE_ADDR (DEBUG_BASE_ADDR + 0x00007000) +#define CORTEX_DBG_BASE_ADDR (DEBUG_BASE_ADDR + 0x00008000) + +/* + * SPBA global module enabled #0 + */ +#define SPBA0_BASE_ADDR UL(0x50000000) + +#define MMC_SDHC1_BASE_ADDR (SPBA0_BASE_ADDR + 0x00004000) +#define ESDHC1_REG_BASE MMC_SDHC1_BASE_ADDR +#define MMC_SDHC2_BASE_ADDR (SPBA0_BASE_ADDR + 0x00008000) +#define UART3_BASE_ADDR (SPBA0_BASE_ADDR + 0x0000C000) +//eCSPI1 +#define CSPI1_BASE_ADDR (SPBA0_BASE_ADDR + 0x00010000) +#define SSI2_BASE_ADDR (SPBA0_BASE_ADDR + 0x00014000) +#define ESAI1_BASE_ADDR (SPBA0_BASE_ADDR + 0x00018000) +#define MMC_SDHC3_BASE_ADDR (SPBA0_BASE_ADDR + 0x00020000) +#define MMC_SDHC4_BASE_ADDR (SPBA0_BASE_ADDR + 0x00024000) +#define SPDIF_BASE_ADDR (SPBA0_BASE_ADDR + 0x00028000) +#define ASRC_BASE_ADDR (SPBA0_BASE_ADDR + 0x0002C000) +#define ATA_DMA_BASE_ADDR (SPBA0_BASE_ADDR + 0x00030000) +#define SPBA_CTRL_BASE_ADDR (SPBA0_BASE_ADDR + 0x0003C000) + +/* + * AIPS 1 + */ +#define AIPS1_BASE_ADDR UL(0x53F00000) +#define AIPS1_CTRL_BASE_ADDR AIPS1_BASE_ADDR +#define USBOH3_BASE_ADDR (AIPS1_BASE_ADDR + 0x00080000) +#define GPIO1_BASE_ADDR (AIPS1_BASE_ADDR + 0x00084000) +#define GPIO2_BASE_ADDR (AIPS1_BASE_ADDR + 0x00088000) +#define GPIO3_BASE_ADDR (AIPS1_BASE_ADDR + 0x0008C000) +#define GPIO4_BASE_ADDR (AIPS1_BASE_ADDR + 0x00090000) +#define KPP_BASE_ADDR (AIPS1_BASE_ADDR + 0x00094000) +#define WDOG1_BASE_ADDR (AIPS1_BASE_ADDR + 0x00098000) +#define WDOG_BASE_ADDR WDOG1_BASE_ADDR +#define WDOG2_BASE_ADDR (AIPS1_BASE_ADDR + 0x0009C000) +#define GPT_BASE_ADDR (AIPS1_BASE_ADDR + 0x000A0000) +#define SRTC_BASE_ADDR (AIPS1_BASE_ADDR + 0x000A4000) +#define IOMUXC_BASE_ADDR (AIPS1_BASE_ADDR + 0x000A8000) +#define EPIT1_BASE_ADDR (AIPS1_BASE_ADDR + 0x000AC000) +#define EPIT2_BASE_ADDR (AIPS1_BASE_ADDR + 0x000B0000) +#define PWM1_BASE_ADDR (AIPS1_BASE_ADDR + 0x000B4000) +#define PWM2_BASE_ADDR (AIPS1_BASE_ADDR + 0x000B8000) +#define UART1_BASE_ADDR (AIPS1_BASE_ADDR + 0x000BC000) +#define UART2_BASE_ADDR (AIPS1_BASE_ADDR + 0x000C0000) + +#define SRC_BASE_ADDR (AIPS1_BASE_ADDR + 0x000D0000) +#define CCM_BASE_ADDR (AIPS1_BASE_ADDR + 0x000D4000) +#define GPC_BASE_ADDR (AIPS1_BASE_ADDR + 0x000D8000) +#define GPIO5_BASE_ADDR (AIPS1_BASE_ADDR + 0x000DC000) +#define GPIO6_BASE_ADDR (AIPS1_BASE_ADDR + 0x000E0000) +#define GPIO7_BASE_ADDR (AIPS1_BASE_ADDR + 0x000E4000) +#define PATA_BASE_ADDR (AIPS1_BASE_ADDR + 0x000E8000) +#define I2C3_BASE_ADDR (AIPS1_BASE_ADDR + 0x000EC000) + +#define UART4_BASE_ADDR (AIPS1_BASE_ADDR + 0x000F0000) + +/* + * AIPS 2 + */ +#define AIPS2_BASE_ADDR UL(0x63F00000) +#define AIPS2_CTRL_BASE_ADDR AIPS2_BASE_ADDR +#define PLL1_BASE_ADDR (AIPS2_BASE_ADDR + 0x00080000) +#define PLL2_BASE_ADDR (AIPS2_BASE_ADDR + 0x00084000) +#define PLL3_BASE_ADDR (AIPS2_BASE_ADDR + 0x00088000) +#define PLL4_BASE_ADDR (AIPS2_BASE_ADDR + 0x0008C000) +#define UART5_BASE_ADDR (AIPS2_BASE_ADDR + 0x00090000) +#define AHBMAX_BASE_ADDR (AIPS2_BASE_ADDR + 0x00094000) +#define MAX_BASE_ADDR AHBMAX_BASE_ADDR +#define IIM_BASE_ADDR (AIPS2_BASE_ADDR + 0x00098000) +#define CSU_BASE_ADDR (AIPS2_BASE_ADDR + 0x0009C000) +#define ARM_ELBOW_BASE_ADDR (AIPS2_BASE_ADDR + 0x000A0000) +#define OWIRE_BASE_ADDR (AIPS2_BASE_ADDR + 0x000A4000) +#define FIRI_BASE_ADDR (AIPS2_BASE_ADDR + 0x000A8000) +// eCSPI2 +#define CSPI2_BASE_ADDR (AIPS2_BASE_ADDR + 0x000AC000) +#define SDMA_BASE_ADDR (AIPS2_BASE_ADDR + 0x000B0000) +#define SCC_BASE_ADDR (AIPS2_BASE_ADDR + 0x000B4000) +#define ROMCP_BASE_ADDR (AIPS2_BASE_ADDR + 0x000B8000) +#define RTIC_BASE_ADDR (AIPS2_BASE_ADDR + 0x000BC000) +// actually cspi1 +#define CSPI3_BASE_ADDR (AIPS2_BASE_ADDR + 0x000C0000) +#define I2C2_BASE_ADDR (AIPS2_BASE_ADDR + 0x000C4000) +#define I2C1_BASE_ADDR (AIPS2_BASE_ADDR + 0x000C8000) +#define I2C_BASE_ADDR I2C1_BASE_ADDR +#define SSI1_BASE_ADDR (AIPS2_BASE_ADDR + 0x000CC000) +#define AUDMUX_BASE_ADDR (AIPS2_BASE_ADDR + 0x000D0000) + +#define M4IF_BASE_ADDR (AIPS2_BASE_ADDR + 0x000D8000) +#define ESDCTL_BASE_ADDR (AIPS2_BASE_ADDR + 0x000D9000) +#define WEIM_BASE_ADDR (AIPS2_BASE_ADDR + 0x000DA000) +#define NFC_IP_BASE (AIPS2_BASE_ADDR + 0x000DB000) +#define EMI_BASE_ADDR (AIPS2_BASE_ADDR + 0x000DBF00) +//#define MIPI_HSC_BASE_ADDR (AIPS2_BASE_ADDR + 0x000DC000) +//#define ATA_BASE_ADDR (AIPS2_BASE_ADDR + 0x000E0000) +//#define SIM_BASE_ADDR (AIPS2_BASE_ADDR + 0x000E4000) +#define SSI3_BASE_ADDR (AIPS2_BASE_ADDR + 0x000E8000) +#define FEC_BASE_ADDR (AIPS2_BASE_ADDR + 0x000EC000) +#define SOC_FEC_BASE FEC_BASE_ADDR +#define TVE_BASE_ADDR (AIPS2_BASE_ADDR + 0x000F0000) +#define VPU_BASE_ADDR (AIPS2_BASE_ADDR + 0x000F4000) +#define SAHARA_BASE_ADDR (AIPS2_BASE_ADDR + 0x000F8000) + +/* + * Memory regions and CS + */ +#define CSD0_BASE_ADDR UL(0x70000000) +#define CSD1_BASE_ADDR UL(0xB0000000) +#define CS0_BASE_ADDR UL(0xF0000000) +#define CS1_BASE_ADDR UL(0xF4000000) + +/* + * NFC internal RAM + */ +#define NFC_BASE_ADDR_AXI UL(0xF7FF0000) +#define NFC_BASE NFC_BASE_ADDR_AXI + +/* + * IRAM + */ +#define IRAM_BASE_ADDR UL(0xF8000000) /* 128K internal ram */ + +/* + * Graphics Memory of GPU + */ +#define GPU_MEM_BASE_ADDR UL(0xF8020000) + +/* + * Number of GPIO ports as defined in the IC Spec + */ +#define GPIO_PORT_NUM 7 +/* + * Number of GPIO pins per port + */ +#define GPIO_NUM_PIN 32 + +/* CCM */ +#define CLKCTL_CCR 0x00 +#define CLKCTL_CCDR 0x04 +#define CLKCTL_CSR 0x08 +#define CLKCTL_CCSR 0x0C +#define CLKCTL_CACRR 0x10 +#define CLKCTL_CBCDR 0x14 +#define CLKCTL_CBCMR 0x18 +#define CLKCTL_CSCMR1 0x1C +#define CLKCTL_CSCMR2 0x20 +#define CLKCTL_CSCDR1 0x24 +#define CLKCTL_CS1CDR 0x28 +#define CLKCTL_CS2CDR 0x2C +#define CLKCTL_CDCDR 0x30 +#define CLKCTL_CHSCCDR 0x34 +#define CLKCTL_CSCDR2 0x38 +#define CLKCTL_CSCDR3 0x3C +#define CLKCTL_CSCDR4 0x40 +#define CLKCTL_CWDR 0x44 +#define CLKCTL_CDHIPR 0x48 +#define CLKCTL_CDCR 0x4C +#define CLKCTL_CTOR 0x50 +#define CLKCTL_CLPCR 0x54 +#define CLKCTL_CISR 0x58 +#define CLKCTL_CIMR 0x5C +#define CLKCTL_CCOSR 0x60 +#define CLKCTL_CGPR 0x64 +#define CLKCTL_CCGR0 0x68 +#define CLKCTL_CCGR1 0x6C +#define CLKCTL_CCGR2 0x70 +#define CLKCTL_CCGR3 0x74 +#define CLKCTL_CCGR4 0x78 +#define CLKCTL_CCGR5 0x7C +#define CLKCTL_CCGR6 0x80 +#define CLKCTL_CCGR7 0x84 +#define CLKCTL_CMEOR 0x88 + +#define FREQ_24MHZ 24000000 +#define FREQ_32768HZ (32768 * 1024) +#define FREQ_38400HZ (38400 * 1024) +#define FREQ_32000HZ (32000 * 1024) +#define PLL_REF_CLK FREQ_24MHZ +#define CKIH 22579200 +//#define PLL_REF_CLK FREQ_32768HZ +//#define PLL_REF_CLK FREQ_32000HZ + +/* WEIM registers */ +#define CSGCR1 0x00 +#define CSGCR2 0x04 +#define CSRCR1 0x08 +#define CSRCR2 0x0C +#define CSWCR1 0x10 + +/* M4IF */ +#define M4IF_FBPM0 0x40 +#define M4IF_FBPM1 0x44 +#define M4IF_FIDBP 0x48 +#define M4IF_MIF4 0x48 +#define M4IF_FPWC 0x9C + +/* ESDCTL */ +#define ESDCTL_ESDCTL0 0x00 +#define ESDCTL_ESDCFG0 0x04 +#define ESDCTL_ESDCTL1 0x08 +#define ESDCTL_ESDCFG1 0x0C +#define ESDCTL_ESDMISC 0x10 +#define ESDCTL_ESDSCR 0x14 +#define ESDCTL_ESDCDLY1 0x20 +#define ESDCTL_ESDCDLY2 0x24 +#define ESDCTL_ESDCDLY3 0x28 +#define ESDCTL_ESDCDLY4 0x2C +#define ESDCTL_ESDCDLY5 0x30 +#define ESDCTL_ESDCDLYGD 0x34 + +/* DPLL */ +#define PLL_DP_CTL 0x00 +#define PLL_DP_CONFIG 0x04 +#define PLL_DP_OP 0x08 +#define PLL_DP_MFD 0x0C +#define PLL_DP_MFN 0x10 +#define PLL_DP_MFNMINUS 0x14 +#define PLL_DP_MFNPLUS 0x18 +#define PLL_DP_HFS_OP 0x1C +#define PLL_DP_HFS_MFD 0x20 +#define PLL_DP_HFS_MFN 0x24 +#define PLL_DP_TOGC 0x28 +#define PLL_DP_DESTAT 0x2C + +#define CHIP_REV_1_0 0x0 /* PASS 1.0 */ +#define CHIP_REV_1_1 0x1 /* PASS 1.1 */ +#define CHIP_REV_2_0 0x2 /* PASS 2.0 */ +#define CHIP_LATEST CHIP_REV_1_1 + +#define IIM_STAT_OFF 0x00 +#define IIM_STAT_BUSY (1 << 7) +#define IIM_STAT_PRGD (1 << 1) +#define IIM_STAT_SNSD (1 << 0) +#define IIM_STATM_OFF 0x04 +#define IIM_ERR_OFF 0x08 +#define IIM_ERR_PRGE (1 << 7) +#define IIM_ERR_WPE (1 << 6) +#define IIM_ERR_OPE (1 << 5) +#define IIM_ERR_RPE (1 << 4) +#define IIM_ERR_WLRE (1 << 3) +#define IIM_ERR_SNSE (1 << 2) +#define IIM_ERR_PARITYE (1 << 1) +#define IIM_EMASK_OFF 0x0C +#define IIM_FCTL_OFF 0x10 +#define IIM_UA_OFF 0x14 +#define IIM_LA_OFF 0x18 +#define IIM_SDAT_OFF 0x1C +#define IIM_PREV_OFF 0x20 +#define IIM_SREV_OFF 0x24 +#define IIM_PREG_P_OFF 0x28 +#define IIM_SCS0_OFF 0x2C +#define IIM_SCS1_P_OFF 0x30 +#define IIM_SCS2_OFF 0x34 +#define IIM_SCS3_P_OFF 0x38 + +#define IIM_PROD_REV_SH 3 +#define IIM_PROD_REV_LEN 5 +#define IIM_SREV_REV_SH 4 +#define IIM_SREV_REV_LEN 4 +#define PROD_SIGNATURE_MX53 0x1 + +#define EPIT_BASE_ADDR EPIT1_BASE_ADDR +#define EPITCR 0x00 +#define EPITSR 0x04 +#define EPITLR 0x08 +#define EPITCMPR 0x0C +#define EPITCNR 0x10 + +#define GPTCR 0x00 +#define GPTPR 0x04 +#define GPTSR 0x08 +#define GPTIR 0x0C +#define GPTOCR1 0x10 +#define GPTOCR2 0x14 +#define GPTOCR3 0x18 +#define GPTICR1 0x1C +#define GPTICR2 0x20 +#define GPTCNT 0x24 + +/* Assuming 24MHz input clock with doubler ON */ +/* MFI PDF */ +#define DP_OP_1000 ((10 << 4) + ((1 - 1) << 0)) +#define DP_MFD_1000 (12 - 1) +#define DP_MFN_1000 5 + +#define DP_OP_850 ((8 << 4) + ((1 - 1) << 0)) +#define DP_MFD_850 (48 - 1) +#define DP_MFN_850 41 + +#define DP_OP_800 ((8 << 4) + ((1 - 1) << 0)) +#define DP_MFD_800 (3 - 1) +#define DP_MFN_800 1 + +#define DP_OP_700 ((7 << 4) + ((1 - 1) << 0)) +#define DP_MFD_700 (24 - 1) +#define DP_MFN_700 7 + +#define DP_OP_400 ((8 << 4) + ((2 - 1) << 0)) +#define DP_MFD_400 (3 - 1) +#define DP_MFN_400 1 + +#define DP_OP_532 ((5 << 4) + ((1 - 1) << 0)) +#define DP_MFD_532 (24 - 1) +#define DP_MFN_532 13 + +#define DP_OP_665 ((6 << 4) + ((1 - 1) << 0)) +#define DP_MFD_665 (96 - 1) +#define DP_MFN_665 89 + +#define DP_OP_666 ((6 << 4) + ((1 - 1) << 0)) +#define DP_MFD_666 (16 - 1) +#define DP_MFN_666 15 + +#define DP_OP_333 ((6 << 4) + ((2 - 1) << 0)) +#define DP_MFD_333 (16 - 1) +#define DP_MFN_333 15 + +#define DP_OP_266 ((5 << 4) + ((2 - 1) << 0)) +#define DP_MFD_266 (24 - 1) +#define DP_MFN_266 13 + +#define DP_OP_216 ((9 << 4) + ((4 - 1) << 0)) +#define DP_MFD_216 (1 - 1) +#define DP_MFN_216 0 + +#define PROD_SIGNATURE_SUPPORTED PROD_SIGNATURE_MX51 + +#define CHIP_VERSION_NONE 0xFFFFFFFF // invalid product ID +#define CHIP_VERSION_UNKNOWN 0xDEADBEEF // invalid chip rev + +#define PART_NUMBER_OFFSET 12 +#define MAJOR_NUMBER_OFFSET 4 +#define MINOR_NUMBER_OFFSET 0 + +//#define BARKER_CODE_SWAP_LOC 0x404 +#define BARKER_CODE_VAL 0xB1 +#define NFC_V3_0 + +// This defines the register base for the NAND AXI registers +#define NAND_REG_BASE (NFC_BASE_ADDR_AXI + 0x1E00) + +#define NAND_CMD_REG (NAND_REG_BASE + 0x00) +#define NAND_ADD0_REG (NAND_REG_BASE + 0x04) +#define NAND_ADD1_REG (NAND_REG_BASE + 0x08) +#define NAND_ADD2_REG (NAND_REG_BASE + 0x0C) +#define NAND_ADD3_REG (NAND_REG_BASE + 0x10) +#define NAND_ADD4_REG (NAND_REG_BASE + 0x14) +#define NAND_ADD5_REG (NAND_REG_BASE + 0x18) +#define NAND_ADD6_REG (NAND_REG_BASE + 0x1C) +#define NAND_ADD7_REG (NAND_REG_BASE + 0x20) +#define NAND_ADD8_REG (NAND_REG_BASE + 0x24) +#define NAND_ADD9_REG (NAND_REG_BASE + 0x28) +#define NAND_ADD10_REG (NAND_REG_BASE + 0x2C) +#define NAND_ADD11_REG (NAND_REG_BASE + 0x30) + +#define NAND_CONFIGURATION1_REG (NAND_REG_BASE + 0x34) +#define NAND_CONFIGURATION1_NFC_RST (1 << 2) +#define NAND_CONFIGURATION1_NF_CE (1 << 1) +#define NAND_CONFIGURATION1_SP_EN (1 << 0) + +#define NAND_ECC_STATUS_RESULT_REG (NAND_REG_BASE + 0x38) + +#define NAND_STATUS_SUM_REG (NAND_REG_BASE + 0x3C) + +#define NAND_LAUNCH_REG (NAND_REG_BASE + 0x40) +#define NAND_LAUNCH_FCMD (1 << 0) +#define NAND_LAUNCH_FADD (1 << 1) +#define NAND_LAUNCH_FDI (1 << 2) +#define NAND_LAUNCH_AUTO_PROG (1 << 6) +#define NAND_LAUNCH_AUTO_READ (1 << 7) +#define NAND_LAUNCH_AUTO_READ_CONT (1 << 8) +#define NAND_LAUNCH_AUTO_ERASE (1 << 9) +#define NAND_LAUNCH_COPY_BACK0 (1 << 10) +#define NAND_LAUNCH_COPY_BACK1 (1 << 11) +#define NAND_LAUNCH_AUTO_STAT (1 << 12) + +#define NFC_WR_PROT_REG (NFC_IP_BASE + 0x00) +#define UNLOCK_BLK_ADD0_REG (NFC_IP_BASE + 0x04) +#define UNLOCK_BLK_ADD1_REG (NFC_IP_BASE + 0x08) +#define UNLOCK_BLK_ADD2_REG (NFC_IP_BASE + 0x0C) +#define UNLOCK_BLK_ADD3_REG (NFC_IP_BASE + 0x10) +#define UNLOCK_BLK_ADD4_REG (NFC_IP_BASE + 0x14) +#define UNLOCK_BLK_ADD5_REG (NFC_IP_BASE + 0x18) +#define UNLOCK_BLK_ADD6_REG (NFC_IP_BASE + 0x1C) +#define UNLOCK_BLK_ADD7_REG (NFC_IP_BASE + 0x20) + +#define NFC_FLASH_CONFIG2_REG (NFC_IP_BASE + 0x24) +#define NFC_FLASH_CONFIG2_ECC_EN (1 << 3) + +#define NFC_FLASH_CONFIG3_REG (NFC_IP_BASE + 0x28) + +#define NFC_IPC_REG (NFC_IP_BASE + 0x2C) +#define NFC_IPC_INT (1 << 31) +#define NFC_IPC_AUTO_DONE (1 << 30) +#define NFC_IPC_LPS (1 << 29) +#define NFC_IPC_RB_B (1 << 28) +#define NFC_IPC_CACK (1 << 1) +#define NFC_IPC_CREQ (1 << 0) +#define NFC_AXI_ERR_ADD_REG (NFC_IP_BASE + 0x30) + +#define MXC_MMC_BASE_DUMMY 0x00000000 + +#define NAND_FLASH_BOOT (1 << 28) +#define FROM_NAND_FLASH NAND_FLASH_BOOT + +#define SDRAM_NON_FLASH_BOOT (1 << 29) + +#define MMC_FLASH_BOOT (1 << 30) +#define FROM_MMC_FLASH MMC_FLASH_BOOT + +#define SPI_NOR_FLASH_BOOT 0x80000000 +#define FROM_SPI_NOR_FLASH SPI_NOR_FLASH_BOOT + +#define IS_BOOTING_FROM_NAND() 1 +#define IS_BOOTING_FROM_SPI_NOR() 0 +#define IS_BOOTING_FROM_NOR() 0 +#define IS_BOOTING_FROM_SDRAM() 0 +#define IS_BOOTING_FROM_MMC() 0 + +#define IS_FIS_FROM_NAND() 1 +#define IS_FIS_FROM_NOR() 0 + +#define SOC_MAC_ADDR_FUSE_BANK 1 +#define SOC_MAC_ADDR_FUSE 9 +#define SOC_MAC_ADDR_LOCK_FUSE 0 +#define SOC_MAC_ADDR_LOCK_BIT 4 + +/* + * This macro is used to get certain bit field from a number + */ +#define MXC_GET_FIELD(val, len, sh) ((val >> sh) & ((1 << len) - 1)) + +/* + * This macro is used to set certain bit field inside a number + */ +#define MXC_SET_FIELD(val, len, sh, nval) ((val & ~(((1 << len) - 1) << sh)) | (nval << sh)) + +#define L2CC_ENABLED +#define UART_WIDTH_32 /* internal UART is 32bit access only */ + +#if !defined(__ASSEMBLER__) +extern void fuse_blow_row(int bank, int row, int value); +extern unsigned int sense_fuse(int bank, int row, int bit); + +void cyg_hal_plf_serial_init(void); +void cyg_hal_plf_serial_stop(void); +void hal_delay_us(unsigned int usecs); +#define HAL_DELAY_US(n) hal_delay_us(n) +extern int _mxc_fis; +extern unsigned int system_rev; + +enum plls { + PLL1, + PLL2, + PLL3, + PLL4, +}; + +enum main_clocks { + CPU_CLK, + AHB_CLK, + IPG_CLK, + IPG_PER_CLK, + DDR_CLK, + NFC_CLK, + USB_CLK, + AXI_A_CLK, + AXI_B_CLK, + EMI_SLOW_CLK, +}; + +enum peri_clocks { + UART1_BAUD, + UART2_BAUD, + UART3_BAUD, + SSI1_BAUD, + SSI2_BAUD, + CSI_BAUD, + MSTICK1_CLK, + MSTICK2_CLK, + SPI1_CLK = CSPI1_BASE_ADDR, + SPI2_CLK = CSPI2_BASE_ADDR, +}; + +extern unsigned int pll_clock(enum plls pll); + +extern unsigned int get_main_clock(enum main_clocks clk); + +extern unsigned int get_peri_clock(enum peri_clocks clk); + +typedef unsigned int nfc_setup_func_t(unsigned int, unsigned int, unsigned int, unsigned int); + +extern void increase_core_voltage(bool); + +#endif //#if !defined(__ASSEMBLER__) + +#endif /* __HAL_SOC_H__ */ diff --git a/packages/hal/arm/mx53/var/v2_0/include/hal_var_ints.h b/packages/hal/arm/mx53/var/v2_0/include/hal_var_ints.h new file mode 100644 index 00000000..06364ceb --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/include/hal_var_ints.h @@ -0,0 +1,220 @@ +#ifndef CYGONCE_HAL_VAR_INTS_H +#define CYGONCE_HAL_VAR_INTS_H +//========================================================================== +// +// hal_var_ints.h +// +// HAL Interrupt and clock support +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================== + +#include // registers + +#define CYGNUM_HAL_INTERRUPT_GPIO0 0 +#define CYGNUM_HAL_INTERRUPT_GPIO1 1 +#define CYGNUM_HAL_INTERRUPT_GPIO2 2 +#define CYGNUM_HAL_INTERRUPT_GPIO3 3 +#define CYGNUM_HAL_INTERRUPT_GPIO4 4 +#define CYGNUM_HAL_INTERRUPT_GPIO5 5 +#define CYGNUM_HAL_INTERRUPT_GPIO6 6 +#define CYGNUM_HAL_INTERRUPT_GPIO7 7 +#define CYGNUM_HAL_INTERRUPT_GPIO8 8 +#define CYGNUM_HAL_INTERRUPT_GPIO9 9 +#define CYGNUM_HAL_INTERRUPT_GPIO10 10 +#define CYGNUM_HAL_INTERRUPT_GPIO 11 // Don't use directly! +#define CYGNUM_HAL_INTERRUPT_LCD 12 +#define CYGNUM_HAL_INTERRUPT_UDC 13 +#define CYGNUM_HAL_INTERRUPT_UART1 15 +#define CYGNUM_HAL_INTERRUPT_UART2 16 +#define CYGNUM_HAL_INTERRUPT_UART3 17 +#define CYGNUM_HAL_INTERRUPT_UART4 17 +#define CYGNUM_HAL_INTERRUPT_MCP 18 +#define CYGNUM_HAL_INTERRUPT_SSP 19 +#define CYGNUM_HAL_INTERRUPT_TIMER0 26 +#define CYGNUM_HAL_INTERRUPT_TIMER1 27 +#define CYGNUM_HAL_INTERRUPT_TIMER2 28 +#define CYGNUM_HAL_INTERRUPT_TIMER3 29 +#define CYGNUM_HAL_INTERRUPT_HZ 30 +#define CYGNUM_HAL_INTERRUPT_ALARM 31 + +// GPIO bits 31..11 can generate interrupts as well, but they all +// end up clumped into interrupt signal #11. Using the symbols +// below allow for detection of these separately. + +#define CYGNUM_HAL_INTERRUPT_GPIO11 (32 + 11) +#define CYGNUM_HAL_INTERRUPT_GPIO12 (32 + 12) +#define CYGNUM_HAL_INTERRUPT_GPIO13 (32 + 13) +#define CYGNUM_HAL_INTERRUPT_GPIO14 (32 + 14) +#define CYGNUM_HAL_INTERRUPT_GPIO15 (32 + 15) +#define CYGNUM_HAL_INTERRUPT_GPIO16 (32 + 16) +#define CYGNUM_HAL_INTERRUPT_GPIO17 (32 + 17) +#define CYGNUM_HAL_INTERRUPT_GPIO18 (32 + 18) +#define CYGNUM_HAL_INTERRUPT_GPIO19 (32 + 19) +#define CYGNUM_HAL_INTERRUPT_GPIO20 (32 + 20) +#define CYGNUM_HAL_INTERRUPT_GPIO21 (32 + 21) +#define CYGNUM_HAL_INTERRUPT_GPIO22 (32 + 22) +#define CYGNUM_HAL_INTERRUPT_GPIO23 (32 + 23) +#define CYGNUM_HAL_INTERRUPT_GPIO24 (32 + 24) +#define CYGNUM_HAL_INTERRUPT_GPIO25 (32 + 25) +#define CYGNUM_HAL_INTERRUPT_GPIO26 (32 + 26) +#define CYGNUM_HAL_INTERRUPT_GPIO27 (32 + 27) + +#define CYGNUM_HAL_INTERRUPT_NONE -1 + +#define CYGNUM_HAL_ISR_MIN 0 +#define CYGNUM_HAL_ISR_MAX (27 + 32) + +#define CYGNUM_HAL_ISR_COUNT (CYGNUM_HAL_ISR_MAX + 1) + +// The vector used by the Real time clock +#define CYGNUM_HAL_INTERRUPT_RTC CYGNUM_HAL_INTERRUPT_TIMER0 + +// The vector used by the Ethernet +#define CYGNUM_HAL_INTERRUPT_ETH CYGNUM_HAL_INTERRUPT_GPIO0 + +#define MX53_GPIO_NR(grp, pin) ((grp) << 5 | (pin)) + +#define MX53_GPIO_ADDR(__bank) ({ \ + CYG_ADDRESS __addr; \ + switch (__bank) { \ + case 1: \ + __addr = GPIO1_BASE_ADDR; \ + break; \ + case 2: \ + __addr = GPIO2_BASE_ADDR; \ + break; \ + case 3: \ + __addr = GPIO3_BASE_ADDR; \ + break; \ + case 4: \ + __addr = GPIO4_BASE_ADDR; \ + break; \ + case 5: \ + __addr = GPIO5_BASE_ADDR; \ + break; \ + case 6: \ + __addr = GPIO6_BASE_ADDR; \ + break; \ + case 7: \ + __addr = GPIO7_BASE_ADDR; \ + break; \ + default: \ + __addr = (CYG_ADDRESS)0; \ + } \ + __addr; \ +}) + +#define gpio_direction_input(__gpio_nr) \ + CYG_MACRO_START \ + CYG_ADDRESS addr = MX53_GPIO_ADDR((__gpio_nr) / GPIO_NUM_PIN); \ + CYG_WORD32 val; \ + \ + if (addr == 0) \ + return; \ + \ + HAL_READ_UINT32(addr + GPIO_GDIR, val); \ + HAL_WRITE_UINT32(addr + GPIO_GDIR, val | (1 << ((__gpio_nr) % GPIO_NUM_PIN))); \ + CYG_MACRO_END + +#define gpio_set_value(__gpio_nr, __value) \ + CYG_MACRO_START \ + CYG_ADDRESS addr = MX53_GPIO_ADDR((__gpio_nr) / GPIO_NUM_PIN); \ + CYG_WORD32 val; \ + \ + if (addr == 0) \ + return; \ + \ + HAL_READ_UINT32(addr + GPIO_DR, val); \ + if (__value) \ + val |= 1 << ((__gpio_nr) % GPIO_NUM_PIN); \ + else \ + val &= ~(1 << ((__gpio_nr) % GPIO_NUM_PIN)); \ + HAL_WRITE_UINT32(addr + GPIO_DR, val); \ + CYG_MACRO_END + +#define gpio_direction_output(__gpio_nr, __value) \ + CYG_MACRO_START \ + CYG_ADDRESS addr = MX53_GPIO_ADDR((__gpio_nr) / GPIO_NUM_PIN); \ + int __gpio = (__gpio_nr) % GPIO_NUM_PIN; \ + CYG_WORD32 val; \ + \ + if (addr == 0) \ + return; \ + \ + if ((__value) >= 0) { \ + HAL_READ_UINT32(addr + GPIO_DR, val); \ + if (__value) \ + val |= 1 << __gpio; \ + else \ + val &= ~(1 << __gpio); \ + HAL_WRITE_UINT32(addr + GPIO_DR, val); \ + } \ + HAL_READ_UINT32(addr + GPIO_GDIR, val); \ + HAL_WRITE_UINT32(addr + GPIO_GDIR, val | (1 << __gpio)); \ + CYG_MACRO_END + +#define gpio_get_value(__gpio_nr) ({ \ + CYG_ADDRESS __addr = MX53_GPIO_ADDR((__gpio_nr) / GPIO_NUM_PIN); \ + CYG_WORD32 __val; \ + \ + if (__addr == 0) \ + return; \ + \ + HAL_READ_UINT32(__addr + GPIO_PSR, __val); \ + !!(__val & (1 << ((__gpio_nr) % GPIO_NUM_PIN))); \ + }) + +// method for reading clock interrupt latency +#ifdef CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY +externC void hal_clock_latency(cyg_uint32 *); +# define HAL_CLOCK_LATENCY(_pvalue_) \ + hal_clock_latency((cyg_uint32 *)(_pvalue_)) +#endif + +//---------------------------------------------------------------------------- +// Reset. +#define HAL_PLATFORM_RESET() \ + CYG_MACRO_START \ + writel(readl(NFC_FLASH_CONFIG3_REG) & ~0x73, NFC_FLASH_CONFIG3_REG); \ + *(volatile unsigned short *)WDOG_BASE_ADDR &= ~(1 << 4); \ + /* hang here forever if reset fails */ \ + while (1){} \ + CYG_MACRO_END + +// Fallback (never really used) +#define HAL_PLATFORM_RESET_ENTRY 0x00000000 + +#endif // CYGONCE_HAL_VAR_INTS_H diff --git a/packages/hal/arm/mx53/var/v2_0/include/mx53_iomux.h b/packages/hal/arm/mx53/var/v2_0/include/mx53_iomux.h new file mode 100644 index 00000000..543a9c18 --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/include/mx53_iomux.h @@ -0,0 +1,1321 @@ +/*************************************************************************** +* +* MX53_IOMUX.H +* +* Macros definitions for MX53 IOMUX. +* +*************************************************************************** +* +* Author(s) : Lothar Waßmann +* Create Date: 2011-03-25 +* Description : i.MX53 IOMUX defines +* +***************************************************************************/ + +#ifndef _MX53_IOMUX_H_ +#define _MX53_IOMUX_H_ + +#ifndef __ASSEMBLER__ + +#include + +/* + * build IOMUX_PAD structure + * + * This iomux scheme is based around pads, which are the physical balls + * on the processor. + * + * - Each pad has a pad control register (IOMUXC_SW_PAD_CTRL_x) which controls + * things like driving strength and pullup/pulldown. + * - Each pad can have but not necessarily does have an output routing register + * (IOMUXC_SW_MUX_CTL_PAD_x). + * - Each pad can have but not necessarily does have an input routing register + * (IOMUXC_x_SELECT_INPUT) + * + * The three register sets do not have a fixed offset to each other, + * hence we order this table by pad control registers (which all pads + * have) and put the optional i/o routing registers into additional + * fields. + * + * The naming convention for the pad modes is MX35_PAD___ + * If or refers to a GPIO, it is named + * GPIO__ + * + * IOMUX/PAD Bit field definitions + * + * MUX_CTRL_OFS: 0..11 (12) + * PAD_CTRL_OFS: 12..23 (12) + * SEL_INPUT_OFS: 24..35 (12) + * MUX_MODE + SION: 36..40 (5) + * PAD_CTRL + NO_PAD_CTRL: 41..57 (17) + * SEL_INP: 58..61 (4) + * reserved: 63 (1) +*/ + +typedef cyg_uint64 iomux_v3_cfg_t; + +#define MUX_CTRL_OFS_SHIFT 0 +#define MUX_CTRL_OFS_MASK ((iomux_v3_cfg_t)0xfff << MUX_CTRL_OFS_SHIFT) +#define MUX_PAD_CTRL_OFS_SHIFT 12 +#define MUX_PAD_CTRL_OFS_MASK ((iomux_v3_cfg_t)0xfff << MUX_PAD_CTRL_OFS_SHIFT) +#define MUX_SEL_INPUT_OFS_SHIFT 24 +#define MUX_SEL_INPUT_OFS_MASK ((iomux_v3_cfg_t)0xfff << MUX_SEL_INPUT_OFS_SHIFT) + +#define MUX_MODE_SHIFT 36 +#define MUX_MODE_MASK ((iomux_v3_cfg_t)0x1f << MUX_MODE_SHIFT) +#define MUX_SION_SHIFT 40 +#define MUX_SION_MASK ((iomux_v3_cfg_t)0x1 << MUX_SION_SHIFT) +#define MUX_PAD_CTRL_SHIFT 41 +#define MUX_PAD_CTRL_MASK ((iomux_v3_cfg_t)0xffff << MUX_PAD_CTRL_SHIFT) +#define PAD_CTRL_VALID ((iomux_v3_cfg_t)1 << (MUX_PAD_CTRL_SHIFT + 16)) +#define MUX_SEL_INPUT_SHIFT 58 +#define MUX_SEL_INPUT_MASK ((iomux_v3_cfg_t)0xf << MUX_SEL_INPUT_SHIFT) + +#define MUX_PAD_CTRL(x) ((((iomux_v3_cfg_t)(x) << MUX_PAD_CTRL_SHIFT) & \ + MUX_PAD_CTRL_MASK) | PAD_CTRL_VALID) + +#define IOMUX_PAD(_pad_ctrl_ofs, _mux_ctrl_ofs, _mux_mode, _sel_input_ofs, \ + _sel_input, _pad_ctrl) \ + (((iomux_v3_cfg_t)(_mux_ctrl_ofs) << MUX_CTRL_OFS_SHIFT) | \ + ((iomux_v3_cfg_t)(_mux_mode) << MUX_MODE_SHIFT) | \ + ((iomux_v3_cfg_t)(_pad_ctrl_ofs) << MUX_PAD_CTRL_OFS_SHIFT) | \ + ((iomux_v3_cfg_t)(_pad_ctrl) << MUX_PAD_CTRL_SHIFT) | \ + ((iomux_v3_cfg_t)(_sel_input_ofs) << MUX_SEL_INPUT_OFS_SHIFT) | \ + ((iomux_v3_cfg_t)(_sel_input) << MUX_SEL_INPUT_SHIFT)) + +#define IOMUX_MUX_MODE(pad) ((cyg_uint32)(((pad) & MUX_MODE_MASK) >> MUX_MODE_SHIFT)) +#define IOMUX_MUX_SION(pad) ((cyg_uint32)(((pad) & MUX_SION_MASK) >> MUX_SION_SHIFT)) +#define IOMUX_PAD_CTRL_VALID(pad) !!((pad) & PAD_CTRL_VALID) +#define IOMUX_PAD_CTRL(pad) ((cyg_uint32)(((pad) & MUX_PAD_CTRL_MASK) >> MUX_PAD_CTRL_SHIFT)) +#define IOMUX_INP_SEL(pad) ((cyg_uint32)(((pad) & MUX_SEL_INPUT_MASK) >> MUX_SEL_INPUT_SHIFT)) + +#define IOMUX_MUX_CTRL_OFS(pad) ((cyg_uint32)(((pad) & MUX_CTRL_OFS_MASK) >> MUX_CTRL_OFS_SHIFT)) +#define IOMUX_PAD_CTRL_OFS(pad) ((cyg_uint32)(((pad) & MUX_PAD_CTRL_OFS_MASK) >> MUX_PAD_CTRL_OFS_SHIFT)) +#define IOMUX_INP_SEL_OFS(pad) ((cyg_uint32)(((pad) & MUX_SEL_INPUT_OFS_MASK) >> MUX_SEL_INPUT_OFS_SHIFT)) + +/* + * Use to set PAD control + */ + +#define PAD_CTL_DVS (1 << 13) +#define PAD_CTL_HYS (1 << 8) + +#define PAD_CTL_PKE (1 << 7) +#define PAD_CTL_PUE (1 << 6) +#define PAD_CTL_PUS_100K_DOWN (0 << 4) +#define PAD_CTL_PUS_47K_UP (1 << 4) +#define PAD_CTL_PUS_100K_UP (2 << 4) +#define PAD_CTL_PUS_22K_UP (3 << 4) + +#define PAD_CTL_ODE (1 << 3) + +#define PAD_CTL_DSE_LOW (0 << 1) +#define PAD_CTL_DSE_MED (1 << 1) +#define PAD_CTL_DSE_HIGH (2 << 1) +#define PAD_CTL_DSE_MAX (3 << 1) + +#define PAD_CTL_SRE_FAST (1 << 0) +#define PAD_CTL_SRE_SLOW (0 << 0) + +#define IOMUX_CONFIG_SION ((iomux_v3_cfg_t)0x1 << MUX_SION_SHIFT) + +#define MX51_NUM_GPIO_PORT 4 + +#define GPIO_PIN_MASK 0x1f + +#define GPIO_PORT_SHIFT 5 +#define GPIO_PORT_MASK (0x7 << GPIO_PORT_SHIFT) + +#define GPIO_PORTA (0 << GPIO_PORT_SHIFT) +#define GPIO_PORTB (1 << GPIO_PORT_SHIFT) +#define GPIO_PORTC (2 << GPIO_PORT_SHIFT) +#define GPIO_PORTD (3 << GPIO_PORT_SHIFT) +#define GPIO_PORTE (4 << GPIO_PORT_SHIFT) +#define GPIO_PORTF (5 << GPIO_PORT_SHIFT) + +extern int mx53_iomux_setup(iomux_v3_cfg_t pad); +extern int mx53_iomux_setup_pads(iomux_v3_cfg_t *pad, int num_pads); + +#define NON_PAD_I 0x00 + +#define MX53_UART_PAD_CTRL (PAD_CTL_PKE | PAD_CTL_PUE | \ + PAD_CTL_DSE_HIGH | PAD_CTL_SRE_FAST | PAD_CTL_HYS) +#define MX53_SDHC_PAD_CTRL (PAD_CTL_HYS | PAD_CTL_PKE | PAD_CTL_PUE | \ + PAD_CTL_PUS_47K_UP | PAD_CTL_DSE_HIGH | \ + PAD_CTL_SRE_FAST) + +#define MX53_PAD_GPIO_19__KPP_COL_5 IOMUX_PAD(0x348, 0x20, 0, 0x840, 0, 0) +#define MX53_PAD_GPIO_19__GPIO_4_5 IOMUX_PAD(0x348, 0x20, 1, 0, 0, 0) +#define MX53_PAD_GPIO_19__CCM_CLKO IOMUX_PAD(0x348, 0x20, 2, 0, 0, 0) +#define MX53_PAD_GPIO_19__SPDIF_OUT1 IOMUX_PAD(0x348, 0x20, 3, 0, 0, 0) +#define MX53_PAD_GPIO_19__RTC_CE_RTC_EXT_TRIG2 IOMUX_PAD(0x348, 0x20, 4, 0, 0, 0) +#define MX53_PAD_GPIO_19__ECSPI1_RDY IOMUX_PAD(0x348, 0x20, 5, 0, 0, 0) +#define MX53_PAD_GPIO_19__FEC_TDATA_3 IOMUX_PAD(0x348, 0x20, 6, 0, 0, 0) +#define MX53_PAD_GPIO_19__SRC_INT_BOOT IOMUX_PAD(0x348, 0x20,7, 0, 0, 0) +#define MX53_PAD_KEY_COL0__KPP_COL_0 IOMUX_PAD(0x34C, 0x24, o, 0, 0, 0) +#define MX53_PAD_KEY_COL0__GPIO_4_6 IOMUX_PAD(0x34C, 0x24, 1, 0, 0, 0) +#define MX53_PAD_KEY_COL0__AUDMUX_AUD5_TXC IOMUX_PAD(0x34C, 0x24, 2, 0x758, 0, 0) +#define MX53_PAD_KEY_COL0__UART4_TXD_MUX IOMUX_PAD(0x34C, 0x24, 4, 0, 0, 0) +#define MX53_PAD_KEY_COL0__ECSPI1_SCLK IOMUX_PAD(0x34C, 0x24, 5, 0x79C, 0, 0) +#define MX53_PAD_KEY_COL0__FEC_RDATA_3 IOMUX_PAD(0x34C, 0x24, 6, 0, 0, 0) +#define MX53_PAD_KEY_COL0__SRC_ANY_PU_RST IOMUX_PAD(0x34C, 0x24, 7, 0, 0, 0) +#define MX53_PAD_KEY_ROW0__KPP_ROW_0 IOMUX_PAD(0x350, 0x28, 0, 0, 0, 0) +#define MX53_PAD_KEY_ROW0__GPIO_4_7 IOMUX_PAD(0x350, 0x28, 1, 0, 0, 0) +#define MX53_PAD_KEY_ROW0__AUDMUX_AUD5_TXD IOMUX_PAD(0x350, 0x28, 2, 0x74C, 0, 0) +#define MX53_PAD_KEY_ROW0__UART4_RXD_MUX IOMUX_PAD(0x350, 0x28, 4, 0x890, 1, 0) +#define MX53_PAD_KEY_ROW0__ECSPI1_MOSI IOMUX_PAD(0x350, 0x28, 5, 0x7A4, 0, 0) +#define MX53_PAD_KEY_ROW0__FEC_TX_ER IOMUX_PAD(0x350, 0x28, 6, 0, 0, 0) +#define MX53_PAD_KEY_COL1__KPP_COL_1 IOMUX_PAD(0x354, 0x2C, 0, 0, 0, 0) +#define MX53_PAD_KEY_COL1__GPIO_4_8 IOMUX_PAD(0x354, 0x2C, 1, 0, 0, 0) +#define MX53_PAD_KEY_COL1__AUDMUX_AUD5_TXFS IOMUX_PAD(0x354, 0x2C, 2, 0x75C, 0, 0) +#define MX53_PAD_KEY_COL1__UART5_TXD_MUX IOMUX_PAD(0x354, 0x2C, 4, 0, 0, 0) +#define MX53_PAD_KEY_COL1__ECSPI1_MISO IOMUX_PAD(0x354, 0x2C, 5, 0x7A0, 0, 0) +#define MX53_PAD_KEY_COL1__FEC_RX_CLK IOMUX_PAD(0x354, 0x2C, 6, 0x808, 0, 0) +#define MX53_PAD_KEY_COL1__USBPHY1_TXREADY IOMUX_PAD(0x354, 0x2C, 7, 0, 0, 0) +#define MX53_PAD_KEY_ROW1__KPP_ROW_1 IOMUX_PAD(0x358, 0x30, 0, 0, 0, 0) +#define MX53_PAD_KEY_ROW1__GPIO_4_9 IOMUX_PAD(0x358, 0x30, 1, 0, 0, 0) +#define MX53_PAD_KEY_ROW1__AUDMUX_AUD5_RXD IOMUX_PAD(0x358, 0x30, 2, 0x748, 0, 0) +#define MX53_PAD_KEY_ROW1__UART5_RXD_MUX IOMUX_PAD(0x358, 0x30, 4, 0x898, 1, 0) +#define MX53_PAD_KEY_ROW1__ECSPI1_SS0 IOMUX_PAD(0x358, 0x30, 5, 0x7A8, 0, 0) +#define MX53_PAD_KEY_ROW1__FEC_COL IOMUX_PAD(0x358, 0x30, 6, 0x800, 0, 0) +#define MX53_PAD_KEY_ROW1__USBPHY1_RXVALID IOMUX_PAD(0x358, 0x30, 7, 0, 0, 0) +#define MX53_PAD_KEY_COL2__KPP_COL_2 IOMUX_PAD(0x35C, 0x34, 0, 0, 0, 0) +#define MX53_PAD_KEY_COL2__GPIO_4_10 IOMUX_PAD(0x35C, 0x34, 1, 0, 0, 0) +#define MX53_PAD_KEY_COL2__CAN1_TXCAN IOMUX_PAD(0x35C, 0x34, 2, 0, 0, 0) +#define MX53_PAD_KEY_COL2__FEC_MDIO IOMUX_PAD(0x35C, 0x34, 4, 0x804, 0, 0) +#define MX53_PAD_KEY_COL2__ECSPI1_SS1 IOMUX_PAD(0x35C, 0x34, 5, 0x7AC, 0, 0) +#define MX53_PAD_KEY_COL2__FEC_RDATA_2 IOMUX_PAD(0x35C, 0x34, 6, 0, 0, 0) +#define MX53_PAD_KEY_COL2__USBPHY1_RXACTIVE IOMUX_PAD(0x35C, 0x34, 7, 0, 0, 0) +#define MX53_PAD_KEY_ROW2__KPP_ROW_2 IOMUX_PAD(0x360, 0x38, 0, 0, 0, 0) +#define MX53_PAD_KEY_ROW2__GPIO_4_11 IOMUX_PAD(0x360, 0x38, 1, 0, 0, 0) +#define MX53_PAD_KEY_ROW2__CAN1_RXCAN IOMUX_PAD(0x360, 0x38, 2, 0x760, 0, 0) +#define MX53_PAD_KEY_ROW2__FEC_MDC IOMUX_PAD(0x360, 0x38, 4, 0, 0, 0) +#define MX53_PAD_KEY_ROW2__ECSPI1_SS2 IOMUX_PAD(0x360, 0x38, 5, 0x7B0, 0, 0) +#define MX53_PAD_KEY_ROW2__FEC_TDATA_2 IOMUX_PAD(0x360, 0x38, 6, 0, 0, 0) +#define MX53_PAD_KEY_ROW2__USBPHY1_RXERROR IOMUX_PAD(0x360, 0x38, 7, 0, 0, 0) +#define MX53_PAD_KEY_COL3__KPP_COL_3 IOMUX_PAD(0x364, 0x3C, 0, 0, 0, 0) +#define MX53_PAD_KEY_COL3__GPIO_4_12 IOMUX_PAD(0x364, 0x3C, 1, 0, 0, 0) +#define MX53_PAD_KEY_COL3__USBOH3_H2_DP IOMUX_PAD(0x364, 0x3C, 2, 0, 0, 0) +#define MX53_PAD_KEY_COL3__SPDIF_IN1 IOMUX_PAD(0x364, 0x3C, 3, 0x870, 0, 0) +#define MX53_PAD_KEY_COL3__I2C2_SCL IOMUX_PAD(0x364, 0x3C, 4 | IOMUX_CONFIG_SION, 0x81C, 0, 0) +#define MX53_PAD_KEY_COL3__ECSPI1_SS3 IOMUX_PAD(0x364, 0x3C, 5, 0x7B4, 0, 0) +#define MX53_PAD_KEY_COL3__FEC_CRS IOMUX_PAD(0x364, 0x3C, 6, 0, 0, 0) +#define MX53_PAD_KEY_COL3__USBPHY1_SIECLOCK IOMUX_PAD(0x364, 0x3C, 7, 0, 0, 0) +#define MX53_PAD_KEY_ROW3__KPP_ROW_3 IOMUX_PAD(0x368, 0x40, 0, 0, 0, 0) +#define MX53_PAD_KEY_ROW3__GPIO_4_13 IOMUX_PAD(0x368, 0x40, 1, 0, 0, 0) +#define MX53_PAD_KEY_ROW3__USBOH3_H2_DM IOMUX_PAD(0x368, 0x40, 2, 0, 0, 0) +#define MX53_PAD_KEY_ROW3__CCM_ASRC_EXT_CLK IOMUX_PAD(0x368, 0x40, 3, 0x768, 0, 0) +#define MX53_PAD_KEY_ROW3__I2C2_SDA IOMUX_PAD(0x368, 0x40, 4 | IOMUX_CONFIG_SION, 0x820, 0, 0) +#define MX53_PAD_KEY_ROW3__OSC32K_32K_OUT IOMUX_PAD(0x368, 0x40, 5, 0, 0, 0) +#define MX53_PAD_KEY_ROW3__CCM_PLL4_BYP IOMUX_PAD(0x368, 0x40, 6, 0x77C, 0, 0) +#define MX53_PAD_KEY_ROW3__USBPHY1_LINESTATE_0 IOMUX_PAD(0x368, 0x40, 7, 0, 0, 0) +#define MX53_PAD_KEY_COL4__KPP_COL_4 IOMUX_PAD(0x36C, 0x44, 0, 0, 0, 0) +#define MX53_PAD_KEY_COL4__GPIO_4_14 IOMUX_PAD(0x36C, 0x44, 1, 0, 0, 0) +#define MX53_PAD_KEY_COL4__CAN2_TXCAN IOMUX_PAD(0x36C, 0x44, 2, 0, 0, 0) +#define MX53_PAD_KEY_COL4__IPU_SISG_4 IOMUX_PAD(0x36C, 0x44, 3, 0, 0, 0) +#define MX53_PAD_KEY_COL4__UART5_RTS IOMUX_PAD(0x36C, 0x44, 4, 0x894, 0, 0) +#define MX53_PAD_KEY_COL4__USBOH3_USBOTG_OC IOMUX_PAD(0x36C, 0x44, 5, 0x89C, 0, 0) +#define MX53_PAD_KEY_COL4__USBPHY1_LINESTATE_1 IOMUX_PAD(0x36C, 0x44, 7, 0, 0, 0) +#define MX53_PAD_KEY_ROW4__KPP_ROW_4 IOMUX_PAD(0x370, 0x48, 0, 0, 0, 0) +#define MX53_PAD_KEY_ROW4__GPIO_4_15 IOMUX_PAD(0x370, 0x48, 1, 0, 0, 0) +#define MX53_PAD_KEY_ROW4__CAN2_RXCAN IOMUX_PAD(0x370, 0x48, 2, 0x764, 0, 0) +#define MX53_PAD_KEY_ROW4__IPU_SISG_5 IOMUX_PAD(0x370, 0x48, 3, 0, 0, 0) +#define MX53_PAD_KEY_ROW4__UART5_CTS IOMUX_PAD(0x370, 0x48, 4, 0x894, 1, 0) +#define MX53_PAD_KEY_ROW4__USBOH3_USBOTG_PWR IOMUX_PAD(0x370, 0x48, 5, 0, 0, 0) +#define MX53_PAD_KEY_ROW4__USBPHY1_VBUSVALID IOMUX_PAD(0x370, 0x48, 7, 0, 0, 0) +#define MX53_PAD_DI0_DISP_CLK__IPU_DI0_DISP_CLK IOMUX_PAD(0x378, 0x4C, 0, 0, 0, 0) +#define MX53_PAD_DI0_DISP_CLK__GPIO_4_16 IOMUX_PAD(0x378, 0x4C, 1, 0, 0, 0) +#define MX53_PAD_DI0_DISP_CLK__USBOH3_USBH2_DIR IOMUX_PAD(0x378, 0x4C, 2, 0, 0, 0) +#define MX53_PAD_DI0_DISP_CLK__SDMA_DEBUG_CORE_STATE_0 IOMUX_PAD(0x378, 0x4C, 5, 0, 0, 0) +#define MX53_PAD_DI0_DISP_CLK__EMI_EMI_DEBUG_0 IOMUX_PAD(0x378, 0x4C, 6, 0, 0, 0) +#define MX53_PAD_DI0_DISP_CLK__USBPHY1_AVALID IOMUX_PAD(0x378, 0x4C, 7, 0, 0, 0) +#define MX53_PAD_DI0_PIN15__IPU_DI0_PIN15 IOMUX_PAD(0x37C, 0x50, 0, 0, 0, 0) +#define MX53_PAD_DI0_PIN15__GPIO_4_17 IOMUX_PAD(0x37C, 0x50, 1, 0, 0, 0) +#define MX53_PAD_DI0_PIN15__AUDMUX_AUD6_TXC IOMUX_PAD(0x37C, 0x50, 2, 0, 0, 0) +#define MX53_PAD_DI0_PIN15__SDMA_DEBUG_CORE_STATE_1 IOMUX_PAD(0x37C, 0x50, 5, 0, 0, 0) +#define MX53_PAD_DI0_PIN15__EMI_EMI_DEBUG_1 IOMUX_PAD(0x37C, 0x50, 6, 0, 0, 0) +#define MX53_PAD_DI0_PIN15__USBPHY1_BVALID IOMUX_PAD(0x37C, 0x50, 7, 0, 0, 0) +#define MX53_PAD_DI0_PIN2__IPU_DI0_PIN2 IOMUX_PAD(0x380, 0x54, 0, 0, 0, 0) +#define MX53_PAD_DI0_PIN2__GPIO_4_18 IOMUX_PAD(0x380, 0x54, 1, 0, 0, 0) +#define MX53_PAD_DI0_PIN2__AUDMUX_AUD6_TXD IOMUX_PAD(0x380, 0x54, 2, 0, 0, 0) +#define MX53_PAD_DI0_PIN2__SDMA_DEBUG_CORE_STATE_2 IOMUX_PAD(0x380, 0x54, 5, 0, 0, 0) +#define MX53_PAD_DI0_PIN2__EMI_EMI_DEBUG_2 IOMUX_PAD(0x380, 0x54, 6, 0, 0, 0) +#define MX53_PAD_DI0_PIN2__USBPHY1_ENDSESSION IOMUX_PAD(0x380, 0x54, 7, 0, 0, 0) +#define MX53_PAD_DI0_PIN3__IPU_DI0_PIN3 IOMUX_PAD(0x384, 0x58, 0, 0, 0, 0) +#define MX53_PAD_DI0_PIN3__GPIO_4_19 IOMUX_PAD(0x384, 0x58, 1, 0, 0, 0) +#define MX53_PAD_DI0_PIN3__AUDMUX_AUD6_TXFS IOMUX_PAD(0x384, 0x58, 2, 0, 0, 0) +#define MX53_PAD_DI0_PIN3__SDMA_DEBUG_CORE_STATE_3 IOMUX_PAD(0x384, 0x58, 5, 0, 0, 0) +#define MX53_PAD_DI0_PIN3__EMI_EMI_DEBUG_3 IOMUX_PAD(0x384, 0x58, 6, 0, 0, 0) +#define MX53_PAD_DI0_PIN3__USBPHY1_IDDIG IOMUX_PAD(0x384, 0x58, 7, 0, 0, 0) +#define MX53_PAD_DI0_PIN4__IPU_DI0_PIN4 IOMUX_PAD(0x388, 0x5C, 0, 0, 0, 0) +#define MX53_PAD_DI0_PIN4__GPIO_4_20 IOMUX_PAD(0x388, 0x5C, 1, 0, 0, 0) +#define MX53_PAD_DI0_PIN4__AUDMUX_AUD6_RXD IOMUX_PAD(0x388, 0x5C, 2, 0, 0, 0) +#define MX53_PAD_DI0_PIN4__ESDHC1_WP IOMUX_PAD(0x388, 0x5C, 3, 0x7FC, 0, 0) +#define MX53_PAD_DI0_PIN4__SDMA_DEBUG_YIELD IOMUX_PAD(0x388, 0x5C, 5, 0, 0, 0) +#define MX53_PAD_DI0_PIN4__EMI_EMI_DEBUG_4 IOMUX_PAD(0x388, 0x5C, 6, 0, 0, 0) +#define MX53_PAD_DI0_PIN4__USBPHY1_HOSTDISCONNECT IOMUX_PAD(0x388, 0x5C, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT0__IPU_DISP0_DAT_0 IOMUX_PAD(0x38C, 0x60, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT0__GPIO_4_21 IOMUX_PAD(0x38C, 0x60, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT0__CSPI_SCLK IOMUX_PAD(0x38C, 0x60, 2, 0x780, 0, 0) +#define MX53_PAD_DISP0_DAT0__USBOH3_USBH2_DATA_0 IOMUX_PAD(0x38C, 0x60, 3, 0, 0, 0) +#define MX53_PAD_DISP0_DAT0__SDMA_DEBUG_CORE_RUN IOMUX_PAD(0x38C, 0x60, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT0__EMI_EMI_DEBUG_5 IOMUX_PAD(0x38C, 0x60, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT0__USBPHY2_TXREADY IOMUX_PAD(0x38C, 0x60, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT1__IPU_DISP0_DAT_1 IOMUX_PAD(0x390, 0x64, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT1__GPIO_4_22 IOMUX_PAD(0x390, 0x64, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT1__CSPI_MOSI IOMUX_PAD(0x390, 0x64, 2, 0x788, 0, 0) +#define MX53_PAD_DISP0_DAT1__USBOH3_USBH2_DATA_1 IOMUX_PAD(0x390, 0x64, 3, 0, 0, 0) +#define MX53_PAD_DISP0_DAT1__SDMA_DEBUG_EVENT_CHANNEL_SEL IOMUX_PAD(0x390, 0x64, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT1__EMI_EMI_DEBUG_6 IOMUX_PAD(0x390, 0x64, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT1__USBPHY2_RXVALID IOMUX_PAD(0x390, 0x64, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT2__IPU_DISP0_DAT_2 IOMUX_PAD(0x394, 0x68, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT2__GPIO_4_23 IOMUX_PAD(0x394, 0x68, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT2__CSPI_MISO IOMUX_PAD(0x394, 0x68, 2, 0x784, 0, 0) +#define MX53_PAD_DISP0_DAT2__USBOH3_USBH2_DATA_2 IOMUX_PAD(0x394, 0x68, 3, 0, 0, 0) +#define MX53_PAD_DISP0_DAT2__SDMA_DEBUG_MODE IOMUX_PAD(0x394, 0x68, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT2__EMI_EMI_DEBUG_7 IOMUX_PAD(0x394, 0x68, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT2__USBPHY2_RXACTIVE IOMUX_PAD(0x394, 0x68, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT3__IPU_DISP0_DAT_3 IOMUX_PAD(0x398, 0x6C, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT3__GPIO_4_24 IOMUX_PAD(0x398, 0x6C, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT3__CSPI_SS0 IOMUX_PAD(0x398, 0x6C, 2, 0x78C, 0, 0) +#define MX53_PAD_DISP0_DAT3__USBOH3_USBH2_DATA_3 IOMUX_PAD(0x398, 0x6C, 3, 0, 0, 0) +#define MX53_PAD_DISP0_DAT3__SDMA_DEBUG_BUS_ERROR IOMUX_PAD(0x398, 0x6C, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT3__EMI_EMI_DEBUG_8 IOMUX_PAD(0x398, 0x6C, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT3__USBPHY2_RXERROR IOMUX_PAD(0x398, 0x6C, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT4__IPU_DISP0_DAT_4 IOMUX_PAD(0x39C, 0x70, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT4__GPIO_4_25 IOMUX_PAD(0x39C, 0x70, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT4__CSPI_SS1 IOMUX_PAD(0x39C, 0x70, 2, 0x790, 0, 0) +#define MX53_PAD_DISP0_DAT4__USBOH3_USBH2_DATA_4 IOMUX_PAD(0x39C, 0x70, 3, 0, 0, 0) +#define MX53_PAD_DISP0_DAT4__SDMA_DEBUG_BUS_RWB IOMUX_PAD(0x39C, 0x70, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT4__EMI_EMI_DEBUG_9 IOMUX_PAD(0x39C, 0x70, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT4__USBPHY2_SIECLOCK IOMUX_PAD(0x39C, 0x70, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT5__IPU_DISP0_DAT_5 IOMUX_PAD(0x3A0, 0x74, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT5__GPIO_4_26 IOMUX_PAD(0x3A0, 0x74, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT5__CSPI_SS2 IOMUX_PAD(0x3A0, 0x74, 2, 0x794, 0, 0) +#define MX53_PAD_DISP0_DAT5__USBOH3_USBH2_DATA_5 IOMUX_PAD(0x3A0, 0x74, 3, 0, 0, 0) +#define MX53_PAD_DISP0_DAT5__SDMA_DEBUG_MATCHED_DMBUS IOMUX_PAD(0x3A0, 0x74, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT5__EMI_EMI_DEBUG_10 IOMUX_PAD(0x3A0, 0x74, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT5__USBPHY2_LINESTATE_0 IOMUX_PAD(0x3A0, 0x74, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT6__IPU_DISP0_DAT_6 IOMUX_PAD(0x3A4, 0x78, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT6__GPIO_4_27 IOMUX_PAD(0x3A4, 0x78, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT6__CSPI_SS3 IOMUX_PAD(0x3A4, 0x78, 2, 0x798, 0, 0) +#define MX53_PAD_DISP0_DAT6__USBOH3_USBH2_DATA_6 IOMUX_PAD(0x3A4, 0x78, 3, 0, 0, 0) +#define MX53_PAD_DISP0_DAT6__SDMA_DEBUG_RTBUFFER_WRITE IOMUX_PAD(0x3A4, 0x78, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT6__EMI_EMI_DEBUG_11 IOMUX_PAD(0x3A4, 0x78, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT6__USBPHY2_LINESTATE_1 IOMUX_PAD(0x3A4, 0x78, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT7__IPU_DISP0_DAT_7 IOMUX_PAD(0x3A8, 0x7C, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT7__GPIO_4_28 IOMUX_PAD(0x3A8, 0x7C, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT7__CSPI_RDY IOMUX_PAD(0x3A8, 0x7C, 2, 0, 0, 0) +#define MX53_PAD_DISP0_DAT7__USBOH3_USBH2_DATA_7 IOMUX_PAD(0x3A8, 0x7C, 3, 0, 0, 0) +#define MX53_PAD_DISP0_DAT7__SDMA_DEBUG_EVENT_CHANNEL_0 IOMUX_PAD(0x3A8, 0x7C, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT7__EMI_EMI_DEBUG_12 IOMUX_PAD(0x3A8, 0x7C, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT7__USBPHY2_VBUSVALID IOMUX_PAD(0x3A8, 0x7C, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT8__IPU_DISP0_DAT_8 IOMUX_PAD(0x3AC, 0x80, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT8__GPIO_4_29 IOMUX_PAD(0x3AC, 0x80, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT8__PWM1_PWMO IOMUX_PAD(0x3AC, 0x80, 2, 0, 0, 0) +#define MX53_PAD_DISP0_DAT8__WDOG1_WDOG_B IOMUX_PAD(0x3AC, 0x80, 3, 0, 0, 0) +#define MX53_PAD_DISP0_DAT8__SDMA_DEBUG_EVENT_CHANNEL_1 IOMUX_PAD(0x3AC, 0x80, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT8__EMI_EMI_DEBUG_13 IOMUX_PAD(0x3AC, 0x80, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT8__USBPHY2_AVALID IOMUX_PAD(0x3AC, 0x80, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT9__IPU_DISP0_DAT_9 IOMUX_PAD(0x3B0, 0x84, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT9__GPIO_4_30 IOMUX_PAD(0x3B0, 0x84, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT9__PWM2_PWMO IOMUX_PAD(0x3B0, 0x84, 2, 0, 0, 0) +#define MX53_PAD_DISP0_DAT9__WDOG2_WDOG_B IOMUX_PAD(0x3B0, 0x84, 3, 0, 0, 0) +#define MX53_PAD_DISP0_DAT9__SDMA_DEBUG_EVENT_CHANNEL_2 IOMUX_PAD(0x3B0, 0x84, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT9__EMI_EMI_DEBUG_14 IOMUX_PAD(0x3B0, 0x84, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT9__USBPHY2_VSTATUS_0 IOMUX_PAD(0x3B0, 0x84, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT10__IPU_DISP0_DAT_10 IOMUX_PAD(0x3B4, 0x88, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT10__GPIO_4_31 IOMUX_PAD(0x3B4, 0x88, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT10__USBOH3_USBH2_STP IOMUX_PAD(0x3B4, 0x88, 2, 0, 0, 0) +#define MX53_PAD_DISP0_DAT10__SDMA_DEBUG_EVENT_CHANNEL_3 IOMUX_PAD(0x3B4, 0x88, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT10__EMI_EMI_DEBUG_15 IOMUX_PAD(0x3B4, 0x88, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT10__USBPHY2_VSTATUS_1 IOMUX_PAD(0x3B4, 0x88, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT11__IPU_DISP0_DAT_11 IOMUX_PAD(0x3B8, 0x8C, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT11__GPIO_5_5 IOMUX_PAD(0x3B8, 0x8C, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT11__USBOH3_USBH2_NXT IOMUX_PAD(0x3B8, 0x8C, 2, 0, 0, 0) +#define MX53_PAD_DISP0_DAT11__SDMA_DEBUG_EVENT_CHANNEL_4 IOMUX_PAD(0x3B8, 0x8C, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT11__EMI_EMI_DEBUG_16 IOMUX_PAD(0x3B8, 0x8C, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT11__USBPHY2_VSTATUS_2 IOMUX_PAD(0x3B8, 0x8C, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT12__IPU_DISP0_DAT_12 IOMUX_PAD(0x3BC, 0x90, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT12__GPIO_5_6 IOMUX_PAD(0x3BC, 0x90, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT12__USBOH3_USBH2_CLK IOMUX_PAD(0x3BC, 0x90, 2, 0, 0, 0) +#define MX53_PAD_DISP0_DAT12__SDMA_DEBUG_EVENT_CHANNEL_5 IOMUX_PAD(0x3BC, 0x90, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT12__EMI_EMI_DEBUG_17 IOMUX_PAD(0x3BC, 0x90, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT12__USBPHY2_VSTATUS_3 IOMUX_PAD(0x3BC, 0x90, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT13__IPU_DISP0_DAT_13 IOMUX_PAD(0x3C0, 0x94, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT13__GPIO_5_7 IOMUX_PAD(0x3C0, 0x94, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT13__AUDMUX_AUD5_RXFS IOMUX_PAD(0x3C0, 0x94, 3, 0x754, 0, 0) +#define MX53_PAD_DISP0_DAT13__SDMA_DEBUG_EVT_CHN_LINES_0 IOMUX_PAD(0x3C0, 0x94, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT13__EMI_EMI_DEBUG_18 IOMUX_PAD(0x3C0, 0x94, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT13__USBPHY2_VSTATUS_4 IOMUX_PAD(0x3C0, 0x94, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT14__IPU_DISP0_DAT_14 IOMUX_PAD(0x3C4, 0x98, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT14__GPIO_5_8 IOMUX_PAD(0x3C4, 0x98, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT14__AUDMUX_AUD5_RXC IOMUX_PAD(0x3C4, 0x98, 3, 0x750, 0, 0) +#define MX53_PAD_DISP0_DAT14__SDMA_DEBUG_EVT_CHN_LINES_1 IOMUX_PAD(0x3C4, 0x98, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT14__EMI_EMI_DEBUG_19 IOMUX_PAD(0x3C4, 0x98, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT14__USBPHY2_VSTATUS_5 IOMUX_PAD(0x3C4, 0x98, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT15__IPU_DISP0_DAT_15 IOMUX_PAD(0x3C8, 0x9C, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT15__GPIO_5_9 IOMUX_PAD(0x3C8, 0x9C, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT15__ECSPI1_SS1 IOMUX_PAD(0x3C8, 0x9C, 2, 0x7AC, 1, 0) +#define MX53_PAD_DISP0_DAT15__ECSPI2_SS1 IOMUX_PAD(0x3C8, 0x9C, 3, 0x7C8, 0, 0) +#define MX53_PAD_DISP0_DAT15__SDMA_DEBUG_EVT_CHN_LINES_2 IOMUX_PAD(0x3C8, 0x9C, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT15__EMI_EMI_DEBUG_20 IOMUX_PAD(0x3C8, 0x9C, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT15__USBPHY2_VSTATUS_6 IOMUX_PAD(0x3C8, 0x9C, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT16__IPU_DISP0_DAT_16 IOMUX_PAD(0x3CC, 0xA0, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT16__GPIO_5_10 IOMUX_PAD(0x3CC, 0xA0, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT16__ECSPI2_MOSI IOMUX_PAD(0x3CC, 0xA0, 2, 0x7C0, 0, 0) +#define MX53_PAD_DISP0_DAT16__AUDMUX_AUD5_TXC IOMUX_PAD(0x3CC, 0xA0, 3, 0x758, 1, 0) +#define MX53_PAD_DISP0_DAT16__SDMA_EXT_EVENT_0 IOMUX_PAD(0x3CC, 0xA0, 4, 0x868, 0, 0) +#define MX53_PAD_DISP0_DAT16__SDMA_DEBUG_EVT_CHN_LINES_3 IOMUX_PAD(0x3CC, 0xA0, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT16__EMI_EMI_DEBUG_21 IOMUX_PAD(0x3CC, 0xA0, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT16__USBPHY2_VSTATUS_7 IOMUX_PAD(0x3CC, 0xA0, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT17__IPU_DISP0_DAT_17 IOMUX_PAD(0x3D0, 0xA4, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT17__GPIO_5_11 IOMUX_PAD(0x3D0, 0xA4, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT17__ECSPI2_MISO IOMUX_PAD(0x3D0, 0xA4, 2, 0x7BC, 0, 0) +#define MX53_PAD_DISP0_DAT17__AUDMUX_AUD5_TXD IOMUX_PAD(0x3D0, 0xA4, 3, 0x74C, 1, 0) +#define MX53_PAD_DISP0_DAT17__SDMA_EXT_EVENT_1 IOMUX_PAD(0x3D0, 0xA4, 4, 0x86C, 0, 0) +#define MX53_PAD_DISP0_DAT17__SDMA_DEBUG_EVT_CHN_LINES_4 IOMUX_PAD(0x3D0, 0xA4, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT17__EMI_EMI_DEBUG_22 IOMUX_PAD(0x3D0, 0xA4, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT18__IPU_DISP0_DAT_18 IOMUX_PAD(0x3D4, 0xA8, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT18__GPIO_5_12 IOMUX_PAD(0x3D4, 0xA8, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT18__ECSPI2_SS0 IOMUX_PAD(0x3D4, 0xA8, 2, 0x7C4, 0, 0) +#define MX53_PAD_DISP0_DAT18__AUDMUX_AUD5_TXFS IOMUX_PAD(0x3D4, 0xA8, 3, 0x75C, 1, 0) +#define MX53_PAD_DISP0_DAT18__AUDMUX_AUD4_RXFS IOMUX_PAD(0x3D4, 0xA8, 4, 0x73C, 0, 0) +#define MX53_PAD_DISP0_DAT18__SDMA_DEBUG_EVT_CHN_LINES_5 IOMUX_PAD(0x3D4, 0xA8, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT18__EMI_EMI_DEBUG_23 IOMUX_PAD(0x3D4, 0xA8, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT18__EMI_WEIM_CS_2 IOMUX_PAD(0x3D4, 0xA8, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT19__IPU_DISP0_DAT_19 IOMUX_PAD(0x3D8, 0xAC, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT19__GPIO_5_13 IOMUX_PAD(0x3D8, 0xAC, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT19__ECSPI2_SCLK IOMUX_PAD(0x3D8, 0xAC, 2, 0x7B8, 0, 0) +#define MX53_PAD_DISP0_DAT19__AUDMUX_AUD5_RXD IOMUX_PAD(0x3D8, 0xAC, 3, 0x748, 1, 0) +#define MX53_PAD_DISP0_DAT19__AUDMUX_AUD4_RXC IOMUX_PAD(0x3D8, 0xAC, 4, 0x738, 0, 0) +#define MX53_PAD_DISP0_DAT19__SDMA_DEBUG_EVT_CHN_LINES_6 IOMUX_PAD(0x3D8, 0xAC, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT19__EMI_EMI_DEBUG_24 IOMUX_PAD(0x3D8, 0xAC, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT19__EMI_WEIM_CS_3 IOMUX_PAD(0x3D8, 0xAC, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT20__IPU_DISP0_DAT_20 IOMUX_PAD(0x3DC, 0xB0, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT20__GPIO_5_14 IOMUX_PAD(0x3DC, 0xB0, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT20__ECSPI1_SCLK IOMUX_PAD(0x3DC, 0xB0, 2, 0x79C, 1, 0) +#define MX53_PAD_DISP0_DAT20__AUDMUX_AUD4_TXC IOMUX_PAD(0x3DC, 0xB0, 3, 0x740, 0, 0) +#define MX53_PAD_DISP0_DAT20__SDMA_DEBUG_EVT_CHN_LINES_7 IOMUX_PAD(0x3DC, 0xB0, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT20__EMI_EMI_DEBUG_25 IOMUX_PAD(0x3DC, 0xB0, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT20__SATA_PHY_TDI IOMUX_PAD(0x3DC, 0xB0, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT21__IPU_DISP0_DAT_21 IOMUX_PAD(0x3E0, 0xB4, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT21__GPIO_5_15 IOMUX_PAD(0x3E0, 0xB4, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT21__ECSPI1_MOSI IOMUX_PAD(0x3E0, 0xB4, 2, 0x7A4, 1, 0) +#define MX53_PAD_DISP0_DAT21__AUDMUX_AUD4_TXD IOMUX_PAD(0x3E0, 0xB4, 3, 0x734, 0, 0) +#define MX53_PAD_DISP0_DAT21__SDMA_DEBUG_BUS_DEVICE_0 IOMUX_PAD(0x3E0, 0xB4, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT21__EMI_EMI_DEBUG_26 IOMUX_PAD(0x3E0, 0xB4, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT21__SATA_PHY_TDO IOMUX_PAD(0x3E0, 0xB4, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT22__IPU_DISP0_DAT_22 IOMUX_PAD(0x3E4, 0xB8, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT22__GPIO_5_16 IOMUX_PAD(0x3E4, 0xB8, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT22__ECSPI1_MISO IOMUX_PAD(0x3E4, 0xB8, 2, 0x7A0, 1, 0) +#define MX53_PAD_DISP0_DAT22__AUDMUX_AUD4_TXFS IOMUX_PAD(0x3E4, 0xB8, 3, 0x744, 0, 0) +#define MX53_PAD_DISP0_DAT22__SDMA_DEBUG_BUS_DEVICE_1 IOMUX_PAD(0x3E4, 0xB8, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT22__EMI_EMI_DEBUG_27 IOMUX_PAD(0x3E4, 0xB8, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT22__SATA_PHY_TCK IOMUX_PAD(0x3E4, 0xB8, 7, 0, 0, 0) +#define MX53_PAD_DISP0_DAT23__IPU_DISP0_DAT_23 IOMUX_PAD(0x3E8, 0xBC, 0, 0, 0, 0) +#define MX53_PAD_DISP0_DAT23__GPIO_5_17 IOMUX_PAD(0x3E8, 0xBC, 1, 0, 0, 0) +#define MX53_PAD_DISP0_DAT23__ECSPI1_SS0 IOMUX_PAD(0x3E8, 0xBC, 2, 0x7A8, 1, 0) +#define MX53_PAD_DISP0_DAT23__AUDMUX_AUD4_RXD IOMUX_PAD(0x3E8, 0xBC, 3, 0x730, 0, 0) +#define MX53_PAD_DISP0_DAT23__SDMA_DEBUG_BUS_DEVICE_2 IOMUX_PAD(0x3E8, 0xBC, 5, 0, 0, 0) +#define MX53_PAD_DISP0_DAT23__EMI_EMI_DEBUG_28 IOMUX_PAD(0x3E8, 0xBC, 6, 0, 0, 0) +#define MX53_PAD_DISP0_DAT23__SATA_PHY_TMS IOMUX_PAD(0x3E8, 0xBC, 7, 0, 0, 0) +#define MX53_PAD_CSI0_PIXCLK__IPU_CSI0_PIXCLK IOMUX_PAD(0x3EC, 0xC0, 0, 0, 0, 0) +#define MX53_PAD_CSI0_PIXCLK__GPIO_5_18 IOMUX_PAD(0x3EC, 0xC0, 1, 0, 0, 0) +#define MX53_PAD_CSI0_PIXCLK__SDMA_DEBUG_PC_0 IOMUX_PAD(0x3EC, 0xC0, 5, 0, 0, 0) +#define MX53_PAD_CSI0_PIXCLK__EMI_EMI_DEBUG_29 IOMUX_PAD(0x3EC, 0xC0, 6, 0, 0, 0) +#define MX53_PAD_CSI0_MCLK__IPU_CSI0_HSYNC IOMUX_PAD(0x3F0, 0xC4, 0, 0, 0, 0) +#define MX53_PAD_CSI0_MCLK__GPIO_5_19 IOMUX_PAD(0x3F0, 0xC4, 1, 0, 0, 0) +#define MX53_PAD_CSI0_MCLK__CCM_CSI0_MCLK IOMUX_PAD(0x3F0, 0xC4, 2, 0, 0, 0) +#define MX53_PAD_CSI0_MCLK__SDMA_DEBUG_PC_1 IOMUX_PAD(0x3F0, 0xC4, 5, 0, 0, 0) +#define MX53_PAD_CSI0_MCLK__EMI_EMI_DEBUG_30 IOMUX_PAD(0x3F0, 0xC4, 6, 0, 0, 0) +#define MX53_PAD_CSI0_MCLK__TPIU_TRCTL IOMUX_PAD(0x3F0, 0xC4, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DATA_EN__IPU_CSI0_DATA_EN IOMUX_PAD(0x3F4, 0xC8, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DATA_EN__GPIO_5_20 IOMUX_PAD(0x3F4, 0xC8, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DATA_EN__SDMA_DEBUG_PC_2 IOMUX_PAD(0x3F4, 0xC8, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DATA_EN__EMI_EMI_DEBUG_31 IOMUX_PAD(0x3F4, 0xC8, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DATA_EN__TPIU_TRCLK IOMUX_PAD(0x3F4, 0xC8, 7, 0, 0, 0) +#define MX53_PAD_CSI0_VSYNC__IPU_CSI0_VSYNC IOMUX_PAD(0x3F8, 0xCC, 0, 0, 0, 0) +#define MX53_PAD_CSI0_VSYNC__GPIO_5_21 IOMUX_PAD(0x3F8, 0xCC, 1, 0, 0, 0) +#define MX53_PAD_CSI0_VSYNC__SDMA_DEBUG_PC_3 IOMUX_PAD(0x3F8, 0xCC, 5, 0, 0, 0) +#define MX53_PAD_CSI0_VSYNC__EMI_EMI_DEBUG_32 IOMUX_PAD(0x3F8, 0xCC, 6, 0, 0, 0) +#define MX53_PAD_CSI0_VSYNC__TPIU_TRACE_0 IOMUX_PAD(0x3F8, 0xCC, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT4__IPU_CSI0_D_4 IOMUX_PAD(0x3FC, 0xD0, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT4__GPIO_5_22 IOMUX_PAD(0x3FC, 0xD0, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT4__KPP_COL_5 IOMUX_PAD(0x3FC, 0xD0, 2, 0x840, 1, 0) +#define MX53_PAD_CSI0_DAT4__ECSPI1_SCLK IOMUX_PAD(0x3FC, 0xD0, 3, 0x79C, 2, 0) +#define MX53_PAD_CSI0_DAT4__USBOH3_USBH3_STP IOMUX_PAD(0x3FC, 0xD0, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT4__AUDMUX_AUD3_TXC IOMUX_PAD(0x3FC, 0xD0, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT4__EMI_EMI_DEBUG_33 IOMUX_PAD(0x3FC, 0xD0, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT4__TPIU_TRACE_1 IOMUX_PAD(0x3FC, 0xD0, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT5__IPU_CSI0_D_5 IOMUX_PAD(0x400, 0xD4, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT5__GPIO_5_23 IOMUX_PAD(0x400, 0xD4, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT5__KPP_ROW_5 IOMUX_PAD(0x400, 0xD4, 2, 0x84C, 0, 0) +#define MX53_PAD_CSI0_DAT5__ECSPI1_MOSI IOMUX_PAD(0x400, 0xD4, 3, 0x7A4, 2, 0) +#define MX53_PAD_CSI0_DAT5__USBOH3_USBH3_NXT IOMUX_PAD(0x400, 0xD4, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT5__AUDMUX_AUD3_TXD IOMUX_PAD(0x400, 0xD4, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT5__EMI_EMI_DEBUG_34 IOMUX_PAD(0x400, 0xD4, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT5__TPIU_TRACE_2 IOMUX_PAD(0x400, 0xD4, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT6__IPU_CSI0_D_6 IOMUX_PAD(0x404, 0xD8, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT6__GPIO_5_24 IOMUX_PAD(0x404, 0xD8, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT6__KPP_COL_6 IOMUX_PAD(0x404, 0xD8, 2, 0x844, 0, 0) +#define MX53_PAD_CSI0_DAT6__ECSPI1_MISO IOMUX_PAD(0x404, 0xD8, 3, 0x7A0, 2, 0) +#define MX53_PAD_CSI0_DAT6__USBOH3_USBH3_CLK IOMUX_PAD(0x404, 0xD8, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT6__AUDMUX_AUD3_TXFS IOMUX_PAD(0x404, 0xD8, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT6__EMI_EMI_DEBUG_35 IOMUX_PAD(0x404, 0xD8, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT6__TPIU_TRACE_3 IOMUX_PAD(0x404, 0xD8, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT7__IPU_CSI0_D_7 IOMUX_PAD(0x408, 0xDC, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT7__GPIO_5_25 IOMUX_PAD(0x408, 0xDC, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT7__KPP_ROW_6 IOMUX_PAD(0x408, 0xDC, 2, 0x850, 0, 0) +#define MX53_PAD_CSI0_DAT7__ECSPI1_SS0 IOMUX_PAD(0x408, 0xDC, 3, 0x7A8, 2, 0) +#define MX53_PAD_CSI0_DAT7__USBOH3_USBH3_DIR IOMUX_PAD(0x408, 0xDC, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT7__AUDMUX_AUD3_RXD IOMUX_PAD(0x408, 0xDC, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT7__EMI_EMI_DEBUG_36 IOMUX_PAD(0x408, 0xDC, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT7__TPIU_TRACE_4 IOMUX_PAD(0x408, 0xDC, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT8__IPU_CSI0_D_8 IOMUX_PAD(0x40C, 0xE0, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT8__GPIO_5_26 IOMUX_PAD(0x40C, 0xE0, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT8__KPP_COL_7 IOMUX_PAD(0x40C, 0xE0, 2, 0x848, 0, 0) +#define MX53_PAD_CSI0_DAT8__ECSPI2_SCLK IOMUX_PAD(0x40C, 0xE0, 3, 0x7B8, 1, 0) +#define MX53_PAD_CSI0_DAT8__USBOH3_USBH3_OC IOMUX_PAD(0x40C, 0xE0, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT8__I2C1_SDA IOMUX_PAD(0x40C, 0xE0, 5 | IOMUX_CONFIG_SION, 0x818, 0, 0) +#define MX53_PAD_CSI0_DAT8__EMI_EMI_DEBUG_37 IOMUX_PAD(0x40C, 0xE0, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT8__TPIU_TRACE_5 IOMUX_PAD(0x40C, 0xE0, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT9__IPU_CSI0_D_9 IOMUX_PAD(0x410, 0xE4, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT9__GPIO_5_27 IOMUX_PAD(0x410, 0xE4, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT9__KPP_ROW_7 IOMUX_PAD(0x410, 0xE4, 2, 0x854, 0, 0) +#define MX53_PAD_CSI0_DAT9__ECSPI2_MOSI IOMUX_PAD(0x410, 0xE4, 3, 0x7C0, 1, 0) +#define MX53_PAD_CSI0_DAT9__USBOH3_USBH3_PWR IOMUX_PAD(0x410, 0xE4, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT9__I2C1_SCL IOMUX_PAD(0x410, 0xE4, 5 | IOMUX_CONFIG_SION, 0x814, 0, 0) +#define MX53_PAD_CSI0_DAT9__EMI_EMI_DEBUG_38 IOMUX_PAD(0x410, 0xE4, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT9__TPIU_TRACE_6 IOMUX_PAD(0x410, 0xE4, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT10__IPU_CSI0_D_10 IOMUX_PAD(0x414, 0xE8, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT10__GPIO_5_28 IOMUX_PAD(0x414, 0xE8, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT10__UART1_TXD_MUX IOMUX_PAD(0x414, 0xE8, 2, 0, 0, 0) +#define MX53_PAD_CSI0_DAT10__ECSPI2_MISO IOMUX_PAD(0x414, 0xE8, 3, 0x7BC, 1, 0) +#define MX53_PAD_CSI0_DAT10__AUDMUX_AUD3_RXC IOMUX_PAD(0x414, 0xE8, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT10__SDMA_DEBUG_PC_4 IOMUX_PAD(0x414, 0xE8, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT10__EMI_EMI_DEBUG_39 IOMUX_PAD(0x414, 0xE8, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT10__TPIU_TRACE_7 IOMUX_PAD(0x414, 0xE8, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT11__IPU_CSI0_D_11 IOMUX_PAD(0x418, 0xEC, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT11__GPIO_5_29 IOMUX_PAD(0x418, 0xEC, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT11__UART1_RXD_MUX IOMUX_PAD(0x418, 0xEC, 2, 0x878, 1, 0) +#define MX53_PAD_CSI0_DAT11__ECSPI2_SS0 IOMUX_PAD(0x418, 0xEC, 3, 0x7C4, 1, 0) +#define MX53_PAD_CSI0_DAT11__AUDMUX_AUD3_RXFS IOMUX_PAD(0x418, 0xEC, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT11__SDMA_DEBUG_PC_5 IOMUX_PAD(0x418, 0xEC, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT11__EMI_EMI_DEBUG_40 IOMUX_PAD(0x418, 0xEC, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT11__TPIU_TRACE_8 IOMUX_PAD(0x418, 0xEC, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT12__IPU_CSI0_D_12 IOMUX_PAD(0x41C, 0xF0, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT12__GPIO_5_30 IOMUX_PAD(0x41C, 0xF0, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT12__UART4_TXD_MUX IOMUX_PAD(0x41C, 0xF0, 2, 0, 2, 0) +#define MX53_PAD_CSI0_DAT12__USBOH3_USBH3_DATA_0 IOMUX_PAD(0x41C, 0xF0, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT12__SDMA_DEBUG_PC_6 IOMUX_PAD(0x41C, 0xF0, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT12__EMI_EMI_DEBUG_41 IOMUX_PAD(0x41C, 0xF0, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT12__TPIU_TRACE_9 IOMUX_PAD(0x41C, 0xF0, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT13__IPU_CSI0_D_13 IOMUX_PAD(0x420, 0xF4, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT13__GPIO_5_31 IOMUX_PAD(0x420, 0xF4, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT13__UART4_RXD_MUX IOMUX_PAD(0x420, 0xF4, 2, 0x890, 3, 0) +#define MX53_PAD_CSI0_DAT13__USBOH3_USBH3_DATA_1 IOMUX_PAD(0x420, 0xF4, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT13__SDMA_DEBUG_PC_7 IOMUX_PAD(0x420, 0xF4, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT13__EMI_EMI_DEBUG_42 IOMUX_PAD(0x420, 0xF4, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT13__TPIU_TRACE_10 IOMUX_PAD(0x420, 0xF4, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT14__IPU_CSI0_D_14 IOMUX_PAD(0x424, 0xF8, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT14__GPIO_6_0 IOMUX_PAD(0x424, 0xF8, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT14__UART5_TXD_MUX IOMUX_PAD(0x424, 0xF8, 2, 0, 0, 0) +#define MX53_PAD_CSI0_DAT14__USBOH3_USBH3_DATA_2 IOMUX_PAD(0x424, 0xF8, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT14__SDMA_DEBUG_PC_8 IOMUX_PAD(0x424, 0xF8, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT14__EMI_EMI_DEBUG_43 IOMUX_PAD(0x424, 0xF8, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT14__TPIU_TRACE_11 IOMUX_PAD(0x424, 0xF8, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT15__IPU_CSI0_D_15 IOMUX_PAD(0x428, 0xFC, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT15__GPIO_6_1 IOMUX_PAD(0x428, 0xFC, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT15__UART5_RXD_MUX IOMUX_PAD(0x428, 0xFC, 2, 0x898, 3, 0) +#define MX53_PAD_CSI0_DAT15__USBOH3_USBH3_DATA_3 IOMUX_PAD(0x428, 0xFC, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT15__SDMA_DEBUG_PC_9 IOMUX_PAD(0x428, 0xFC, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT15__EMI_EMI_DEBUG_44 IOMUX_PAD(0x428, 0xFC, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT15__TPIU_TRACE_12 IOMUX_PAD(0x428, 0xFC, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT16__IPU_CSI0_D_16 IOMUX_PAD(0x42C, 0x100, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT16__GPIO_6_2 IOMUX_PAD(0x42C, 0x100, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT16__UART4_RTS IOMUX_PAD(0x42C, 0x100, 2, 0x88C, 0, 0) +#define MX53_PAD_CSI0_DAT16__USBOH3_USBH3_DATA_4 IOMUX_PAD(0x42C, 0x100, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT16__SDMA_DEBUG_PC_10 IOMUX_PAD(0x42C, 0x100, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT16__EMI_EMI_DEBUG_45 IOMUX_PAD(0x42C, 0x100, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT16__TPIU_TRACE_13 IOMUX_PAD(0x42C, 0x100, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT17__IPU_CSI0_D_17 IOMUX_PAD(0x430, 0x104, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT17__GPIO_6_3 IOMUX_PAD(0x430, 0x104, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT17__UART4_CTS IOMUX_PAD(0x430, 0x104, 2, 0x88C, 1, 0) +#define MX53_PAD_CSI0_DAT17__USBOH3_USBH3_DATA_5 IOMUX_PAD(0x430, 0x104, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT17__SDMA_DEBUG_PC_11 IOMUX_PAD(0x430, 0x104, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT17__EMI_EMI_DEBUG_46 IOMUX_PAD(0x430, 0x104, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT17__TPIU_TRACE_14 IOMUX_PAD(0x430, 0x104, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT18__IPU_CSI0_D_18 IOMUX_PAD(0x434, 0x108, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT18__GPIO_6_4 IOMUX_PAD(0x434, 0x108, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT18__UART5_RTS IOMUX_PAD(0x434, 0x108, 2, 0x894, 2, 0) +#define MX53_PAD_CSI0_DAT18__USBOH3_USBH3_DATA_6 IOMUX_PAD(0x434, 0x108, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT18__SDMA_DEBUG_PC_12 IOMUX_PAD(0x434, 0x108, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT18__EMI_EMI_DEBUG_47 IOMUX_PAD(0x434, 0x108, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT18__TPIU_TRACE_15 IOMUX_PAD(0x434, 0x108, 7, 0, 0, 0) +#define MX53_PAD_CSI0_DAT19__IPU_CSI0_D_19 IOMUX_PAD(0x438, 0x10C, 0, 0, 0, 0) +#define MX53_PAD_CSI0_DAT19__GPIO_6_5 IOMUX_PAD(0x438, 0x10C, 1, 0, 0, 0) +#define MX53_PAD_CSI0_DAT19__UART5_CTS IOMUX_PAD(0x438, 0x10C, 2, 0x894, 3, 0) +#define MX53_PAD_CSI0_DAT19__USBOH3_USBH3_DATA_7 IOMUX_PAD(0x438, 0x10C, 4, 0, 0, 0) +#define MX53_PAD_CSI0_DAT19__SDMA_DEBUG_PC_13 IOMUX_PAD(0x438, 0x10C, 5, 0, 0, 0) +#define MX53_PAD_CSI0_DAT19__EMI_EMI_DEBUG_48 IOMUX_PAD(0x438, 0x10C, 6, 0, 0, 0) +#define MX53_PAD_CSI0_DAT19__USBPHY2_BISTOK IOMUX_PAD(0x438, 0x10C, 7, 0, 0, 0) +#define MX53_PAD_EIM_A25__EMI_WEIM_A_25 IOMUX_PAD(0x458, 0x110, 0, 0, 0, 0) +#define MX53_PAD_EIM_A25__GPIO_5_2 IOMUX_PAD(0x458, 0x110, 1, 0, 0, 0) +#define MX53_PAD_EIM_A25__ECSPI2_RDY IOMUX_PAD(0x458, 0x110, 2, 0, 0, 0) +#define MX53_PAD_EIM_A25__IPU_DI1_PIN12 IOMUX_PAD(0x458, 0x110, 3, 0, 0, 0) +#define MX53_PAD_EIM_A25__CSPI_SS1 IOMUX_PAD(0x458, 0x110, 4, 0x790, 1, 0) +#define MX53_PAD_EIM_A25__IPU_DI0_D1_CS IOMUX_PAD(0x458, 0x110, 6, 0, 0, 0) +#define MX53_PAD_EIM_A25__USBPHY1_BISTOK IOMUX_PAD(0x458, 0x110, 7, 0, 0, 0) +#define MX53_PAD_EIM_EB2__EMI_WEIM_EB_2 IOMUX_PAD(0x45C, 0x114, 0, 0, 0, 0) +#define MX53_PAD_EIM_EB2__GPIO_2_30 IOMUX_PAD(0x45C, 0x114, 1, 0, 0, 0) +#define MX53_PAD_EIM_EB2__CCM_DI1_EXT_CLK IOMUX_PAD(0x45C, 0x114, 2, 0x76C, 0, 0) +#define MX53_PAD_EIM_EB2__IPU_SER_DISP1_CS IOMUX_PAD(0x45C, 0x114, 3, 0, 0, 0) +#define MX53_PAD_EIM_EB2__ECSPI1_SS0 IOMUX_PAD(0x45C, 0x114, 4, 0x7A8, 3, 0) +#define MX53_PAD_EIM_EB2__I2C2_SCL IOMUX_PAD(0x45C, 0x114, 5 | IOMUX_CONFIG_SION, 0x81C, 1, 0) +#define MX53_PAD_EIM_D16__EMI_WEIM_D_16 IOMUX_PAD(0x460, 0x118, 0, 0, 0, 0) +#define MX53_PAD_EIM_D16__GPIO_3_16 IOMUX_PAD(0x460, 0x118, 1, 0, 0, 0) +#define MX53_PAD_EIM_D16__IPU_DI0_PIN5 IOMUX_PAD(0x460, 0x118, 2, 0, 0, 0) +#define MX53_PAD_EIM_D16__IPU_DISPB1_SER_CLK IOMUX_PAD(0x460, 0x118, 3, 0, 0, 0) +#define MX53_PAD_EIM_D16__ECSPI1_SCLK IOMUX_PAD(0x460, 0x118, 4, 0x79C, 3, 0) +#define MX53_PAD_EIM_D16__I2C2_SDA IOMUX_PAD(0x460, 0x118, 5, 0x820, 1, 0) +#define MX53_PAD_EIM_D17__EMI_WEIM_D_17 IOMUX_PAD(0x464, 0x11C, 0, 0, 0, 0) +#define MX53_PAD_EIM_D17__GPIO_3_17 IOMUX_PAD(0x464, 0x11C, 1, 0, 0, 0) +#define MX53_PAD_EIM_D17__IPU_DI0_PIN6 IOMUX_PAD(0x464, 0x11C, 2, 0, 0, 0) +#define MX53_PAD_EIM_D17__IPU_DISPB1_SER_DIN IOMUX_PAD(0x464, 0x11C, 3, 0x830, 0, 0) +#define MX53_PAD_EIM_D17__ECSPI1_MISO IOMUX_PAD(0x464, 0x11C, 4, 0x7A0, 3, 0) +#define MX53_PAD_EIM_D17__I2C3_SCL IOMUX_PAD(0x464, 0x11C, 5, 0x824, 0, 0) +#define MX53_PAD_EIM_D18__EMI_WEIM_D_18 IOMUX_PAD(0x468, 0x120, 0, 0, 0, 0) +#define MX53_PAD_EIM_D18__GPIO_3_18 IOMUX_PAD(0x468, 0x120, 1, 0, 0, 0) +#define MX53_PAD_EIM_D18__IPU_DI0_PIN7 IOMUX_PAD(0x468, 0x120, 2, 0, 0, 0) +#define MX53_PAD_EIM_D18__IPU_DISPB1_SER_DIO IOMUX_PAD(0x468, 0x120, 3, 0x830, 1, 0) +#define MX53_PAD_EIM_D18__ECSPI1_MOSI IOMUX_PAD(0x468, 0x120, 4, 0x7A4, 3, 0) +#define MX53_PAD_EIM_D18__I2C3_SDA IOMUX_PAD(0x468, 0x120, 5, 0x828, 0, 0) +#define MX53_PAD_EIM_D18__IPU_DI1_D0_CS IOMUX_PAD(0x468, 0x120, 6, 0, 0, 0) +#define MX53_PAD_EIM_D19__EMI_WEIM_D_19 IOMUX_PAD(0x46C, 0x124, 0, 0, 0, 0) +#define MX53_PAD_EIM_D19__GPIO_3_19 IOMUX_PAD(0x46C, 0x124, 1, 0, 0, 0) +#define MX53_PAD_EIM_D19__IPU_DI0_PIN8 IOMUX_PAD(0x46C, 0x124, 2, 0, 0, 0) +#define MX53_PAD_EIM_D19__IPU_DISPB1_SER_RS IOMUX_PAD(0x46C, 0x124, 3, 0, 0, 0) +#define MX53_PAD_EIM_D19__ECSPI1_SS1 IOMUX_PAD(0x46C, 0x124, 4, 0x7AC, 2, 0) +#define MX53_PAD_EIM_D19__EPIT1_EPITO IOMUX_PAD(0x46C, 0x124, 5, 0, 0, 0) +#define MX53_PAD_EIM_D19__UART1_CTS IOMUX_PAD(0x46C, 0x124, 6, 0x874, 0, 0) +#define MX53_PAD_EIM_D19__USBOH3_USBH2_OC IOMUX_PAD(0x46C, 0x124, 7, 0x8A4, 0, 0) +#define MX53_PAD_EIM_D20__EMI_WEIM_D_20 IOMUX_PAD(0x470, 0x128, 0, 0, 0, 0) +#define MX53_PAD_EIM_D20__GPIO_3_20 IOMUX_PAD(0x470, 0x128, 1, 0, 0, 0) +#define MX53_PAD_EIM_D20__IPU_DI0_PIN16 IOMUX_PAD(0x470, 0x128, 2, 0, 0, 0) +#define MX53_PAD_EIM_D20__IPU_SER_DISP0_CS IOMUX_PAD(0x470, 0x128, 3, 0, 0, 0) +#define MX53_PAD_EIM_D20__CSPI_SS0 IOMUX_PAD(0x470, 0x128, 4, 0x78C, 1, 0) +#define MX53_PAD_EIM_D20__EPIT2_EPITO IOMUX_PAD(0x470, 0x128, 5, 0, 0, 0) +#define MX53_PAD_EIM_D20__UART1_RTS IOMUX_PAD(0x470, 0x128, 6, 0x874, 1, 0) +#define MX53_PAD_EIM_D20__USBOH3_USBH2_PWR IOMUX_PAD(0x470, 0x128, 7, 0, 0, 0) +#define MX53_PAD_EIM_D21__EMI_WEIM_D_21 IOMUX_PAD(0x474, 0x12C, 0, 0, 0, 0) +#define MX53_PAD_EIM_D21__GPIO_3_21 IOMUX_PAD(0x474, 0x12C, 1, 0, 0, 0) +#define MX53_PAD_EIM_D21__IPU_DI0_PIN17 IOMUX_PAD(0x474, 0x12C, 2, 0, 0, 0) +#define MX53_PAD_EIM_D21__IPU_DISPB0_SER_CLK IOMUX_PAD(0x474, 0x12C, 3, 0, 0, 0) +#define MX53_PAD_EIM_D21__CSPI_SCLK IOMUX_PAD(0x474, 0x12C, 4, 0x780, 1, 0) +#define MX53_PAD_EIM_D21__I2C1_SCL IOMUX_PAD(0x474, 0x12C, 5, 0x814, 1, 0) +#define MX53_PAD_EIM_D21__USBOH3_USBOTG_OC IOMUX_PAD(0x474, 0x12C, 6, 0x89C, 1, 0) +#define MX53_PAD_EIM_D22__EMI_WEIM_D_22 IOMUX_PAD(0x478, 0x130, 0, 0, 0, 0) +#define MX53_PAD_EIM_D22__GPIO_3_22 IOMUX_PAD(0x478, 0x130, 1, 0, 0, 0) +#define MX53_PAD_EIM_D22__IPU_DI0_PIN1 IOMUX_PAD(0x478, 0x130, 2, 0, 0, 0) +#define MX53_PAD_EIM_D22__IPU_DISPB0_SER_DIN IOMUX_PAD(0x478, 0x130, 3, 0x82C, 0, 0) +#define MX53_PAD_EIM_D22__CSPI_MISO IOMUX_PAD(0x478, 0x130, 4, 0x784, 1, 0) +#define MX53_PAD_EIM_D22__USBOH3_USBOTG_PWR IOMUX_PAD(0x478, 0x130, 6, 0, 0, 0) +#define MX53_PAD_EIM_D23__EMI_WEIM_D_23 IOMUX_PAD(0x47C, 0x134, 0, 0, 0, 0) +#define MX53_PAD_EIM_D23__GPIO_3_23 IOMUX_PAD(0x47C, 0x134, 1, 0, 0, 0) +#define MX53_PAD_EIM_D23__UART3_CTS IOMUX_PAD(0x47C, 0x134, 2, 0x884, 0, 0) +#define MX53_PAD_EIM_D23__UART1_DCD IOMUX_PAD(0x47C, 0x134, 3, 0, 0, 0) +#define MX53_PAD_EIM_D23__IPU_DI0_D0_CS IOMUX_PAD(0x47C, 0x134, 4, 0, 0, 0) +#define MX53_PAD_EIM_D23__IPU_DI1_PIN2 IOMUX_PAD(0x47C, 0x134, 5, 0, 0, 0) +#define MX53_PAD_EIM_D23__IPU_CSI1_DATA_EN IOMUX_PAD(0x47C, 0x134, 6, 0x834, 0, 0) +#define MX53_PAD_EIM_D23__IPU_DI1_PIN14 IOMUX_PAD(0x47C, 0x134, 7, 0, 0, 0) +#define MX53_PAD_EIM_EB3__EMI_WEIM_EB_3 IOMUX_PAD(0x480, 0x138, 0, 0, 0, 0) +#define MX53_PAD_EIM_EB3__GPIO_2_31 IOMUX_PAD(0x480, 0x138, 1, 0, 0, 0) +#define MX53_PAD_EIM_EB3__UART3_RTS IOMUX_PAD(0x480, 0x138, 2, 0x884, 1, 0) +#define MX53_PAD_EIM_EB3__UART1_RI IOMUX_PAD(0x480, 0x138, 3, 0, 0, 0) +#define MX53_PAD_EIM_EB3__IPU_DI1_PIN3 IOMUX_PAD(0x480, 0x138, 5, 0, 0, 0) +#define MX53_PAD_EIM_EB3__IPU_CSI1_HSYNC IOMUX_PAD(0x480, 0x138, 6, 0x838, 0, 0) +#define MX53_PAD_EIM_EB3__IPU_DI1_PIN16 IOMUX_PAD(0x480, 0x138, 7, 0, 0, 0) +#define MX53_PAD_EIM_D24__EMI_WEIM_D_24 IOMUX_PAD(0x484, 0x13C, 0, 0, 0, 0) +#define MX53_PAD_EIM_D24__GPIO_3_24 IOMUX_PAD(0x484, 0x13C, 1, 0, 0, 0) +#define MX53_PAD_EIM_D24__UART3_TXD_MUX IOMUX_PAD(0x484, 0x13C, 2, 0, 0, 0) +#define MX53_PAD_EIM_D24__ECSPI1_SS2 IOMUX_PAD(0x484, 0x13C, 3, 0x7B0, 1, 0) +#define MX53_PAD_EIM_D24__CSPI_SS2 IOMUX_PAD(0x484, 0x13C, 4, 0x794, 1, 0) +#define MX53_PAD_EIM_D24__AUDMUX_AUD5_RXFS IOMUX_PAD(0x484, 0x13C, 5, 0x754, 1, 0) +#define MX53_PAD_EIM_D24__ECSPI2_SS2 IOMUX_PAD(0x484, 0x13C, 6, 0, 0, 0) +#define MX53_PAD_EIM_D24__UART1_DTR IOMUX_PAD(0x484, 0x13C, 7, 0, 0, 0) +#define MX53_PAD_EIM_D25__EMI_WEIM_D_25 IOMUX_PAD(0x488, 0x140, 0, 0, 0, 0) +#define MX53_PAD_EIM_D25__GPIO_3_25 IOMUX_PAD(0x488, 0x140, 1, 0, 0, 0) +#define MX53_PAD_EIM_D25__UART3_RXD_MUX IOMUX_PAD(0x488, 0x140, 2, 0x888, 1, 0) +#define MX53_PAD_EIM_D25__ECSPI1_SS3 IOMUX_PAD(0x488, 0x140, 3, 0x7B4, 1, 0) +#define MX53_PAD_EIM_D25__CSPI_SS3 IOMUX_PAD(0x488, 0x140, 4, 0x798, 1, 0) +#define MX53_PAD_EIM_D25__AUDMUX_AUD5_RXC IOMUX_PAD(0x488, 0x140, 5, 0x750, 1, 0) +#define MX53_PAD_EIM_D25__ECSPI2_SS3 IOMUX_PAD(0x488, 0x140, 6, 0, 0, 0) +#define MX53_PAD_EIM_D25__UART1_DSR IOMUX_PAD(0x488, 0x140, 7, 0, 0, 0) +#define MX53_PAD_EIM_D26__EMI_WEIM_D_26 IOMUX_PAD(0x48C, 0x144, 0, 0, 0, 0) +#define MX53_PAD_EIM_D26__GPIO_3_26 IOMUX_PAD(0x48C, 0x144, 1, 0, 0, 0) +#define MX53_PAD_EIM_D26__UART2_TXD_MUX IOMUX_PAD(0x48C, 0x144, 2, 0, 0, 0) +#define MX53_PAD_EIM_D26__FIRI_RXD IOMUX_PAD(0x48C, 0x144, 3, 0x80C, 0, 0) +#define MX53_PAD_EIM_D26__IPU_CSI0_D_1 IOMUX_PAD(0x48C, 0x144, 4, 0, 0, 0) +#define MX53_PAD_EIM_D26__IPU_DI1_PIN11 IOMUX_PAD(0x48C, 0x144, 5, 0, 0, 0) +#define MX53_PAD_EIM_D26__IPU_SISG_2 IOMUX_PAD(0x48C, 0x144, 6, 0, 0, 0) +#define MX53_PAD_EIM_D26__IPU_DISP1_DAT_22 IOMUX_PAD(0x48C, 0x144, 7, 0, 0, 0) +#define MX53_PAD_EIM_D27__EMI_WEIM_D_27 IOMUX_PAD(0x490, 0x148, 0, 0, 0, 0) +#define MX53_PAD_EIM_D27__GPIO_3_27 IOMUX_PAD(0x490, 0x148, 1, 0, 0, 0) +#define MX53_PAD_EIM_D27__UART2_RXD_MUX IOMUX_PAD(0x490, 0x148, 2, 0x880, 1, 0) +#define MX53_PAD_EIM_D27__FIRI_TXD IOMUX_PAD(0x490, 0x148, 3, 0, 0, 0) +#define MX53_PAD_EIM_D27__IPU_CSI0_D_0 IOMUX_PAD(0x490, 0x148, 4, 0, 0, 0) +#define MX53_PAD_EIM_D27__IPU_DI1_PIN13 IOMUX_PAD(0x490, 0x148, 5, 0, 0, 0) +#define MX53_PAD_EIM_D27__IPU_SISG_3 IOMUX_PAD(0x490, 0x148, 6, 0, 0, 0) +#define MX53_PAD_EIM_D27__IPU_DISP1_DAT_23 IOMUX_PAD(0x490, 0x148, 7, 0, 0, 0) +#define MX53_PAD_EIM_D28__EMI_WEIM_D_28 IOMUX_PAD(0x494, 0x14C, 0, 0, 0, 0) +#define MX53_PAD_EIM_D28__GPIO_3_28 IOMUX_PAD(0x494, 0x14C, 1, 0, 0, 0) +#define MX53_PAD_EIM_D28__UART2_CTS IOMUX_PAD(0x494, 0x14C, 2, 0x87C, 0, 0) +#define MX53_PAD_EIM_D28__IPU_DISPB0_SER_DIO IOMUX_PAD(0x494, 0x14C, 3, 0x82C, 1, 0) +#define MX53_PAD_EIM_D28__CSPI_MOSI IOMUX_PAD(0x494, 0x14C, 4, 0x788, 1, 0) +#define MX53_PAD_EIM_D28__I2C1_SDA IOMUX_PAD(0x494, 0x14C, 5, 0x818, 1, 0) +#define MX53_PAD_EIM_D28__IPU_EXT_TRIG IOMUX_PAD(0x494, 0x14C, 6, 0, 0, 0) +#define MX53_PAD_EIM_D28__IPU_DI0_PIN13 IOMUX_PAD(0x494, 0x14C, 7, 0, 0, 0) +#define MX53_PAD_EIM_D29__EMI_WEIM_D_29 IOMUX_PAD(0x498, 0x150, 0, 0, 0, 0) +#define MX53_PAD_EIM_D29__GPIO_3_29 IOMUX_PAD(0x498, 0x150, 1, 0, 0, 0) +#define MX53_PAD_EIM_D29__UART2_RTS IOMUX_PAD(0x498, 0x150, 2, 0x87C, 1, 0) +#define MX53_PAD_EIM_D29__IPU_DISPB0_SER_RS IOMUX_PAD(0x498, 0x150, 3, 0, 0, 0) +#define MX53_PAD_EIM_D29__CSPI_SS0 IOMUX_PAD(0x498, 0x150, 4, 0x78C, 2, 0) +#define MX53_PAD_EIM_D29__IPU_DI1_PIN15 IOMUX_PAD(0x498, 0x150, 5, 0, 0, 0) +#define MX53_PAD_EIM_D29__IPU_CSI1_VSYNC IOMUX_PAD(0x498, 0x150, 6, 0x83C, 0, 0) +#define MX53_PAD_EIM_D29__IPU_DI0_PIN14 IOMUX_PAD(0x498, 0x150, 7, 0, 0, 0) +#define MX53_PAD_EIM_D30__EMI_WEIM_D_30 IOMUX_PAD(0x49C, 0x154, 0, 0, 0, 0) +#define MX53_PAD_EIM_D30__GPIO_3_30 IOMUX_PAD(0x49C, 0x154, 1, 0, 0, 0) +#define MX53_PAD_EIM_D30__UART3_CTS IOMUX_PAD(0x49C, 0x154, 2, 0x884, 2, 0) +#define MX53_PAD_EIM_D30__IPU_CSI0_D_3 IOMUX_PAD(0x49C, 0x154, 3, 0, 0, 0) +#define MX53_PAD_EIM_D30__IPU_DI0_PIN11 IOMUX_PAD(0x49C, 0x154, 4, 0, 0, 0) +#define MX53_PAD_EIM_D30__IPU_DISP1_DAT_21 IOMUX_PAD(0x49C, 0x154, 5, 0, 0, 0) +#define MX53_PAD_EIM_D30__USBOH3_USBH1_OC IOMUX_PAD(0x49C, 0x154, 6, 0x8A0, 0, 0) +#define MX53_PAD_EIM_D30__USBOH3_USBH2_OC IOMUX_PAD(0x49C, 0x154, 7, 0x8A4, 1, 0) +#define MX53_PAD_EIM_D31__EMI_WEIM_D_31 IOMUX_PAD(0x4A0, 0x158, 0, 0, 0, 0) +#define MX53_PAD_EIM_D31__GPIO_3_31 IOMUX_PAD(0x4A0, 0x158, 1, 0, 0, 0) +#define MX53_PAD_EIM_D31__UART3_RTS IOMUX_PAD(0x4A0, 0x158, 2, 0x884, 3, 0) +#define MX53_PAD_EIM_D31__IPU_CSI0_D_2 IOMUX_PAD(0x4A0, 0x158, 3, 0, 0, 0) +#define MX53_PAD_EIM_D31__IPU_DI0_PIN12 IOMUX_PAD(0x4A0, 0x158, 4, 0, 0, 0) +#define MX53_PAD_EIM_D31__IPU_DISP1_DAT_20 IOMUX_PAD(0x4A0, 0x158, 5, 0, 0, 0) +#define MX53_PAD_EIM_D31__USBOH3_USBH1_PWR IOMUX_PAD(0x4A0, 0x158, 6, 0, 0, 0) +#define MX53_PAD_EIM_D31__USBOH3_USBH2_PWR IOMUX_PAD(0x4A0, 0x158, 7, 0, 0, 0) +#define MX53_PAD_EIM_A24__EMI_WEIM_A_24 IOMUX_PAD(0x4A8, 0x15C, 0, 0, 0, 0) +#define MX53_PAD_EIM_A24__GPIO_5_4 IOMUX_PAD(0x4A8, 0x15C, 1, 0, 0, 0) +#define MX53_PAD_EIM_A24__IPU_DISP1_DAT_19 IOMUX_PAD(0x4A8, 0x15C, 2, 0, 0, 0) +#define MX53_PAD_EIM_A24__IPU_CSI1_D_19 IOMUX_PAD(0x4A8, 0x15C, 3, 0, 0, 0) +#define MX53_PAD_EIM_A24__IPU_SISG_2 IOMUX_PAD(0x4A8, 0x15C, 6, 0, 0, 0) +#define MX53_PAD_EIM_A24__USBPHY2_BVALID IOMUX_PAD(0x4A8, 0x15C, 7, 0, 0, 0) +#define MX53_PAD_EIM_A23__EMI_WEIM_A_23 IOMUX_PAD(0x4AC, 0x160, 0, 0, 0, 0) +#define MX53_PAD_EIM_A23__GPIO_6_6 IOMUX_PAD(0x4AC, 0x160, 1, 0, 0, 0) +#define MX53_PAD_EIM_A23__IPU_DISP1_DAT_18 IOMUX_PAD(0x4AC, 0x160, 2, 0, 0, 0) +#define MX53_PAD_EIM_A23__IPU_CSI1_D_18 IOMUX_PAD(0x4AC, 0x160, 3, 0, 0, 0) +#define MX53_PAD_EIM_A23__IPU_SISG_3 IOMUX_PAD(0x4AC, 0x160, 6, 0, 0, 0) +#define MX53_PAD_EIM_A23__USBPHY2_ENDSESSION IOMUX_PAD(0x4AC, 0x160, 7, 0, 0, 0) +#define MX53_PAD_EIM_A22__EMI_WEIM_A_22 IOMUX_PAD(0x4B0, 0x164, 0, 0, 0, 0) +#define MX53_PAD_EIM_A22__GPIO_2_16 IOMUX_PAD(0x4B0, 0x164, 1, 0, 0, 0) +#define MX53_PAD_EIM_A22__IPU_DISP1_DAT_17 IOMUX_PAD(0x4B0, 0x164, 2, 0, 0, 0) +#define MX53_PAD_EIM_A22__IPU_CSI1_D_17 IOMUX_PAD(0x4B0, 0x164, 3, 0, 0, 0) +#define MX53_PAD_EIM_A22__SRC_BT_CFG1_7 IOMUX_PAD(0x4B0, 0x164, 7, 0, 0, 0) +#define MX53_PAD_EIM_A21__EMI_WEIM_A_21 IOMUX_PAD(0x4B4, 0x168, 0, 0, 0, 0) +#define MX53_PAD_EIM_A21__GPIO_2_17 IOMUX_PAD(0x4B4, 0x168, 1, 0, 0, 0) +#define MX53_PAD_EIM_A21__IPU_DISP1_DAT_16 IOMUX_PAD(0x4B4, 0x168, 2, 0, 0, 0) +#define MX53_PAD_EIM_A21__IPU_CSI1_D_16 IOMUX_PAD(0x4B4, 0x168, 3, 0, 0, 0) +#define MX53_PAD_EIM_A21__SRC_BT_CFG1_6 IOMUX_PAD(0x4B4, 0x168, 7, 0, 0, 0) +#define MX53_PAD_EIM_A20__EMI_WEIM_A_20 IOMUX_PAD(0x4B8, 0x16C, 0, 0, 0, 0) +#define MX53_PAD_EIM_A20__GPIO_2_18 IOMUX_PAD(0x4B8, 0x16C, 1, 0, 0, 0) +#define MX53_PAD_EIM_A20__IPU_DISP1_DAT_15 IOMUX_PAD(0x4B8, 0x16C, 2, 0, 0, 0) +#define MX53_PAD_EIM_A20__IPU_CSI1_D_15 IOMUX_PAD(0x4B8, 0x16C, 3, 0, 0, 0) +#define MX53_PAD_EIM_A20__SRC_BT_CFG1_5 IOMUX_PAD(0x4B8, 0x16C, 7, 0, 0, 0) +#define MX53_PAD_EIM_A19__EMI_WEIM_A_19 IOMUX_PAD(0x4BC, 0x170, 0, 0, 0, 0) +#define MX53_PAD_EIM_A19__GPIO_2_19 IOMUX_PAD(0x4BC, 0x170, 1, 0, 0, 0) +#define MX53_PAD_EIM_A19__IPU_DISP1_DAT_14 IOMUX_PAD(0x4BC, 0x170, 2, 0, 0, 0) +#define MX53_PAD_EIM_A19__IPU_CSI1_D_14 IOMUX_PAD(0x4BC, 0x170, 3, 0, 0, 0) +#define MX53_PAD_EIM_A19__SRC_BT_CFG1_4 IOMUX_PAD(0x4BC, 0x170, 7, 0, 0, 0) +#define MX53_PAD_EIM_A18__EMI_WEIM_A_18 IOMUX_PAD(0x4C0, 0x174, 0, 0, 0, 0) +#define MX53_PAD_EIM_A18__GPIO_2_20 IOMUX_PAD(0x4C0, 0x174, 1, 0, 0, 0) +#define MX53_PAD_EIM_A18__IPU_DISP1_DAT_13 IOMUX_PAD(0x4C0, 0x174, 2, 0, 0, 0) +#define MX53_PAD_EIM_A18__IPU_CSI1_D_13 IOMUX_PAD(0x4C0, 0x174, 3, 0, 0, 0) +#define MX53_PAD_EIM_A18__SRC_BT_CFG1_3 IOMUX_PAD(0x4C0, 0x174, 7, 0, 0, 0) +#define MX53_PAD_EIM_A17__EMI_WEIM_A_17 IOMUX_PAD(0x4C4, 0x178, 0, 0, 0, 0) +#define MX53_PAD_EIM_A17__GPIO_2_21 IOMUX_PAD(0x4C4, 0x178, 1, 0, 0, 0) +#define MX53_PAD_EIM_A17__IPU_DISP1_DAT_12 IOMUX_PAD(0x4C4, 0x178, 2, 0, 0, 0) +#define MX53_PAD_EIM_A17__IPU_CSI1_D_12 IOMUX_PAD(0x4C4, 0x178, 3, 0, 0, 0) +#define MX53_PAD_EIM_A17__SRC_BT_CFG1_2 IOMUX_PAD(0x4C4, 0x178, 7, 0, 0, 0) +#define MX53_PAD_EIM_A16__EMI_WEIM_A_16 IOMUX_PAD(0x4C8, 0x17C, 0, 0, 0, 0) +#define MX53_PAD_EIM_A16__GPIO_2_22 IOMUX_PAD(0x4C8, 0x17C, 1, 0, 0, 0) +#define MX53_PAD_EIM_A16__IPU_DI1_DISP_CLK IOMUX_PAD(0x4C8, 0x17C, 2, 0, 0, 0) +#define MX53_PAD_EIM_A16__IPU_CSI1_PIXCLK IOMUX_PAD(0x4C8, 0x17C, 3, 0, 0, 0) +#define MX53_PAD_EIM_A16__SRC_BT_CFG1_1 IOMUX_PAD(0x4C8, 0x17C, 7, 0, 0, 0) +#define MX53_PAD_EIM_CS0__EMI_WEIM_CS_0 IOMUX_PAD(0x4CC, 0x180, 0, 0, 0, 0) +#define MX53_PAD_EIM_CS0__GPIO_2_23 IOMUX_PAD(0x4CC, 0x180, 1, 0, 0, 0) +#define MX53_PAD_EIM_CS0__ECSPI2_SCLK IOMUX_PAD(0x4CC, 0x180, 2, 0x7B8, 2, 0) +#define MX53_PAD_EIM_CS0__IPU_DI1_PIN5 IOMUX_PAD(0x4CC, 0x180, 3, 0, 0, 0) +#define MX53_PAD_EIM_CS1__EMI_WEIM_CS_1 IOMUX_PAD(0x4D0, 0x184, 0, 0, 0, 0) +#define MX53_PAD_EIM_CS1__GPIO_2_24 IOMUX_PAD(0x4D0, 0x184, 1, 0, 0, 0) +#define MX53_PAD_EIM_CS1__ECSPI2_MOSI IOMUX_PAD(0x4D0, 0x184, 2, 0x7C0, 2, 0) +#define MX53_PAD_EIM_CS1__IPU_DI1_PIN6 IOMUX_PAD(0x4D0, 0x184, 3, 0, 0, 0) +#define MX53_PAD_EIM_OE__EMI_WEIM_OE IOMUX_PAD(0x4D4, 0x188, 0, 0, 0, 0) +#define MX53_PAD_EIM_OE__GPIO_2_25 IOMUX_PAD(0x4D4, 0x188, 1, 0, 0, 0) +#define MX53_PAD_EIM_OE__ECSPI2_MISO IOMUX_PAD(0x4D4, 0x188, 2, 0x7BC, 2, 0) +#define MX53_PAD_EIM_OE__IPU_DI1_PIN7 IOMUX_PAD(0x4D4, 0x188, 3, 0, 0, 0) +#define MX53_PAD_EIM_OE__USBPHY2_IDDIG IOMUX_PAD(0x4D4, 0x188, 7, 0, 0, 0) +#define MX53_PAD_EIM_RW__EMI_WEIM_RW IOMUX_PAD(0x4D8, 0x18C, 0, 0, 0, 0) +#define MX53_PAD_EIM_RW__GPIO_2_26 IOMUX_PAD(0x4D8, 0x18C, 1, 0, 0, 0) +#define MX53_PAD_EIM_RW__ECSPI2_SS0 IOMUX_PAD(0x4D8, 0x18C, 2, 0x7C4, 2, 0) +#define MX53_PAD_EIM_RW__IPU_DI1_PIN8 IOMUX_PAD(0x4D8, 0x18C, 3, 0, 0, 0) +#define MX53_PAD_EIM_RW__USBPHY2_HOSTDISCONNECT IOMUX_PAD(0x4D8, 0x18C, 7, 0, 0, 0) +#define MX53_PAD_EIM_LBA__EMI_WEIM_LBA IOMUX_PAD(0x4DC, 0x190, 0, 0, 0, 0) +#define MX53_PAD_EIM_LBA__GPIO_2_27 IOMUX_PAD(0x4DC, 0x190, 1, 0, 0, 0) +#define MX53_PAD_EIM_LBA__ECSPI2_SS1 IOMUX_PAD(0x4DC, 0x190, 2, 0x7C8, 1, 0) +#define MX53_PAD_EIM_LBA__IPU_DI1_PIN17 IOMUX_PAD(0x4DC, 0x190, 3, 0, 0, 0) +#define MX53_PAD_EIM_LBA__SRC_BT_CFG1_0 IOMUX_PAD(0x4DC, 0x190, 7, 0, 0, 0) +#define MX53_PAD_EIM_EB0__EMI_WEIM_EB_0 IOMUX_PAD(0x4E4, 0x194, 0, 0, 0, 0) +#define MX53_PAD_EIM_EB0__GPIO_2_28 IOMUX_PAD(0x4E4, 0x194, 1, 0, 0, 0) +#define MX53_PAD_EIM_EB0__IPU_DISP1_DAT_11 IOMUX_PAD(0x4E4, 0x194, 3, 0, 0, 0) +#define MX53_PAD_EIM_EB0__IPU_CSI1_D_11 IOMUX_PAD(0x4E4, 0x194, 4, 0, 0, 0) +#define MX53_PAD_EIM_EB0__GPC_PMIC_RDY IOMUX_PAD(0x4E4, 0x194, 5, 0x810, 0, 0) +#define MX53_PAD_EIM_EB0__SRC_BT_CFG2_7 IOMUX_PAD(0x4E4, 0x194, 7, 0, 0, 0) +#define MX53_PAD_EIM_EB1__EMI_WEIM_EB_1 IOMUX_PAD(0x4E8, 0x198, 0, 0, 0, 0) +#define MX53_PAD_EIM_EB1__GPIO_2_29 IOMUX_PAD(0x4E8, 0x198, 1, 0, 0, 0) +#define MX53_PAD_EIM_EB1__IPU_DISP1_DAT_10 IOMUX_PAD(0x4E8, 0x198, 3, 0, 0, 0) +#define MX53_PAD_EIM_EB1__IPU_CSI1_D_10 IOMUX_PAD(0x4E8, 0x198, 4, 0, 0, 0) +#define MX53_PAD_EIM_EB1__SRC_BT_CFG2_6 IOMUX_PAD(0x4E8, 0x198, 7, 0, 0, 0) +#define MX53_PAD_EIM_DA0__EMI_NAND_WEIM_DA_0 IOMUX_PAD(0x4EC, 0x19C, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA0__GPIO_3_0 IOMUX_PAD(0x4EC, 0x19C, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA0__IPU_DISP1_DAT_9 IOMUX_PAD(0x4EC, 0x19C, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA0__IPU_CSI1_D_9 IOMUX_PAD(0x4EC, 0x19C, 4, 0, 0, 0) +#define MX53_PAD_EIM_DA0__SRC_BT_CFG2_5 IOMUX_PAD(0x4EC, 0x19C, 7, 0, 0, 0) +#define MX53_PAD_EIM_DA1__EMI_NAND_WEIM_DA_1 IOMUX_PAD(0x4F0, 0x1A0, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA1__GPIO_3_1 IOMUX_PAD(0x4F0, 0x1A0, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA1__IPU_DISP1_DAT_8 IOMUX_PAD(0x4F0, 0x1A0, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA1__IPU_CSI1_D_8 IOMUX_PAD(0x4F0, 0x1A0, 4, 0, 0, 0) +#define MX53_PAD_EIM_DA1__SRC_BT_CFG2_4 IOMUX_PAD(0x4F0, 0x1A0, 7, 0, 0, 0) +#define MX53_PAD_EIM_DA2__EMI_NAND_WEIM_DA_2 IOMUX_PAD(0x4F4, 0x1A4, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA2__GPIO_3_2 IOMUX_PAD(0x4F4, 0x1A4, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA2__IPU_DISP1_DAT_7 IOMUX_PAD(0x4F4, 0x1A4, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA2__IPU_CSI1_D_7 IOMUX_PAD(0x4F4, 0x1A4, 4, 0, 0, 0) +#define MX53_PAD_EIM_DA2__SRC_BT_CFG2_3 IOMUX_PAD(0x4F4, 0x1A4, 7, 0, 0, 0) +#define MX53_PAD_EIM_DA3__EMI_NAND_WEIM_DA_3 IOMUX_PAD(0x4F8, 0x1A8, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA3__GPIO_3_3 IOMUX_PAD(0x4F8, 0x1A8, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA3__IPU_DISP1_DAT_6 IOMUX_PAD(0x4F8, 0x1A8, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA3__IPU_CSI1_D_6 IOMUX_PAD(0x4F8, 0x1A8, 4, 0, 0, 0) +#define MX53_PAD_EIM_DA3__SRC_BT_CFG2_2 IOMUX_PAD(0x4F8, 0x1A8, 7, 0, 0, 0) +#define MX53_PAD_EIM_DA4__EMI_NAND_WEIM_DA_4 IOMUX_PAD(0x4FC, 0x1AC, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA4__GPIO_3_4 IOMUX_PAD(0x4FC, 0x1AC, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA4__IPU_DISP1_DAT_5 IOMUX_PAD(0x4FC, 0x1AC, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA4__IPU_CSI1_D_5 IOMUX_PAD(0x4FC, 0x1AC, 4, 0, 0, 0) +#define MX53_PAD_EIM_DA4__SRC_BT_CFG3_7 IOMUX_PAD(0x4FC, 0x1AC, 7, 0, 0, 0) +#define MX53_PAD_EIM_DA5__EMI_NAND_WEIM_DA_5 IOMUX_PAD(0x500, 0x1B0, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA5__GPIO_3_5 IOMUX_PAD(0x500, 0x1B0, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA5__IPU_DISP1_DAT_4 IOMUX_PAD(0x500, 0x1B0, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA5__IPU_CSI1_D_4 IOMUX_PAD(0x500, 0x1B0, 4, 0, 0, 0) +#define MX53_PAD_EIM_DA5__SRC_BT_CFG3_6 IOMUX_PAD(0x500, 0x1B0, 17, 0, 0, 0) +#define MX53_PAD_EIM_DA6__EMI_NAND_WEIM_DA_6 IOMUX_PAD(0x504, 0x1B4, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA6__GPIO_3_6 IOMUX_PAD(0x504, 0x1B4, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA6__IPU_DISP1_DAT_3 IOMUX_PAD(0x504, 0x1B4, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA6__IPU_CSI1_D_3 IOMUX_PAD(0x504, 0x1B4, 4, 0, 0, 0) +#define MX53_PAD_EIM_DA6__SRC_BT_CFG3_5 IOMUX_PAD(0x504, 0x1B4, 7, 0, 0, 0) +#define MX53_PAD_EIM_DA7__EMI_NAND_WEIM_DA_7 IOMUX_PAD(0x508, 0x1B8, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA7__GPIO_3_7 IOMUX_PAD(0x508, 0x1B8, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA7__IPU_DISP1_DAT_2 IOMUX_PAD(0x508, 0x1B8, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA7__IPU_CSI1_D_2 IOMUX_PAD(0x508, 0x1B8, 4, 0, 0, 0) +#define MX53_PAD_EIM_DA7__SRC_BT_CFG3_4 IOMUX_PAD(0x508, 0x1B8, 7, 0, 0, 0) +#define MX53_PAD_EIM_DA8__EMI_NAND_WEIM_DA_8 IOMUX_PAD(0x50C, 0x1BC, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA8__GPIO_3_8 IOMUX_PAD(0x50C, 0x1BC, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA8__IPU_DISP1_DAT_1 IOMUX_PAD(0x50C, 0x1BC, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA8__IPU_CSI1_D_1 IOMUX_PAD(0x50C, 0x1BC, 4, 0, 0, 0) +#define MX53_PAD_EIM_DA8__SRC_BT_CFG3_3 IOMUX_PAD(0x50C, 0x1BC, 7, 0, 0, 0) +#define MX53_PAD_EIM_DA9__EMI_NAND_WEIM_DA_9 IOMUX_PAD(0x510, 0x1C0, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA9__GPIO_3_9 IOMUX_PAD(0x510, 0x1C0, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA9__IPU_DISP1_DAT_0 IOMUX_PAD(0x510, 0x1C0, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA9__IPU_CSI1_D_0 IOMUX_PAD(0x510, 0x1C0, 4, 0, 0, 0) +#define MX53_PAD_EIM_DA9__SRC_BT_CFG3_2 IOMUX_PAD(0x510, 0x1C0, 7, 0, 0, 0) +#define MX53_PAD_EIM_DA10__EMI_NAND_WEIM_DA_10 IOMUX_PAD(0x514, 0x1C4, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA10__GPIO_3_10 IOMUX_PAD(0x514, 0x1C4, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA10__IPU_DI1_PIN15 IOMUX_PAD(0x514, 0x1C4, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA10__IPU_CSI1_DATA_EN IOMUX_PAD(0x514, 0x1C4, 4, 0x834, 1, 0) +#define MX53_PAD_EIM_DA10__SRC_BT_CFG3_1 IOMUX_PAD(0x514, 0x1C4, 7, 0, 0, 0) +#define MX53_PAD_EIM_DA11__EMI_NAND_WEIM_DA_11 IOMUX_PAD(0x518, 0x1C8, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA11__GPIO_3_11 IOMUX_PAD(0x518, 0x1C8, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA11__IPU_DI1_PIN2 IOMUX_PAD(0x518, 0x1C8, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA11__IPU_CSI1_HSYNC IOMUX_PAD(0x518, 0x1C8, 4, 0x838, 1, 0) +#define MX53_PAD_EIM_DA12__EMI_NAND_WEIM_DA_12 IOMUX_PAD(0x51C, 0x1CC, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA12__GPIO_3_12 IOMUX_PAD(0x51C, 0x1CC, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA12__IPU_DI1_PIN3 IOMUX_PAD(0x51C, 0x1CC, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA12__IPU_CSI1_VSYNC IOMUX_PAD(0x51C, 0x1CC, 4, 0x83C, 1, 0) +#define MX53_PAD_EIM_DA13__EMI_NAND_WEIM_DA_13 IOMUX_PAD(0x520, 0x1D0, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA13__GPIO_3_13 IOMUX_PAD(0x520, 0x1D0, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA13__IPU_DI1_D0_CS IOMUX_PAD(0x520, 0x1D0, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA13__CCM_DI1_EXT_CLK IOMUX_PAD(0x520, 0x1D0, 4, 0x76C, 1, 0) +#define MX53_PAD_EIM_DA14__EMI_NAND_WEIM_DA_14 IOMUX_PAD(0x524, 0x1D4, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA14__GPIO_3_14 IOMUX_PAD(0x524, 0x1D4, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA14__IPU_DI1_D1_CS IOMUX_PAD(0x524, 0x1D4, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA14__CCM_DI0_EXT_CLK IOMUX_PAD(0x524, 0x1D4, 4, 0, 0, 0) +#define MX53_PAD_EIM_DA15__EMI_NAND_WEIM_DA_15 IOMUX_PAD(0x528, 0x1D8, 0, 0, 0, 0) +#define MX53_PAD_EIM_DA15__GPIO_3_15 IOMUX_PAD(0x528, 0x1D8, 1, 0, 0, 0) +#define MX53_PAD_EIM_DA15__IPU_DI1_PIN1 IOMUX_PAD(0x528, 0x1D8, 3, 0, 0, 0) +#define MX53_PAD_EIM_DA15__IPU_DI1_PIN4 IOMUX_PAD(0x528, 0x1D8, 4, 0, 0, 0) +#define MX53_PAD_NANDF_WE_B__EMI_NANDF_WE_B IOMUX_PAD(0x52C, 0x1DC, 0, 0, 0, 0) +#define MX53_PAD_NANDF_WE_B__GPIO_6_12 IOMUX_PAD(0x52C, 0x1DC, 1, 0, 0, 0) +#define MX53_PAD_NANDF_RE_B__EMI_NANDF_RE_B IOMUX_PAD(0x530, 0x1E0, 0, 0, 0, 0) +#define MX53_PAD_NANDF_RE_B__GPIO_6_13 IOMUX_PAD(0x530, 0x1E0, 1, 0, 0, 0) +#define MX53_PAD_EIM_WAIT__EMI_WEIM_WAIT IOMUX_PAD(0x534, 0x1E4, 0, 0, 0, 0) +#define MX53_PAD_EIM_WAIT__GPIO_5_0 IOMUX_PAD(0x534, 0x1E4, 1, 0, 0, 0) +#define MX53_PAD_EIM_WAIT__EMI_WEIM_DTACK_B IOMUX_PAD(0x534, 0x1E4, 2, 0, 0, 0) +#define MX53_PAD_LVDS1_TX3_P__GPIO_6_22 IOMUX_PAD(NON_PAD_I, 0x1EC, 0, 0, 0, 0) +#define MX53_PAD_LVDS1_TX3_P__LDB_LVDS1_TX3 IOMUX_PAD(NON_PAD_I, 0x1EC, 1, 0, 0, 0) +#define MX53_PAD_LVDS1_TX2_P__GPIO_6_24 IOMUX_PAD(NON_PAD_I, 0x1F0, 0, 0, 0, 0) +#define MX53_PAD_LVDS1_TX2_P__LDB_LVDS1_TX2 IOMUX_PAD(NON_PAD_I, 0x1F0, 1, 0, 0, 0) +#define MX53_PAD_LVDS1_CLK_P__GPIO_6_26 IOMUX_PAD(NON_PAD_I, 0x1F4, 0, 0, 0, 0) +#define MX53_PAD_LVDS1_CLK_P__LDB_LVDS1_CLK IOMUX_PAD(NON_PAD_I, 0x1F4, 1, 0, 0, 0) +#define MX53_PAD_LVDS1_TX1_P__GPIO_6_28 IOMUX_PAD(NON_PAD_I, 0x1F8, 0, 0, 0, 0) +#define MX53_PAD_LVDS1_TX1_P__LDB_LVDS1_TX1 IOMUX_PAD(NON_PAD_I, 0x1F8, 1, 0, 0, 0) +#define MX53_PAD_LVDS1_TX0_P__GPIO_6_30 IOMUX_PAD(NON_PAD_I, 0x1FC, 0, 0, 0, 0) +#define MX53_PAD_LVDS1_TX0_P__LDB_LVDS1_TX0 IOMUX_PAD(NON_PAD_I, 0x1FC, 1, 0, 0, 0) +#define MX53_PAD_LVDS0_TX3_P__GPIO_7_22 IOMUX_PAD(NON_PAD_I, 0x200, 0, 0, 0, 0) +#define MX53_PAD_LVDS0_TX3_P__LDB_LVDS0_TX3 IOMUX_PAD(NON_PAD_I, 0x200, 1, 0, 0, 0) +#define MX53_PAD_LVDS0_CLK_P__GPIO_7_24 IOMUX_PAD(NON_PAD_I, 0x204, 0, 0, 0, 0) +#define MX53_PAD_LVDS0_CLK_P__LDB_LVDS0_CLK IOMUX_PAD(NON_PAD_I, 0x204, 1, 0, 0, 0) +#define MX53_PAD_LVDS0_TX2_P__GPIO_7_26 IOMUX_PAD(NON_PAD_I, 0x208, 0, 0, 0, 0) +#define MX53_PAD_LVDS0_TX2_P__LDB_LVDS0_TX2 IOMUX_PAD(NON_PAD_I, 0x208, 1, 0, 0, 0) +#define MX53_PAD_LVDS0_TX1_P__GPIO_7_28 IOMUX_PAD(NON_PAD_I, 0x20C, 0, 0, 0, 0) +#define MX53_PAD_LVDS0_TX1_P__LDB_LVDS0_TX1 IOMUX_PAD(NON_PAD_I, 0x20C, 1, 0, 0, 0) +#define MX53_PAD_LVDS0_TX0_P__GPIO_7_30 IOMUX_PAD(NON_PAD_I, 0x210, 0, 0, 0, 0) +#define MX53_PAD_LVDS0_TX0_P__LDB_LVDS0_TX0 IOMUX_PAD(NON_PAD_I, 0x210, 1, 0, 0, 0) +#define MX53_PAD_GPIO_10__GPIO_4_0 IOMUX_PAD(0x540, 0x214, 0, 0, 0, 0) +#define MX53_PAD_GPIO_10__OSC32k_32K_OUT IOMUX_PAD(0x540, 0x214, 1, 0, 0, 0) +#define MX53_PAD_GPIO_11__GPIO_4_1 IOMUX_PAD(0x544, 0x218, 0, 0, 0, 0) +#define MX53_PAD_GPIO_12__GPIO_4_2 IOMUX_PAD(0x548, 0x21C, 0, 0, 0, 0) +#define MX53_PAD_GPIO_13__GPIO_4_3 IOMUX_PAD(0x54C, 0x220, 0, 0, 0, 0) +#define MX53_PAD_GPIO_14__GPIO_4_4 IOMUX_PAD(0x550, 0x224, 0, 0, 0, 0) +#define MX53_PAD_NANDF_CLE__EMI_NANDF_CLE IOMUX_PAD(0x5A0, 0x228, 0, 0, 0, 0) +#define MX53_PAD_NANDF_CLE__GPIO_6_7 IOMUX_PAD(0x5A0, 0x228, 1, 0, 0, 0) +#define MX53_PAD_NANDF_CLE__USBPHY1_VSTATUS_0 IOMUX_PAD(0x5A0, 0x228, 7, 0, 0, 0) +#define MX53_PAD_NANDF_ALE__EMI_NANDF_ALE IOMUX_PAD(0x5A4, 0x22C, 0, 0, 0, 0) +#define MX53_PAD_NANDF_ALE__GPIO_6_8 IOMUX_PAD(0x5A4, 0x22C, 1, 0, 0, 0) +#define MX53_PAD_NANDF_ALE__USBPHY1_VSTATUS_1 IOMUX_PAD(0x5A4, 0x22C, 7, 0, 0, 0) +#define MX53_PAD_NANDF_WP_B__EMI_NANDF_WP_B IOMUX_PAD(0x5A8, 0x230, 0, 0, 0, 0) +#define MX53_PAD_NANDF_WP_B__GPIO_6_9 IOMUX_PAD(0x5A8, 0x230, 1, 0, 0, 0) +#define MX53_PAD_NANDF_WP_B__USBPHY1_VSTATUS_2 IOMUX_PAD(0x5A8, 0x230, 7, 0, 0, 0) +#define MX53_PAD_NANDF_RB0__EMI_NANDF_RB_0 IOMUX_PAD(0x5AC, 0x234, 0, 0, 0, 0) +#define MX53_PAD_NANDF_RB0__GPIO_6_10 IOMUX_PAD(0x5AC, 0x234, 1, 0, 0, 0) +#define MX53_PAD_NANDF_RB0__USBPHY1_VSTATUS_3 IOMUX_PAD(0x5AC, 0x234, 7, 0, 0, 0) +#define MX53_PAD_NANDF_CS0__EMI_NANDF_CS_0 IOMUX_PAD(0x5B0, 0x238, 0, 0, 0, 0) +#define MX53_PAD_NANDF_CS0__GPIO_6_11 IOMUX_PAD(0x5B0, 0x238, 1, 0, 0, 0) +#define MX53_PAD_NANDF_CS0__USBPHY1_VSTATUS_4 IOMUX_PAD(0x5B0, 0x238, 7, 0, 0, 0) +#define MX53_PAD_NANDF_CS1__EMI_NANDF_CS_1 IOMUX_PAD(0x5B4, 0x23C, 0, 0, 0, 0) +#define MX53_PAD_NANDF_CS1__GPIO_6_14 IOMUX_PAD(0x5B4, 0x23C, 1, 0, 0, 0) +#define MX53_PAD_NANDF_CS1__MLB_MLBCLK IOMUX_PAD(0x5B4, 0x23C, 6, 0x858, 0, 0) +#define MX53_PAD_NANDF_CS1__USBPHY1_VSTATUS_5 IOMUX_PAD(0x5B4, 0x23C, 7, 0, 0, 0) +#define MX53_PAD_NANDF_CS2__EMI_NANDF_CS_2 IOMUX_PAD(0x5B8, 0x240, 0, 0, 0, 0) +#define MX53_PAD_NANDF_CS2__GPIO_6_15 IOMUX_PAD(0x5B8, 0x240, 1, 0, 0, 0) +#define MX53_PAD_NANDF_CS2__IPU_SISG_0 IOMUX_PAD(0x5B8, 0x240, 2, 0, 0, 0) +#define MX53_PAD_NANDF_CS2__ESAI1_TX0 IOMUX_PAD(0x5B8, 0x240, 3, 0x7E4, 0, 0) +#define MX53_PAD_NANDF_CS2__EMI_WEIM_CRE IOMUX_PAD(0x5B8, 0x240, 4, 0, 0, 0) +#define MX53_PAD_NANDF_CS2__CCM_CSI0_MCLK IOMUX_PAD(0x5B8, 0x240, 5, 0, 0, 0) +#define MX53_PAD_NANDF_CS2__MLB_MLBSIG IOMUX_PAD(0x5B8, 0x240, 6, 0x860, 0, 0) +#define MX53_PAD_NANDF_CS2__USBPHY1_VSTATUS_6 IOMUX_PAD(0x5B8, 0x240, 7, 0, 0, 0) +#define MX53_PAD_NANDF_CS3__EMI_NANDF_CS_3 IOMUX_PAD(0x5BC, 0x244, 0, 0, 0, 0) +#define MX53_PAD_NANDF_CS3__GPIO_6_16 IOMUX_PAD(0x5BC, 0x244, 1, 0, 0, 0) +#define MX53_PAD_NANDF_CS3__IPU_SISG_1 IOMUX_PAD(0x5BC, 0x244, 2, 0, 0, 0) +#define MX53_PAD_NANDF_CS3__ESAI1_TX1 IOMUX_PAD(0x5BC, 0x244, 3, 0x7E8, 0, 0) +#define MX53_PAD_NANDF_CS3__EMI_WEIM_A_26 IOMUX_PAD(0x5BC, 0x244, 4, 0, 0, 0) +#define MX53_PAD_NANDF_CS3__MLB_MLBDAT IOMUX_PAD(0x5BC, 0x244, 6, 0x85C, 0, 0) +#define MX53_PAD_NANDF_CS3__USBPHY1_VSTATUS_7 IOMUX_PAD(0x5BC, 0x244, 7, 0, 0, 0) +#define MX53_PAD_FEC_MDIO__FEC_MDIO IOMUX_PAD(0x5C4, 0x248, 0, 0x804, 1, 0) +#define MX53_PAD_FEC_MDIO__GPIO_1_22 IOMUX_PAD(0x5C4, 0x248, 1, 0, 0, 0) +#define MX53_PAD_FEC_MDIO__ESAI1_SCKR IOMUX_PAD(0x5C4, 0x248, 2, 0x7DC, 0, 0) +#define MX53_PAD_FEC_MDIO__FEC_COL IOMUX_PAD(0x5C4, 0x248, 3, 0x800, 1, 0) +#define MX53_PAD_FEC_MDIO__RTC_CE_RTC_PS2 IOMUX_PAD(0x5C4, 0x248, 4, 0, 0, 0) +#define MX53_PAD_FEC_MDIO__SDMA_DEBUG_BUS_DEVICE_3 IOMUX_PAD(0x5C4, 0x248, 5, 0, 0, 0) +#define MX53_PAD_FEC_MDIO__EMI_EMI_DEBUG_49 IOMUX_PAD(0x5C4, 0x248, 6, 0, 0, 0) +#define MX53_PAD_FEC_REF_CLK__FEC_TX_CLK IOMUX_PAD(0x5C8, 0x24C, 0, 0, 0, 0) +#define MX53_PAD_FEC_REF_CLK__GPIO_1_23 IOMUX_PAD(0x5C8, 0x24C, 1, 0, 0, 0) +#define MX53_PAD_FEC_REF_CLK__ESAI1_FSR IOMUX_PAD(0x5C8, 0x24C, 2, 0x7CC, 0, 0) +#define MX53_PAD_FEC_REF_CLK__SDMA_DEBUG_BUS_DEVICE_4 IOMUX_PAD(0x5C8, 0x24C, 5, 0, 0, 0) +#define MX53_PAD_FEC_REF_CLK__EMI_EMI_DEBUG_50 IOMUX_PAD(0x5C8, 0x24C, 6, 0, 0, 0) +#define MX53_PAD_FEC_RX_ER__FEC_RX_ER IOMUX_PAD(0x5CC, 0x250, 0, 0, 0, 0) +#define MX53_PAD_FEC_RX_ER__GPIO_1_24 IOMUX_PAD(0x5CC, 0x250, 1, 0, 0, 0) +#define MX53_PAD_FEC_RX_ER__ESAI1_HCKR IOMUX_PAD(0x5CC, 0x250, 2, 0x7D4, 0, 0) +#define MX53_PAD_FEC_RX_ER__FEC_RX_CLK IOMUX_PAD(0x5CC, 0x250, 3, 0x808, 1, 0) +#define MX53_PAD_FEC_RX_ER__RTC_CE_RTC_PS3 IOMUX_PAD(0x5CC, 0x250, 4, 0, 0, 0) +#define MX53_PAD_FEC_CRS_DV__FEC_RX_DV IOMUX_PAD(0x5D0, 0x254, 0, 0, 0, 0) +#define MX53_PAD_FEC_CRS_DV__GPIO_1_25 IOMUX_PAD(0x5D0, 0x254, 1, 0, 0, 0) +#define MX53_PAD_FEC_CRS_DV__ESAI1_SCKT IOMUX_PAD(0x5D0, 0x254, 2, 0x7E0, 0, 0) +#define MX53_PAD_FEC_RXD1__FEC_RDATA_1 IOMUX_PAD(0x5D4, 0x258, 0, 0, 0, 0) +#define MX53_PAD_FEC_RXD1__GPIO_1_26 IOMUX_PAD(0x5D4, 0x258, 1, 0, 0, 0) +#define MX53_PAD_FEC_RXD1__ESAI1_FST IOMUX_PAD(0x5D4, 0x258, 2, 0x7D0, 0, 0) +#define MX53_PAD_FEC_RXD1__MLB_MLBSIG IOMUX_PAD(0x5D4, 0x258, 3, 0x860, 1, 0) +#define MX53_PAD_FEC_RXD1__RTC_CE_RTC_PS1 IOMUX_PAD(0x5D4, 0x258, 4, 0, 0, 0) +#define MX53_PAD_FEC_RXD0__FEC_RDATA_0 IOMUX_PAD(0x5D8, 0x25C, 0, 0, 0, 0) +#define MX53_PAD_FEC_RXD0__GPIO_1_27 IOMUX_PAD(0x5D8, 0x25C, 1, 0, 0, 0) +#define MX53_PAD_FEC_RXD0__ESAI1_HCKT IOMUX_PAD(0x5D8, 0x25C, 2, 0x7D8, 0, 0) +#define MX53_PAD_FEC_RXD0__OSC32k_32K_OUT IOMUX_PAD(0x5D8, 0x25C, 3, 0, 0, 0) +#define MX53_PAD_FEC_TX_EN__FEC_TX_EN IOMUX_PAD(0x5DC, 0x260, 0, 0, 0, 0) +#define MX53_PAD_FEC_TX_EN__GPIO_1_28 IOMUX_PAD(0x5DC, 0x260, 1, 0, 0, 0) +#define MX53_PAD_FEC_TX_EN__ESAI1_TX3_RX2 IOMUX_PAD(0x5DC, 0x260, 2, 0x7F0, 0, 0) +#define MX53_PAD_FEC_TXD1__FEC_TDATA_1 IOMUX_PAD(0x5E0, 0x264, 0, 0, 0, 0) +#define MX53_PAD_FEC_TXD1__GPIO_1_29 IOMUX_PAD(0x5E0, 0x264, 1, 0, 0, 0) +#define MX53_PAD_FEC_TXD1__ESAI1_TX2_RX3 IOMUX_PAD(0x5E0, 0x264, 2, 0x7EC, 0, 0) +#define MX53_PAD_FEC_TXD1__MLB_MLBCLK IOMUX_PAD(0x5E0, 0x264, 3, 0x858, 1, 0) +#define MX53_PAD_FEC_TXD1__RTC_CE_RTC_PRSC_CLK IOMUX_PAD(0x5E0, 0x264, 4, 0, 0, 0) +#define MX53_PAD_FEC_TXD0__FEC_TDATA_0 IOMUX_PAD(0x5E4, 0x268, 0, 0, 0, 0) +#define MX53_PAD_FEC_TXD0__GPIO_1_30 IOMUX_PAD(0x5E4, 0x268, 1, 0, 0, 0) +#define MX53_PAD_FEC_TXD0__ESAI1_TX4_RX1 IOMUX_PAD(0x5E4, 0x268, 2, 0x7F4, 0, 0) +#define MX53_PAD_FEC_TXD0__USBPHY2_DATAOUT_0 IOMUX_PAD(0x5E4, 0x268, 7, 0, 0, 0) +#define MX53_PAD_FEC_MDC__FEC_MDC IOMUX_PAD(0x5E8, 0x26C, 0, 0, 0, 0) +#define MX53_PAD_FEC_MDC__GPIO_1_31 IOMUX_PAD(0x5E8, 0x26C, 1, 0, 0, 0) +#define MX53_PAD_FEC_MDC__ESAI1_TX5_RX0 IOMUX_PAD(0x5E8, 0x26C, 2, 0x7F8, 0, 0) +#define MX53_PAD_FEC_MDC__MLB_MLBDAT IOMUX_PAD(0x5E8, 0x26C, 3, 0x85C, 1, 0) +#define MX53_PAD_FEC_MDC__RTC_CE_RTC_ALARM1_TRIG IOMUX_PAD(0x5E8, 0x26C, 4, 0, 0, 0) +#define MX53_PAD_FEC_MDC__USBPHY2_DATAOUT_1 IOMUX_PAD(0x5E8, 0x26C, 7, 0, 0, 0) +#define MX53_PAD_PATA_DIOW__PATA_DIOW IOMUX_PAD(0x5F0, 0x270, 0, 0, 0, 0) +#define MX53_PAD_PATA_DIOW__GPIO_6_17 IOMUX_PAD(0x5F0, 0x270, 1, 0, 0, 0) +#define MX53_PAD_PATA_DIOW__UART1_TXD_MUX IOMUX_PAD(0x5F0, 0x270, 3, 0, 0, 0) +#define MX53_PAD_PATA_DIOW__USBPHY2_DATAOUT_2 IOMUX_PAD(0x5F0, 0x270, 7, 0, 0, 0) +#define MX53_PAD_PATA_DMACK__PATA_DMACK IOMUX_PAD(0x5F4, 0x274, 0, 0, 0, 0) +#define MX53_PAD_PATA_DMACK__GPIO_6_18 IOMUX_PAD(0x5F4, 0x274, 1, 0, 0, 0) +#define MX53_PAD_PATA_DMACK__UART1_RXD_MUX IOMUX_PAD(0x5F4, 0x274, 3, 0x878, 3, 0) +#define MX53_PAD_PATA_DMACK__USBPHY2_DATAOUT_3 IOMUX_PAD(0x5F4, 0x274, 7, 0, 0, 0) +#define MX53_PAD_PATA_DMARQ__PATA_DMARQ IOMUX_PAD(0x5F8, 0x278, 0, 0, 0, 0) +#define MX53_PAD_PATA_DMARQ__GPIO_7_0 IOMUX_PAD(0x5F8, 0x278, 1, 0, 0, 0) +#define MX53_PAD_PATA_DMARQ__UART2_TXD_MUX IOMUX_PAD(0x5F8, 0x278, 3, 0, 0, 0) +#define MX53_PAD_PATA_DMARQ__CCM_CCM_OUT_0 IOMUX_PAD(0x5F8, 0x278, 5, 0, 0, 0) +#define MX53_PAD_PATA_DMARQ__USBPHY2_DATAOUT_4 IOMUX_PAD(0x5F8, 0x278, 7, 0, 0, 0) +#define MX53_PAD_PATA_BUFFER_EN__PATA_BUFFER_EN IOMUX_PAD(0x5FC, 0x27C, 0, 0, 0, 0) +#define MX53_PAD_PATA_BUFFER_EN__GPIO_7_1 IOMUX_PAD(0x5FC, 0x27C, 1, 0, 0, 0) +#define MX53_PAD_PATA_BUFFER_EN__UART2_RXD_MUX IOMUX_PAD(0x5FC, 0x27C, 3, 0x880, 3, 0) +#define MX53_PAD_PATA_BUFFER_EN__CCM_CCM_OUT_1 IOMUX_PAD(0x5FC, 0x27C, 5, 0, 0, 0) +#define MX53_PAD_PATA_BUFFER_EN__USBPHY2_DATAOUT_5 IOMUX_PAD(0x5FC, 0x27C, 7, 0, 0, 0) +#define MX53_PAD_PATA_INTRQ__PATA_INTRQ IOMUX_PAD(0x600, 0x280, 0, 0, 0, 0) +#define MX53_PAD_PATA_INTRQ__GPIO_7_2 IOMUX_PAD(0x600, 0x280, 1, 0, 0, 0) +#define MX53_PAD_PATA_INTRQ__UART2_CTS IOMUX_PAD(0x600, 0x280, 3, 0x87C, 2, 0) +#define MX53_PAD_PATA_INTRQ__CAN1_TXCAN IOMUX_PAD(0x600, 0x280, 4, 0, 0, 0) +#define MX53_PAD_PATA_INTRQ__CCM_CCM_OUT_2 IOMUX_PAD(0x600, 0x280, 5, 0, 0, 0) +#define MX53_PAD_PATA_INTRQ__USBPHY2_DATAOUT_6 IOMUX_PAD(0x600, 0x280, 7, 0, 0, 0) +#define MX53_PAD_PATA_DIOR__PATA_DIOR IOMUX_PAD(0x604, 0x284, 0, 0, 0, 0) +#define MX53_PAD_PATA_DIOR__GPIO_7_3 IOMUX_PAD(0x604, 0x284, 1, 0, 0, 0) +#define MX53_PAD_PATA_DIOR__UART2_RTS IOMUX_PAD(0x604, 0x284, 3, 0x87C, 3, 0) +#define MX53_PAD_PATA_DIOR__CAN1_RXCAN IOMUX_PAD(0x604, 0x284, 4, 0x760, 1, 0) +#define MX53_PAD_PATA_DIOR__USBPHY2_DATAOUT_7 IOMUX_PAD(0x604, 0x284, 7, 0, 0, 0) +#define MX53_PAD_PATA_RESET_B__PATA_PATA_RESET_B IOMUX_PAD(0x608, 0x288, 0, 0, 0, 0) +#define MX53_PAD_PATA_RESET_B__GPIO_7_4 IOMUX_PAD(0x608, 0x288, 1, 0, 0, 0) +#define MX53_PAD_PATA_RESET_B__ESDHC3_CMD IOMUX_PAD(0x608, 0x288, 2, 0, 0, 0) +#define MX53_PAD_PATA_RESET_B__UART1_CTS IOMUX_PAD(0x608, 0x288, 3, 0x874, 2, 0) +#define MX53_PAD_PATA_RESET_B__CAN2_TXCAN IOMUX_PAD(0x608, 0x288, 4, 0, 0, 0) +#define MX53_PAD_PATA_RESET_B__USBPHY1_DATAOUT_0 IOMUX_PAD(0x608, 0x288, 7, 0, 0, 0) +#define MX53_PAD_PATA_IORDY__PATA_IORDY IOMUX_PAD(0x60C, 0x28C, 0, 0, 0, 0) +#define MX53_PAD_PATA_IORDY__GPIO_7_5 IOMUX_PAD(0x60C, 0x28C, 1, 0, 0, 0) +#define MX53_PAD_PATA_IORDY__ESDHC3_CLK IOMUX_PAD(0x60C, 0x28C, 2, 0, 0, 0) +#define MX53_PAD_PATA_IORDY__UART1_RTS IOMUX_PAD(0x60C, 0x28C, 3, 0x874, 3, 0) +#define MX53_PAD_PATA_IORDY__CAN2_RXCAN IOMUX_PAD(0x60C, 0x28C, 4, 0x764, 1, 0) +#define MX53_PAD_PATA_IORDY__USBPHY1_DATAOUT_1 IOMUX_PAD(0x60C, 0x28C, 7, 0, 0, 0) +#define MX53_PAD_PATA_DA_0__PATA_DA_0 IOMUX_PAD(0x610, 0x290, 0, 0, 0, 0) +#define MX53_PAD_PATA_DA_0__GPIO_7_6 IOMUX_PAD(0x610, 0x290, 1, 0, 0, 0) +#define MX53_PAD_PATA_DA_0__ESDHC3_RST IOMUX_PAD(0x610, 0x290, 2, 0, 0, 0) +#define MX53_PAD_PATA_DA_0__OWIRE_LINE IOMUX_PAD(0x610, 0x290, 4, 0x864, 0, 0) +#define MX53_PAD_PATA_DA_0__USBPHY1_DATAOUT_2 IOMUX_PAD(0x610, 0x290, 7, 0, 0, 0) +#define MX53_PAD_PATA_DA_1__PATA_DA_1 IOMUX_PAD(0x614, 0x294, 0, 0, 0, 0) +#define MX53_PAD_PATA_DA_1__GPIO_7_7 IOMUX_PAD(0x614, 0x294, 1, 0, 0, 0) +#define MX53_PAD_PATA_DA_1__ESDHC4_CMD IOMUX_PAD(0x614, 0x294, 2, 0, 0, 0) +#define MX53_PAD_PATA_DA_1__UART3_CTS IOMUX_PAD(0x614, 0x294, 4, 0x884, 4, 0) +#define MX53_PAD_PATA_DA_1__USBPHY1_DATAOUT_3 IOMUX_PAD(0x614, 0x294, 7, 0, 0, 0) +#define MX53_PAD_PATA_DA_2__PATA_DA_2 IOMUX_PAD(0x618, 0x298, 0, 0, 0, 0) +#define MX53_PAD_PATA_DA_2__GPIO_7_8 IOMUX_PAD(0x618, 0x298, 1, 0, 0, 0) +#define MX53_PAD_PATA_DA_2__ESDHC4_CLK IOMUX_PAD(0x618, 0x298, 2, 0, 0, 0) +#define MX53_PAD_PATA_DA_2__UART3_RTS IOMUX_PAD(0x618, 0x298, 4, 0x884, 5, 0) +#define MX53_PAD_PATA_DA_2__USBPHY1_DATAOUT_4 IOMUX_PAD(0x618, 0x298, 7, 0, 0, 0) +#define MX53_PAD_PATA_CS_0__PATA_CS_0 IOMUX_PAD(0x61C, 0x29C, 0, 0, 0, 0) +#define MX53_PAD_PATA_CS_0__GPIO_7_9 IOMUX_PAD(0x61C, 0x29C, 1, 0, 0, 0) +#define MX53_PAD_PATA_CS_0__UART3_TXD_MUX IOMUX_PAD(0x61C, 0x29C, 4, 0, 0, 0) +#define MX53_PAD_PATA_CS_0__USBPHY1_DATAOUT_5 IOMUX_PAD(0x61C, 0x29C, 7, 0, 0, 0) +#define MX53_PAD_PATA_CS_1__PATA_CS_1 IOMUX_PAD(0x620, 0x2A0, 0, 0, 0, 0) +#define MX53_PAD_PATA_CS_1__GPIO_7_10 IOMUX_PAD(0x620, 0x2A0, 1, 0, 0, 0) +#define MX53_PAD_PATA_CS_1__UART3_RXD_MUX IOMUX_PAD(0x620, 0x2A0, 4, 0x888, 3, 0) +#define MX53_PAD_PATA_CS_1__USBPHY1_DATAOUT_6 IOMUX_PAD(0x620, 0x2A0, 7, 0, 0, 0) +#define MX53_PAD_PATA_DATA0__PATA_DATA_0 IOMUX_PAD(0x628, 0x2A4, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA0__GPIO_2_0 IOMUX_PAD(0x628, 0x2A4, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA0__EMI_NANDF_D_0 IOMUX_PAD(0x628, 0x2A4, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA0__ESDHC3_DAT4 IOMUX_PAD(0x628, 0x2A4, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA0__GPU3d_GPU_DEBUG_OUT_0 IOMUX_PAD(0x628, 0x2A4, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA0__IPU_DIAG_BUS_0 IOMUX_PAD(0x628, 0x2A4, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA0__USBPHY1_DATAOUT_7 IOMUX_PAD(0x628, 0x2A4, 7, 0, 0, 0) +#define MX53_PAD_PATA_DATA1__PATA_DATA_1 IOMUX_PAD(0x62C, 0x2A8, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA1__GPIO_2_1 IOMUX_PAD(0x62C, 0x2A8, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA1__EMI_NANDF_D_1 IOMUX_PAD(0x62C, 0x2A8, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA1__ESDHC3_DAT5 IOMUX_PAD(0x62C, 0x2A8, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA1__GPU3d_GPU_DEBUG_OUT_1 IOMUX_PAD(0x62C, 0x2A8, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA1__IPU_DIAG_BUS_1 IOMUX_PAD(0x62C, 0x2A8, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA2__PATA_DATA_2 IOMUX_PAD(0x630, 0x2AC, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA2__GPIO_2_2 IOMUX_PAD(0x630, 0x2AC, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA2__EMI_NANDF_D_2 IOMUX_PAD(0x630, 0x2AC, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA2__ESDHC3_DAT6 IOMUX_PAD(0x630, 0x2AC, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA2__GPU3d_GPU_DEBUG_OUT_2 IOMUX_PAD(0x630, 0x2AC, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA2__IPU_DIAG_BUS_2 IOMUX_PAD(0x630, 0x2AC, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA3__PATA_DATA_3 IOMUX_PAD(0x634, 0x2B0, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA3__GPIO_2_3 IOMUX_PAD(0x634, 0x2B0, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA3__EMI_NANDF_D_3 IOMUX_PAD(0x634, 0x2B0, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA3__ESDHC3_DAT7 IOMUX_PAD(0x634, 0x2B0, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA3__GPU3d_GPU_DEBUG_OUT_3 IOMUX_PAD(0x634, 0x2B0, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA3__IPU_DIAG_BUS_3 IOMUX_PAD(0x634, 0x2B0, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA4__PATA_DATA_4 IOMUX_PAD(0x638, 0x2B4, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA4__GPIO_2_4 IOMUX_PAD(0x638, 0x2B4, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA4__EMI_NANDF_D_4 IOMUX_PAD(0x638, 0x2B4, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA4__ESDHC4_DAT4 IOMUX_PAD(0x638, 0x2B4, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA4__GPU3d_GPU_DEBUG_OUT_4 IOMUX_PAD(0x638, 0x2B4, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA4__IPU_DIAG_BUS_4 IOMUX_PAD(0x638, 0x2B4, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA5__PATA_DATA_5 IOMUX_PAD(0x63C, 0x2B8, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA5__GPIO_2_5 IOMUX_PAD(0x63C, 0x2B8, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA5__EMI_NANDF_D_5 IOMUX_PAD(0x63C, 0x2B8, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA5__ESDHC4_DAT5 IOMUX_PAD(0x63C, 0x2B8, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA5__GPU3d_GPU_DEBUG_OUT_5 IOMUX_PAD(0x63C, 0x2B8, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA5__IPU_DIAG_BUS_5 IOMUX_PAD(0x63C, 0x2B8, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA6__PATA_DATA_6 IOMUX_PAD(0x640, 0x2BC, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA6__GPIO_2_6 IOMUX_PAD(0x640, 0x2BC, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA6__EMI_NANDF_D_6 IOMUX_PAD(0x640, 0x2BC, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA6__ESDHC4_DAT6 IOMUX_PAD(0x640, 0x2BC, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA6__GPU3d_GPU_DEBUG_OUT_6 IOMUX_PAD(0x640, 0x2BC, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA6__IPU_DIAG_BUS_6 IOMUX_PAD(0x640, 0x2BC, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA7__PATA_DATA_7 IOMUX_PAD(0x644, 0x2C0, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA7__GPIO_2_7 IOMUX_PAD(0x644, 0x2C0, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA7__EMI_NANDF_D_7 IOMUX_PAD(0x644, 0x2C0, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA7__ESDHC4_DAT7 IOMUX_PAD(0x644, 0x2C0, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA7__GPU3d_GPU_DEBUG_OUT_7 IOMUX_PAD(0x644, 0x2C0, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA7__IPU_DIAG_BUS_7 IOMUX_PAD(0x644, 0x2C0, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA8__PATA_DATA_8 IOMUX_PAD(0x648, 0x2C4, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA8__GPIO_2_8 IOMUX_PAD(0x648, 0x2C4, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA8__ESDHC1_DAT4 IOMUX_PAD(0x648, 0x2C4, 2, 0, 0, 0) +#define MX53_PAD_PATA_DATA8__EMI_NANDF_D_8 IOMUX_PAD(0x648, 0x2C4, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA8__ESDHC3_DAT0 IOMUX_PAD(0x648, 0x2C4, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA8__GPU3d_GPU_DEBUG_OUT_8 IOMUX_PAD(0x648, 0x2C4, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA8__IPU_DIAG_BUS_8 IOMUX_PAD(0x648, 0x2C4, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA9__PATA_DATA_9 IOMUX_PAD(0x64C, 0x2C8, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA9__GPIO_2_9 IOMUX_PAD(0x64C, 0x2C8, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA9__ESDHC1_DAT5 IOMUX_PAD(0x64C, 0x2C8, 2, 0, 0, 0) +#define MX53_PAD_PATA_DATA9__EMI_NANDF_D_9 IOMUX_PAD(0x64C, 0x2C8, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA9__ESDHC3_DAT1 IOMUX_PAD(0x64C, 0x2C8, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA9__GPU3d_GPU_DEBUG_OUT_9 IOMUX_PAD(0x64C, 0x2C8, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA9__IPU_DIAG_BUS_9 IOMUX_PAD(0x64C, 0x2C8, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA10__PATA_DATA_10 IOMUX_PAD(0x650, 0x2CC, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA10__GPIO_2_10 IOMUX_PAD(0x650, 0x2CC, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA10__ESDHC1_DAT6 IOMUX_PAD(0x650, 0x2CC, 2, 0, 0, 0) +#define MX53_PAD_PATA_DATA10__EMI_NANDF_D_10 IOMUX_PAD(0x650, 0x2CC, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA10__ESDHC3_DAT2 IOMUX_PAD(0x650, 0x2CC, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA10__GPU3d_GPU_DEBUG_OUT_10 IOMUX_PAD(0x650, 0x2CC, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA10__IPU_DIAG_BUS_10 IOMUX_PAD(0x650, 0x2CC, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA11__PATA_DATA_11 IOMUX_PAD(0x654, 0x2D0, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA11__GPIO_2_11 IOMUX_PAD(0x654, 0x2D0, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA11__ESDHC1_DAT7 IOMUX_PAD(0x654, 0x2D0, 2, 0, 0, 0) +#define MX53_PAD_PATA_DATA11__EMI_NANDF_D_11 IOMUX_PAD(0x654, 0x2D0, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA11__ESDHC3_DAT3 IOMUX_PAD(0x654, 0x2D0, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA11__GPU3d_GPU_DEBUG_OUT_11 IOMUX_PAD(0x654, 0x2D0, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA11__IPU_DIAG_BUS_11 IOMUX_PAD(0x654, 0x2D0, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA12__PATA_DATA_12 IOMUX_PAD(0x658, 0x2D4, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA12__GPIO_2_12 IOMUX_PAD(0x658, 0x2D4, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA12__ESDHC2_DAT4 IOMUX_PAD(0x658, 0x2D4, 2, 0, 0, 0) +#define MX53_PAD_PATA_DATA12__EMI_NANDF_D_12 IOMUX_PAD(0x658, 0x2D4, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA12__ESDHC4_DAT0 IOMUX_PAD(0x658, 0x2D4, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA12__GPU3d_GPU_DEBUG_OUT_12 IOMUX_PAD(0x658, 0x2D4, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA12__IPU_DIAG_BUS_12 IOMUX_PAD(0x658, 0x2D4, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA13__PATA_DATA_13 IOMUX_PAD(0x65C, 0x2D8, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA13__GPIO_2_13 IOMUX_PAD(0x65C, 0x2D8, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA13__ESDHC2_DAT5 IOMUX_PAD(0x65C, 0x2D8, 2, 0, 0, 0) +#define MX53_PAD_PATA_DATA13__EMI_NANDF_D_13 IOMUX_PAD(0x65C, 0x2D8, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA13__ESDHC4_DAT1 IOMUX_PAD(0x65C, 0x2D8, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA13__GPU3d_GPU_DEBUG_OUT_13 IOMUX_PAD(0x65C, 0x2D8, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA13__IPU_DIAG_BUS_13 IOMUX_PAD(0x65C, 0x2D8, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA14__PATA_DATA_14 IOMUX_PAD(0x660, 0x2DC, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA14__GPIO_2_14 IOMUX_PAD(0x660, 0x2DC, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA14__ESDHC2_DAT6 IOMUX_PAD(0x660, 0x2DC, 2, 0, 0, 0) +#define MX53_PAD_PATA_DATA14__EMI_NANDF_D_14 IOMUX_PAD(0x660, 0x2DC, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA14__ESDHC4_DAT2 IOMUX_PAD(0x660, 0x2DC, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA14__GPU3d_GPU_DEBUG_OUT_14 IOMUX_PAD(0x660, 0x2DC, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA14__IPU_DIAG_BUS_14 IOMUX_PAD(0x660, 0x2DC, 6, 0, 0, 0) +#define MX53_PAD_PATA_DATA15__PATA_DATA_15 IOMUX_PAD(0x664, 0x2E0, 0, 0, 0, 0) +#define MX53_PAD_PATA_DATA15__GPIO_2_15 IOMUX_PAD(0x664, 0x2E0, 1, 0, 0, 0) +#define MX53_PAD_PATA_DATA15__ESDHC2_DAT7 IOMUX_PAD(0x664, 0x2E0, 2, 0, 0, 0) +#define MX53_PAD_PATA_DATA15__EMI_NANDF_D_15 IOMUX_PAD(0x664, 0x2E0, 3, 0, 0, 0) +#define MX53_PAD_PATA_DATA15__ESDHC4_DAT3 IOMUX_PAD(0x664, 0x2E0, 4, 0, 0, 0) +#define MX53_PAD_PATA_DATA15__GPU3d_GPU_DEBUG_OUT_15 IOMUX_PAD(0x664, 0x2E0, 5, 0, 0, 0) +#define MX53_PAD_PATA_DATA15__IPU_DIAG_BUS_15 IOMUX_PAD(0x664, 0x2E0, 6, 0, 0, 0) +#define MX53_PAD_SD1_DATA0__ESDHC1_DAT0 IOMUX_PAD(0x66C, 0x2E4, 0, 0, 0, 0) +#define MX53_PAD_SD1_DATA0__GPIO_1_16 IOMUX_PAD(0x66C, 0x2E4, 1, 0, 0, 0) +#define MX53_PAD_SD1_DATA0__GPT_CAPIN1 IOMUX_PAD(0x66C, 0x2E4, 3, 0, 0, 0) +#define MX53_PAD_SD1_DATA0__CSPI_MISO IOMUX_PAD(0x66C, 0x2E4, 5, 0x784, 2, 0) +#define MX53_PAD_SD1_DATA0__CCM_PLL3_BYP IOMUX_PAD(0x66C, 0x2E4, 7, 0x778, 0, 0) +#define MX53_PAD_SD1_DATA1__ESDHC1_DAT1 IOMUX_PAD(0x670, 0x2E8, 0, 0, 0, 0) +#define MX53_PAD_SD1_DATA1__GPIO_1_17 IOMUX_PAD(0x670, 0x2E8, 1, 0, 0, 0) +#define MX53_PAD_SD1_DATA1__GPT_CAPIN2 IOMUX_PAD(0x670, 0x2E8, 3, 0, 0, 0) +#define MX53_PAD_SD1_DATA1__CSPI_SS0 IOMUX_PAD(0x670, 0x2E8, 5, 0x78C, 3, 0) +#define MX53_PAD_SD1_DATA1__CCM_PLL4_BYP IOMUX_PAD(0x670, 0x2E8, 7, 0x77C, 1, 0) +#define MX53_PAD_SD1_CMD__ESDHC1_CMD IOMUX_PAD(0x674, 0x2EC, IOMUX_CONFIG_SION, 0, 0, 0) +#define MX53_PAD_SD1_CMD__GPIO_1_18 IOMUX_PAD(0x674, 0x2EC, 1, 0, 0, 0) +#define MX53_PAD_SD1_CMD__GPT_CMPOUT1 IOMUX_PAD(0x674, 0x2EC, 3, 0, 0, 0) +#define MX53_PAD_SD1_CMD__CSPI_MOSI IOMUX_PAD(0x674, 0x2EC, 5, 0x788, 2, 0) +#define MX53_PAD_SD1_CMD__CCM_PLL1_BYP IOMUX_PAD(0x674, 0x2EC, 7, 0x770, 0, 0) +#define MX53_PAD_SD1_DATA2__ESDHC1_DAT2 IOMUX_PAD(0x678, 0x2F0, 0, 0, 0, 0) +#define MX53_PAD_SD1_DATA2__GPIO_1_19 IOMUX_PAD(0x678, 0x2F0, 1, 0, 0, 0) +#define MX53_PAD_SD1_DATA2__GPT_CMPOUT2 IOMUX_PAD(0x678, 0x2F0, 2, 0, 0, 0) +#define MX53_PAD_SD1_DATA2__PWM2_PWMO IOMUX_PAD(0x678, 0x2F0, 3, 0, 0, 0) +#define MX53_PAD_SD1_DATA2__WDOG1_WDOG_B IOMUX_PAD(0x678, 0x2F0, 4, 0, 0, 0) +#define MX53_PAD_SD1_DATA2__CSPI_SS1 IOMUX_PAD(0x678, 0x2F0, 5, 0x790, 2, 0) +#define MX53_PAD_SD1_DATA2__WDOG1_WDOG_RST_B_DEB IOMUX_PAD(0x678, 0x2F0, 6, 0, 0, 0) +#define MX53_PAD_SD1_DATA2__CCM_PLL2_BYP IOMUX_PAD(0x678, 0x2F0, 7, 0x774, 0, 0) +#define MX53_PAD_SD1_CLK__ESDHC1_CLK IOMUX_PAD(0x67C, 0x2F4, 0, 0, 0, 0) +#define MX53_PAD_SD1_CLK__GPIO_1_20 IOMUX_PAD(0x67C, 0x2F4, 1, 0, 0, 0) +#define MX53_PAD_SD1_CLK__OSC32k_32K_OUT IOMUX_PAD(0x67C, 0x2F4, 2, 0, 0, 0) +#define MX53_PAD_SD1_CLK__GPT_CLKIN IOMUX_PAD(0x67C, 0x2F4, 3, 0, 0, 0) +#define MX53_PAD_SD1_CLK__CSPI_SCLK IOMUX_PAD(0x67C, 0x2F4, 5, 0x780, 2, 0) +#define MX53_PAD_SD1_CLK__SATA_PHY_DTB_0 IOMUX_PAD(0x67C, 0x2F4, 7, 0, 0, 0) +#define MX53_PAD_SD1_DATA3__ESDHC1_DAT3 IOMUX_PAD(0x680, 0x2F8, 0, 0, 0, 0) +#define MX53_PAD_SD1_DATA3__GPIO_1_21 IOMUX_PAD(0x680, 0x2F8, 1, 0, 0, 0) +#define MX53_PAD_SD1_DATA3__GPT_CMPOUT3 IOMUX_PAD(0x680, 0x2F8, 2, 0, 0, 0) +#define MX53_PAD_SD1_DATA3__PWM1_PWMO IOMUX_PAD(0x680, 0x2F8, 3, 0, 0, 0) +#define MX53_PAD_SD1_DATA3__WDOG2_WDOG_B IOMUX_PAD(0x680, 0x2F8, 4, 0, 0, 0) +#define MX53_PAD_SD1_DATA3__CSPI_SS2 IOMUX_PAD(0x680, 0x2F8, 5, 0x794, 2, 0) +#define MX53_PAD_SD1_DATA3__WDOG2_WDOG_RST_B_DEB IOMUX_PAD(0x680, 0x2F8, 6, 0, 0, 0) +#define MX53_PAD_SD1_DATA3__SATA_PHY_DTB_1 IOMUX_PAD(0x680, 0x2F8, 7, 0, 0, 0) +#define MX53_PAD_SD2_CLK__ESDHC2_CLK IOMUX_PAD(0x688, 0x2FC, 0, 0, 0, 0) +#define MX53_PAD_SD2_CLK__GPIO_1_10 IOMUX_PAD(0x688, 0x2FC, 1, 0, 0, 0) +#define MX53_PAD_SD2_CLK__KPP_COL_5 IOMUX_PAD(0x688, 0x2FC, 2, 0x840, 2, 0) +#define MX53_PAD_SD2_CLK__AUDMUX_AUD4_RXFS IOMUX_PAD(0x688, 0x2FC, 3, 0x73C, 1, 0) +#define MX53_PAD_SD2_CLK__CSPI_SCLK IOMUX_PAD(0x688, 0x2FC, 5, 0x780, 3, 0) +#define MX53_PAD_SD2_CLK__SCC_RANDOM_V IOMUX_PAD(0x688, 0x2FC, 7, 0, 0, 0) +#define MX53_PAD_SD2_CMD__ESDHC2_CMD IOMUX_PAD(0x68C, 0x300, 0, 0, 0, 0) +#define MX53_PAD_SD2_CMD__GPIO_1_11 IOMUX_PAD(0x68C, 0x300, 1, 0, 0, 0) +#define MX53_PAD_SD2_CMD__KPP_ROW_5 IOMUX_PAD(0x68C, 0x300, 2, 0x84C, 1, 0) +#define MX53_PAD_SD2_CMD__AUDMUX_AUD4_RXC IOMUX_PAD(0x68C, 0x300, 3, 0x738, 1, 0) +#define MX53_PAD_SD2_CMD__CSPI_MOSI IOMUX_PAD(0x68C, 0x300, 5, 0x788, 3, 0) +#define MX53_PAD_SD2_CMD__SCC_RANDOM IOMUX_PAD(0x68C, 0x300, 7, 0, 0, 0) +#define MX53_PAD_SD2_DATA3__ESDHC2_DAT3 IOMUX_PAD(0x690, 0x304, 0, 0, 0, 0) +#define MX53_PAD_SD2_DATA3__GPIO_1_12 IOMUX_PAD(0x690, 0x304, 1, 0, 0, 0) +#define MX53_PAD_SD2_DATA3__KPP_COL_6 IOMUX_PAD(0x690, 0x304, 2, 0x844, 1, 0) +#define MX53_PAD_SD2_DATA3__AUDMUX_AUD4_TXC IOMUX_PAD(0x690, 0x304, 3, 0x740, 1, 0) +#define MX53_PAD_SD2_DATA3__CSPI_SS2 IOMUX_PAD(0x690, 0x304, 5, 0x794, 3, 0) +#define MX53_PAD_SD2_DATA3__SJC_DONE IOMUX_PAD(0x690, 0x304, 7, 0, 0, 0) +#define MX53_PAD_SD2_DATA2__ESDHC2_DAT2 IOMUX_PAD(0x694, 0x308, 0, 0, 0, 0) +#define MX53_PAD_SD2_DATA2__GPIO_1_13 IOMUX_PAD(0x694, 0x308, 1, 0, 0, 0) +#define MX53_PAD_SD2_DATA2__KPP_ROW_6 IOMUX_PAD(0x694, 0x308, 2, 0x850, 1, 0) +#define MX53_PAD_SD2_DATA2__AUDMUX_AUD4_TXD IOMUX_PAD(0x694, 0x308, 3, 0x734, 1, 0) +#define MX53_PAD_SD2_DATA2__CSPI_SS1 IOMUX_PAD(0x694, 0x308, 5, 0x790, 3, 0) +#define MX53_PAD_SD2_DATA2__SJC_FAIL IOMUX_PAD(0x694, 0x308, 7, 0, 0, 0) +#define MX53_PAD_SD2_DATA1__ESDHC2_DAT1 IOMUX_PAD(0x698, 0x30C, 0, 0, 0, 0) +#define MX53_PAD_SD2_DATA1__GPIO_1_14 IOMUX_PAD(0x698, 0x30C, 1, 0, 0, 0) +#define MX53_PAD_SD2_DATA1__KPP_COL_7 IOMUX_PAD(0x698, 0x30C, 2, 0x848, 1, 0) +#define MX53_PAD_SD2_DATA1__AUDMUX_AUD4_TXFS IOMUX_PAD(0x698, 0x30C, 3, 0x744, 0, 0) +#define MX53_PAD_SD2_DATA1__CSPI_SS0 IOMUX_PAD(0x698, 0x30C, 5, 0x78C, 4, 0) +#define MX53_PAD_SD2_DATA1__RTIC_SEC_VIO IOMUX_PAD(0x698, 0x30C, 7, 0, 0, 0) +#define MX53_PAD_SD2_DATA0__ESDHC2_DAT0 IOMUX_PAD(0x69C, 0x310, 0, 0, 0, 0) +#define MX53_PAD_SD2_DATA0__GPIO_1_15 IOMUX_PAD(0x69C, 0x310, 1, 0, 0, 0) +#define MX53_PAD_SD2_DATA0__KPP_ROW_7 IOMUX_PAD(0x69C, 0x310, 2, 0x854, 1, 0) +#define MX53_PAD_SD2_DATA0__AUDMUX_AUD4_RXD IOMUX_PAD(0x69C, 0x310, 3, 0x730, 1, 0) +#define MX53_PAD_SD2_DATA0__CSPI_MISO IOMUX_PAD(0x69C, 0x310, 5, 0x784, 3, 0) +#define MX53_PAD_SD2_DATA0__RTIC_DONE_INT IOMUX_PAD(0x69C, 0x310, 7, 0, 0, 0) +#define MX53_PAD_GPIO_0__CCM_CLKO IOMUX_PAD(0x6A4, 0x314, 0, 0, 0, 0) +#define MX53_PAD_GPIO_0__GPIO_1_0 IOMUX_PAD(0x6A4, 0x314, 1, 0, 0, 0) +#define MX53_PAD_GPIO_0__KPP_COL_5 IOMUX_PAD(0x6A4, 0x314, 2, 0x840, 3, 0) +#define MX53_PAD_GPIO_0__CCM_SSI_EXT1_CLK IOMUX_PAD(0x6A4, 0x314, 3, 0, 0, 0) +#define MX53_PAD_GPIO_0__EPIT1_EPITO IOMUX_PAD(0x6A4, 0x314, 4, 0, 0, 0) +#define MX53_PAD_GPIO_0__SRTC_ALARM_DEB IOMUX_PAD(0x6A4, 0x314, 5, 0, 0, 0) +#define MX53_PAD_GPIO_0__USBOH3_USBH1_PWR IOMUX_PAD(0x6A4, 0x314, 6, 0, 0, 0) +#define MX53_PAD_GPIO_0__CSU_TD IOMUX_PAD(0x6A4, 0x314, 7, 0, 0, 0) +#define MX53_PAD_GPIO_1__ESAI1_SCKR IOMUX_PAD(0x6A8, 0x318, 0, 0x7DC, 1, 0) +#define MX53_PAD_GPIO_1__GPIO_1_1 IOMUX_PAD(0x6A8, 0x318, 1, 0, 0, 0) +#define MX53_PAD_GPIO_1__KPP_ROW_5 IOMUX_PAD(0x6A8, 0x318, 2, 0x84C, 2, 0) +#define MX53_PAD_GPIO_1__CCM_SSI_EXT2_CLK IOMUX_PAD(0x6A8, 0x318, 3, 0, 0, 0) +#define MX53_PAD_GPIO_1__PWM2_PWMO IOMUX_PAD(0x6A8, 0x318, 4, 0, 0, 0) +#define MX53_PAD_GPIO_1__WDOG2_WDOG_B IOMUX_PAD(0x6A8, 0x318, 5, 0, 0, 0) +#define MX53_PAD_GPIO_1__ESDHC1_CD IOMUX_PAD(0x6A8, 0x318, 6, 0, 0, 0) +#define MX53_PAD_GPIO_1__SRC_TESTER_ACK IOMUX_PAD(0x6A8, 0x318, 7, 0, 0, 0) +#define MX53_PAD_GPIO_9__ESAI1_FSR IOMUX_PAD(0x6AC, 0x31C, 0, 0x7CC, 1, 0) +#define MX53_PAD_GPIO_9__GPIO_1_9 IOMUX_PAD(0x6AC, 0x31C, 1, 0, 0, 0) +#define MX53_PAD_GPIO_9__KPP_COL_6 IOMUX_PAD(0x6AC, 0x31C, 2, 0x844, 2, 0) +#define MX53_PAD_GPIO_9__CCM_REF_EN_B IOMUX_PAD(0x6AC, 0x31C, 3, 0, 0, 0) +#define MX53_PAD_GPIO_9__PWM1_PWMO IOMUX_PAD(0x6AC, 0x31C, 4, 0, 0, 0) +#define MX53_PAD_GPIO_9__WDOG1_WDOG_B IOMUX_PAD(0x6AC, 0x31C, 5, 0, 0, 0) +#define MX53_PAD_GPIO_9__ESDHC1_WP IOMUX_PAD(0x6AC, 0x31C, 6, 0x7FC, 1, 0) +#define MX53_PAD_GPIO_9__SCC_FAIL_STATE IOMUX_PAD(0x6AC, 0x31C, 7, 0, 0, 0) +#define MX53_PAD_GPIO_3__ESAI1_HCKR IOMUX_PAD(0x6B0, 0x320, 0, 0x7D4, 1, 0) +#define MX53_PAD_GPIO_3__GPIO_1_3 IOMUX_PAD(0x6B0, 0x320, 1, 0, 0, 0) +#define MX53_PAD_GPIO_3__I2C3_SCL IOMUX_PAD(0x6B0, 0x320, 2 | IOMUX_CONFIG_SION, 0x824, 1, 0) +#define MX53_PAD_GPIO_3__DPLLIP1_TOG_EN IOMUX_PAD(0x6B0, 0x320, 3, 0, 0, 0) +#define MX53_PAD_GPIO_3__CCM_CLKO2 IOMUX_PAD(0x6B0, 0x320, 4, 0, 0, 0) +#define MX53_PAD_GPIO_3__OBSERVE_MUX_OBSRV_INT_OUT0 IOMUX_PAD(0x6B0, 0x320, 5, 0, 0, 0) +#define MX53_PAD_GPIO_3__USBOH3_USBH1_OC IOMUX_PAD(0x6B0, 0x320, 6, 0x8A0, 1, 0) +#define MX53_PAD_GPIO_3__MLB_MLBCLK IOMUX_PAD(0x6B0, 0x320, 7, 0x858, 2, 0) +#define MX53_PAD_GPIO_6__ESAI1_SCKT IOMUX_PAD(0x6B4, 0x324, 0, 0x7E0, 1, 0) +#define MX53_PAD_GPIO_6__GPIO_1_6 IOMUX_PAD(0x6B4, 0x324, 1, 0, 0, 0) +#define MX53_PAD_GPIO_6__I2C3_SDA IOMUX_PAD(0x6B4, 0x324, 2 | IOMUX_CONFIG_SION, 0x828, 1, 0) +#define MX53_PAD_GPIO_6__CCM_CCM_OUT_0 IOMUX_PAD(0x6B4, 0x324, 3, 0, 0, 0) +#define MX53_PAD_GPIO_6__CSU_CSU_INT_DEB IOMUX_PAD(0x6B4, 0x324, 4, 0, 0, 0) +#define MX53_PAD_GPIO_6__OBSERVE_MUX_OBSRV_INT_OUT1 IOMUX_PAD(0x6B4, 0x324, 5, 0, 0, 0) +#define MX53_PAD_GPIO_6__ESDHC2_LCTL IOMUX_PAD(0x6B4, 0x324, 6, 0, 0, 0) +#define MX53_PAD_GPIO_6__MLB_MLBSIG IOMUX_PAD(0x6B4, 0x324, 7, 0x860, 2, 0) +#define MX53_PAD_GPIO_2__ESAI1_FST IOMUX_PAD(0x6B8, 0x328, 0, 0x7D0, 1, 0) +#define MX53_PAD_GPIO_2__GPIO_1_2 IOMUX_PAD(0x6B8, 0x328, 1, 0, 0, 0) +#define MX53_PAD_GPIO_2__KPP_ROW_6 IOMUX_PAD(0x6B8, 0x328, 2, 0x850, 2, 0) +#define MX53_PAD_GPIO_2__CCM_CCM_OUT_1 IOMUX_PAD(0x6B8, 0x328, 3, 0, 0, 0) +#define MX53_PAD_GPIO_2__CSU_CSU_ALARM_AUT_0 IOMUX_PAD(0x6B8, 0x328, 4, 0, 0, 0) +#define MX53_PAD_GPIO_2__OBSERVE_MUX_OBSRV_INT_OUT2 IOMUX_PAD(0x6B8, 0x328, 5, 0, 0, 0) +#define MX53_PAD_GPIO_2__ESDHC2_WP IOMUX_PAD(0x6B8, 0x328, 6, 0, 0, 0) +#define MX53_PAD_GPIO_2__MLB_MLBDAT IOMUX_PAD(0x6B8, 0x328, 7, 0x85C, 2, 0) +#define MX53_PAD_GPIO_4__ESAI1_HCKT IOMUX_PAD(0x6BC, 0x32C, 0, 0x7D8, 1, 0) +#define MX53_PAD_GPIO_4__GPIO_1_4 IOMUX_PAD(0x6BC, 0x32C, 1, 0, 0, 0) +#define MX53_PAD_GPIO_4__KPP_COL_7 IOMUX_PAD(0x6BC, 0x32C, 2, 0x848, 2, 0) +#define MX53_PAD_GPIO_4__CCM_CCM_OUT_2 IOMUX_PAD(0x6BC, 0x32C, 3, 0, 0, 0) +#define MX53_PAD_GPIO_4__CSU_CSU_ALARM_AUT_1 IOMUX_PAD(0x6BC, 0x32C, 4, 0, 0, 0) +#define MX53_PAD_GPIO_4__OBSERVE_MUX_OBSRV_INT_OUT3 IOMUX_PAD(0x6BC, 0x32C, 5, 0, 0, 0) +#define MX53_PAD_GPIO_4__ESDHC2_CD IOMUX_PAD(0x6BC, 0x32C, 6, 0, 0, 0) +#define MX53_PAD_GPIO_4__SCC_SEC_STATE IOMUX_PAD(0x6BC, 0x32C, 7, 0, 0, 0) +#define MX53_PAD_GPIO_5__ESAI1_TX2_RX3 IOMUX_PAD(0x6C0, 0x330, 0, 0x7EC, 1, 0) +#define MX53_PAD_GPIO_5__GPIO_1_5 IOMUX_PAD(0x6C0, 0x330, 1, 0, 0, 0) +#define MX53_PAD_GPIO_5__KPP_ROW_7 IOMUX_PAD(0x6C0, 0x330, 2, 0x854, 2, 0) +#define MX53_PAD_GPIO_5__CCM_CLKO IOMUX_PAD(0x6C0, 0x330, 3, 0, 0, 0) +#define MX53_PAD_GPIO_5__CSU_CSU_ALARM_AUT_2 IOMUX_PAD(0x6C0, 0x330, 4, 0, 0, 0) +#define MX53_PAD_GPIO_5__OBSERVE_MUX_OBSRV_INT_OUT4 IOMUX_PAD(0x6C0, 0x330, 5, 0, 0, 0) +#define MX53_PAD_GPIO_5__I2C3_SCL IOMUX_PAD(0x6C0, 0x330, 6, 0x824, 2, 0) +#define MX53_PAD_GPIO_5__CCM_PLL1_BYP IOMUX_PAD(0x6C0, 0x330, 7, 0x770, 1, 0) +#define MX53_PAD_GPIO_7__ESAI1_TX4_RX1 IOMUX_PAD(0x6C4, 0x334, 0, 0x7F4, 1, 0) +#define MX53_PAD_GPIO_7__GPIO_1_7 IOMUX_PAD(0x6C4, 0x334, 1, 0, 0, 0) +#define MX53_PAD_GPIO_7__EPIT1_EPITO IOMUX_PAD(0x6C4, 0x334, 2, 0, 0, 0) +#define MX53_PAD_GPIO_7__CAN1_TXCAN IOMUX_PAD(0x6C4, 0x334, 3, 0, 0, 0) +#define MX53_PAD_GPIO_7__UART2_TXD_MUX IOMUX_PAD(0x6C4, 0x334, 4, 0, 0, 0) +#define MX53_PAD_GPIO_7__FIRI_RXD IOMUX_PAD(0x6C4, 0x334, 5, 0x80C, 1, 0) +#define MX53_PAD_GPIO_7__SPDIF_PLOCK IOMUX_PAD(0x6C4, 0x334, 6, 0, 0, 0) +#define MX53_PAD_GPIO_7__CCM_PLL2_BYP IOMUX_PAD(0x6C4, 0x334, 7, 0x774, 1, 0) +#define MX53_PAD_GPIO_8__ESAI1_TX5_RX0 IOMUX_PAD(0x6C8, 0x338, 0, 0x7F8, 1, 0) +#define MX53_PAD_GPIO_8__GPIO_1_8 IOMUX_PAD(0x6C8, 0x338, 1, 0, 0, 0) +#define MX53_PAD_GPIO_8__EPIT2_EPITO IOMUX_PAD(0x6C8, 0x338, 2, 0, 0, 0) +#define MX53_PAD_GPIO_8__CAN1_RXCAN IOMUX_PAD(0x6C8, 0x338, 3, 0x760, 3, 0) +#define MX53_PAD_GPIO_8__UART2_RXD_MUX IOMUX_PAD(0x6C8, 0x338, 4, 0x880, 5, 0) +#define MX53_PAD_GPIO_8__FIRI_TXD IOMUX_PAD(0x6C8, 0x338, 5, 0, 0, 0) +#define MX53_PAD_GPIO_8__SPDIF_SRCLK IOMUX_PAD(0x6C8, 0x338, 6, 0, 0, 0) +#define MX53_PAD_GPIO_8__CCM_PLL3_BYP IOMUX_PAD(0x6C8, 0x338, 7, 0x778, 1, 0) +#define MX53_PAD_GPIO_16__ESAI1_TX3_RX2 IOMUX_PAD(0x6CC, 0x33C, 0, 0x7F0, 1, 0) +#define MX53_PAD_GPIO_16__GPIO_7_11 IOMUX_PAD(0x6CC, 0x33C, 1, 0, 0, 0) +#define MX53_PAD_GPIO_16__TZIC_PWRFAIL_INT IOMUX_PAD(0x6CC, 0x33C, 2, 0, 0, 0) +#define MX53_PAD_GPIO_16__RTC_CE_RTC_EXT_TRIG1 IOMUX_PAD(0x6CC, 0x33C, 4, 0, 0, 0) +#define MX53_PAD_GPIO_16__SPDIF_IN1 IOMUX_PAD(0x6CC, 0x33C, 5, 0x870, 1, 0) +#define MX53_PAD_GPIO_16__I2C3_SDA IOMUX_PAD(0x6CC, 0x33C, 6 | IOMUX_CONFIG_SION, 0x828, 2, 0) +#define MX53_PAD_GPIO_16__SJC_DE_B IOMUX_PAD(0x6CC, 0x33C, 7, 0, 0, 0) +#define MX53_PAD_GPIO_17__ESAI1_TX0 IOMUX_PAD(0x6D0, 0x340, 0, 0x7E4, 1, 0) +#define MX53_PAD_GPIO_17__GPIO_7_12 IOMUX_PAD(0x6D0, 0x340, 1, 0, 0, 0) +#define MX53_PAD_GPIO_17__SDMA_EXT_EVENT_0 IOMUX_PAD(0x6D0, 0x340, 2, 0x868, 1, 0) +#define MX53_PAD_GPIO_17__GPC_PMIC_RDY IOMUX_PAD(0x6D0, 0x340, 3, 0x810, 1, 0) +#define MX53_PAD_GPIO_17__RTC_CE_RTC_FSV_TRIG IOMUX_PAD(0x6D0, 0x340, 4, 0, 0, 0) +#define MX53_PAD_GPIO_17__SPDIF_OUT1 IOMUX_PAD(0x6D0, 0x340, 5, 0, 0, 0) +#define MX53_PAD_GPIO_17__IPU_SNOOP2 IOMUX_PAD(0x6D0, 0x340, 6, 0, 0, 0) +#define MX53_PAD_GPIO_17__SJC_JTAG_ACT IOMUX_PAD(0x6D0, 0x340, 7, 0, 0, 0) +#define MX53_PAD_GPIO_18__ESAI1_TX1 IOMUX_PAD(0x6D4, 0x344, 0, 0x7E8, 1, 0) +#define MX53_PAD_GPIO_18__GPIO_7_13 IOMUX_PAD(0x6D4, 0x344, 1, 0, 0, 0) +#define MX53_PAD_GPIO_18__SDMA_EXT_EVENT_1 IOMUX_PAD(0x6D4, 0x344, 2, 0x86C, 1, 0) +#define MX53_PAD_GPIO_18__OWIRE_LINE IOMUX_PAD(0x6D4, 0x344, 3, 0x864, 1, 0) +#define MX53_PAD_GPIO_18__RTC_CE_RTC_ALARM2_TRIG IOMUX_PAD(0x6D4, 0x344, 4, 0, 0, 0) +#define MX53_PAD_GPIO_18__CCM_ASRC_EXT_CLK IOMUX_PAD(0x6D4, 0x344, 5, 0x768, 1, 0) +#define MX53_PAD_GPIO_18__ESDHC1_LCTL IOMUX_PAD(0x6D4, 0x344, 6, 0, 0, 0) +#define MX53_PAD_GPIO_18__SRC_SYSTEM_RST IOMUX_PAD(0x6D4, 0x344, 7, 0, 0, 0) + +#endif /* __ASSEMBLY__ */ + +#endif /* _MX53_IOMUX_H_ */ diff --git a/packages/hal/arm/mx53/var/v2_0/include/plf_stub.h b/packages/hal/arm/mx53/var/v2_0/include/plf_stub.h new file mode 100644 index 00000000..248631a6 --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/include/plf_stub.h @@ -0,0 +1,72 @@ +#ifndef CYGONCE_HAL_PLF_STUB_H +#define CYGONCE_HAL_PLF_STUB_H + +//============================================================================= +// +// plf_stub.h +// +// Platform header for GDB stub support. +// +//============================================================================= +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//============================================================================= + +#include +#include // CYG_UNUSED_PARAM + +#include // registers +#include // IO macros +#include // Interrupt macros +#include // architecture stub support + +#ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS +//---------------------------------------------------------------------------- +// Define some platform specific communication details. This is mostly +// handled by hal_if now, but we need to make sure the comms tables are +// properly initialized. + +externC void cyg_hal_plf_comms_init(void); + +#define HAL_STUB_PLATFORM_INIT_SERIAL() cyg_hal_plf_comms_init() +#define HAL_STUB_PLATFORM_SET_BAUD_RATE(baud) CYG_UNUSED_PARAM(int, (baud)) +#define HAL_STUB_PLATFORM_INTERRUPTIBLE 0 + +//---------------------------------------------------------------------------- +// Stub initializer. +#define HAL_STUB_PLATFORM_INIT() CYG_EMPTY_STATEMENT + +#endif // ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS +//----------------------------------------------------------------------------- +#endif // CYGONCE_HAL_PLF_STUB_H +// End of plf_stub.h diff --git a/packages/hal/arm/mx53/var/v2_0/include/var_io.h b/packages/hal/arm/mx53/var/v2_0/include/var_io.h new file mode 100644 index 00000000..520f213f --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/include/var_io.h @@ -0,0 +1,56 @@ +#ifndef CYGONCE_VAR_IO_H +#define CYGONCE_VAR_IO_H + +//============================================================================= +// +// var_io.h +// +// Variant specific IO support +// +//============================================================================= +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//============================================================================= + +#include // Platform specifics + +//----------------------------------------------------------------------------- + +// Memory mapping details +#ifndef CYGARC_PHYSICAL_ADDRESS +#define CYGARC_PHYSICAL_ADDRESS(x) (((unsigned long)x & 0x0FFFFFFF) + RAM_BANK0_BASE) +#endif + +//----------------------------------------------------------------------------- +// end of var_io.h +#endif // CYGONCE_VAR_IO_H diff --git a/packages/hal/arm/mx53/var/v2_0/src/cmds.c b/packages/hal/arm/mx53/var/v2_0/src/cmds.c new file mode 100644 index 00000000..7ca808ae --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/src/cmds.c @@ -0,0 +1,1278 @@ +//========================================================================== +// +// cmds.c +// +// SoC [platform] specific RedBoot commands +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================== +#include +#include +#include +#include // Hardware definitions +#include +#include CYGBLD_HAL_PLF_DEFS_H + +#include "hab_super_root.h" + +#ifndef FUSE_PROG_START +#define FUSE_PROG_START() CYG_EMPTY_STATEMENT +#define FUSE_PROG_DONE() CYG_EMPTY_STATEMENT +#endif + +//#define IIM_FUSE_DEBUG +//#define CMD_CLOCK_DEBUG +#ifdef CMD_CLOCK_DEBUG +static int dbg_enable; + +#define enable_dbg() \ + CYG_MACRO_START \ + dbg_enable = 1; \ + CYG_MACRO_END + +#define dbg(fmt...) \ + CYG_MACRO_START \ + if (dbg_enable) \ + diag_printf(fmt); \ + CYG_MACRO_END +#else +#define dbg_enable 0 +#define enable_dbg() CYG_EMPTY_STATEMENT +#define dbg(fmt...) CYG_EMPTY_STATEMENT +#endif + +static int gcd(int m, int n); + +typedef unsigned long long u64; +typedef unsigned int u32; +typedef unsigned short u16; +typedef unsigned char u8; + +#define SZ_DEC_1M 1000000 +#define PLL_PD_MAX 16 //actual pd+1 +#define PLL_MFI_MAX 15 +#define PLL_MFI_MIN 5 +#define ARM_DIV_MAX 8 +#define IPG_DIV_MAX 4 +#define AHB_DIV_MAX 8 +#define EMI_DIV_MAX 8 +#define NFC_DIV_MAX 8 + +struct pll_param { + u32 pd; + u32 mfi; + u32 mfn; + u32 mfd; +}; + +#define PLL_FREQ_MAX(_ref_clk_) (4 * _ref_clk_ * PLL_MFI_MAX) +#define PLL_FREQ_MIN(_ref_clk_) ((2 * _ref_clk_ * (PLL_MFI_MIN - 1)) / PLL_PD_MAX) +#define MAX_DDR_CLK 400000000 +#define AHB_CLK_MAX 133333333 +#define IPG_CLK_MAX (AHB_CLK_MAX / 2) +#define NFC_CLK_MAX 25000000 +// IPU-HSP clock is independent of the HCLK and can go up to 177MHz but requires +// higher voltage support. For simplicity, limit it to 133MHz +#define HSP_CLK_MAX 133333333 + +#define ERR_WRONG_CLK (-1) +#define ERR_NO_MFI (-2) +#define ERR_NO_MFN (-3) +#define ERR_NO_PD (-4) +#define ERR_NO_PRESC (-5) +#define ERR_NO_AHB_DIV (-6) + +u32 pll_clock(enum plls pll); +u32 get_main_clock(enum main_clocks clk); +u32 get_peri_clock(enum peri_clocks clk); + +static volatile u32 *pll_base[] = +{ + ®32(PLL1_BASE_ADDR), + ®32(PLL2_BASE_ADDR), + ®32(PLL3_BASE_ADDR), + ®32(PLL4_BASE_ADDR), +}; + +static void clock_setup(int argc, char *argv[]); + +RedBoot_cmd("clock", + "Setup/Display clock\nSyntax:", + "[ :]\n\n" + " Examples:\n" + " [clock] -> Show various clocks\n" + " [clock 665] -> Core=665\n" + " [clock 800:133] -> Core=800 DDR=133\n" + " [clock :166] -> Core=no change DDR=166\n", + clock_setup + ); + +/*! + * This is to calculate various parameters based on reference clock and + * targeted clock based on the equation: + * t_clk = 2*ref_freq*(mfi + mfn/(mfd+1))/(pd+1) + * This calculation is based on a fixed MFD value for simplicity. + * + * @param ref reference clock freq in Hz + * @param target targeted clock in Hz + * @param p_pd calculated pd value (pd value from register + 1) upon return + * @param p_mfi calculated actual mfi value upon return + * @param p_mfn calculated actual mfn value upon return + * @param p_mfd fixed mfd value (mfd value from register + 1) upon return + * + * @return 0 if successful; non-zero otherwise. + */ +int calc_pll_params(u32 ref, u32 target, struct pll_param *pll) +{ + int pd, mfi = 1, mfn, mfd, i; + u64 n_target = target, n_ref = ref; + + // make sure targeted freq is in the valid range. Otherwise the + // following calculation might be wrong!!! + if (n_target < PLL_FREQ_MIN(ref) || n_target > PLL_FREQ_MAX(ref)) + return ERR_WRONG_CLK; + + mfd = 24 * 16; + + // Use n_target and n_ref to avoid overflow + for (pd = 1; pd <= PLL_PD_MAX; pd++) { + mfi = (n_target * pd) / (4 * n_ref); + if (mfi > PLL_MFI_MAX) { + return ERR_NO_MFI; + } else if (mfi < 5) { + continue; + } + break; + } + // Now got pd and mfi already + mfn = (((n_target * pd) / 4 - n_ref * mfi) * mfd) / n_ref; + + dbg("%d: ref=%d, target=%d, pd=%d, mfi=%d,mfn=%d, mfd=%d\n", + __LINE__, ref, target, pd, mfi, mfn, mfd); + + i = 1; + if (mfn != 0) + i = gcd(mfd, mfn); + pll->pd = pd; + pll->mfi = mfi; + pll->mfn = mfn / i; + pll->mfd = mfd / i; + return 0; +} + +/*! + * This function returns the low power audio clock. + */ +u32 get_lp_apm(void) +{ + u32 ret_val; + u32 ccsr = readl(CCM_BASE_ADDR + CLKCTL_CCSR); + + if (((ccsr >> 9) & 1) == 0) { + ret_val = FREQ_24MHZ; + } else { + ret_val = FREQ_32768HZ; + } + dbg("%s: CCSR[%08lx]=%08x freq=%u.%03uMHz\n", __FUNCTION__, + CCM_BASE_ADDR + CLKCTL_CCSR, ccsr, ret_val / 1000000, ret_val / 1000 % 1000); + return ret_val; +} + +/*! + * This function returns the periph_clk. + */ +u32 get_periph_clk(void) +{ + u32 ret_val, clk_sel; + + u32 cbcdr = readl(CCM_BASE_ADDR + CLKCTL_CBCDR); + u32 cbcmr = readl(CCM_BASE_ADDR + CLKCTL_CBCMR); + + if (!(cbcdr & (1 << 25))) { + ret_val = pll_clock(PLL2); + dbg("%s: CBCDR[%08lx]=%08x CBCMR[%08lx]=%08x freq=%u.%03uMHz\n", __FUNCTION__, + CCM_BASE_ADDR + CLKCTL_CBCDR, cbcdr, + CCM_BASE_ADDR + CLKCTL_CBCMR, cbcmr, + ret_val / 1000000, ret_val / 1000 % 1000); + } else { + clk_sel = (cbcmr >> 12) & 3; + if (clk_sel == 0) { + ret_val = pll_clock(PLL1); + } else if (clk_sel == 1) { + ret_val = pll_clock(PLL3); + } else if (clk_sel == 2) { + ret_val = get_lp_apm(); + } else { + diag_printf("Invalid CBCMR[CLK_SEL]: %d\n", clk_sel); + return ERR_WRONG_CLK; + } + dbg("%s: CBCDR[%08lx]=%08x CBCMR[%08lx]=%08x clk_sel=%d freq=%u.%03uMHz\n", __FUNCTION__, + CCM_BASE_ADDR + CLKCTL_CBCDR, cbcdr, + CCM_BASE_ADDR + CLKCTL_CBCMR, cbcmr, + clk_sel, ret_val / 1000000, ret_val / 1000 % 1000); + } + return ret_val; +} + +/*! + * This function assumes the expected core clock has to be changed by + * modifying the PLL. This is NOT true always but for most of the times, + * it is. So it assumes the PLL output freq is the same as the expected + * core clock (presc=1) unless the core clock is less than PLL_FREQ_MIN. + * In the latter case, it will try to increase the presc value until + * (presc*core_clk) is greater than PLL_FREQ_MIN. It then makes call to + * calc_pll_params() and obtains the values of PD, MFI,MFN, MFD based + * on the targeted PLL and reference input clock to the PLL. Lastly, + * it sets the register based on these values along with the dividers. + * Note 1) There is no value checking for the passed-in divider values + * so the caller has to make sure those values are sensible. + * 2) Also adjust the NFC divider such that the NFC clock doesn't + * exceed NFC_CLK_MAX. + * 3) IPU HSP clock is independent of AHB clock. Even it can go up to + * 177MHz for higher voltage, this function fixes the max to 133MHz. + * 4) This function should not have allowed diag_printf() calls since + * the serial driver has been stopped. But leave then here to allow + * easy debugging by NOT calling the cyg_hal_plf_serial_stop(). + * + * @param ref pll input reference clock (24MHz) + * @param core_clk core clock in Hz + * @param emi_clk emi clock in Hz + # @return 0 if successful; non-zero otherwise + */ +int configure_clock(u32 ref, u32 core_clk, u32 emi_clk) +{ + u32 pll, clk_src; + struct pll_param pll_param; + int ret, clk_sel, div = 1, div_core = 1, div_per = 1, shift = 0; + u32 cbcdr = readl(CCM_BASE_ADDR + CLKCTL_CBCDR); + u32 cbcmr = readl(CCM_BASE_ADDR + CLKCTL_CBCMR); + u32 ccsr = readl(CCM_BASE_ADDR + CLKCTL_CCSR); + u32 icgc = readl(PLATFORM_BASE_ADDR + PLATFORM_ICGC); + + dbg("%s: cbcdr[%08lx]=%08x\n", __FUNCTION__, + CCM_BASE_ADDR + CLKCTL_CBCDR, cbcdr); + dbg("%s: cbcmr[%08lx]=%08x\n", __FUNCTION__, + CCM_BASE_ADDR + CLKCTL_CBCMR, cbcdr); + dbg("%s: ccsr[%08lx]=%08x\n", __FUNCTION__, + CCM_BASE_ADDR + CLKCTL_CCSR, cbcdr); + dbg("%s: icgc[%08lx]=%08x\n", __FUNCTION__, + PLATFORM_BASE_ADDR + PLATFORM_ICGC, icgc); + + if (core_clk != 0) { + // assume pll default to core clock first + pll = core_clk; + if ((ret = calc_pll_params(ref, pll, &pll_param)) != 0) { + diag_printf("can't find pll parameters: %d\n", ret); + return ret; + } + + dbg("%s: ref=%d, pll=%d, pd=%d, mfi=%d,mfn=%d, mfd=%d\n", __FUNCTION__, + ref, pll, pll_param.pd, pll_param.mfi, pll_param.mfn, pll_param.mfd); + + /* Applies for TO 2 only */ + if (((cbcdr >> 30) & 0x1) == 0x1) { + /* Disable IPU and HSC dividers */ + writel(0x60000, CCM_BASE_ADDR + CLKCTL_CCDR); + /* Switch DDR to different source */ + writel(cbcdr & ~0x40000000, CCM_BASE_ADDR + CLKCTL_CBCDR); + while (readl(CCM_BASE_ADDR + CLKCTL_CDHIPR) != 0); + writel(0x0, CCM_BASE_ADDR + CLKCTL_CCDR); + } + + /* Switch ARM to PLL2 clock */ + writel(ccsr | 0x4, CCM_BASE_ADDR + CLKCTL_CCSR); + + if ((core_clk > 665000000) && (core_clk <= 800000000)) { + div_per = 5; + } else if (core_clk > 800000000) { + div_per = 6; + } else { + div_per = 4; + } + + if (core_clk > 800000000) { + div_core = 3; + increase_core_voltage(true); + } else { + div_core = 2; + increase_core_voltage(false); + } + cyg_hal_plf_serial_stop(); + + // adjust pll settings + writel(((pll_param.pd - 1) << 0) | (pll_param.mfi << 4), + PLL1_BASE_ADDR + PLL_DP_OP); + writel(pll_param.mfn, PLL1_BASE_ADDR + PLL_DP_MFN); + writel(pll_param.mfd - 1, PLL1_BASE_ADDR + PLL_DP_MFD); + writel(((pll_param.pd - 1) << 0) | (pll_param.mfi << 4), + PLL1_BASE_ADDR + PLL_DP_HFS_OP); + writel(pll_param.mfn, PLL1_BASE_ADDR + PLL_DP_HFS_MFN); + writel(pll_param.mfd - 1, PLL1_BASE_ADDR + PLL_DP_HFS_MFD); + + icgc &= ~0x77; + icgc |= div_core << 4; + icgc |= div_per; + /* Set the platform clock dividers */ + writel(icgc, PLATFORM_BASE_ADDR + PLATFORM_ICGC); + /* Switch ARM back to PLL1 */ + writel((ccsr & ~0x4), CCM_BASE_ADDR + CLKCTL_CCSR); + /* Applies for TO 2 only */ + if (((cbcdr >> 30) & 0x1) == 0x1) { + /* Disable IPU and HSC dividers */ + writel(0x60000, CCM_BASE_ADDR + CLKCTL_CCDR); + /* Switch DDR back to PLL1 */ + writel(cbcdr | 0x40000000, CCM_BASE_ADDR + CLKCTL_CBCDR); + while (readl(CCM_BASE_ADDR + CLKCTL_CDHIPR) != 0); + writel(0x0, CCM_BASE_ADDR + CLKCTL_CCDR); + if (emi_clk == 0) { + /* Keep EMI clock to the max if not specified */ + emi_clk = 200000000; + } + } + cyg_hal_plf_serial_init(); + } + + if (emi_clk != 0) { + /* Applies for TO 2 only */ + if (((cbcdr >> 30) & 0x1) == 0x1) { + clk_src = pll_clock(PLL1); + shift = 27; + } else { + clk_src = get_periph_clk(); + /* Find DDR clock input */ + clk_sel = (cbcmr >> 10) & 0x3; + if (clk_sel == 0) { + shift = 16; + } else if (clk_sel == 1) { + shift = 19; + } else if (clk_sel == 2) { + shift = 22; + } else if (clk_sel == 3) { + shift = 10; + } + } + if ((clk_src % emi_clk) == 0) + div = clk_src / emi_clk; + else + div = (clk_src / emi_clk) + 1; + if (div > 8) + div = 8; + + cbcdr &= ~(0x7 << shift); + cbcdr |= (div - 1) << shift; + + dbg("%s@%d: \n", __FUNCTION__, __LINE__); + + /* Disable IPU and HSC dividers */ + writel(0x60000, CCM_BASE_ADDR + CLKCTL_CCDR); + writel(cbcdr, CCM_BASE_ADDR + CLKCTL_CBCDR); + while (readl(CCM_BASE_ADDR + CLKCTL_CDHIPR) != 0); + writel(0x0, CCM_BASE_ADDR + CLKCTL_CCDR); + } + return 0; +} + +static void clock_setup(int argc,char *argv[]) +{ + u32 i, core_clk, ddr_clk, data[3]; + unsigned long temp; + int ret; + + if (argc == 1) + goto print_clock; + + enable_dbg(); + for (i = 0; i < 2; i++) { + if (!parse_num(argv[1], &temp, &argv[1], ":")) { + diag_printf("Error: Invalid parameter\n"); + return; + } + data[i] = temp; + } + + core_clk = data[0] * SZ_DEC_1M; + ddr_clk = data[1] * SZ_DEC_1M; + + if (core_clk != 0) { + if ((core_clk < PLL_FREQ_MIN(PLL_REF_CLK)) || (core_clk > PLL_FREQ_MAX(PLL_REF_CLK))) { + diag_printf("Targeted core clock should be within [%d - %d]\n", + PLL_FREQ_MIN(PLL_REF_CLK), PLL_FREQ_MAX(PLL_REF_CLK)); + return; + } + } + + if (ddr_clk != 0) { + if (ddr_clk > MAX_DDR_CLK) { + diag_printf("DDR clock should be less than %d MHz, assuming max value\n", + MAX_DDR_CLK / SZ_DEC_1M); + ddr_clk = MAX_DDR_CLK; + } + } + + // adjust the clock + ret = configure_clock(PLL_REF_CLK, core_clk, ddr_clk); + if (ret != 0) { + diag_printf("Failed to setup clock: %d\n", ret); + return; + } + diag_printf("\n<<>>\n"); + + // Now printing clocks +print_clock: + + diag_printf("\nPLL1\t\tPLL2\t\tPLL3\t\tPLL4\n"); + diag_printf("========================================================\n"); + diag_printf("%-16d%-16d%-16d%-16d\n\n", pll_clock(PLL1), pll_clock(PLL2), + pll_clock(PLL3), pll_clock(PLL4)); + diag_printf("AXI_A\t\tAXI_B\t\tEMI_SLOW_CLK\n"); + diag_printf("========================================================\n"); + diag_printf("%-16d%-16d%-16d\n\n", + get_main_clock(AXI_A_CLK), + get_main_clock(AXI_B_CLK), + get_main_clock(EMI_SLOW_CLK)); + diag_printf("CPU\t\tAHB\t\tIPG\t\tDDR_CLK\n"); + diag_printf("========================================================\n"); + diag_printf("%-16d%-16d%-16d%-16d\n\n", + get_main_clock(CPU_CLK), + get_main_clock(AHB_CLK), + get_main_clock(IPG_CLK), + get_main_clock(DDR_CLK)); + + diag_printf("NFC\t\tUSB\t\tIPG_PER_CLK\n"); + diag_printf("========================================\n"); + diag_printf("%-16d%-16d%-16d\n\n", + get_main_clock(NFC_CLK), + get_main_clock(USB_CLK), + get_main_clock(IPG_PER_CLK)); + + diag_printf("UART1-3\t\tSSI1\t\tSSI2\t\tSPI\n"); + diag_printf("==========================================="); + diag_printf("=============\n"); + + diag_printf("%-16d%-16d%-16d%-16d\n\n", + get_peri_clock(UART1_BAUD), + get_peri_clock(SSI1_BAUD), + get_peri_clock(SSI2_BAUD), + get_peri_clock(SPI1_CLK)); + +#if 0 + diag_printf("IPG_PERCLK as baud clock for: UART1-5, I2C, OWIRE, SDHC"); + if (((readl(EPIT1_BASE_ADDR) >> 24) & 0x3) == 0x2) { + diag_printf(", EPIT"); + } + if (((readl(GPT1_BASE_ADDR) >> 6) & 0x7) == 0x2) { + diag_printf(", GPT"); + } +#endif + diag_printf("\n"); + +} + +/*! + * This function returns the PLL output value in Hz based on pll. + */ +u32 pll_clock(enum plls pll) +{ + u64 ref_clk; + u32 mfi, mfn, mfd, pdf, pll_out; + int sign; + u32 dp_ctrl, dp_op, dp_mfd, dp_mfn; + int clk_sel; + int dbl; + + dp_ctrl = pll_base[pll][PLL_DP_CTL >> 2]; + clk_sel = MXC_GET_FIELD(dp_ctrl, 2, 8); + ref_clk = PLL_REF_CLK; + + dbg("clk_sel=%d\n", clk_sel); + + if ((pll_base[pll][PLL_DP_CTL >> 2] & 0x80) == 0) { + dp_op = pll_base[pll][PLL_DP_OP >> 2]; + dp_mfd = pll_base[pll][PLL_DP_MFD >> 2]; + dp_mfn = pll_base[pll][PLL_DP_MFN >> 2]; + } else { + dp_op = pll_base[pll][PLL_DP_HFS_OP >> 2]; + dp_mfd = pll_base[pll][PLL_DP_HFS_MFD >> 2]; + dp_mfn = pll_base[pll][PLL_DP_HFS_MFN >> 2]; + } + pdf = dp_op & 0xF; + mfi = (dp_op >> 4) & 0xF; + mfi = (mfi <= 5) ? 5: mfi; + mfd = dp_mfd & 0x07FFFFFF; + mfn = dp_mfn & 0x07FFFFFF; + + sign = (mfn < 0x4000000) ? 1 : -1; + mfn = (mfn < 0x4000000) ? mfn : (0x8000000 - mfn); + + dbl = 2 * (((dp_ctrl >> 12) & 0x1) + 1); + + dbg("%s: ref=%llu.%03lluMHz, dbl=%d, pd=%d, mfi=%d, mfn=%d, mfd=%d\n", + __FUNCTION__, ref_clk / 1000000, ref_clk / 1000 % 1000, + dbl, pdf + 1, mfi, sign * mfn, mfd + 1); + + pll_out = (dbl * ref_clk * mfi + dbl * ref_clk * sign * mfn / (mfd + 1)) / + (pdf + 1); + + return pll_out; +} + +/*! + * This function returns the emi_core_clk_root clock. + */ +u32 get_emi_core_clk(void) +{ + u32 cbcdr = readl(CCM_BASE_ADDR + CLKCTL_CBCDR); + u32 clk_sel, max_pdf, peri_clk, ahb_clk; + u32 ret_val; + + max_pdf = (cbcdr >> 10) & 0x7; + peri_clk = get_periph_clk(); + ahb_clk = peri_clk / (max_pdf + 1); + + clk_sel = (cbcdr >> 26) & 1; + if (clk_sel == 0) { + ret_val = peri_clk; + } else { + ret_val = ahb_clk ; + } + dbg("%s: CBCDR[%08lx]=%08x freq=%u.%03uMHz\n", __FUNCTION__, + CCM_BASE_ADDR + CLKCTL_CBCDR, cbcdr, ret_val / 1000000, ret_val / 1000 % 1000); + return ret_val; +} + +/*! + * This function returns the main clock value in Hz. + */ +u32 get_main_clock(enum main_clocks clk) +{ + u32 pdf, max_pdf, ipg_pdf, nfc_pdf, clk_sel; + u32 pll, ret_val; + u32 cacrr = readl(CCM_BASE_ADDR + CLKCTL_CACRR); + u32 cbcdr = readl(CCM_BASE_ADDR + CLKCTL_CBCDR); + u32 cbcmr = readl(CCM_BASE_ADDR + CLKCTL_CBCMR); + u32 cscmr1 = readl(CCM_BASE_ADDR + CLKCTL_CSCMR1); + u32 cscdr1 = readl(CCM_BASE_ADDR + CLKCTL_CSCDR1); + + dbg("%s: \n", __FUNCTION__); + switch (clk) { + case CPU_CLK: + pdf = cacrr & 0x7; + pll = pll_clock(PLL1); + ret_val = pll / (pdf + 1); + break; + + case AHB_CLK: + max_pdf = (cbcdr >> 10) & 0x7; + pll = get_periph_clk(); + ret_val = pll / (max_pdf + 1); + break; + + case AXI_A_CLK: + pdf = (cbcdr >> 16) & 0x7; + pll = get_periph_clk(); + ret_val = pll / (pdf + 1); + break; + + case AXI_B_CLK: + pdf = (cbcdr >> 19) & 0x7; + pll = get_periph_clk(); + ret_val = pll / (pdf + 1); + break; + + case EMI_SLOW_CLK: + pll = get_emi_core_clk(); + pdf = (cbcdr >> 22) & 0x7; + ret_val = pll / (pdf + 1); + break; + + case IPG_CLK: + max_pdf = (cbcdr >> 10) & 0x7; + ipg_pdf = (cbcdr >> 8) & 0x3; + pll = get_periph_clk(); + ret_val = pll / ((max_pdf + 1) * (ipg_pdf + 1)); + break; + + case IPG_PER_CLK: + clk_sel = cbcmr & 1; + if (clk_sel == 0) { + clk_sel = (cbcmr >> 1) & 1; + pdf = (((cbcdr >> 6) & 3) + 1) * (((cbcdr >> 3) & 7) + 1) * ((cbcdr & 7) + 1); + if (clk_sel == 0) { + ret_val = get_periph_clk() / pdf; + } else { + ret_val = get_lp_apm(); + } + } else { + /* Same as IPG_CLK */ + max_pdf = (cbcdr >> 10) & 0x7; + ipg_pdf = (cbcdr >> 8) & 0x3; + pll = get_periph_clk(); + ret_val = pll / ((max_pdf + 1) * (ipg_pdf + 1)); + } + break; + + case DDR_CLK: + clk_sel = (cbcmr >> 10) & 3; + pll = get_periph_clk(); + if (clk_sel == 0) { + /* AXI A */ + pdf = (cbcdr >> 16) & 0x7; + } else if (clk_sel == 1) { + /* AXI B */ + pdf = (cbcdr >> 19) & 0x7; + } else if (clk_sel == 2) { + /* EMI SLOW CLOCK ROOT */ + pll = get_emi_core_clk(); + pdf = (cbcdr >> 22) & 0x7; + } else if (clk_sel == 3) { + /* AHB CLOCK */ + pdf = (cbcdr >> 10) & 0x7; + } + + ret_val = pll / (pdf + 1); + break; + + case NFC_CLK: + pdf = (cbcdr >> 22) & 0x7; + nfc_pdf = (cbcdr >> 13) & 0x7; + pll = get_emi_core_clk(); + ret_val = pll / ((pdf + 1) * (nfc_pdf + 1)); + break; + + case USB_CLK: + clk_sel = (cscmr1 >> 22) & 3; + if (clk_sel == 0) { + pll = pll_clock(PLL1); + } else if (clk_sel == 1) { + pll = pll_clock(PLL2); + } else if (clk_sel == 2) { + pll = pll_clock(PLL3); + } else if (clk_sel == 3) { + pll = get_lp_apm(); + } + pdf = (cscdr1 >> 8) & 0x7; + max_pdf = (cscdr1 >> 6) & 0x3; + ret_val = pll / ((pdf + 1) * (max_pdf + 1)); + break; + + default: + diag_printf("Unknown clock: %d\n", clk); + return ERR_WRONG_CLK; + } + + return ret_val; +} + +/*! + * This function returns the peripheral clock value in Hz. + */ +u32 get_peri_clock(enum peri_clocks clk) +{ + u32 ret_val = 0, pdf, pre_pdf, clk_sel; + u32 cscmr1 = readl(CCM_BASE_ADDR + CLKCTL_CSCMR1); + u32 cscdr1 = readl(CCM_BASE_ADDR + CLKCTL_CSCDR1); + u32 cscdr2 = readl(CCM_BASE_ADDR + CLKCTL_CSCDR2); + u32 cs1cdr = readl(CCM_BASE_ADDR + CLKCTL_CS1CDR); + u32 cs2cdr = readl(CCM_BASE_ADDR + CLKCTL_CS2CDR); + + dbg("%s: \n", __FUNCTION__); + switch (clk) { + case UART1_BAUD: + case UART2_BAUD: + case UART3_BAUD: + pre_pdf = (cscdr1 >> 3) & 0x7; + pdf = cscdr1 & 0x7; + clk_sel = (cscmr1 >> 24) & 3; + if (clk_sel == 0) { + ret_val = pll_clock(PLL1) / ((pre_pdf + 1) * (pdf + 1)); + } else if (clk_sel == 1) { + ret_val = pll_clock(PLL2) / ((pre_pdf + 1) * (pdf + 1)); + } else if (clk_sel == 2) { + ret_val = pll_clock(PLL3) / ((pre_pdf + 1) * (pdf + 1)); + } else { + ret_val = get_lp_apm() / ((pre_pdf + 1) * (pdf + 1)); + } + break; + case SSI1_BAUD: + pre_pdf = (cs1cdr >> 6) & 0x7; + pdf = cs1cdr & 0x3F; + clk_sel = (cscmr1 >> 14) & 3; + if (clk_sel == 0) { + ret_val = pll_clock(PLL1) / ((pre_pdf + 1) * (pdf + 1)); + } else if (clk_sel == 0x1) { + ret_val = pll_clock(PLL2) / ((pre_pdf + 1) * (pdf + 1)); + } else if (clk_sel == 0x2) { + ret_val = pll_clock(PLL3) / ((pre_pdf + 1) * (pdf + 1)); + } else { + ret_val = CKIH /((pre_pdf + 1) * (pdf + 1)); + } + break; + case SSI2_BAUD: + pre_pdf = (cs2cdr >> 6) & 0x7; + pdf = cs2cdr & 0x3F; + clk_sel = (cscmr1 >> 12) & 3; + if (clk_sel == 0) { + ret_val = pll_clock(PLL1) / ((pre_pdf + 1) * (pdf + 1)); + } else if (clk_sel == 0x1) { + ret_val = pll_clock(PLL2) / ((pre_pdf + 1) * (pdf + 1)); + } else if (clk_sel == 0x2) { + ret_val = pll_clock(PLL3) / ((pre_pdf + 1) * (pdf + 1)); + } else { + ret_val = CKIH /((pre_pdf + 1) * (pdf + 1)); + } + break; + case SPI1_CLK: + case SPI2_CLK: + pre_pdf = (cscdr2 >> 25) & 0x7; + pdf = (cscdr2 >> 19) & 0x3F; + clk_sel = (cscmr1 >> 4) & 3; + if (clk_sel == 0) { + ret_val = pll_clock(PLL1) / ((pre_pdf + 1) * (pdf + 1)); + } else if (clk_sel == 1) { + ret_val = pll_clock(PLL2) / ((pre_pdf + 1) * (pdf + 1)); + } else if (clk_sel == 2) { + ret_val = pll_clock(PLL3) / ((pre_pdf + 1) * (pdf + 1)); + } else { + ret_val = get_lp_apm() / ((pre_pdf + 1) * (pdf + 1)); + } + break; + default: + diag_printf("%s(): This clock: %d not supported yet\n", + __FUNCTION__, clk); + } + + return ret_val; +} + +#ifdef L2CC_ENABLED +/* + * This command is added for some simple testing only. It turns on/off + * L2 cache regardless of L1 cache state. The side effect of this is + * when doing any flash operations such as "fis init", the L2 + * will be turned back on along with L1 caches even though it is off + * by using this command. + */ +RedBoot_cmd("L2", + "L2 cache", + "[ON | OFF]", + do_L2_caches + ); + +void do_L2_caches(int argc, char *argv[]) +{ + u32 oldints; + + if (argc == 2) { + if (strcasecmp(argv[1], "on") == 0) { + HAL_DISABLE_INTERRUPTS(oldints); + HAL_ENABLE_L2(); + HAL_RESTORE_INTERRUPTS(oldints); + } else if (strcasecmp(argv[1], "off") == 0) { + HAL_DISABLE_INTERRUPTS(oldints); + HAL_DCACHE_DISABLE_L1(); + HAL_CACHE_FLUSH_ALL(); + HAL_DISABLE_L2(); + HAL_DCACHE_ENABLE_L1(); + HAL_RESTORE_INTERRUPTS(oldints); + } else { + diag_printf("Invalid L2 cache mode: %s\n", argv[1]); + } + } else { + int L2cache_on; + + HAL_L2CACHE_IS_ENABLED(L2cache_on); + diag_printf("L2 cache: %s\n", L2cache_on ? "On" : "Off"); + } +} +#endif //L2CC_ENABLED + +#define IIM_ERR_SHIFT 8 +#define POLL_FUSE_PRGD (IIM_STAT_PRGD | (IIM_ERR_PRGE << IIM_ERR_SHIFT)) +#define POLL_FUSE_SNSD (IIM_STAT_SNSD | (IIM_ERR_SNSE << IIM_ERR_SHIFT)) + +static void fuse_op_start(void) +{ + /* Do not generate interrupt */ + writel(0, IIM_BASE_ADDR + IIM_STATM_OFF); + // clear the status bits and error bits + writel(0x3, IIM_BASE_ADDR + IIM_STAT_OFF); + writel(0xFE, IIM_BASE_ADDR + IIM_ERR_OFF); +} + +/* + * The action should be either: + * POLL_FUSE_PRGD + * or: + * POLL_FUSE_SNSD + */ +static int poll_fuse_op_done(int action) +{ + u32 status, error; + + if (action != POLL_FUSE_PRGD && action != POLL_FUSE_SNSD) { + diag_printf("%s(%d) invalid operation\n", __FUNCTION__, action); + return -1; + } + + /* Poll busy bit till it is NOT set */ + while ((readl(IIM_BASE_ADDR + IIM_STAT_OFF) & IIM_STAT_BUSY) != 0 ) { + } + + /* Test for successful write */ + status = readl(IIM_BASE_ADDR + IIM_STAT_OFF); + error = readl(IIM_BASE_ADDR + IIM_ERR_OFF); + + if ((status & action) != 0 && (error & (action >> IIM_ERR_SHIFT)) == 0) { + if (error) { + diag_printf("Even though the operation seems successful...\n"); + diag_printf("There are some error(s) at addr=0x%08lx: 0x%08x\n", + (IIM_BASE_ADDR + IIM_ERR_OFF), error); + } + return 0; + } + diag_printf("%s(%d) failed\n", __FUNCTION__, action); + diag_printf("status address=0x%08lx, value=0x%08x\n", + (IIM_BASE_ADDR + IIM_STAT_OFF), status); + diag_printf("There are some error(s) at addr=0x%08lx: 0x%08x\n", + (IIM_BASE_ADDR + IIM_ERR_OFF), error); + return -1; +} + +unsigned int sense_fuse(int bank, int row, int bit) +{ + int addr, addr_l, addr_h, reg_addr; + + fuse_op_start(); + + addr = ((bank << 11) | (row << 3) | (bit & 0x7)); + /* Set IIM Program Upper Address */ + addr_h = (addr >> 8) & 0x000000FF; + /* Set IIM Program Lower Address */ + addr_l = (addr & 0x000000FF); + +#ifdef IIM_FUSE_DEBUG + diag_printf("%s: addr_h=0x%02x, addr_l=0x%02x\n", + __FUNCTION__, addr_h, addr_l); +#endif + writel(addr_h, IIM_BASE_ADDR + IIM_UA_OFF); + writel(addr_l, IIM_BASE_ADDR + IIM_LA_OFF); + /* Start sensing */ + writel(0x8, IIM_BASE_ADDR + IIM_FCTL_OFF); + if (poll_fuse_op_done(POLL_FUSE_SNSD) != 0) { + diag_printf("%s(bank: %d, row: %d, bit: %d failed\n", + __FUNCTION__, bank, row, bit); + } + reg_addr = IIM_BASE_ADDR + IIM_SDAT_OFF; + return readl(reg_addr); +} + +void do_fuse_read(int argc, char *argv[]) +{ + unsigned long bank, row; + unsigned long fuse_val; + + if (argc == 1) { + diag_printf("Usage: fuse_read \n"); + return; + } else if (argc == 3) { + if (!parse_num(argv[1], &bank, &argv[1], " ")) { + diag_printf("Error: Invalid parameter\n"); + return; + } + if (!parse_num(argv[2], &row, &argv[2], " ")) { + diag_printf("Error: Invalid parameter\n"); + return; + } + + diag_printf("Read fuse at bank:%ld row:%ld\n", bank, row); + fuse_val = sense_fuse(bank, row, 0); + diag_printf("fuses at (bank:%ld, row:%ld) = 0x%02lx\n", bank, row, fuse_val); + } else { + diag_printf("Passing in wrong arguments: %d\n", argc); + diag_printf("Usage: fuse_read \n"); + } +} + +/* Blow fuses based on the bank, row and bit positions (all 0-based) +*/ +static int fuse_blow(int bank, int row, int bit) +{ + int addr, addr_l, addr_h, ret = -1; + + fuse_op_start(); + + /* Disable IIM Program Protect */ + writel(0xAA, IIM_BASE_ADDR + IIM_PREG_P_OFF); + + addr = ((bank << 11) | (row << 3) | (bit & 0x7)); + /* Set IIM Program Upper Address */ + addr_h = (addr >> 8) & 0x000000FF; + /* Set IIM Program Lower Address */ + addr_l = (addr & 0x000000FF); + +#ifdef IIM_FUSE_DEBUG + diag_printf("blowing fuse %d %d bit %d addr_h=0x%02x, addr_l=0x%02x\n", + bank, row, bit, addr_h, addr_l); +#endif + + writel(addr_h, IIM_BASE_ADDR + IIM_UA_OFF); + writel(addr_l, IIM_BASE_ADDR + IIM_LA_OFF); + /* Start Programming */ + writel(0x71, IIM_BASE_ADDR + IIM_FCTL_OFF); + if (poll_fuse_op_done(POLL_FUSE_PRGD) == 0) { + ret = 0; + } + + /* Enable IIM Program Protect */ + writel(0x0, IIM_BASE_ADDR + IIM_PREG_P_OFF); + return ret; +} + +/* + * This command is added for burning IIM fuses + */ +RedBoot_cmd("fuse_read", + "read some fuses", + " ", + do_fuse_read + ); + +RedBoot_cmd("fuse_blow", + "blow some fuses", + " ", + do_fuse_blow + ); + +void quick_itoa(u32 num, char *a) +{ + int i, j, k; + for (i = 0; i <= 7; i++) { + j = (num >> (4 * i)) & 0xF; + k = (j < 10) ? '0' : ('a' - 0xa); + a[i] = j + k; + } +} + +// slen - streng length, e.g.: 23 -> slen=2; abcd -> slen=4 +// only convert hex value as string input. so "12" is 0x12. +u32 quick_atoi(char *a, u32 slen) +{ + u32 i, num = 0, digit; + + for (i = 0; i < slen; i++) { + if (a[i] >= '0' && a[i] <= '9') { + digit = a[i] - '0'; + } else if (a[i] >= 'a' && a[i] <= 'f') { + digit = a[i] - 'a' + 10; + } else if (a[i] >= 'A' && a[i] <= 'F') { + digit = a[i] - 'A' + 10; + } else { + diag_printf("ERROR: %c\n", a[i]); + return -1; + } + num = (num * 16) + digit; + } + return num; +} + +void fuse_blow_row(int bank, int row, int value) +{ + unsigned int reg, i; + + FUSE_PROG_START(); + + // enable fuse blown + reg = readl(CCM_BASE_ADDR + 0x64); + reg |= 0x10; + writel(reg, CCM_BASE_ADDR + 0x64); + + for (i = 0; i < 8; i++) { + if (((value >> i) & 0x1) == 0) { + continue; + } + if (fuse_blow(bank, row, i) != 0) { + diag_printf("fuse_blow(bank: %d, row: %d, bit: %d failed\n", + bank, row, i); + } + } + reg &= ~0x10; + writel(reg, CCM_BASE_ADDR + 0x64); + + FUSE_PROG_DONE(); +} + +void do_fuse_blow(int argc, char *argv[]) +{ + unsigned long bank, row, value, i; + unsigned int fuse_val; + char *s; + char val[3]; + + if (argc == 1) { + diag_printf("It is too dangeous for you to use this command.\n"); + return; + } + + if (argc == 3) { + if (strcasecmp(argv[1], "scc") == 0) { + // fuse_blow scc C3D153EDFD2EA9982226EF5047D3B9A0B9C7138EA87C028401D28C2C2C0B9AA2 + diag_printf("Ready to burn SCC fuses\n"); + s=argv[2]; + for (i = 0; ;i++) { + memcpy(val, s, 2); + val[2]='\0'; + value = quick_atoi(val, 2); + // diag_printf("fuse_blow_row(2, %d, value=0x%02x)\n", i, value); + fuse_blow_row(2, i, value); + + if ((++s)[0] == '\0') { + diag_printf("ERROR: Odd string input\n"); + break; + } + if ((++s)[0] == '\0') { + diag_printf("Successful\n"); + break; + } + } + } else if (strcasecmp(argv[1], "srk") == 0) { + // fuse_blow srk 418bccd09b53bee1ab59e2662b3c7877bc0094caee201052add49be8780dff95 + diag_printf("Ready to burn SRK key fuses\n"); + s=argv[2]; + for (i = 0; ;i++) { + memcpy(val, s, 2); + val[2]='\0'; + value = quick_atoi(val, 2); + if (i == 0) { + fuse_blow_row(1, 1, value); // 0x41 goes to SRK_HASH[255:248], bank 1, row 1 + } else + fuse_blow_row(3, i, value); // 0x8b in SRK_HASH[247:240] bank 3, row 1 + // 0xcc in SRK_HASH[239:232] bank 3, row 2 + // ... + if ((++s)[0] == '\0') { + diag_printf("ERROR: Odd string input\n"); + break; + } + if ((++s)[0] == '\0') { + diag_printf("Successful\n"); + break; + } + } + } else + diag_printf("This command is not supported\n"); + + return; + } else if (argc == 4) { + if (!parse_num(argv[1], &bank, &argv[1], " ")) { + diag_printf("Error: Invalid parameter\n"); + return; + } + if (!parse_num(argv[2], &row, &argv[2], " ")) { + diag_printf("Error: Invalid parameter\n"); + return; + } + if (!parse_num(argv[3], &value, &argv[3], " ")) { + diag_printf("Error: Invalid parameter\n"); + return; + } + + diag_printf("Blowing fuse at bank:%ld row:%ld value:%ld\n", + bank, row, value); + fuse_blow_row(bank, row, value); + fuse_val = sense_fuse(bank, row, 0); + diag_printf("fuses at (bank:%ld, row:%ld) = 0x%02x\n", bank, row, fuse_val); + + } else { + diag_printf("Passing in wrong arguments: %d\n", argc); + } +} + +/* precondition: m>0 and n>0. Let g=gcd(m,n). */ +static int gcd(int m, int n) +{ + while (m > 0) { + if (n > m) { + /* swap */ + m ^= n; + n ^= m; + m ^= n; + } + m -= n; + } + return n; +} + +int read_mac_addr_from_fuse(unsigned char* data) +{ + data[0] = sense_fuse(1, 9, 0) ; + data[1] = sense_fuse(1, 10, 0) ; + data[2] = sense_fuse(1, 11, 0) ; + data[3] = sense_fuse(1, 12, 0) ; + data[4] = sense_fuse(1, 13, 0) ; + data[5] = sense_fuse(1, 14, 0) ; + + if ((data[0] == 0) && (data[1] == 0) && (data[2] == 0) && + (data[3] == 0) && (data[4] == 0) && (data[5] == 0)) { + return 0; + } + + return 1; +} + +#if 0 +void imx_power_mode(int mode) +{ + volatile unsigned int val; + switch (mode) { + case 2: + writel(0x0000030f, GPC_PGR); + writel(0x1, SRPGCR_EMI); + writel(0x1, SRPGCR_ARM); + writel(0x1, PGC_PGCR_VPU); + writel(0x1, PGC_PGCR_IPU); + + + case 1: + // stop mode - from validation code + // Set DSM_INT_HOLDOFF bit in TZIC + // If the TZIC didn't write the bit then there was interrupt pending + // It will be serviced while we're in the loop + // So we write to this bit again + while (readl(INTC_BASE_ADDR + 0x14) == 0) { + writel(1, INTC_BASE_ADDR + 0x14); + // Wait few cycles + __asm("nop"); + __asm("nop"); + __asm("nop"); + __asm("nop"); + __asm("nop"); + __asm("nop"); + __asm("nop"); + } + diag_printf("Entering stop mode\n"); + val = readl(CCM_BASE_ADDR + 0x74); + val = (val & 0xfffffffc) | 0x2; // set STOP mode + writel(val, CCM_BASE_ADDR + 0x74); + val = readl(PLATFORM_LPC_REG); + writel(val | (1 << 16), PLATFORM_LPC_REG);// ENABLE DSM in ELBOW submodule of ARM platform + writel(val | (1 << 17), PLATFORM_LPC_REG);// ENABLE DSM in ELBOW submodule of ARM platform + break; + } + + hal_delay_us(50); + + asm("mov r1, #0"); + asm("mcr p15, 0, r1, c7, c0, 4"); +} + +void do_power_mode(int argc, char *argv[]) +{ + unsigned long mode; + + if (argc == 1) { + diag_printf("Usage: power_mode \n"); + return; + } else if (argc == 2) { + if (!parse_num(argv[1], &mode, &argv[1], " ")) { + diag_printf("Error: Invalid parameter\n"); + return; + } + diag_printf("Entering power mode: %lu\n", mode); + imx_power_mode(mode); + + } else { + diag_printf("Passing in wrong arguments: %d\n", argc); + diag_printf("Usage: power_mode \n"); + } +} + +/* + * This command is added for burning IIM fuses + */ +RedBoot_cmd("power_mode", + "Enter various power modes:", + "\n" + " <0> - WAIT\n" + " <1> - SRPG\n" + " <2> - STOP\n" + " <3> - STOP with Power-Gating\n" + " -- need reset after issuing the command", + do_power_mode + ); +#endif + +/* Super Root key moduli */ +static const UINT8 hab_super_root_moduli[] = { + /* modulus data */ + 0xb9, 0x84, 0xc8, 0x8a, 0xd3, 0x7e, 0xcc, 0xc0, 0xe7, 0x3e, 0x11, 0x53, + 0x6b, 0x5e, 0xea, 0xf4, 0xd9, 0xac, 0x5a, 0x63, 0x8a, 0x79, 0x96, 0x83, + 0xb1, 0x39, 0xb2, 0x6f, 0x9c, 0x54, 0x87, 0xf4, 0x3b, 0x9e, 0xd8, 0x0f, + 0x89, 0xf5, 0x01, 0x53, 0xb8, 0xe2, 0xcc, 0x75, 0x0d, 0xe1, 0x13, 0xfa, + 0xa7, 0xb9, 0x1e, 0xff, 0x6a, 0x05, 0xdb, 0x58, 0x10, 0xbf, 0x2b, 0xf4, + 0xe7, 0x0a, 0x63, 0x82, 0x2c, 0xa3, 0xb5, 0x0a, 0x72, 0x1c, 0xdc, 0x29, + 0xc1, 0x81, 0xb5, 0x9a, 0xf0, 0x25, 0x7d, 0xd6, 0xee, 0x01, 0x64, 0xc7, + 0x07, 0x2d, 0xcb, 0x31, 0x4c, 0x8d, 0x82, 0xf6, 0x44, 0x95, 0x4a, 0xbc, + 0xae, 0xe8, 0x2a, 0x89, 0xd4, 0xf2, 0x66, 0x72, 0x2b, 0x09, 0x4e, 0x56, + 0xe9, 0xbf, 0x5e, 0x38, 0x5c, 0xd5, 0x7e, 0x15, 0x55, 0x86, 0x0f, 0x19, + 0xf6, 0x00, 0xee, 0xa1, 0x92, 0x78, 0xef, 0x93, 0xcb, 0xfa, 0xb4, 0x98, + 0x19, 0xef, 0x10, 0x70, 0xde, 0x36, 0x1c, 0x12, 0x2e, 0xd2, 0x09, 0xc7, + 0x7b, 0xd1, 0xaa, 0xd3, 0x46, 0x65, 0xa1, 0x5b, 0xee, 0xa5, 0x96, 0x97, + 0x98, 0x3e, 0xfc, 0xf8, 0x74, 0x22, 0x51, 0xe7, 0xf1, 0x2f, 0x30, 0x79, + 0x13, 0xe5, 0x42, 0xc6, 0x7c, 0x18, 0x76, 0xd3, 0x7f, 0x5a, 0x13, 0xde, + 0x2f, 0x51, 0x07, 0xfa, 0x93, 0xfe, 0x10, 0x8a, 0x0c, 0x18, 0x60, 0x3c, + 0xff, 0x6a, 0x9b, 0xe7, 0x10, 0x2d, 0x71, 0xd2, 0x34, 0xc0, 0xdf, 0xbe, + 0x17, 0x4e, 0x75, 0x40, 0x83, 0xaa, 0x90, 0xd1, 0xed, 0xbd, 0xbf, 0xac, + 0x9a, 0x30, 0xbd, 0x69, 0x4d, 0xd8, 0x00, 0x63, 0x92, 0x69, 0x98, 0xf8, + 0x89, 0xdc, 0x7b, 0xe3, 0x66, 0x7e, 0xdd, 0xfa, 0x8c, 0x74, 0xe2, 0xb1, + 0xeb, 0x94, 0xf7, 0xab, 0x0e, 0x92, 0x06, 0xab, 0x60, 0xe5, 0x00, 0x43, + 0xb2, 0x5e, 0x6e, 0xeb +}; + +/* Super Root key */ +const hab_rsa_public_key hab_super_root_key[] = { + { + { + /* RSA public exponent, right-padded */ + 0x01, 0x00, 0x01, 0x00, + }, + /* pointer to modulus data */ + hab_super_root_moduli, + /* Exponent size in bytes */ + 0x03, + /* Modulus size in bytes */ + 0x100, + /* Key data valid */ + TRUE + } +}; diff --git a/packages/hal/arm/mx53/var/v2_0/src/hab_super_root.h b/packages/hal/arm/mx53/var/v2_0/src/hab_super_root.h new file mode 100644 index 00000000..2f3b8f3b --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/src/hab_super_root.h @@ -0,0 +1,120 @@ +//========================================================================== +// +// hab_super_root.h +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================== +#ifndef HAB_SUPER_ROOT_H +#define HAB_SUPER_ROOT_H + +#ifdef __cplusplus +extern "C" { +#endif + +/*================================================================================================== + + Header Name: hab_super_root.h + + General Description: This module contains the HAB Super Root public keys. + +====================================================================================================*/ + +/* Generic type definitions */ +typedef signed char INT8; +typedef unsigned char UINT8; +typedef short int INT16; +typedef unsigned short int UINT16; +typedef int INT32; +typedef unsigned int UINT32; +typedef unsigned char BOOLEAN; + + +/* HAB specific type definitions */ +typedef UINT8 *hab_bytestring; +typedef UINT16 hab_algorithm; +typedef UINT8 hab_index; +typedef UINT32 hab_address; +typedef UINT8 hab_certificate; +typedef UINT32 hab_data_length; +typedef UINT16 hab_int_length; +typedef UINT8 hab_error; + +#ifndef TRUE +#define TRUE 1 +#endif + +#ifndef FALSE +#define FALSE 0 +#endif + +/* HAB specific definitions */ +#define HAB_MAX_EXP_SIZE ((hab_int_length)4) /* Maximum size of RSA + * public key exponent + * - in bytes + */ + +/*================================================================================================== + MACROS +==================================================================================================*/ + +/*================================================================================================== + ENUMS +==================================================================================================*/ + +/*================================================================================================== + STRUCTURES AND OTHER TYPEDEFS +==================================================================================================*/ + +/* RSA public key structure */ +typedef struct +{ + UINT8 rsa_exponent[HAB_MAX_EXP_SIZE]; /* RSA public exponent */ + const UINT8 *rsa_modulus; /* RSA modulus pointer */ + hab_int_length exponent_size; /* Exponent size in bytes */ + hab_int_length modulus_size; /* Modulus size in bytes */ + BOOLEAN init_flag; /* Indicates if key initialised */ +} hab_rsa_public_key; + +/*================================================================================================== + GLOBAL VARIABLE DECLARATIONS +==================================================================================================*/ +/* Super Root keys */ +extern const hab_rsa_public_key hab_super_root_key[]; + +#ifdef __cplusplus +} +#endif + +#endif /* HAB_SUPER_ROOT_H */ diff --git a/packages/hal/arm/mx53/var/v2_0/src/soc_diag.c b/packages/hal/arm/mx53/var/v2_0/src/soc_diag.c new file mode 100644 index 00000000..57951802 --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/src/soc_diag.c @@ -0,0 +1,752 @@ +/*============================================================================= +// +// hal_diag.c +// +// HAL diagnostic output code +// +//============================================================================= +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//===========================================================================*/ + +#include +#include +#include CYGBLD_HAL_PLATFORM_H + +#include // base types +#include // tracing macros +#include // assertion macros + +#include // basic machine info +#include // interrupt macros +#include // IO macros +#include // Calling interface definitions +#include +#include // cyg_drv_interrupt_acknowledge +#include // Helper functions +#include // Hardware definitions +#include + +/* + * UART Control Register 0 Bit Fields. + */ +#define EUartUCR1_ADEN (1 << 15) // Auto dectect interrupt +#define EUartUCR1_ADBR (1 << 14) // Auto detect baud rate +#define EUartUCR1_TRDYEN (1 << 13) // Transmitter ready interrupt enable +#define EUartUCR1_IDEN (1 << 12) // Idle condition interrupt +#define EUartUCR1_RRDYEN (1 << 9) // Recv ready interrupt enable +#define EUartUCR1_RDMAEN (1 << 8) // Recv ready DMA enable +#define EUartUCR1_IREN (1 << 7) // Infrared interface enable +#define EUartUCR1_TXMPTYEN (1 << 6) // Transimitter empty interrupt enable +#define EUartUCR1_RTSDEN (1 << 5) // RTS delta interrupt enable +#define EUartUCR1_SNDBRK (1 << 4) // Send break +#define EUartUCR1_TDMAEN (1 << 3) // Transmitter ready DMA enable +#define EUartUCR1_DOZE (1 << 1) // Doze +#define EUartUCR1_UARTEN (1 << 0) // UART enabled +#define EUartUCR2_ESCI (1 << 15) // Escape seq interrupt enable +#define EUartUCR2_IRTS (1 << 14) // Ignore RTS pin +#define EUartUCR2_CTSC (1 << 13) // CTS pin control +#define EUartUCR2_CTS (1 << 12) // Clear to send +#define EUartUCR2_ESCEN (1 << 11) // Escape enable +#define EUartUCR2_PREN (1 << 8) // Parity enable +#define EUartUCR2_PROE (1 << 7) // Parity odd/even +#define EUartUCR2_STPB (1 << 6) // Stop +#define EUartUCR2_WS (1 << 5) // Word size +#define EUartUCR2_RTSEN (1 << 4) // Request to send interrupt enable +#define EUartUCR2_ATEN (1 << 3) // Aging timer enable +#define EUartUCR2_TXEN (1 << 2) // Transmitter enabled +#define EUartUCR2_RXEN (1 << 1) // Receiver enabled +#define EUartUCR2_SRST_ (1 << 0) // SW reset +#define EUartUCR3_PARERREN (1 << 12) // Parity enable +#define EUartUCR3_FRAERREN (1 << 11) // Frame error interrupt enable +#define EUartUCR3_ADNIMP (1 << 7) // Autobaud detection not improved +#define EUartUCR3_RXDSEN (1 << 6) // Receive status interrupt enable +#define EUartUCR3_AIRINTEN (1 << 5) // Async IR wake interrupt enable +#define EUartUCR3_AWAKEN (1 << 4) // Async wake interrupt enable +#define EUartUCR3_RXDMUXSEL (1 << 2) // RXD muxed input selected +#define EUartUCR3_INVT (1 << 1) // Inverted Infrared transmission +#define EUartUCR3_ACIEN (1 << 0) // Autobaud counter interrupt enable +#define EUartUCR4_CTSTL_32 (32 << 10) // CTS trigger level (32 chars) +#define EUartUCR4_INVR (1 << 9) // Inverted infrared reception +#define EUartUCR4_ENIRI (1 << 8) // Serial infrared interrupt enable +#define EUartUCR4_WKEN (1 << 7) // Wake interrupt enable +#define EUartUCR4_IRSC (1 << 5) // IR special case +#define EUartUCR4_LPBYP (1 << 4) // Low power bypass +#define EUartUCR4_TCEN (1 << 3) // Transmit complete interrupt enable +#define EUartUCR4_BKEN (1 << 2) // Break condition interrupt enable +#define EUartUCR4_OREN (1 << 1) // Receiver overrun interrupt enable +#define EUartUCR4_DREN (1 << 0) // Recv data ready interrupt enable +#define EUartUFCR_RXTL_SHF 0 // Receiver trigger level shift +#define EUartUFCR_RFDIV_1 (5 << 7) // Reference freq divider (div 1) +#define EUartUFCR_RFDIV_2 (4 << 7) // Reference freq divider (div 2) +#define EUartUFCR_RFDIV_3 (3 << 7) // Reference freq divider (div 3) +#define EUartUFCR_RFDIV_4 (2 << 7) // Reference freq divider (div 4) +#define EUartUFCR_RFDIV_5 (1 << 7) // Reference freq divider (div 5) +#define EUartUFCR_RFDIV_6 (0 << 7) // Reference freq divider (div 6) +#define EUartUFCR_RFDIV_7 (6 << 7) // Reference freq divider (div 7) +#define EUartUFCR_TXTL_SHF 10 // Transmitter trigger level shift +#define EUartUSR1_PARITYERR (1 << 15) // Parity error interrupt flag +#define EUartUSR1_RTSS (1 << 14) // RTS pin status +#define EUartUSR1_TRDY (1 << 13) // Transmitter ready interrupt/dma flag +#define EUartUSR1_RTSD (1 << 12) // RTS delta +#define EUartUSR1_ESCF (1 << 11) // Escape seq interrupt flag +#define EUartUSR1_FRAMERR (1 << 10) // Frame error interrupt flag +#define EUartUSR1_RRDY (1 << 9) // Receiver ready interrupt/dma flag +#define EUartUSR1_AGTIM (1 << 8) // Aging timeout interrupt status +#define EUartUSR1_RXDS (1 << 6) // Receiver idle interrupt flag +#define EUartUSR1_AIRINT (1 << 5) // Async IR wake interrupt flag +#define EUartUSR1_AWAKE (1 << 4) // Aysnc wake interrupt flag +#define EUartUSR2_ADET (1 << 15) // Auto baud rate detect complete +#define EUartUSR2_TXFE (1 << 14) // Transmit buffer FIFO empty +#define EUartUSR2_IDLE (1 << 12) // Idle condition +#define EUartUSR2_ACST (1 << 11) // Autobaud counter stopped +#define EUartUSR2_IRINT (1 << 8) // Serial infrared interrupt flag +#define EUartUSR2_WAKE (1 << 7) // Wake +#define EUartUSR2_RTSF (1 << 4) // RTS edge interrupt flag +#define EUartUSR2_TXDC (1 << 3) // Transmitter complete +#define EUartUSR2_BRCD (1 << 2) // Break condition +#define EUartUSR2_ORE (1 << 1) // Overrun error +#define EUartUSR2_RDR (1 << 0) // Recv data ready +#define EUartUTS_FRCPERR (1 << 13) // Force parity error +#define EUartUTS_LOOP (1 << 12) // Loop tx and rx +#define EUartUTS_TXEMPTY (1 << 6) // TxFIFO empty +#define EUartUTS_RXEMPTY (1 << 5) // RxFIFO empty +#define EUartUTS_TXFULL (1 << 4) // TxFIFO full +#define EUartUTS_RXFULL (1 << 3) // RxFIFO full +#define EUartUTS_SOFTRST (1 << 0) // Software reset + +#define EUartUFCR_RFDIV EUartUFCR_RFDIV_2 +//#define EUartUFCR_RFDIV EUartUFCR_RFDIV_4 +//#define EUartUFCR_RFDIV EUartUFCR_RFDIV_7 + +#if (EUartUFCR_RFDIV==EUartUFCR_RFDIV_2) +#define MXC_UART_REFFREQ (get_peri_clock(UART1_BAUD) / 2) +#endif + +#if (EUartUFCR_RFDIV==EUartUFCR_RFDIV_4) +#define MXC_UART_REFFREQ (get_peri_clock(UART1_BAUD) / 4) +#endif + +#if (EUartUFCR_RFDIV==EUartUFCR_RFDIV_7) +#define MXC_UART_REFFREQ (get_peri_clock(UART1_BAUD) / 7) +#endif + +/* The Freescale boards have two external UART ports which are mapped first + * for whatever strange reason. + * Other manufacturers may not have these UARTS on their boards but would + * as well like to have their serial ports start at '0'! + */ +#ifdef CYGPKG_HAL_ARM_TX53KARO +#define MXC_UART_CHAN_OFFSET 0 +#else +#define MXC_UART_CHAN_OFFSET 2 +#endif + +#if 1 +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 +//============================================================================= +#ifdef UART_WIDTH_32 +struct mxc_serial { + volatile cyg_uint32 urxd[16]; + volatile cyg_uint32 utxd[16]; + volatile cyg_uint32 ucr1; + volatile cyg_uint32 ucr2; + volatile cyg_uint32 ucr3; + volatile cyg_uint32 ucr4; + volatile cyg_uint32 ufcr; + volatile cyg_uint32 usr1; + volatile cyg_uint32 usr2; + volatile cyg_uint32 uesc; + volatile cyg_uint32 utim; + volatile cyg_uint32 ubir; + volatile cyg_uint32 ubmr; + volatile cyg_uint32 ubrc; + volatile cyg_uint32 onems; + volatile cyg_uint32 uts; +}; +#else +struct mxc_serial { + volatile cyg_uint16 urxd[1]; + volatile cyg_uint16 resv0[31]; + + volatile cyg_uint16 utxd[1]; + volatile cyg_uint16 resv1[31]; + volatile cyg_uint16 ucr1; + volatile cyg_uint16 resv2; + volatile cyg_uint16 ucr2; + volatile cyg_uint16 resv3; + volatile cyg_uint16 ucr3; + volatile cyg_uint16 resv4; + volatile cyg_uint16 ucr4; + volatile cyg_uint16 resv5; + volatile cyg_uint16 ufcr; + volatile cyg_uint16 resv6; + volatile cyg_uint16 usr1; + volatile cyg_uint16 resv7; + volatile cyg_uint16 usr2; + volatile cyg_uint16 resv8; + volatile cyg_uint16 uesc; + volatile cyg_uint16 resv9; + volatile cyg_uint16 utim; + volatile cyg_uint16 resv10; + volatile cyg_uint16 ubir; + volatile cyg_uint16 resv11; + volatile cyg_uint16 ubmr; + volatile cyg_uint16 resv12; + volatile cyg_uint16 ubrc; + volatile cyg_uint16 resv13; + volatile cyg_uint16 onems; + volatile cyg_uint16 resv14; + volatile cyg_uint16 uts; + volatile cyg_uint16 resv15; +}; +#endif + +typedef struct { + volatile struct mxc_serial *base; + cyg_int32 msec_timeout; + int isr_vector; + int baud_rate; +} channel_data_t; + +static channel_data_t channels[] = { +#if CYGHWR_HAL_ARM_SOC_UART1 != 0 + {(volatile struct mxc_serial*)UART1_BASE_ADDR, 1000, + CYGNUM_HAL_INTERRUPT_UART1, CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD}, +#endif +#if CYGHWR_HAL_ARM_SOC_UART2 != 0 + {(volatile struct mxc_serial*)UART2_BASE_ADDR, 1000, + CYGNUM_HAL_INTERRUPT_UART2, CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD}, +#endif +#if CYGHWR_HAL_ARM_SOC_UART3 != 0 + {(volatile struct mxc_serial*)UART3_BASE_ADDR, 1000, + CYGNUM_HAL_INTERRUPT_UART3, CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD}, +#endif +}; + +/*---------------------------------------------------------------------------*/ + +static void init_serial_channel(channel_data_t *__ch_data) +{ + volatile struct mxc_serial *base = __ch_data->base; + + /* Wait for UART to finish transmitting */ + while (!(base->uts & EUartUTS_TXEMPTY)); + + /* Disable UART */ + base->ucr1 &= ~EUartUCR1_UARTEN; + + /* Set to default POR state */ + base->ucr1 = 0x00000000; + base->ucr2 = 0x00000000; + + while (!(base->ucr2 & EUartUCR2_SRST_)); + + base->ucr3 = 0x00000704; + base->ucr4 = 0x00008000; + base->ufcr = 0x00000801; + base->uesc = 0x0000002B; + base->utim = 0x00000000; + base->ubir = 0x00000000; + base->ubmr = 0x00000000; + base->onems = 0x00000000; + base->uts = 0x00000000; + + /* Configure FIFOs */ + base->ufcr = (1 << EUartUFCR_RXTL_SHF) | EUartUFCR_RFDIV | + (2 << EUartUFCR_TXTL_SHF); + + /* Setup One MS timer */ + base->onems = MXC_UART_REFFREQ / 1000; + + /* Set to 8N1 */ + base->ucr2 &= ~EUartUCR2_PREN; + base->ucr2 |= EUartUCR2_WS; + base->ucr2 &= ~EUartUCR2_STPB; + + /* Ignore RTS */ + base->ucr2 |= EUartUCR2_IRTS; + + /* Enable UART */ + base->ucr1 |= EUartUCR1_UARTEN; + + /* Enable FIFOs */ + base->ucr2 |= EUartUCR2_SRST_ | EUartUCR2_RXEN | EUartUCR2_TXEN; + + /* Clear status flags */ + base->usr2 |= EUartUSR2_ADET | + EUartUSR2_IDLE | + EUartUSR2_IRINT | + EUartUSR2_WAKE | + EUartUSR2_RTSF | + EUartUSR2_BRCD | + EUartUSR2_ORE | + EUartUSR2_RDR; + + /* Clear status flags */ + base->usr1 |= EUartUSR1_PARITYERR | + EUartUSR1_RTSD | + EUartUSR1_ESCF | + EUartUSR1_FRAMERR | + EUartUSR1_AIRINT | + EUartUSR1_AWAKE; + + /* Set the numerator value minus one of the BRM ratio */ + base->ubir = (__ch_data->baud_rate / 100) - 1; + + /* Set the denominator value minus one of the BRM ratio */ + base->ubmr = (MXC_UART_REFFREQ / 1600) - 1; +} + +static void stop_serial_channel(channel_data_t *__ch_data) +{ + volatile struct mxc_serial *base = __ch_data->base; + + /* Wait for UART to finish transmitting */ + while (!(base->uts & EUartUTS_TXEMPTY)); + + /* Disable UART */ + base->ucr1 &= ~EUartUCR1_UARTEN; +} + +//#define debug_uart_log_buf +#ifdef debug_uart_log_buf +#define DIAG_BUFSIZE 2048 +static char __log_buf[DIAG_BUFSIZE] __attribute__((aligned(4096))); +static int diag_bp = 0; +#endif + +void cyg_hal_plf_serial_putc(void *__ch_data, char c) +{ + channel_data_t *chan = __ch_data; + volatile struct mxc_serial *base = chan->base; +#ifdef debug_uart_log_buf + __log_buf[diag_bp++] = c; + return; +#endif + + CYGARC_HAL_SAVE_GP(); + + // Wait for Tx FIFO not full + while (base->uts & EUartUTS_TXFULL) + ; + base->utxd[0] = c; + + CYGARC_HAL_RESTORE_GP(); +} + +static cyg_bool cyg_hal_plf_serial_getc_nonblock(void *__ch_data, + cyg_uint8 *ch) +{ + channel_data_t *chan = __ch_data; + volatile struct mxc_serial *base = chan->base; + + // If receive fifo is empty, return false + if (base->uts & EUartUTS_RXEMPTY) + return false; + + *ch = (char)base->urxd[0]; + + return true; +} + +cyg_uint8 cyg_hal_plf_serial_getc(void *__ch_data) +{ + cyg_uint8 ch; + CYGARC_HAL_SAVE_GP(); + + while (!cyg_hal_plf_serial_getc_nonblock(__ch_data, &ch)); + + CYGARC_HAL_RESTORE_GP(); + return ch; +} + +static void cyg_hal_plf_serial_write(void *__ch_data, const cyg_uint8 *__buf, + cyg_uint32 __len) +{ + CYGARC_HAL_SAVE_GP(); + + while (__len-- > 0) + cyg_hal_plf_serial_putc(__ch_data, *__buf++); + + CYGARC_HAL_RESTORE_GP(); +} + +static void cyg_hal_plf_serial_read(void *__ch_data, cyg_uint8 *__buf, + cyg_uint32 __len) +{ + CYGARC_HAL_SAVE_GP(); + + while (__len-- > 0) + *__buf++ = cyg_hal_plf_serial_getc(__ch_data); + + CYGARC_HAL_RESTORE_GP(); +} + +cyg_bool cyg_hal_plf_serial_getc_timeout(void *__ch_data, + cyg_uint8 *ch) +{ + int delay_count; + channel_data_t *chan = __ch_data; + cyg_bool res; + CYGARC_HAL_SAVE_GP(); + + delay_count = chan->msec_timeout * 10; // delay in .1 ms steps + + for (;;) { + res = cyg_hal_plf_serial_getc_nonblock(__ch_data, ch); + if (res || 0 == delay_count--) + break; + + CYGACC_CALL_IF_DELAY_US(100); + } + + CYGARC_HAL_RESTORE_GP(); + return res; +} + +static int cyg_hal_plf_serial_control(void *__ch_data, + __comm_control_cmd_t __func, ...) +{ + static int irq_state = 0; + channel_data_t *chan = __ch_data; + int ret = -1; + va_list ap; + + CYGARC_HAL_SAVE_GP(); + va_start(ap, __func); + + switch (__func) { + case __COMMCTL_GETBAUD: + ret = chan->baud_rate; + break; + case __COMMCTL_SETBAUD: + chan->baud_rate = va_arg(ap, cyg_int32); + // Should we verify this value here? + init_serial_channel(chan); + ret = 0; + break; + case __COMMCTL_IRQ_ENABLE: + irq_state = 1; + + chan->base->ucr1 |= EUartUCR1_RRDYEN; + + HAL_INTERRUPT_UNMASK(chan->isr_vector); + break; + case __COMMCTL_IRQ_DISABLE: + ret = irq_state; + irq_state = 0; + + chan->base->ucr1 &= ~EUartUCR1_RRDYEN; + + HAL_INTERRUPT_MASK(chan->isr_vector); + break; + case __COMMCTL_DBG_ISR_VECTOR: + ret = chan->isr_vector; + break; + case __COMMCTL_SET_TIMEOUT: + ret = chan->msec_timeout; + chan->msec_timeout = va_arg(ap, cyg_uint32); + break; + default: + break; + } + va_end(ap); + CYGARC_HAL_RESTORE_GP(); + return ret; +} + +static int cyg_hal_plf_serial_isr(void *__ch_data, int *__ctrlc, + CYG_ADDRWORD __vector, CYG_ADDRWORD __data) +{ + int res = 0; + channel_data_t *chan = __ch_data; + char c; + + CYGARC_HAL_SAVE_GP(); + + cyg_drv_interrupt_acknowledge(chan->isr_vector); + + *__ctrlc = 0; + if (!(chan->base->uts & EUartUTS_RXEMPTY)) { + c = (char)chan->base->urxd[0]; + + if (cyg_hal_is_break(&c, 1)) + *__ctrlc = 1; + + res = CYG_ISR_HANDLED; + } + + CYGARC_HAL_RESTORE_GP(); + return res; +} + +void cyg_hal_plf_serial_init(void) +{ + hal_virtual_comm_table_t *comm; + int cur = CYGACC_CALL_IF_SET_CONSOLE_COMM(CYGNUM_CALL_IF_SET_COMM_ID_QUERY_CURRENT); + int i; + static int jjj = 0; + + // Init channels + for (i = 0; i < NUM_ELEMS(channels); i++) { + init_serial_channel(&channels[i]); + CYGACC_CALL_IF_SET_CONSOLE_COMM(i + MXC_UART_CHAN_OFFSET); + comm = CYGACC_CALL_IF_CONSOLE_PROCS(); + CYGACC_COMM_IF_CH_DATA_SET(*comm, &channels[i]); + CYGACC_COMM_IF_WRITE_SET(*comm, cyg_hal_plf_serial_write); + CYGACC_COMM_IF_READ_SET(*comm, cyg_hal_plf_serial_read); + CYGACC_COMM_IF_PUTC_SET(*comm, cyg_hal_plf_serial_putc); + CYGACC_COMM_IF_GETC_SET(*comm, cyg_hal_plf_serial_getc); + CYGACC_COMM_IF_CONTROL_SET(*comm, cyg_hal_plf_serial_control); + CYGACC_COMM_IF_DBG_ISR_SET(*comm, cyg_hal_plf_serial_isr); + CYGACC_COMM_IF_GETC_TIMEOUT_SET(*comm, cyg_hal_plf_serial_getc_timeout); + if (jjj == 0) { + cyg_hal_plf_serial_putc(&channels[i], '+'); + jjj++; + } + } + + // Restore original console + CYGACC_CALL_IF_SET_CONSOLE_COMM(cur); +} + +void cyg_hal_plf_serial_stop(void) +{ + int i; + + // Init channels + for (i = 0; i < NUM_ELEMS(channels); i++) { + stop_serial_channel(&channels[i]); + } +} + +//============================================================================= +// Compatibility with older stubs +//============================================================================= + +#ifndef CYGSEM_HAL_VIRTUAL_VECTOR_DIAG + +#include // cyg_hal_gdb_interrupt + +#define MXC_UART1_CHAN (0 + MXC_UART_CHAN_OFFSET) +#define MXC_UART2_CHAN (1 + MXC_UART_CHAN_OFFSET) +#define MXC_UART3_CHAN (2 + MXC_UART_CHAN_OFFSET) +#define MXC_UART4_CHAN (3 + MXC_UART_CHAN_OFFSET) +#define MXC_UART5_CHAN (4 + MXC_UART_CHAN_OFFSET) +#define MXC_UART6_CHAN (5 + MXC_UART_CHAN_OFFSET) + +#undef __BASE + +#if (CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL == MXC_UART1_CHAN) +#define __BASE ((void*)UART1_BASE_ADDR) +#define CYGHWR_HAL_GDB_PORT_VECTOR CYGNUM_HAL_INTERRUPT_UART1 +#elif (CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL == MXC_UART2_CHAN) +#define __BASE ((void*)UART2_BASE_ADDR) +#define CYGHWR_HAL_GDB_PORT_VECTOR CYGNUM_HAL_INTERRUPT_UART2 +#elif (CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL == MXC_UART3_CHAN) +#define __BASE ((void*)UART3_BASE_ADDR) +#endif + +#ifdef __BASE + +#ifdef CYGSEM_HAL_ROM_MONITOR +#define CYG_HAL_STARTUP_ROM +#define CYG_HAL_STARTUP_ROMRAM +#undef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS +#endif + +#if (defined(CYG_HAL_STARTUP_ROM) || defined(CYG_HAL_STARTUP_ROMRAM)) && !defined(CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS) +#define HAL_DIAG_USES_HARDWARE +#elif !defined(CYGDBG_HAL_DIAG_TO_DEBUG_CHAN) +#define HAL_DIAG_USES_HARDWARE +#elif CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL != CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL +#define HAL_DIAG_USES_HARDWARE +#endif + +static channel_data_t channel = { + __BASE, 0, CYGHWR_HAL_GDB_PORT_VECTOR +}; + +#ifdef HAL_DIAG_USES_HARDWARE + +void hal_diag_init(void) +{ + static int init = 0; + char *msg = "\n\rARM eCos\n\r"; + + if (init++) return; + + init_serial_channel(&channel); + + while (*msg) hal_diag_write_char(*msg++); +} + +#ifdef DEBUG_DIAG +#ifndef CYG_HAL_STARTUP_ROM +#define DIAG_BUFSIZE 2048 +static char diag_buffer[DIAG_BUFSIZE]; +static int diag_bp = 0; +#endif +#endif + +void hal_diag_write_char(char c) +{ +#ifdef DEBUG_DIAG +#ifndef CYG_HAL_STARTUP_ROM + diag_buffer[diag_bp++] = c; + if (diag_bp == sizeof(diag_buffer)) diag_bp = 0; +#endif +#endif + cyg_hal_plf_serial_putc(&channel, c); +} + +void hal_diag_read_char(char *c) +{ + *c = cyg_hal_plf_serial_getc(&channel); +} + +#else // not HAL_DIAG_USES_HARDWARE - it uses GDB protocol + +void hal_diag_read_char(char *c) +{ + *c = cyg_hal_plf_serial_getc(&channel); +} + +void hal_diag_write_char(char c) +{ + static char line[100]; + static int pos = 0; + + // FIXME: Some LED blinking might be nice right here. + + // No need to send CRs + if (c == '\r') return; + + line[pos++] = c; + + if (c == '\n' || pos == sizeof(line)) { + CYG_INTERRUPT_STATE old; + + // Disable interrupts. This prevents GDB trying to interrupt us + // while we are in the middle of sending a packet. The serial + // receive interrupt will be seen when we re-enable interrupts + // later. +#ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS + CYG_HAL_GDB_ENTER_CRITICAL_IO_REGION(old); +#else + HAL_DISABLE_INTERRUPTS(old); +#endif + while (1) { + static char hex[] = "0123456789ABCDEF"; + cyg_uint8 csum = 0; + int i; +#ifndef CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT + char c1; +#endif + cyg_hal_plf_serial_putc(&channel, '$'); + cyg_hal_plf_serial_putc(&channel, 'O'); + csum += 'O'; + for (i = 0; i < pos; i++) { + char ch = line[i]; + char h = hex[(ch >> 4) & 0xF]; + char l = hex[ch & 0xF]; + cyg_hal_plf_serial_putc(&channel, h); + cyg_hal_plf_serial_putc(&channel, l); + csum += h; + csum += l; + } + cyg_hal_plf_serial_putc(&channel, '#'); + cyg_hal_plf_serial_putc(&channel, hex[(csum >> 4) & 0xF]); + cyg_hal_plf_serial_putc(&channel, hex[csum & 0xF]); + +#ifdef CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT + + break; // regardless + +#else // not CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT Ie. usually... + + // Wait for the ACK character '+' from GDB here and handle + // receiving a ^C instead. This is the reason for this clause + // being a loop. + c1 = cyg_hal_plf_serial_getc(&channel); + + if (c1 == '+') + break; // a good acknowledge + +#ifdef CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT + cyg_drv_interrupt_acknowledge(CYGHWR_HAL_GDB_PORT_VECTOR); + if (c1 == '\003') { + // Ctrl-C: breakpoint. + cyg_hal_gdb_interrupt((target_register_t)__builtin_return_address(0)); + break; + } +#endif // CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT + +#endif // ! CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT + // otherwise, loop round again + } + + pos = 0; + + // And re-enable interrupts +#ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS + CYG_HAL_GDB_LEAVE_CRITICAL_IO_REGION(old); +#else + HAL_RESTORE_INTERRUPTS(old); +#endif + } +} +#endif + +#endif // __BASE + +#endif // !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG + +/*---------------------------------------------------------------------------*/ +/* End of hal_diag.c */ diff --git a/packages/hal/arm/mx53/var/v2_0/src/soc_misc.c b/packages/hal/arm/mx53/var/v2_0/src/soc_misc.c new file mode 100644 index 00000000..75ef8bff --- /dev/null +++ b/packages/hal/arm/mx53/var/v2_0/src/soc_misc.c @@ -0,0 +1,624 @@ +//========================================================================== +// +// soc_misc.c +// +// HAL misc board support code +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================*/ + +#include +#include +#include +#include CYGBLD_HAL_PLATFORM_H + +#include // base types +#include // tracing macros +#include // assertion macros + +#include // Size constants +#include // IO macros +#include // Register state info +#include +#include // Interrupt names +#include // Cache control +#include // Hardware definitions +#include // MMap table definitions +#include // diag_printf +#ifdef MXCFLASH_SELECT_NAND +#include +#endif + +// Most initialization has already been done before we get here. +// All we do here is set up the interrupt environment. +// FIXME: some of the stuff in hal_platform_setup could be moved here. + +/* + * System_rev will have the following format + * 31-12 = part # (0x31, 0x32, 0x27, 0x91131, 0x91321, etc) + * 11-8 = unused + * 7-4 = major (1.y) + * 3-0 = minor (x.0) + */ +unsigned int system_rev = CHIP_REV_1_0; +static int find_correct_chip; + +#define SBMR_BOOT_CFG1_SHIFT 0 +#define SBMR_BOOT_CFG1_MASK (0xff << SBMR_BOOT_CFG1_SHIFT) +#define SBMR_BOOT_CFG1(r) (((r) & SBMR_BOOT_CFG1_MASK) >> SBMR_BOOT_CFG1_SHIFT) + +#define SBMR_BOOT_CFG2_SHIFT 8 +#define SBMR_BOOT_CFG2_MASK (0xff << SBMR_BOOT_CFG2_SHIFT) +#define SBMR_BOOT_CFG2(r) (((r) & SBMR_BOOT_CFG2_MASK) >> SBMR_BOOT_CFG2_SHIFT) + +#define SBMR_BOOT_CFG3_SHIFT 16 +#define SBMR_BOOT_CFG3_MASK (0xff << SBMR_BOOT_CFG3_SHIFT) +#define SBMR_BOOT_CFG3(r) (((r) & SBMR_BOOT_CFG3_MASK) >> SBMR_BOOT_CFG3_SHIFT) + +#define SBMR_BMOD_SHIFT 24 +#define SBMR_BMOD_MASK (0x3 << SBMR_BMOD_SHIFT) +#define SBMR_BMOD(r) (((r) & SBMR_BMOD_MASK) >> SBMR_BMOD_SHIFT) + +#define SBMR_BT_FUSE_SEL_SHIFT 26 +#define SBMR_BT_FUSE_SEL_MASK (3 << SBMR_BT_FUSE_SEL_SHIFT) +#define SBMR_BT_FUSE_SEL(r) (((r) & SBMR_BT_FUSE_SEL_MASK) >> SBMR_BT_FUSE_SEL_SHIFT) + +/* + * This functions reads the IIM module and returns the system revision number. + * It returns the IIM silicon revision reg value if valid product rev is found. + . Otherwise, it returns -1. + */ +static int read_system_rev(void) +{ + int prev, srev; + + prev = readl(IIM_BASE_ADDR + IIM_PREV_OFF) >> 3; + srev = readl(IIM_BASE_ADDR + IIM_SREV_OFF); + + system_rev = 0x53 << PART_NUMBER_OFFSET; /* For MX53 Platform*/ + + /* Now try to retrieve the silicon rev from IIM's SREV register */ + return srev; +} + +#ifdef MXCFLASH_SELECT_NAND +unsigned int mxc_nfc_soc_setup(unsigned int pg_sz, unsigned int io_sz, + unsigned int is_mlc, unsigned int num_of_chips); +extern nfc_setup_func_t *nfc_setup; +#endif + +#ifdef MXCFLASH_SELECT_MMC +//extern mxc_mmc_check_sdhc_boot_slot *check_sdhc_slot; +#endif + +int mxc_check_sdhc_boot_slot(unsigned int port, unsigned int *sdhc_addr); + +void hal_hardware_init(void) +{ + int ver; + + ver = read_system_rev(); + + find_correct_chip = ver; + + if (ver != CHIP_VERSION_NONE) { + /* Valid product revision found. Check actual silicon rev from the ROM code. */ + if (ver == 0x1) { + HAL_PLATFORM_EXTRA[5] = '1'; + HAL_PLATFORM_EXTRA[7] = '0'; + system_rev |= 1 << MAJOR_NUMBER_OFFSET; + system_rev |= 0 << MINOR_NUMBER_OFFSET; + } else if (ver == 0x2) { + HAL_PLATFORM_EXTRA[5] = '1'; + HAL_PLATFORM_EXTRA[7] = '1'; + system_rev |= 1 << MAJOR_NUMBER_OFFSET; + system_rev |= 1 << MINOR_NUMBER_OFFSET; + } else if (ver == 0x10) { + HAL_PLATFORM_EXTRA[5] = '2'; + HAL_PLATFORM_EXTRA[7] = '0'; + system_rev |= 2 << MAJOR_NUMBER_OFFSET; + system_rev |= 0 << MINOR_NUMBER_OFFSET; + } else if (ver == 0x3) { + HAL_PLATFORM_EXTRA[5] = '2'; + HAL_PLATFORM_EXTRA[7] = '1'; + system_rev |= 2 << MAJOR_NUMBER_OFFSET; + system_rev |= 1 << MINOR_NUMBER_OFFSET; + } else { + HAL_PLATFORM_EXTRA[5] = 'x'; + HAL_PLATFORM_EXTRA[7] = 'x'; + system_rev |= 3 << MAJOR_NUMBER_OFFSET; + system_rev |= 0 << MINOR_NUMBER_OFFSET; + find_correct_chip = CHIP_VERSION_UNKNOWN; + } + + } + // Enable caches +#ifdef CYGSEM_HAL_ENABLE_ICACHE_ON_STARTUP + HAL_ICACHE_ENABLE(); +#endif +#ifdef CYGSEM_HAL_ENABLE_DCACHE_ON_STARTUP + HAL_DCACHE_ENABLE(); +#endif + // enable EPIT and start it with 32KHz input clock + writel(0x00010000, EPIT_BASE_ADDR + EPITCR); + + // make sure reset is complete + while ((readl(EPIT_BASE_ADDR + EPITCR) & 0x10000) != 0) { + static int retries = 10000; + if (retries--) + break; + } + + writel(0x030E0002, EPIT_BASE_ADDR + EPITCR); + writel(0x030E0003, EPIT_BASE_ADDR + EPITCR); + + writel(0, EPIT_BASE_ADDR + EPITCMPR); // always compare with 0 + + if ((readw(WDOG_BASE_ADDR) & 4) != 0) { + // increase the WDOG timeout value to the max + writew(readw(WDOG_BASE_ADDR) | 0xFF00, WDOG_BASE_ADDR); + } + // Perform any platform specific initializations + plf_hardware_init(); + + // Set up eCos/ROM interfaces + hal_if_init(); + +#ifdef MXCFLASH_SELECT_NAND + nfc_setup = mxc_nfc_soc_setup; +#endif +} + +// ------------------------------------------------------------------------- +void hal_clock_initialize(cyg_uint32 period) +{ +} + +// This routine is called during a clock interrupt. + +// Define this if you want to ensure that the clock is perfect (i.e. does +// not drift). One reason to leave it turned off is that it costs some +// us per system clock interrupt for this maintenance. +#undef COMPENSATE_FOR_CLOCK_DRIFT + +void hal_clock_reset(cyg_uint32 vector, cyg_uint32 period) +{ +} + +// Read the current value of the clock, returning the number of hardware +// "ticks" that have occurred (i.e. how far away the current value is from +// the start) + +// Note: The "contract" for this function is that the value is the number +// of hardware clocks that have happened since the last interrupt (i.e. +// when it was reset). This value is used to measure interrupt latencies. +// However, since the hardware counter runs freely, this routine computes +// the difference between the current clock period and the number of hardware +// ticks left before the next timer interrupt. +void hal_clock_read(cyg_uint32 *pvalue) +{ +} + +// This is to cope with the test read used by tm_basic with +// CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY defined; we read the count ASAP +// in the ISR, *before* resetting the clock. Which returns 1tick + +// latency if we just use plain hal_clock_read(). +void hal_clock_latency(cyg_uint32 *pvalue) +{ +} + +unsigned int hal_timer_count(void) +{ + return (0xFFFFFFFF - readl(EPIT_BASE_ADDR + EPITCNR)); +} + +#define WDT_MAGIC_1 0x5555 +#define WDT_MAGIC_2 0xAAAA +#define MXC_WDT_WSR 0x2 + +unsigned int i2c_base_addr[] = { + I2C_BASE_ADDR, + I2C2_BASE_ADDR, +}; +unsigned int i2c_num = 2; + +static unsigned int led_on = 0; +// +// Delay for some number of micro-seconds +// +void hal_delay_us(unsigned int usecs) +{ + /* + * This causes overflow. + * unsigned int delayCount = (usecs * 32768) / 1000000; + * So use the following one instead + */ + unsigned int delayCount = (usecs * 512) / 15625; + + // issue the service sequence instructions + if ((readw(WDOG_BASE_ADDR) & 4) != 0) { + writew(WDT_MAGIC_1, WDOG_BASE_ADDR + MXC_WDT_WSR); + writew(WDT_MAGIC_2, WDOG_BASE_ADDR + MXC_WDT_WSR); + } + + if (delayCount == 0) { + return; + } + + writel(0x01, EPIT_BASE_ADDR + EPITSR); // clear the compare status bit + + writel(delayCount, EPIT_BASE_ADDR + EPITLR); + + while ((0x1 & readl(EPIT_BASE_ADDR + EPITSR)) == 0); // return until compare bit is set + if ((++led_on % 3000) == 0) + BOARD_DEBUG_LED(0); +} + +// ------------------------------------------------------------------------- + +// This routine is called to respond to a hardware interrupt (IRQ). It +// should interrogate the hardware and return the IRQ vector number. +int hal_IRQ_handler(void) +{ +#ifdef HAL_EXTENDED_IRQ_HANDLER + cyg_uint32 index; + + // Use platform specific IRQ handler, if defined + // Note: this macro should do a 'return' with the appropriate + // interrupt number if such an extended interrupt exists. The + // assumption is that the line after the macro starts 'normal' processing. + HAL_EXTENDED_IRQ_HANDLER(index); +#endif + + return CYGNUM_HAL_INTERRUPT_NONE; // This shouldn't happen! +} + +// +// Interrupt control +// + +void hal_interrupt_mask(int vector) +{ +// diag_printf("6hal_interrupt_mask(vector=%d) \n", vector); +#ifdef HAL_EXTENDED_INTERRUPT_MASK + // Use platform specific handling, if defined + // Note: this macro should do a 'return' for "extended" values of 'vector' + // Normal vectors are handled by code subsequent to the macro call. + HAL_EXTENDED_INTERRUPT_MASK(vector); +#endif +} + +void hal_interrupt_unmask(int vector) +{ +// diag_printf("7hal_interrupt_unmask(vector=%d) \n", vector); + +#ifdef HAL_EXTENDED_INTERRUPT_UNMASK + // Use platform specific handling, if defined + // Note: this macro should do a 'return' for "extended" values of 'vector' + // Normal vectors are handled by code subsequent to the macro call. + HAL_EXTENDED_INTERRUPT_UNMASK(vector); +#endif +} + +void hal_interrupt_acknowledge(int vector) +{ + +// diag_printf("8hal_interrupt_acknowledge(vector=%d) \n", vector); +#ifdef HAL_EXTENDED_INTERRUPT_UNMASK + // Use platform specific handling, if defined + // Note: this macro should do a 'return' for "extended" values of 'vector' + // Normal vectors are handled by code subsequent to the macro call. + HAL_EXTENDED_INTERRUPT_ACKNOWLEDGE(vector); +#endif +} + +void hal_interrupt_configure(int vector, int level, int up) +{ + +#ifdef HAL_EXTENDED_INTERRUPT_CONFIGURE + // Use platform specific handling, if defined + // Note: this macro should do a 'return' for "extended" values of 'vector' + // Normal vectors are handled by code subsequent to the macro call. + HAL_EXTENDED_INTERRUPT_CONFIGURE(vector, level, up); +#endif +} + +void hal_interrupt_set_level(int vector, int level) +{ + +#ifdef HAL_EXTENDED_INTERRUPT_SET_LEVEL + // Use platform specific handling, if defined + // Note: this macro should do a 'return' for "extended" values of 'vector' + // Normal vectors are handled by code subsequent to the macro call. + HAL_EXTENDED_INTERRUPT_SET_LEVEL(vector, level); +#endif + + // Interrupt priorities are not configurable. +} + +#ifdef MXCFLASH_SELECT_NAND +unsigned int mxc_nfc_soc_setup(unsigned int pg_sz, unsigned int io_sz, + unsigned int is_mlc, unsigned int num_of_chips) +{ + unsigned int tmp; + + tmp = readl(NFC_FLASH_CONFIG2_REG); + + /* Set the ST_CMD to be 0x70 for all NAND devices */ + tmp &= ~(0xFF << 24); + tmp |= 0x70 << 24; + /* spare size = 64 byte */ + tmp = (tmp & ~(0xff << 16)) | ((64 / 2) << 16); + + /* Set the Page Size */ + tmp &= ~0x3; + switch (pg_sz) { + case 512: + tmp |= 0x0; + break; + + case 2048: + tmp |= 0x1; + break; + + case 4096: + default: + tmp |= 0x2; + break; + } + + /* set ECC_MODE to 4bit ECC */ + tmp = (tmp & ~(3 << 6)) | (0 << 6); + /* set pages/block to 64 */ + tmp = (tmp & ~(3 << 8)) | (1 << 8); + + /* Set the number of addr phases & ECC mode to default value */ + tmp &= ~(0x3 << 12); + tmp |= (0x2 << 12) | 0x038; + writel(tmp, NFC_FLASH_CONFIG2_REG); + + tmp = readl(NFC_FLASH_CONFIG3_REG); + + /* Set the No SDMA bit */ + tmp |= 0x1 << 20; + + /* Set the Status Busy Bit to 0x6 (default) */ + tmp &= ~(0x7 << 8); + tmp |= 0x6 << 8; + + /* Set the Flash Width */ + if (io_sz == MXC_NAND_16_BIT) { + tmp &= ~(1 << 3); + } else { + tmp |= 1 << 3; + } + + /* Set the Number of Nand Chips */ + tmp &= ~(0x7 << 12); + tmp |= (num_of_chips - 1) << 12; + if (num_of_chips > 1) + tmp |= 0x1; + +#if 0 + /* STATUS_SAMP_SEL */ + tmp |= 1 << 19; +#endif + writel(tmp, NFC_FLASH_CONFIG3_REG); + + return MXC_NFC_V3; +} +#endif + +int mx53_iomux_setup(iomux_v3_cfg_t pad) +{ +#if 0 + diag_printf("pad=%016llx MUX_OFS=%03x PAD_OFS=%03x INP_SEL_OFS=%03x MUX_MODE=%02x PAD_CTL=%04x INP_SEL=%x PAD_CTL_VALID=%d\n", + pad, IOMUX_MUX_CTRL_OFS(pad), IOMUX_PAD_CTRL_OFS(pad), + IOMUX_INP_SEL_OFS(pad), IOMUX_MUX_MODE(pad), IOMUX_PAD_CTRL(pad), + IOMUX_INP_SEL(pad), IOMUX_PAD_CTRL_VALID(pad)); + if (readl(IOMUXC_BASE_ADDR + IOMUX_MUX_CTRL_OFS(pad)) != + IOMUX_MUX_MODE(pad)) { + diag_printf("Changing IOMUX[%03x] from %02x to %02x\n", + IOMUX_MUX_CTRL_OFS(pad), + readl(IOMUXC_BASE_ADDR + IOMUX_MUX_CTRL_OFS(pad)), + IOMUX_MUX_MODE(pad)); + } +#endif + writel(IOMUX_MUX_MODE(pad), + IOMUXC_BASE_ADDR + IOMUX_MUX_CTRL_OFS(pad)); + + if (IOMUX_PAD_CTRL_VALID(pad)) { +#if 0 + if (readl(IOMUXC_BASE_ADDR + IOMUX_PAD_CTRL_OFS(pad)) != + IOMUX_PAD_CTRL(pad)) { + diag_printf("Changing PAD_CTRL[%03x] from %04x to %04x\n", + IOMUX_PAD_CTRL_OFS(pad), + readl(IOMUXC_BASE_ADDR + IOMUX_PAD_CTRL_OFS(pad)), + IOMUX_PAD_CTRL(pad)); + } +#endif + writel(IOMUX_PAD_CTRL(pad), IOMUXC_BASE_ADDR + IOMUX_PAD_CTRL_OFS(pad)); + } + if (IOMUX_INP_SEL_OFS(pad)) { +#if 0 + if (readl(IOMUXC_BASE_ADDR + IOMUX_INP_SEL_OFS(pad)) != + IOMUX_INP_SEL(pad)) { + diag_printf("Changing INP_SEL[%03x] from %x to %x\n", + IOMUX_INP_SEL_OFS(pad), + readl(IOMUXC_BASE_ADDR + IOMUX_INP_SEL_OFS(pad)), + IOMUX_INP_SEL(pad)); + } +#endif + writel(IOMUX_INP_SEL(pad), IOMUXC_BASE_ADDR + IOMUX_INP_SEL_OFS(pad)); + } + return 0; +} + +int mx53_iomux_setup_pads(iomux_v3_cfg_t *pad, int num_pads) +{ + int ret = 0; + int i; + + for (i = 0; i < num_pads; i++) { + ret = mx53_iomux_setup(pad[i]); + if (ret) + break; + } + return ret; +} + +static void show_sys_info(void) +{ + cyg_uint32 sbmr = readl(SRC_BASE_ADDR + 0x4); + cyg_uint32 srsr = readl(SRC_BASE_ADDR + 0x8); + const char *dlm = ""; + int bt_mem = (SBMR_BOOT_CFG1(sbmr) & (0xf << 4)) >> 4; + + if (find_correct_chip == CHIP_VERSION_UNKNOWN) { + diag_printf("Unrecognized chip version: 0x%08x!\n", read_system_rev()); + diag_printf("Assuming chip version=0x%08x\n", system_rev); + } else if (find_correct_chip == CHIP_VERSION_NONE) { + diag_printf("Unrecognized chip: 0x%08x!!!\n", readl(IIM_BASE_ADDR + IIM_PREV_OFF)); + } + + diag_printf("Reset reason: "); + + if (srsr & (1 << 0)) { + diag_printf("%sPOWER_ON", dlm); + dlm = " | "; + } + if (srsr & (1 << 2)) { + diag_printf("%sCSU", dlm); + dlm = " | "; + } + if (srsr & (1 << 3)) { + diag_printf("%sUSER", dlm); + dlm = " | "; + } + if (srsr & (1 << 4)) { + CYG_WORD16 wrsr; + + HAL_READ_UINT16(WDOG_BASE_ADDR + 4, wrsr); + if (wrsr & (1 << 0)) { + diag_printf("%sSOFT", dlm); + dlm = " | "; + } + if (wrsr & (1 << 1)) { + diag_printf("%sWATCHDOG", dlm); + dlm = " | "; + } + } + if (srsr & (1 << 5)) { + diag_printf("%sJTAG_HW", dlm); + dlm = " | "; + } + if (srsr & (1 << 6)) { + diag_printf("%sJTAG_SW", dlm); + dlm = " | "; + } + if (srsr & (1 << 16)) { + diag_printf("%sWARM BOOT", dlm); + dlm = " | "; + } + + if (*dlm == '\0') { + diag_printf("UNKNOWN: %08x\n", srsr); + } else { + diag_printf(" RESET\n"); + } + + diag_printf("BOOT_MODE: "); + switch (SBMR_BMOD(sbmr)) { + case 0: + diag_printf("Internal Boot (from %s)\n", + SBMR_BT_FUSE_SEL(sbmr) ? "FUSES" : "GPIO"); + break; + + case 1: + diag_printf("FSL Test Mode\n"); + break; + + case 2: + diag_printf("Internal Boot (from %s)\n", + SBMR_BT_FUSE_SEL(sbmr) ? "FUSES" : "UART/USB"); + break; + + case 3: + diag_printf("Serial Boot Loader\n"); + } + diag_printf("Boot Medium: "); + switch (SBMR_BMOD(sbmr)) { + case 0: + case 2: + if (bt_mem == 0) { + diag_printf("WEIM %s\n", SBMR_BOOT_CFG1(sbmr) & (1 << 3) ? + "NOR" : "OneNAND"); + } else if (bt_mem == 2) { + diag_printf("HD %sATA\n", SBMR_BOOT_CFG1(sbmr) & (1 << 3) ? + "S" : "P"); + } else if (bt_mem == 3) { + diag_printf("Serial ROM %s\n", SBMR_BOOT_CFG1(sbmr) & (1 << 3) ? + "SPI" : "I2C"); + } else if ((bt_mem & ~1) == 4) { + diag_printf("SD %s speed\n", SBMR_BOOT_CFG1(sbmr) & (1 << 3) ? + "low" : "high"); + } else if ((bt_mem & ~1) == 6) { + diag_printf("MMC %s speed\n", SBMR_BOOT_CFG1(sbmr) & (1 << 3) ? + "low" : "high"); + } else if (bt_mem & (1 << 3)) { + diag_printf("NAND\n"); + } else { + diag_printf("UNKNOWN: 0x%x\n", bt_mem); + } + break; + + case 1: + diag_printf("UNKNOWN\n"); + break; + + case 3: + diag_printf("UART/USB\n"); + } + diag_printf("Boot Clock: %d MHz\n", + (SBMR_BOOT_CFG1(sbmr) & (1 << 1)) ? 400 : 800); + diag_printf("OSC Freq: %s\n", + (SBMR_BOOT_CFG2(sbmr) & (1 << 3)) ? " 24 MHz" : "auto"); + diag_printf("PLL2 Freq: %d MHz\n", + (SBMR_BOOT_CFG2(sbmr) & (1 << 4)) ? 333 : 400); + diag_printf("Secure Boot: %s\n", + (SBMR_BOOT_CFG2(sbmr) & (2 << 0)) ? "On" : "Off"); +} + +RedBoot_init(show_sys_info, RedBoot_INIT_LAST); diff --git a/packages/infra/v2_0/src/diag.cxx b/packages/infra/v2_0/src/diag.cxx index 5fc75a0f..80308cbd 100644 --- a/packages/infra/v2_0/src/diag.cxx +++ b/packages/infra/v2_0/src/diag.cxx @@ -456,7 +456,7 @@ _vprintf(void (*putc)(char c, void *param), void *param, const char *fmt, va_lis length = sizeof(int) * 8; } for (i = 0; i < length-1; i++) { - buf[i] = ((val & ((long long)1< (CYG_ADDRWORD)p) { - s = (CYG_ADDRWORD)s - (CYG_ADDRWORD)p; + if (s > (CYG_ADDRWORD)p) { + s = s - (CYG_ADDRWORD)p; } while ((int)s > 0) { - if (base) { - pf("%08X: ", (CYG_ADDRWORD)p - (CYG_ADDRWORD)base); - } else { - pf("%08X: ", p); - } + pf("%08X: ", (CYG_ADDRWORD)p - (CYG_ADDRWORD)base); for (i = 0; i < 16; i++) { if (i < (int)s) { - pf("%02X ", p[i] & 0xFF); + pf("%02X ", p[i]); } else { pf(" "); } @@ -644,7 +639,7 @@ diag_vdump_buf_with_offset(__printf_fun *pf, pf(" |"); for (i = 0; i < 16; i++) { if (i < (int)s) { - c = p[i] & 0xFF; + c = p[i]; if ((c < 0x20) || (c >= 0x7F)) c = '.'; } else { c = ' '; @@ -658,9 +653,7 @@ diag_vdump_buf_with_offset(__printf_fun *pf, } void -diag_dump_buf_with_offset(cyg_uint8 *p, - CYG_ADDRWORD s, - cyg_uint8 *base) +diag_dump_buf_with_offset(void *p, CYG_ADDRWORD s, void *base) { diag_vdump_buf_with_offset(diag_printf, p, s, base); } @@ -668,25 +661,21 @@ diag_dump_buf_with_offset(cyg_uint8 *p, void diag_dump_buf(void *p, CYG_ADDRWORD s) { - diag_dump_buf_with_offset((cyg_uint8 *)p, s, 0); + diag_dump_buf_with_offset(p, s, 0); } void -diag_dump_buf_with_offset_32bit(cyg_uint32 *p, - CYG_ADDRWORD s, - cyg_uint32 *base) +diag_dump_buf_with_offset_32bit(void *_p, CYG_ADDRWORD s, + void *base) { int i; + cyg_uint32 *p = (cyg_uint32 *)_p; if ((CYG_ADDRWORD)s > (CYG_ADDRWORD)p) { s = (CYG_ADDRWORD)s - (CYG_ADDRWORD)p; } while ((int)s > 0) { - if (base) { - diag_printf("%08X: ", (CYG_ADDRWORD)p - (CYG_ADDRWORD)base); - } else { - diag_printf("%08X: ", (CYG_ADDRWORD)p); - } + diag_printf("%08X: ", (CYG_ADDRWORD)p - (CYG_ADDRWORD)base); for (i = 0; i < 4; i++) { if (i < (int)s / 4) { diag_printf("%08X ", p[i]); @@ -703,24 +692,21 @@ diag_dump_buf_with_offset_32bit(cyg_uint32 *p, externC void diag_dump_buf_32bit(void *p, CYG_ADDRWORD s) { - diag_dump_buf_with_offset_32bit((cyg_uint32 *)p, s, 0); + diag_dump_buf_with_offset_32bit(p, s, 0); } void -diag_dump_buf_with_offset_16bit(cyg_uint16 *p, - CYG_ADDRWORD s, - cyg_uint16 *base) +diag_dump_buf_with_offset_16bit(void *_p, CYG_ADDRWORD s, + void *base) { int i; + cyg_uint16 * p = (cyg_uint16 *)_p; + if ((CYG_ADDRWORD)s > (CYG_ADDRWORD)p) { s = (CYG_ADDRWORD)s - (CYG_ADDRWORD)p; } while ((int)s > 0) { - if (base) { - diag_printf("%08X: ", (CYG_ADDRWORD)p - (CYG_ADDRWORD)base); - } else { - diag_printf("%08X: ", (CYG_ADDRWORD)p); - } + diag_printf("%08X: ", (CYG_ADDRWORD)p - (CYG_ADDRWORD)base); for (i = 0; i < 8; i++) { if (i < (int)s / 2) { diag_printf("%04X ", p[i]); @@ -738,7 +724,7 @@ diag_dump_buf_with_offset_16bit(cyg_uint16 *p, externC void diag_dump_buf_16bit(void *p, CYG_ADDRWORD s) { - diag_dump_buf_with_offset_16bit((cyg_uint16 *)p, s, 0); + diag_dump_buf_with_offset_16bit(p, s, 0); } /*-----------------------------------------------------------------------*/ diff --git a/packages/net/common/v2_0/tests/ping_test.c b/packages/net/common/v2_0/tests/ping_test.c index 72012511..456c558d 100644 --- a/packages/net/common/v2_0/tests/ping_test.c +++ b/packages/net/common/v2_0/tests/ping_test.c @@ -448,7 +448,7 @@ net_test(cyg_addrword_t p) if (cyg_net_get_ipv6_advrouter(&ipv6router)) { ping6_test(&ipv6router); } else { - CYG_TEST_FAIL("No router advertisement recieved"); + CYG_TEST_FAIL("No router advertisement received"); } #endif TNR_PRINT_ACTIVITY(); diff --git a/packages/net/common/v2_0/tests/tftp_client_test.c b/packages/net/common/v2_0/tests/tftp_client_test.c index 417c3cc5..50eb6882 100644 --- a/packages/net/common/v2_0/tests/tftp_client_test.c +++ b/packages/net/common/v2_0/tests/tftp_client_test.c @@ -87,7 +87,7 @@ tftp_test(struct bootp *bp) #ifdef CYGPKG_NET_INET6 // Wait for router solicit process to happen. if (!cyg_net_get_ipv6_advrouter(&ipv6router)) { - diag_printf("No router advertisement recieved\n"); + diag_printf("No router advertisement received\n"); cyg_test_exit(); } diff --git a/packages/redboot/v2_0/src/dump.c b/packages/redboot/v2_0/src/dump.c index 6c6fca1a..3dee574b 100644 --- a/packages/redboot/v2_0/src/dump.c +++ b/packages/redboot/v2_0/src/dump.c @@ -44,9 +44,9 @@ // Author(s): gthomas // Contributors: gthomas // Date: 2002-08-06 -// Purpose: -// Description: -// +// Purpose: +// Description: +// // This code is part of RedBoot (tm). // //####DESCRIPTIONEND#### @@ -55,104 +55,104 @@ #include -RedBoot_cmd("dump", - "Display (hex dump) a range of memory", - "-b [-l ] [-s] [-1|-2|-4]", - do_dump - ); -RedBoot_cmd("x", - "Display (hex dump) a range of memory", - "-b [-l ] [-s] [-1|-2|-4]", - do_x - ); +RedBoot_cmd("dump", + "Display (hex dump) a range of memory", + "-b [-l ] [-s] [-1|-2|-4]", + do_dump + ); +RedBoot_cmd("x", + "Display (hex dump) a range of memory", + "-b [-l ] [-s] [-1|-2|-4]", + do_x + ); void do_dump(int argc, char *argv[]) { - struct option_info opts[6]; - unsigned long base, len; - bool base_set, len_set; - static unsigned long _base, _len; - static char _size = 1; - bool srec_dump, set_32bit, set_16bit, set_8bit; - int i, n, off, cksum; - cyg_uint8 ch; + struct option_info opts[6]; + unsigned long base, len; + bool base_set, len_set; + static unsigned long _base, _len; + static char _size = 1; + bool srec_dump, set_32bit, set_16bit, set_8bit; + int i, n, off, cksum; + cyg_uint8 ch; - init_opts(&opts[0], 'b', true, OPTION_ARG_TYPE_NUM, - (void *)&base, (bool *)&base_set, "base address"); - init_opts(&opts[1], 'l', true, OPTION_ARG_TYPE_NUM, - (void *)&len, (bool *)&len_set, "length"); - init_opts(&opts[2], 's', false, OPTION_ARG_TYPE_FLG, - (void *)&srec_dump, 0, "dump data using Morotola S-records"); - init_opts(&opts[3], '4', false, OPTION_ARG_TYPE_FLG, - (void *)&set_32bit, (bool *)0, "dump 32 bit units"); - init_opts(&opts[4], '2', false, OPTION_ARG_TYPE_FLG, - (void *)&set_16bit, (bool *)0, "dump 16 bit units"); - init_opts(&opts[5], '1', false, OPTION_ARG_TYPE_FLG, - (void *)&set_8bit, (bool *)0, "dump 8 bit units"); - if (!scan_opts(argc, argv, 1, opts, 6, 0, 0, "")) { - return; - } - if (!base_set) { - if (_base == 0) { - diag_printf("Dump what [location]?\n"); - return; - } - base = _base; - if (!len_set) { - len = _len; - len_set = true; - } - } + init_opts(&opts[0], 'b', true, OPTION_ARG_TYPE_NUM, + &base, &base_set, "base address"); + init_opts(&opts[1], 'l', true, OPTION_ARG_TYPE_NUM, + &len, &len_set, "length"); + init_opts(&opts[2], 's', false, OPTION_ARG_TYPE_FLG, + &srec_dump, NULL, "dump data using Morotola S-records"); + init_opts(&opts[3], '4', false, OPTION_ARG_TYPE_FLG, + &set_32bit, NULL, "dump 32 bit units"); + init_opts(&opts[4], '2', false, OPTION_ARG_TYPE_FLG, + &set_16bit, NULL, "dump 16 bit units"); + init_opts(&opts[5], '1', false, OPTION_ARG_TYPE_FLG, + &set_8bit, NULL, "dump 8 bit units"); + if (!scan_opts(argc, argv, 1, opts, 6, 0, 0, "")) { + return; + } + if (!base_set) { + if (_base == 0) { + diag_printf("Dump what [location]?\n"); + return; + } + base = _base; + if (!len_set) { + len = _len; + len_set = true; + } + } - if (set_32bit) { - _size = 4; - } else if (set_16bit) { - _size = 2; - } else if (set_8bit) { - _size = 1; - } + if (set_32bit) { + _size = 4; + } else if (set_16bit) { + _size = 2; + } else if (set_8bit) { + _size = 1; + } - if (!len_set) { - len = 32; - } - if (srec_dump) { - off = 0; - while (off < len) { - n = (len > 16) ? 16 : len; - cksum = n+5; - diag_printf("S3%02X%08lX", n+5, off+base); - for (i = 0; i < 4; i++) { - cksum += (((base+off)>>(i*8)) & 0xFF); - } - for (i = 0; i < n; i++) { - ch = *(cyg_uint8 *)(base+off+i); - diag_printf("%02X", ch); - cksum += ch; - } - diag_printf("%02X\n", ~cksum & 0xFF); - off += n; - } - } else { - switch( _size ) { - case 1: - diag_dump_buf((void *)base, len); - break; - case 2: - diag_dump_buf_16bit((void *)base, len); - break; - case 4: - diag_dump_buf_32bit((void *)base, len); - break; - } - } - _base = base + len; - _len = len; + if (!len_set) { + len = 32; + } + if (srec_dump) { + off = 0; + while (off < len) { + n = (len > 16) ? 16 : len; + cksum = n + 5; + diag_printf("S3%02X%08lX", n + 5, off + base); + for (i = 0; i < 4; i++) { + cksum += (((base + off) >> (i * 8)) & 0xFF); + } + for (i = 0; i < n; i++) { + ch = *(cyg_uint8 *)(base + off + i); + diag_printf("%02X", ch); + cksum += ch; + } + diag_printf("%02X\n", ~cksum & 0xFF); + off += n; + } + } else { + switch( _size ) { + case 1: + diag_dump_buf((void *)base, len); + break; + case 2: + diag_dump_buf_16bit((void *)base, len); + break; + case 4: + diag_dump_buf_32bit((void *)base, len); + break; + } + } + _base = base + len; + _len = len; } // Simple alias for the dump command void do_x(int argc, char *argv[]) { - do_dump(argc, argv); + do_dump(argc, argv); } -- 2.39.2