TX53 Release 2011-12-20
[karo-tx-redboot.git] / config / TX53-1xx1.ecc
1 # eCos saved configuration
2
3 # ---- commands --------------------------------------------------------
4 # This section contains information about the savefile format.
5 # It should not be edited. Any modifications made to this section
6 # may make it impossible for the configuration tools to read
7 # the savefile.
8
9 cdl_savefile_version 1;
10 cdl_savefile_command cdl_savefile_version {};
11 cdl_savefile_command cdl_savefile_command {};
12 cdl_savefile_command cdl_configuration { description hardware template package };
13 cdl_savefile_command cdl_package { value_source user_value wizard_value inferred_value };
14 cdl_savefile_command cdl_component { value_source user_value wizard_value inferred_value };
15 cdl_savefile_command cdl_option { value_source user_value wizard_value inferred_value };
16 cdl_savefile_command cdl_interface { value_source user_value wizard_value inferred_value };
17
18 # ---- toplevel --------------------------------------------------------
19 # This section defines the toplevel configuration object. The only
20 # values that can be changed are the name of the configuration and
21 # the description field. It is not possible to modify the target,
22 # the template or the set of packages simply by editing the lines
23 # below because these changes have wide-ranging effects. Instead
24 # the appropriate tools should be used to make such modifications.
25
26 cdl_configuration eCos {
27     description "" ;
28
29     # These fields should not be modified.
30     hardware    tx53karo ;
31     template    redboot ;
32     package -hardware CYGPKG_HAL_ARM current ;
33     package -hardware CYGPKG_HAL_ARM_MX53 current ;
34     package -hardware CYGPKG_HAL_ARM_TX53KARO current ;
35     package -template CYGPKG_HAL current ;
36     package -template CYGPKG_INFRA current ;
37     package -template CYGPKG_REDBOOT current ;
38     package -template CYGPKG_ISOINFRA current ;
39     package -template CYGPKG_LIBC_STRING current ;
40     package -template CYGPKG_CRC current ;
41     package -hardware CYGPKG_IO_ETH_DRIVERS current ;
42     package -hardware CYGPKG_DEVS_ETH_ARM_TX53 current ;
43     package -hardware CYGPKG_DEVS_ETH_FEC current ;
44     package -hardware CYGPKG_COMPRESS_ZLIB current ;
45     package -hardware CYGPKG_IO_FLASH current ;
46     package -hardware CYGPKG_DEVS_FLASH_ONMXC current ;
47     package -template CYGPKG_MEMALLOC current ;
48     package -template CYGPKG_DEVS_ETH_PHY current ;
49     package -template CYGPKG_LIBC_I18N current ;
50     package -template CYGPKG_LIBC_STDLIB current ;
51     package -template CYGPKG_ERROR current ;
52     package -hardware CYGPKG_DEVS_MXC_I2C current ;
53     package -hardware CYGPKG_DEVS_IMX_IPU current ;
54 };
55
56 # ---- conflicts -------------------------------------------------------
57 # There are no conflicts.
58
59 # ---- contents --------------------------------------------------------
60 # >
61 # >
62 # Global build options
63 # Global build options including control over
64 # compiler flags, linker flags and choice of toolchain.
65 #
66 cdl_component CYGBLD_GLOBAL_OPTIONS {
67     # There is no associated value.
68
69     # The following properties are affected by this value
70 };
71
72 # >
73 # Global command prefix
74 # This option specifies the command prefix used when
75 # invoking the build tools.
76 #
77 cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
78     # Flavor: data
79     user_value arm-cortexa8-linux-gnu
80     # value_source user
81     # Default value: arm-926ejs-linux-gnu
82 };
83
84 # Global compiler flags
85 # This option controls the global compiler flags which are used to
86 # compile all packages by default. Individual packages may define
87 # options which override these global flags.
88 #
89 cdl_option CYGBLD_GLOBAL_CFLAGS {
90     # Flavor: data
91     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"
92     # The inferred value should not be edited directly.
93     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"
94     # value_source user
95     # 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"
96     # Requires: CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS
97     #     CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS == 1
98     #   --> 1
99
100     # The following properties are affected by this value
101     # option CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS
102     #     Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -Werror") 
103     # option CYGBLD_INFRA_CFLAGS_PIPE
104     #     Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -pipe") 
105 };
106
107 # Global linker flags
108 # This option controls the global linker flags. Individual
109 # packages may define options which override these global flags.
110 #
111 cdl_option CYGBLD_GLOBAL_LDFLAGS {
112     # Flavor: data
113     # No user value, uncomment the following line to provide one.
114     # user_value "-Wl,--gc-sections -Wl,-static -O2 -nostdlib"
115     # value_source default
116     # Default value: "-Wl,--gc-sections -Wl,-static -O2 -nostdlib"
117 };
118
119 # Build common GDB stub ROM image
120 # Unless a target board has specific requirements to the
121 # stub implementation, it can use a simple common stub.
122 # This option, which gets enabled by platform HALs as
123 # appropriate, controls the building of the common stub.
124 #
125 cdl_option CYGBLD_BUILD_COMMON_GDB_STUBS {
126     # Flavor: bool
127     # No user value, uncomment the following line to provide one.
128     # user_value 0
129     # value_source default
130     # Default value: 0
131     # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
132     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
133     #   --> 0
134 };
135
136 # <
137 # ISO C library string functions
138 # doc: ref/libc.html
139 # This package provides string functions specified by the
140 # ISO C standard - ISO/IEC 9899:1990.
141 #
142 cdl_package CYGPKG_LIBC_STRING {
143     # Packages cannot be added or removed, nor can their version be changed,
144     # simply by editing their value. Instead the appropriate configuration
145     # should be used to perform these actions.
146
147     # This value cannot be modified here.
148     # Flavor: booldata
149     # Current value: 1 current
150     # Requires:  CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER ==  "<cyg/libc/string/string.h>" 
151     #     CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == <cyg/libc/string/string.h>
152     #   --> 1
153     # Requires:  CYGBLD_ISO_STRING_MEMFUNCS_HEADER ==  "<cyg/libc/string/string.h>" 
154     #     CYGBLD_ISO_STRING_MEMFUNCS_HEADER == <cyg/libc/string/string.h>
155     #   --> 1
156     # Requires:  CYGBLD_ISO_STRING_STRFUNCS_HEADER ==  "<cyg/libc/string/string.h>" 
157     #     CYGBLD_ISO_STRING_STRFUNCS_HEADER == <cyg/libc/string/string.h>
158     #   --> 1
159     # Requires:  CYGBLD_ISO_STRTOK_R_HEADER ==  "<cyg/libc/string/string.h>" 
160     #     CYGBLD_ISO_STRTOK_R_HEADER == <cyg/libc/string/string.h>
161     #   --> 1
162     # Requires: CYGPKG_ISOINFRA
163     #     CYGPKG_ISOINFRA == current
164     #   --> 1
165 };
166
167 # >
168 # Inline versions of <string.h> functions
169 # This option chooses whether some of the
170 # particularly simple string functions from
171 # <string.h> are available as inline
172 # functions. This may improve performance, and as
173 # the functions are small, may even improve code
174 # size.
175 #
176 cdl_option CYGIMP_LIBC_STRING_INLINES {
177     # Flavor: bool
178     # No user value, uncomment the following line to provide one.
179     # user_value 1
180     # value_source default
181     # Default value: 1
182 };
183
184 # Optimize string functions for code size
185 # This option tries to reduce string function
186 # code size at the expense of execution speed. The
187 # same effect can be produced if the code is
188 # compiled with the -Os option to the compiler.
189 #
190 cdl_option CYGIMP_LIBC_STRING_PREFER_SMALL_TO_FAST {
191     # Flavor: bool
192     # No user value, uncomment the following line to provide one.
193     # user_value 0
194     # value_source default
195     # Default value: 0
196 };
197
198 # Provide BSD compatibility functions
199 # Enabling this option causes various compatibility functions
200 # commonly found in the BSD UNIX operating system to be included.
201 # These are functions such as bzero, bcmp, bcopy, bzero, strcasecmp,
202 # strncasecmp, index, rindex and swab.
203 #
204 cdl_option CYGFUN_LIBC_STRING_BSD_FUNCS {
205     # Flavor: bool
206     # No user value, uncomment the following line to provide one.
207     # user_value 1
208     # The inferred value should not be edited directly.
209     inferred_value 0
210     # value_source inferred
211     # Default value: 1
212     # Requires:  CYGBLD_ISO_STRING_BSD_FUNCS_HEADER ==  "<cyg/libc/string/bsdstring.h>" 
213     #     CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == <cyg/libc/string/bsdstring.h>
214     #   --> 1
215     # Requires: CYGINT_ISO_CTYPE
216     #     CYGINT_ISO_CTYPE == 1
217     #   --> 1
218 };
219
220 # strtok
221 # These options control the behaviour of the
222 # strtok() and strtok_r() string tokenization
223 # functions.
224 #
225 cdl_component CYGPKG_LIBC_STRING_STRTOK {
226     # There is no associated value.
227 };
228
229 # >
230 # Per-thread strtok()
231 # This option controls whether the string function
232 # strtok() has its state recorded on a per-thread
233 # basis rather than global. If this option is
234 # disabled, some per-thread space can be saved.
235 # Note there is also a POSIX-standard strtok_r()
236 # function to achieve a similar effect with user
237 # support. Enabling this option will use one slot
238 # of kernel per-thread data. You should ensure you
239 # have enough slots configured for all your
240 # per-thread data.
241 #
242 cdl_option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK {
243     # This option is not active
244     # ActiveIf constraint: CYGPKG_KERNEL
245     #     CYGPKG_KERNEL (unknown) == 0
246     #   --> 0
247
248     # Flavor: bool
249     # No user value, uncomment the following line to provide one.
250     # user_value 0
251     # value_source default
252     # Default value: CYGVAR_KERNEL_THREADS_DATA
253     #     CYGVAR_KERNEL_THREADS_DATA (unknown) == 0
254     #   --> 0
255     # Requires: CYGVAR_KERNEL_THREADS_DATA
256     #     CYGVAR_KERNEL_THREADS_DATA (unknown) == 0
257     #   --> 0
258 };
259
260 # Tracing level
261 # Trace verbosity level for debugging the <string.h>
262 # functions strtok() and strtok_r(). Increase this
263 # value to get additional trace output.
264 #
265 cdl_option CYGNUM_LIBC_STRING_STRTOK_TRACE_LEVEL {
266     # Flavor: data
267     # No user value, uncomment the following line to provide one.
268     # user_value 0
269     # value_source default
270     # Default value: 0
271     # Legal values: 0 to 1
272 };
273
274 # <
275 # strdup
276 # This option indicates whether strdup() is to be supported.
277 #
278 cdl_option CYGFUN_LIBC_STRING_STRDUP {
279     # ActiveIf constraint: CYGINT_ISO_MALLOC
280     #     CYGINT_ISO_MALLOC == 1
281     #   --> 1
282
283     # Calculated value: 1
284     # Flavor: bool
285     # Current value: 1
286 };
287
288 # C library string functions build options
289 # Package specific build options including control over
290 # compiler flags used only in building this package,
291 # and details of which tests are built.
292 #
293 cdl_component CYGPKG_LIBC_STRING_OPTIONS {
294     # There is no associated value.
295 };
296
297 # >
298 # Additional compiler flags
299 # This option modifies the set of compiler flags for
300 # building the C library. These flags are used in addition
301 # to the set of global flags.
302 #
303 cdl_option CYGPKG_LIBC_STRING_CFLAGS_ADD {
304     # Flavor: data
305     # No user value, uncomment the following line to provide one.
306     # user_value "-fno-rtti -Woverloaded-virtual"
307     # value_source default
308     # Default value: "-fno-rtti -Woverloaded-virtual"
309 };
310
311 # Suppressed compiler flags
312 # This option modifies the set of compiler flags for
313 # building the C library. These flags are removed from
314 # the set of global flags if present.
315 #
316 cdl_option CYGPKG_LIBC_STRING_CFLAGS_REMOVE {
317     # Flavor: data
318     # No user value, uncomment the following line to provide one.
319     # user_value -Wno-pointer-sign
320     # value_source default
321     # Default value: -Wno-pointer-sign
322 };
323
324 # C library string function tests
325 # This option specifies the set of tests for the C library
326 # string functions.
327 #
328 cdl_option CYGPKG_LIBC_STRING_TESTS {
329     # 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" 
330     # Flavor: data
331     # 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
332 };
333
334 # <
335 # <
336 # Common ethernet support
337 # doc: ref/io-eth-drv-generic.html
338 # Platform independent ethernet drivers
339 #
340 cdl_package CYGPKG_IO_ETH_DRIVERS {
341     # Packages cannot be added or removed, nor can their version be changed,
342     # simply by editing their value. Instead the appropriate configuration
343     # should be used to perform these actions.
344
345     # This value cannot be modified here.
346     # Flavor: booldata
347     # Current value: 1 current
348
349     # The following properties are affected by this value
350     # component CYGPKG_REDBOOT_NETWORKING
351     #     ActiveIf: CYGPKG_IO_ETH_DRIVERS
352     # package CYGPKG_DEVS_ETH_ARM_TX53
353     #     ActiveIf: CYGPKG_IO_ETH_DRIVERS
354     # package CYGPKG_DEVS_ETH_FEC
355     #     ActiveIf: CYGPKG_IO_ETH_DRIVERS
356     # package CYGPKG_DEVS_ETH_PHY
357     #     ActiveIf: CYGPKG_IO_ETH_DRIVERS
358 };
359
360 # >
361 # Network drivers
362 #
363 cdl_interface CYGHWR_NET_DRIVERS {
364     # Implemented by CYGPKG_DEVS_ETH_FEC, active, enabled
365     # This value cannot be modified here.
366     # Flavor: data
367     # Current_value: 1
368
369     # The following properties are affected by this value
370     # option CYGDAT_REDBOOT_DEFAULT_NETWORK_DEVICE
371     #     ActiveIf:  CYGHWR_NET_DRIVERS > 1 
372     # option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE
373     #     ActiveIf:  CYGHWR_NET_DRIVERS > 1 
374 };
375
376 # Driver supports multicast addressing
377 # This interface defines whether or not a driver can handle
378 # requests for multicast addressing.
379 #
380 cdl_interface CYGINT_IO_ETH_MULTICAST {
381     # Implemented by CYGPKG_DEVS_ETH_FEC, active, enabled
382     # This value cannot be modified here.
383     # Flavor: data
384     # Current_value: 1
385
386     # The following properties are affected by this value
387 };
388
389 # Support printing driver debug information
390 # Selecting this option will include code to allow the driver to
391 # print lots of information on diagnostic output such as full
392 # packet dumps.
393 #
394 cdl_component CYGDBG_IO_ETH_DRIVERS_DEBUG {
395     # Flavor: bool
396     # No user value, uncomment the following line to provide one.
397     # user_value 1
398     # value_source default
399     # Default value: 1
400 };
401
402 # >
403 # Driver debug output verbosity
404 # The value of this option indicates the default verbosity
405 # level of debugging output. 0 means no debugging output
406 # is made by default. Higher values indicate higher verbosity.
407 # The verbosity level may also be changed at run time by
408 # changing the variable cyg_io_eth_net_debug.
409 #
410 cdl_option CYGDBG_IO_ETH_DRIVERS_DEBUG_VERBOSITY {
411     # Flavor: data
412     # No user value, uncomment the following line to provide one.
413     # user_value 0
414     # value_source default
415     # Default value: 0
416 };
417
418 # <
419 # Size of scatter-gather I/O lists
420 # A scatter-gather list is used to pass requests to/from
421 # the physical device driver.  This list can typically be
422 # small, as the data is normally already packed into reasonable
423 # chunks.
424 #
425 cdl_option CYGNUM_IO_ETH_DRIVERS_SG_LIST_SIZE {
426     # Flavor: data
427     # No user value, uncomment the following line to provide one.
428     # user_value 32
429     # value_source default
430     # Default value: 32
431 };
432
433 # Support for standard eCos TCP/IP stack.
434 #
435 cdl_component CYGPKG_IO_ETH_DRIVERS_NET {
436     # This option is not active
437     # ActiveIf constraint: CYGPKG_NET
438     #     CYGPKG_NET (unknown) == 0
439     #   --> 0
440
441     # Flavor: bool
442     # No user value, uncomment the following line to provide one.
443     # user_value 1
444     # value_source default
445     # Default value: 1
446     # Requires: CYGINT_ISO_STRING_STRFUNCS
447     #     CYGINT_ISO_STRING_STRFUNCS == 1
448     #   --> 1
449 };
450
451 # >
452 # Warn when there are no more mbufs
453 # Warnings about running out of mbufs are printed to the
454 # diagnostic output channel via diag_printf() if this option
455 # is enabled.  Mbufs are the network stack's basic dynamic
456 # memory objects that hold all packets in transit; running
457 # out is bad for performance but not fatal, not a crash.
458 # You might want to turn off the warnings to preserve realtime
459 # properties of the system even in extremis.
460 #
461 cdl_component CYGPKG_IO_ETH_DRIVERS_WARN_NO_MBUFS {
462     # This option is not active
463     # The parent CYGPKG_IO_ETH_DRIVERS_NET is not active
464
465     # Flavor: bool
466     # No user value, uncomment the following line to provide one.
467     # user_value 1
468     # value_source default
469     # Default value: 1
470 };
471
472 # Simulate network failures for testing
473 # This package contains a suite of simulated failure modes
474 # for the ethernet device layer, including dropping and/or
475 # corrupting received packets, dropping packets queued for
476 # transmission, and simulating a complete network break.
477 # It requires the kernel as a source of time information.
478 #
479 cdl_component CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES {
480     # This option is not active
481     # The parent CYGPKG_IO_ETH_DRIVERS_NET is not active
482
483     # Flavor: bool
484     # No user value, uncomment the following line to provide one.
485     # user_value 0
486     # value_source default
487     # Default value: 0
488 };
489
490 # >
491 # Drop incoming packets (percentage)
492 #
493 cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_DROP_RX {
494     # This option is not active
495     # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is not active
496     # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled
497
498     # Flavor: booldata
499     # No user value, uncomment the following line to provide one.
500     # user_value 1 10
501     # value_source default
502     # Default value: 1 10
503     # Legal values: 10 50 80
504 };
505
506 # Corrupt incoming packets (percentage)
507 #
508 cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_CORRUPT_RX {
509     # This option is not active
510     # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is not active
511     # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled
512
513     # Flavor: booldata
514     # No user value, uncomment the following line to provide one.
515     # user_value 1 10
516     # value_source default
517     # Default value: 1 10
518     # Legal values: 10 50 80
519 };
520
521 # Drop outgoing packets (percentage)
522 #
523 cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_DROP_TX {
524     # This option is not active
525     # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is not active
526     # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled
527
528     # Flavor: booldata
529     # No user value, uncomment the following line to provide one.
530     # user_value 1 10
531     # value_source default
532     # Default value: 1 10
533     # Legal values: 10 50 80
534 };
535
536 # Simulate a line cut from time to time
537 # This option causes the system to drop all packets for a
538 # short random period (10s of seconds), and then act
539 # normally for up to 4 times that long.  This simulates your
540 # sysadmin fiddling with plugs in the network switch
541 # cupboard.
542 #
543 cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_LINE_CUT {
544     # This option is not active
545     # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is not active
546     # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled
547
548     # Flavor: bool
549     # No user value, uncomment the following line to provide one.
550     # user_value 0
551     # value_source default
552     # Default value: 0
553 };
554
555 # <
556 # <
557 # Support for stand-alone network stack.
558 #
559 cdl_component CYGPKG_IO_ETH_DRIVERS_STAND_ALONE {
560     # ActiveIf constraint: !CYGPKG_NET
561     #     CYGPKG_NET (unknown) == 0
562     #   --> 1
563
564     # Flavor: bool
565     # No user value, uncomment the following line to provide one.
566     # user_value 1
567     # value_source default
568     # Default value: 1
569     # Requires: CYGINT_ISO_STRING_MEMFUNCS
570     #     CYGINT_ISO_STRING_MEMFUNCS == 1
571     #   --> 1
572 };
573
574 # >
575 # Pass packets to an alternate stack
576 # Define this to allow packets seen by this layer to be
577 # passed on to the previous logical layer, i.e. when
578 # stand-alone processing replaces system (eCos) processing.
579 #
580 cdl_option CYGSEM_IO_ETH_DRIVERS_PASS_PACKETS {
581     # Flavor: bool
582     # No user value, uncomment the following line to provide one.
583     # user_value 1
584     # value_source default
585     # Default value:  0 != CYGPKG_REDBOOT_NETWORKING 
586     #     CYGPKG_REDBOOT_NETWORKING == 1
587     #   --> 1
588 };
589
590 # Number of [network] buffers
591 # This option is used to allocate space to buffer incoming network
592 # packets.  These buffers are used to hold data until they can be
593 # logically processed by higher layers.
594 #
595 cdl_option CYGNUM_IO_ETH_DRIVERS_NUM_PKT {
596     # Flavor: data
597     # No user value, uncomment the following line to provide one.
598     # user_value 4
599     # value_source default
600     # Default value: 4
601     # Legal values: 2 to 32
602 };
603
604 # Show driver warnings
605 # Selecting this option will allows the stand-alone ethernet driver
606 # to display warnings on the system console when incoming network
607 # packets are being discarded due to lack of buffer space.
608 #
609 cdl_option CYGSEM_IO_ETH_DRIVERS_WARN {
610     # ActiveIf constraint: CYGPKG_REDBOOT
611     #     CYGPKG_REDBOOT == current
612     #   --> 1
613
614     # Flavor: bool
615     # No user value, uncomment the following line to provide one.
616     # user_value 0
617     # value_source default
618     # Default value: 0
619 };
620
621 # <
622 # Support for lwIP network stack.
623 #
624 cdl_component CYGPKG_IO_ETH_DRIVERS_LWIP {
625     # This option is not active
626     # ActiveIf constraint: CYGPKG_NET_LWIP
627     #     CYGPKG_NET_LWIP (unknown) == 0
628     #   --> 0
629
630     # Flavor: bool
631     # No user value, uncomment the following line to provide one.
632     # user_value 1
633     # value_source default
634     # Default value: 1
635     # Requires: !CYGPKG_NET
636     #     CYGPKG_NET (unknown) == 0
637     #   --> 1
638 };
639
640 # Interrupt support required
641 # This interface is used to indicate to the low
642 # level device drivers that interrupt driven operation
643 # is required by higher layers.
644 #
645 cdl_interface CYGINT_IO_ETH_INT_SUPPORT_REQUIRED {
646     # Implemented by CYGPKG_IO_ETH_DRIVERS_NET, inactive, enabled
647     # Implemented by CYGPKG_IO_ETH_DRIVERS_LWIP, inactive, enabled
648     # This value cannot be modified here.
649     # Flavor: booldata
650     # Current value: 0 0
651
652     # The following properties are affected by this value
653 };
654
655 # Common ethernet support build options
656 #
657 cdl_component CYGPKG_IO_ETH_DRIVERS_OPTIONS {
658     # There is no associated value.
659 };
660
661 # >
662 # Additional compiler flags
663 # This option modifies the set of compiler flags for
664 # building the common ethernet support package. These flags are used in addition
665 # to the set of global flags.
666 #
667 cdl_option CYGPKG_IO_ETH_DRIVERS_CFLAGS_ADD {
668     # Flavor: data
669     # No user value, uncomment the following line to provide one.
670     # user_value "-D_KERNEL -D__ECOS"
671     # value_source default
672     # Default value: "-D_KERNEL -D__ECOS"
673 };
674
675 # <
676 # Ethernet driver for Ka-Ro electronics TX53 processor module
677 #
678 cdl_package CYGPKG_DEVS_ETH_ARM_TX53 {
679     # Packages cannot be added or removed, nor can their version be changed,
680     # simply by editing their value. Instead the appropriate configuration
681     # should be used to perform these actions.
682
683     # ActiveIf constraint: CYGPKG_IO_ETH_DRIVERS
684     #     CYGPKG_IO_ETH_DRIVERS == current
685     #   --> 1
686
687     # This value cannot be modified here.
688     # Flavor: booldata
689     # Current value: 1 current
690 };
691
692 # >
693 # FEC ethernet driver required
694 #
695 cdl_interface CYGINT_DEVS_ETH_FEC_REQUIRED {
696     # Implemented by CYGPKG_DEVS_ETH_ARM_MXCBOARD_ETH0, active, enabled
697     # This value cannot be modified here.
698     # Flavor: data
699     # Current_value: 1
700
701     # The following properties are affected by this value
702     # package CYGPKG_DEVS_ETH_FEC
703     #     ActiveIf: CYGINT_DEVS_ETH_FEC_REQUIRED
704 };
705
706 # Ka-Ro TX53 ethernet port driver
707 # This option includes the ethernet device driver for the
708 # MXC Board port.
709 #
710 cdl_component CYGPKG_DEVS_ETH_ARM_MXCBOARD_ETH0 {
711     # Flavor: bool
712     # No user value, uncomment the following line to provide one.
713     # user_value 1
714     # value_source default
715     # Default value: 1
716     # Requires: CYGSEM_REDBOOT_PLF_ESA_VALIDATE
717     #     CYGSEM_REDBOOT_PLF_ESA_VALIDATE == 1
718     #   --> 1
719     # Requires: CYGHWR_DEVS_ETH_PHY_LAN8700
720     #     CYGHWR_DEVS_ETH_PHY_LAN8700 == 1
721     #   --> 1
722 };
723
724 # >
725 # Device name for the ETH0 ethernet driver
726 # This option sets the name of the ethernet device.
727 #
728 cdl_option CYGDAT_DEVS_ETH_ARM_MXCBOARD_ETH0_NAME {
729     # Flavor: data
730     # No user value, uncomment the following line to provide one.
731     # user_value "\"eth0\""
732     # value_source default
733     # Default value: "\"eth0\""
734 };
735
736 # OUI part of MAC address
737 # This option sets OUI part (manufacturer ID) of the MAC address
738 # for validation.
739 #
740 cdl_option CYGDAT_DEVS_ETH_ARM_TX53KARO_OUI {
741     # ActiveIf constraint: CYGSEM_REDBOOT_PLF_ESA_VALIDATE
742     #     CYGSEM_REDBOOT_PLF_ESA_VALIDATE == 1
743     #   --> 1
744
745     # Flavor: data
746     # No user value, uncomment the following line to provide one.
747     # user_value "{ 0x00, 0x0c, 0xc6 }"
748     # value_source default
749     # Default value: "{ 0x00, 0x0c, 0xc6 }"
750 };
751
752 # <
753 # <
754 # Driver for fast ethernet controller.
755 # Driver for fast ethernet controller.
756 #
757 cdl_package CYGPKG_DEVS_ETH_FEC {
758     # Packages cannot be added or removed, nor can their version be changed,
759     # simply by editing their value. Instead the appropriate configuration
760     # should be used to perform these actions.
761
762     # ActiveIf constraint: CYGPKG_IO_ETH_DRIVERS
763     #     CYGPKG_IO_ETH_DRIVERS == current
764     #   --> 1
765     # ActiveIf constraint: CYGINT_DEVS_ETH_FEC_REQUIRED
766     #     CYGINT_DEVS_ETH_FEC_REQUIRED == 1
767     #   --> 1
768
769     # This value cannot be modified here.
770     # Flavor: booldata
771     # Current value: 1 current
772 };
773
774 # >
775 # MXC FEC ethernet driver build options
776 #
777 cdl_component CYGPKG_DEVS_ETH_FEC_OPTIONS {
778     # There is no associated value.
779 };
780
781 # >
782 # Additional compiler flags
783 # This option modifies the set of compiler flags for
784 # building the Cirrus Logic ethernet driver package.
785 # These flags are used in addition
786 # to the set of global flags.
787 #
788 cdl_option CYGPKG_DEVS_ETH_FEC_CFLAGS_ADD {
789     # Flavor: data
790     # No user value, uncomment the following line to provide one.
791     # user_value "-D_KERNEL -D__ECOS"
792     # value_source default
793     # Default value: "-D_KERNEL -D__ECOS"
794 };
795
796 # <
797 # MXC FEC MII Gasket for RMII mode
798 # This option enables the use of the MII Gasket for
799 # RMII mode found in i.MX25 and i.MX53 processors.
800 #
801 cdl_option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK {
802     # ActiveIf constraint: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53
803     #     CYGPKG_HAL_ARM_MX25 (unknown) == 0
804     #     CYGPKG_HAL_ARM_MX53 == current
805     #   --> 1
806
807     # Flavor: bool
808     # No user value, uncomment the following line to provide one.
809     # user_value 1
810     # value_source default
811     # Default value: 1
812 };
813
814 # <
815 # Ethernet transceiver (PHY) support
816 # API for ethernet PHY devices
817 #
818 cdl_package CYGPKG_DEVS_ETH_PHY {
819     # Packages cannot be added or removed, nor can their version be changed,
820     # simply by editing their value. Instead the appropriate configuration
821     # should be used to perform these actions.
822
823     # ActiveIf constraint: CYGPKG_IO_ETH_DRIVERS
824     #     CYGPKG_IO_ETH_DRIVERS == current
825     #   --> 1
826
827     # This value cannot be modified here.
828     # Flavor: booldata
829     # Current value: 1 current
830     # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
831     #     CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT == 1
832     #   --> 1
833 };
834
835 # >
836 # Enable driver debugging
837 # Enables the diagnostic debug messages on the
838 # console device.
839 #
840 cdl_option CYGDBG_DEVS_ETH_PHY {
841     # Flavor: bool
842     # No user value, uncomment the following line to provide one.
843     # user_value 0
844     # value_source default
845     # Default value: 0
846 };
847
848 # Time period (seconds) to wait for auto-negotiation
849 # The length of time to wait for auto-negotiation to complete
850 # before giving up and declaring the link dead/missing.
851 #
852 cdl_option CYGINT_DEVS_ETH_PHY_AUTO_NEGOTIATION_TIME {
853     # Flavor: data
854     # No user value, uncomment the following line to provide one.
855     # user_value 5
856     # value_source default
857     # Default value: 5
858 };
859
860 # NSDP83847
861 # Include support for National Semiconductor DP83847 DsPHYTER II
862 #
863 cdl_option CYGHWR_DEVS_ETH_PHY_DP83847 {
864     # Flavor: bool
865     # No user value, uncomment the following line to provide one.
866     # user_value 0
867     # value_source default
868     # Default value: 0
869 };
870
871 # AMD 79C874
872 # Include support for AMD 79C874 NetPHY
873 #
874 cdl_option CYGHWR_DEVS_ETH_PHY_AM79C874 {
875     # Flavor: bool
876     # No user value, uncomment the following line to provide one.
877     # user_value 0
878     # value_source default
879     # Default value: 0
880 };
881
882 # Intel LXT972
883 # Include support for Intel LXT972xxx PHY
884 #
885 cdl_option CYGHWR_DEVS_ETH_PHY_INLXT972 {
886     # Flavor: bool
887     # No user value, uncomment the following line to provide one.
888     # user_value 0
889     # value_source default
890     # Default value: 0
891 };
892
893 # ICS 1890
894 # Include support for ICS 1890 PHY
895 #
896 cdl_option CYGHWR_DEVS_ETH_PHY_ICS1890 {
897     # Flavor: bool
898     # No user value, uncomment the following line to provide one.
899     # user_value 0
900     # value_source default
901     # Default value: 0
902 };
903
904 # ICS 1892
905 # Include support for ICS 1892 PHY
906 #
907 cdl_option CYGHWR_DEVS_ETH_PHY_ICS1892 {
908     # Flavor: bool
909     # No user value, uncomment the following line to provide one.
910     # user_value 0
911     # value_source default
912     # Default value: 0
913 };
914
915 # ICS 1893
916 # Include support for ICS 1893 and 1893AF PHY
917 #
918 cdl_option CYGHWR_DEVS_ETH_PHY_ICS1893 {
919     # Flavor: bool
920     # No user value, uncomment the following line to provide one.
921     # user_value 0
922     # value_source default
923     # Default value: 0
924 };
925
926 # Davicom DM9161A
927 # Include support for the Davicom DM9161A PHY
928 #
929 cdl_option CYGHWR_DEVS_ETH_PHY_DM9161A {
930     # Flavor: bool
931     # No user value, uncomment the following line to provide one.
932     # user_value 0
933     # value_source default
934     # Default value: 0
935 };
936
937 # Micrel KS8721
938 # Include support for the Micrel KS8721 PHY
939 #
940 cdl_option CYGHWR_DEVS_ETH_PHY_KS8721 {
941     # Flavor: bool
942     # No user value, uncomment the following line to provide one.
943     # user_value 0
944     # value_source default
945     # Default value: 0
946 };
947
948 # SMSC LAN8700
949 # Include support for SMSC LAN8700 NetPHY
950 #
951 cdl_option CYGHWR_DEVS_ETH_PHY_LAN8700 {
952     # Flavor: bool
953     # No user value, uncomment the following line to provide one.
954     # user_value 0
955     # The inferred value should not be edited directly.
956     inferred_value 1
957     # value_source inferred
958     # Default value: 0
959
960     # The following properties are affected by this value
961     # component CYGPKG_DEVS_ETH_ARM_MXCBOARD_ETH0
962     #     Requires: CYGHWR_DEVS_ETH_PHY_LAN8700
963 };
964
965 # <
966 # <
967 # ISO C library internationalization functions
968 # doc: ref/libc.html
969 # This package provides internationalization functions specified by the
970 # ISO C standard - ISO/IEC 9899:1990. These include locale-related
971 # functionality and <ctype.h> functionality.
972 #
973 cdl_package CYGPKG_LIBC_I18N {
974     # Packages cannot be added or removed, nor can their version be changed,
975     # simply by editing their value. Instead the appropriate configuration
976     # should be used to perform these actions.
977
978     # This value cannot be modified here.
979     # Flavor: booldata
980     # Current value: 1 current
981     # Requires: CYGPKG_ISOINFRA
982     #     CYGPKG_ISOINFRA == current
983     #   --> 1
984 };
985
986 # >
987 # Supported locales
988 # These options determine which locales other than the "C" locale
989 # are supported and hence contribute to the size of the executable.
990 #
991 cdl_component CYGPKG_LIBC_I18N_LOCALES {
992     # There is no associated value.
993 };
994
995 # >
996 # Support for multiple locales required
997 #
998 cdl_interface CYGINT_LIBC_I18N_MB_REQUIRED {
999     # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_SJIS, active, disabled
1000     # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_JIS, active, disabled
1001     # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_EUCJP, active, disabled
1002     # This value cannot be modified here.
1003     # Flavor: booldata
1004     # Current value: 0 0
1005     # Requires:  CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER ==  "<cyg/libc/i18n/mb.h>" 
1006     #     CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER == 0
1007     #   --> 0
1008
1009     # The following properties are affected by this value
1010 };
1011
1012 # C-SJIS locale support
1013 # This option controls if the "C-SJIS" locale will be
1014 # supported by setlocale().  The locale is a hybrid locale
1015 # that is mostly the "C" locale with Japanese SJIS multibyte
1016 # support added.
1017 #
1018 cdl_option CYGFUN_LIBC_I18N_LOCALE_C_SJIS {
1019     # Flavor: bool
1020     # No user value, uncomment the following line to provide one.
1021     # user_value 0
1022     # value_source default
1023     # Default value: 0
1024
1025     # The following properties are affected by this value
1026     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
1027     #     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 
1028     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
1029     #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  
1030 };
1031
1032 # C-JIS locale support
1033 # This option controls if the "C-JIS" locale will be
1034 # supported by setlocale().  The locale is a hybrid locale
1035 # that is mostly the "C" locale with Japanese JIS multibyte
1036 # support added.
1037 #
1038 cdl_option CYGFUN_LIBC_I18N_LOCALE_C_JIS {
1039     # Flavor: bool
1040     # No user value, uncomment the following line to provide one.
1041     # user_value 0
1042     # value_source default
1043     # Default value: 0
1044
1045     # The following properties are affected by this value
1046     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
1047     #     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 
1048     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
1049     #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  
1050 };
1051
1052 # C-EUCJP locale support
1053 # This option controls if the "C-EUCJP" locale will be
1054 # supported by setlocale().  The locale is a hybrid locale
1055 # that is mostly the "C" locale with Japanese EUCJP multibyte
1056 # support added.
1057 #
1058 cdl_option CYGFUN_LIBC_I18N_LOCALE_C_EUCJP {
1059     # Flavor: bool
1060     # No user value, uncomment the following line to provide one.
1061     # user_value 0
1062     # value_source default
1063     # Default value: 0
1064
1065     # The following properties are affected by this value
1066     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
1067     #     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 
1068     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
1069     #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  
1070 };
1071
1072 # <
1073 # Newlib's ctype implementation
1074 # This option enables the implementation of the ctype functions
1075 # that comes with newlib. It is table driven and therefore
1076 # exhibits different performance characteristics. It also offers
1077 # a limited amount of binary compatibility
1078 # with newlib so that programs linked against newlib ctype/locale
1079 # do not need to be recompiled when linked with eCos.
1080 #
1081 cdl_option CYGPKG_LIBC_I18N_NEWLIB_CTYPE {
1082     # Flavor: bool
1083     # No user value, uncomment the following line to provide one.
1084     # user_value 0
1085     # value_source default
1086     # Default value: 0
1087     # Requires:  CYGBLD_ISO_CTYPE_HEADER ==  "<cyg/libc/i18n/newlibctype.h>" 
1088     #     CYGBLD_ISO_CTYPE_HEADER == <cyg/libc/i18n/ctype.inl>
1089     #   --> 0
1090 };
1091
1092 # Per-thread multibyte state
1093 # This option controls whether the multibyte character
1094 # handling functions mblen(), mbtowc(), and wctomb(),
1095 # have their state recorded on a per-thread
1096 # basis rather than global. If this option is
1097 # disabled, some per-thread space can be saved.
1098 # Enabling this option will use three slots
1099 # of kernel per-thread data. You should ensure you
1100 # have enough slots configured for all your
1101 # per-thread data.
1102 #
1103 cdl_option CYGSEM_LIBC_I18N_PER_THREAD_MB {
1104     # This option is not active
1105     # ActiveIf constraint: CYGPKG_KERNEL
1106     #     CYGPKG_KERNEL (unknown) == 0
1107     #   --> 0
1108
1109     # Flavor: bool
1110     # No user value, uncomment the following line to provide one.
1111     # user_value 0
1112     # value_source default
1113     # Default value:  CYGVAR_KERNEL_THREADS_DATA != 0 
1114     #     CYGVAR_KERNEL_THREADS_DATA (unknown) == 0
1115     #   --> 0
1116     # Requires: CYGVAR_KERNEL_THREADS_DATA
1117     #     CYGVAR_KERNEL_THREADS_DATA (unknown) == 0
1118     #   --> 0
1119 };
1120
1121 # Size of locale name strings
1122 # This option controls the maximum size of
1123 # locale names and is used, among other things
1124 # to instantiate a static string used
1125 # as a return value from the
1126 # setlocale() function. When requesting the
1127 # current locale settings with LC_ALL, a string
1128 # must be constructed to contain this data, rather
1129 # than just returning a constant string. This
1130 # string data is stored in the static string.
1131 # This depends on the length of locale names,
1132 # hence this option. If just the C locale is
1133 # present, this option can be set as low as 2.
1134 #
1135 cdl_option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE {
1136     # Flavor: data
1137     # No user value, uncomment the following line to provide one.
1138     # user_value 2
1139     # value_source default
1140     # Default value:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  
1141     #     CYGFUN_LIBC_I18N_LOCALE_C_EUCJP == 0
1142     #     CYGFUN_LIBC_I18N_LOCALE_C_SJIS == 0
1143     #     CYGFUN_LIBC_I18N_LOCALE_C_JIS == 0
1144     #   --> 2
1145     # 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 
1146     #     CYGFUN_LIBC_I18N_LOCALE_C_EUCJP == 0
1147     #     CYGFUN_LIBC_I18N_LOCALE_C_SJIS == 0
1148     #     CYGFUN_LIBC_I18N_LOCALE_C_JIS == 0
1149 };
1150
1151 # Inline versions of <ctype.h> functions
1152 # This option chooses whether the simple character
1153 # classification and conversion functions (e.g.
1154 # isupper(), isalpha(), toupper(), etc.)
1155 # from <ctype.h> are available as inline
1156 # functions. This may improve performance and as
1157 # the functions are small, may even improve code
1158 # size.
1159 #
1160 cdl_option CYGIMP_LIBC_I18N_CTYPE_INLINES {
1161     # Flavor: bool
1162     # No user value, uncomment the following line to provide one.
1163     # user_value 1
1164     # value_source default
1165     # Default value: 1
1166     # Requires:  CYGBLD_ISO_CTYPE_HEADER ==  "<cyg/libc/i18n/ctype.inl>" 
1167     #     CYGBLD_ISO_CTYPE_HEADER == <cyg/libc/i18n/ctype.inl>
1168     #   --> 1
1169 };
1170
1171 # C library i18n functions build options
1172 # Package specific build options including control over
1173 # compiler flags used only in building this package,
1174 # and details of which tests are built.
1175 #
1176 cdl_component CYGPKG_LIBC_I18N_OPTIONS {
1177     # There is no associated value.
1178 };
1179
1180 # >
1181 # Additional compiler flags
1182 # This option modifies the set of compiler flags for
1183 # building the C library. These flags are used in addition
1184 # to the set of global flags.
1185 #
1186 cdl_option CYGPKG_LIBC_I18N_CFLAGS_ADD {
1187     # Flavor: data
1188     # No user value, uncomment the following line to provide one.
1189     # user_value "-fno-rtti -Woverloaded-virtual"
1190     # value_source default
1191     # Default value: "-fno-rtti -Woverloaded-virtual"
1192 };
1193
1194 # Suppressed compiler flags
1195 # This option modifies the set of compiler flags for
1196 # building the C library. These flags are removed from
1197 # the set of global flags if present.
1198 #
1199 cdl_option CYGPKG_LIBC_I18N_CFLAGS_REMOVE {
1200     # Flavor: data
1201     # No user value, uncomment the following line to provide one.
1202     # user_value -Wno-pointer-sign
1203     # value_source default
1204     # Default value: -Wno-pointer-sign
1205 };
1206
1207 # C library i18n function tests
1208 # This option specifies the set of tests for the C library
1209 # i18n functions.
1210 #
1211 cdl_option CYGPKG_LIBC_I18N_TESTS {
1212     # Calculated value:  "tests/ctype tests/setlocale tests/i18nmb" 
1213     # Flavor: data
1214     # Current_value: tests/ctype tests/setlocale tests/i18nmb
1215 };
1216
1217 # <
1218 # <
1219 # ISO C library general utility functions
1220 # doc: ref/libc.html
1221 # This package provides general utility functions in <stdlib.h>
1222 # as specified by the ISO C standard - ISO/IEC 9899:1990.
1223 #
1224 cdl_package CYGPKG_LIBC_STDLIB {
1225     # Packages cannot be added or removed, nor can their version be changed,
1226     # simply by editing their value. Instead the appropriate configuration
1227     # should be used to perform these actions.
1228
1229     # This value cannot be modified here.
1230     # Flavor: booldata
1231     # Current value: 1 current
1232     # Requires: CYGPKG_ISOINFRA
1233     #     CYGPKG_ISOINFRA == current
1234     #   --> 1
1235     # Requires: CYGINT_ISO_CTYPE
1236     #     CYGINT_ISO_CTYPE == 1
1237     #   --> 1
1238     # Requires: CYGINT_ISO_STRING_STRFUNCS
1239     #     CYGINT_ISO_STRING_STRFUNCS == 1
1240     #   --> 1
1241 };
1242
1243 # >
1244 # Inline versions of <stdlib.h> functions
1245 # This option chooses whether some of the
1246 # particularly simple standard utility functions
1247 # from <stdlib.h> are available as inline
1248 # functions. This may improve performance, and as
1249 # the functions are small, may even improve code
1250 # size.
1251 #
1252 cdl_component CYGIMP_LIBC_STDLIB_INLINES {
1253     # There is no associated value.
1254 };
1255
1256 # >
1257 # abs() / labs()
1258 #
1259 cdl_option CYGIMP_LIBC_STDLIB_INLINE_ABS {
1260     # Flavor: bool
1261     # No user value, uncomment the following line to provide one.
1262     # user_value 1
1263     # value_source default
1264     # Default value: 1
1265     # Requires:  CYGBLD_ISO_STDLIB_ABS_HEADER ==  "<cyg/libc/stdlib/abs.inl>" 
1266     #     CYGBLD_ISO_STDLIB_ABS_HEADER == <cyg/libc/stdlib/abs.inl>
1267     #   --> 1
1268 };
1269
1270 # div() / ldiv()
1271 #
1272 cdl_option CYGIMP_LIBC_STDLIB_INLINE_DIV {
1273     # Flavor: bool
1274     # No user value, uncomment the following line to provide one.
1275     # user_value 1
1276     # value_source default
1277     # Default value: 1
1278     # Requires:  CYGBLD_ISO_STDLIB_DIV_HEADER ==  "<cyg/libc/stdlib/div.inl>" 
1279     #     CYGBLD_ISO_STDLIB_DIV_HEADER == <cyg/libc/stdlib/div.inl>
1280     #   --> 1
1281 };
1282
1283 # atof() / atoi() / atol()
1284 #
1285 cdl_option CYGIMP_LIBC_STDLIB_INLINE_ATOX {
1286     # Flavor: bool
1287     # No user value, uncomment the following line to provide one.
1288     # user_value 1
1289     # value_source default
1290     # Default value: 1
1291     # Requires:  CYGBLD_ISO_STDLIB_STRCONV_HEADER ==  "<cyg/libc/stdlib/atox.inl>" 
1292     #     CYGBLD_ISO_STDLIB_STRCONV_HEADER == <cyg/libc/stdlib/atox.inl>
1293     #   --> 1
1294 };
1295
1296 # <
1297 # Random number generation
1298 # These options control the behaviour of the
1299 # functions rand(), srand() and rand_r()
1300 #
1301 cdl_component CYGPKG_LIBC_RAND {
1302     # There is no associated value.
1303 };
1304
1305 # >
1306 # Per-thread random seed
1307 # doc: ref/libc-thread-safety.html
1308 # This option controls whether the pseudo-random
1309 # number generation functions rand() and srand()
1310 # have their state recorded on a per-thread
1311 # basis rather than global. If this option is
1312 # disabled, some per-thread space can be saved.
1313 # Note there is also a POSIX-standard rand_r()
1314 # function to achieve a similar effect with user
1315 # support. Enabling this option will use one slot
1316 # of kernel per-thread data. You should ensure you
1317 # have enough slots configured for all your
1318 # per-thread data.
1319 #
1320 cdl_option CYGSEM_LIBC_PER_THREAD_RAND {
1321     # Flavor: bool
1322     # No user value, uncomment the following line to provide one.
1323     # user_value 0
1324     # value_source default
1325     # Default value: 0
1326     # Requires: CYGVAR_KERNEL_THREADS_DATA
1327     #     CYGVAR_KERNEL_THREADS_DATA (unknown) == 0
1328     #   --> 0
1329 };
1330
1331 # Random number seed
1332 # This selects the initial random number seed for
1333 # rand()'s pseudo-random number generator. For
1334 # strict ISO standard compliance, this should be 1,
1335 # as per section 7.10.2.2 of the standard.
1336 #
1337 cdl_option CYGNUM_LIBC_RAND_SEED {
1338     # Flavor: data
1339     # No user value, uncomment the following line to provide one.
1340     # user_value 1
1341     # value_source default
1342     # Default value: 1
1343     # Legal values: 0 to 0x7fffffff
1344 };
1345
1346 # Tracing level
1347 # Trace verbosity level for debugging the rand(),
1348 # srand() and rand_r() functions. Increase this
1349 # value to get additional trace output.
1350 #
1351 cdl_option CYGNUM_LIBC_RAND_TRACE_LEVEL {
1352     # Flavor: data
1353     # No user value, uncomment the following line to provide one.
1354     # user_value 0
1355     # value_source default
1356     # Default value: 0
1357     # Legal values: 0 to 1
1358 };
1359
1360 # Simplest implementation
1361 # This provides a very simple implementation of rand()
1362 # that does not perform well with randomness in the
1363 # lower significant bits. However it is exceptionally
1364 # fast. It uses the sample algorithm from the ISO C
1365 # standard itself.
1366 #
1367 cdl_option CYGIMP_LIBC_RAND_SIMPLEST {
1368     # Flavor: bool
1369     # No user value, uncomment the following line to provide one.
1370     # user_value 0
1371     # value_source default
1372     # Default value: 0
1373 };
1374
1375 # Simple implementation #1
1376 # This provides a very simple implementation of rand()
1377 # based on the simplest implementation above. However
1378 # it does try to work around the lack of randomness
1379 # in the lower significant bits, at the expense of a
1380 # little speed.
1381 #
1382 cdl_option CYGIMP_LIBC_RAND_SIMPLE1 {
1383     # Flavor: bool
1384     user_value 0
1385     # value_source user
1386     # Default value: 1
1387 };
1388
1389 # Knuth implementation #1
1390 # This implements a slightly more complex algorithm
1391 # published in Donald E. Knuth's Art of Computer
1392 # Programming Vol.2 section 3.6 (p.185 in the 3rd ed.).
1393 # This produces better random numbers than the
1394 # simplest approach but is slower.
1395 #
1396 cdl_option CYGIMP_LIBC_RAND_KNUTH1 {
1397     # Flavor: bool
1398     user_value 1
1399     # value_source user
1400     # Default value: 0
1401 };
1402
1403 # <
1404 # Provides strtod()
1405 # This option allows use of the utility function
1406 # strtod() (and consequently atof()) to convert
1407 # from string to double precision floating point
1408 # numbers. Disabling this option removes the
1409 # dependency on the math library package.
1410 #
1411 cdl_option CYGFUN_LIBC_strtod {
1412     # Flavor: bool
1413     # No user value, uncomment the following line to provide one.
1414     # user_value 0
1415     # value_source default
1416     # Default value:  0 != CYGPKG_LIBM 
1417     #     CYGPKG_LIBM (unknown) == 0
1418     #   --> 0
1419     # Requires: CYGPKG_LIBM
1420     #     CYGPKG_LIBM (unknown) == 0
1421     #   --> 0
1422 };
1423
1424 # Provides long long conversion functions
1425 # Enabling this option will provide support for the strtoll(),
1426 # strtoull() and atoll() conversion functions, which are
1427 # the long long variants of the standard versions of these
1428 # functions. Supporting this requires extra code and compile
1429 # time.
1430 #
1431 cdl_option CYGFUN_LIBC_STDLIB_CONV_LONGLONG {
1432     # Flavor: bool
1433     user_value 0
1434     # value_source user
1435     # Default value: 1
1436 };
1437
1438 # bsearch() tracing level
1439 # Trace verbosity level for debugging the <stdlib.h>
1440 # binary search function bsearch(). Increase this
1441 # value to get additional trace output.
1442 #
1443 cdl_option CYGNUM_LIBC_BSEARCH_TRACE_LEVEL {
1444     # Flavor: data
1445     # No user value, uncomment the following line to provide one.
1446     # user_value 0
1447     # value_source default
1448     # Default value: 0
1449     # Legal values: 0 to 1
1450 };
1451
1452 # qsort() tracing level
1453 # Trace verbosity level for debugging the <stdlib.h>
1454 # quicksort function qsort(). Increase this value
1455 # to get additional trace output.
1456 #
1457 cdl_option CYGNUM_LIBC_QSORT_TRACE_LEVEL {
1458     # Flavor: data
1459     # No user value, uncomment the following line to provide one.
1460     # user_value 0
1461     # value_source default
1462     # Default value: 0
1463     # Legal values: 0 to 1
1464 };
1465
1466 # C library stdlib build options
1467 # Package specific build options including control over
1468 # compiler flags used only in building this package,
1469 # and details of which tests are built.
1470 #
1471 cdl_component CYGPKG_LIBC_STDLIB_OPTIONS {
1472     # There is no associated value.
1473 };
1474
1475 # >
1476 # Additional compiler flags
1477 # This option modifies the set of compiler flags for
1478 # building this package. These flags are used in addition
1479 # to the set of global flags.
1480 #
1481 cdl_option CYGPKG_LIBC_STDLIB_CFLAGS_ADD {
1482     # Flavor: data
1483     # No user value, uncomment the following line to provide one.
1484     # user_value "-fno-rtti -Woverloaded-virtual"
1485     # value_source default
1486     # Default value: "-fno-rtti -Woverloaded-virtual"
1487 };
1488
1489 # Suppressed compiler flags
1490 # This option modifies the set of compiler flags for
1491 # building this package. These flags are removed from
1492 # the set of global flags if present.
1493 #
1494 cdl_option CYGPKG_LIBC_STDLIB_CFLAGS_REMOVE {
1495     # Flavor: data
1496     # No user value, uncomment the following line to provide one.
1497     # user_value -Wno-pointer-sign
1498     # value_source default
1499     # Default value: -Wno-pointer-sign
1500 };
1501
1502 # C library stdlib tests
1503 # This option specifies the set of tests for this package.
1504 #
1505 cdl_option CYGPKG_LIBC_STDLIB_TESTS {
1506     # 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" 
1507     # Flavor: data
1508     # 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
1509 };
1510
1511 # <
1512 # <
1513 # <
1514 # eCos HAL
1515 # doc: ref/the-ecos-hardware-abstraction-layer.html
1516 # The eCos HAL package provide a porting layer for
1517 # higher-level parts of the system such as the kernel and the
1518 # C library. Each installation should have HAL packages for
1519 # one or more architectures, and for each architecture there
1520 # may be one or more supported platforms. It is necessary to
1521 # select one target architecture and one platform for that
1522 # architecture. There are also a number of configuration
1523 # options that are common to all HAL packages.
1524 #
1525 cdl_package CYGPKG_HAL {
1526     # Packages cannot be added or removed, nor can their version be changed,
1527     # simply by editing their value. Instead the appropriate configuration
1528     # should be used to perform these actions.
1529
1530     # This value cannot be modified here.
1531     # Flavor: booldata
1532     # Current value: 1 current
1533     # Requires: CYGPKG_INFRA
1534     #     CYGPKG_INFRA == current
1535     #   --> 1
1536
1537     # The following properties are affected by this value
1538 };
1539
1540 # >
1541 # Platform-independent HAL options
1542 # A number of configuration options are common to most or all
1543 # HAL packages, for example options controlling how much state
1544 # should be saved during a context switch. The implementations
1545 # of these options will vary from architecture to architecture.
1546 #
1547 cdl_component CYGPKG_HAL_COMMON {
1548     # There is no associated value.
1549 };
1550
1551 # >
1552 # Provide eCos kernel support
1553 # The HAL can be configured to either support the full eCos
1554 # kernel, or to support only very simple applications which do
1555 # not require a full kernel. If kernel support is not required
1556 # then some of the startup, exception, and interrupt handling
1557 # code can be eliminated.
1558 #
1559 cdl_option CYGFUN_HAL_COMMON_KERNEL_SUPPORT {
1560     # Flavor: bool
1561     # No user value, uncomment the following line to provide one.
1562     # user_value 0
1563     # value_source default
1564     # Default value: CYGPKG_KERNEL
1565     #     CYGPKG_KERNEL (unknown) == 0
1566     #   --> 0
1567     # Requires: CYGPKG_KERNEL
1568     #     CYGPKG_KERNEL (unknown) == 0
1569     #   --> 0
1570 };
1571
1572 # HAL exception support
1573 # When a processor exception occurs, for example an attempt to
1574 # execute an illegal instruction or to perform a divide by
1575 # zero, this exception may be handled in a number of different
1576 # ways. If the target system has gdb support then typically
1577 # the exception will be handled by gdb code. Otherwise if the
1578 # HAL exception support is enabled then the HAL will invoke a
1579 # routine deliver_exception(). Typically this routine will be
1580 # provided by the eCos kernel, but it is possible for
1581 # application code to provide its own implementation. If the
1582 # HAL exception support is not enabled and a processor
1583 # exception occurs then the behaviour of the system is
1584 # undefined.
1585 #
1586 cdl_option CYGPKG_HAL_EXCEPTIONS {
1587     # Flavor: bool
1588     # No user value, uncomment the following line to provide one.
1589     # user_value 0
1590     # value_source default
1591     # Default value: CYGPKG_KERNEL_EXCEPTIONS
1592     #     CYGPKG_KERNEL_EXCEPTIONS (unknown) == 0
1593     #   --> 0
1594     # Requires: CYGPKG_KERNEL_EXCEPTIONS
1595     #     CYGPKG_KERNEL_EXCEPTIONS (unknown) == 0
1596     #   --> 0
1597 };
1598
1599 # Stop calling constructors early
1600 # This option supports environments where some constructors
1601 # must be run in the context of a thread rather than at
1602 # simple system startup time. A boolean flag named
1603 # cyg_hal_stop_constructors is set to 1 when constructors
1604 # should no longer be invoked. It is up to some other
1605 # package to deal with the rest of the constructors.
1606 # In the current version this is only possible with the
1607 # C library.
1608 #
1609 cdl_option CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG {
1610     # Flavor: bool
1611     # No user value, uncomment the following line to provide one.
1612     # user_value 0
1613     # value_source default
1614     # Default value: 0
1615     # Requires: CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS
1616     #     CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS (unknown) == 0
1617     #   --> 0
1618 };
1619
1620 # HAL uses the MMU and allows for CDL manipulation of it's use
1621 #
1622 cdl_interface CYGINT_HAL_SUPPORTS_MMU_TABLES {
1623     # No options implement this inferface
1624     # This value cannot be modified here.
1625     # Flavor: data
1626     # Current_value: 0
1627
1628     # The following properties are affected by this value
1629     # option CYGSEM_HAL_INSTALL_MMU_TABLES
1630     #     ActiveIf: CYGINT_HAL_SUPPORTS_MMU_TABLES
1631 };
1632
1633 # Install MMU tables.
1634 # This option controls whether this application installs
1635 # its own Memory Management Unit (MMU) tables, or relies on the
1636 # existing environment to run.
1637 #
1638 cdl_option CYGSEM_HAL_INSTALL_MMU_TABLES {
1639     # This option is not active
1640     # ActiveIf constraint: CYGINT_HAL_SUPPORTS_MMU_TABLES
1641     #     CYGINT_HAL_SUPPORTS_MMU_TABLES == 0
1642     #   --> 0
1643
1644     # Flavor: bool
1645     # No user value, uncomment the following line to provide one.
1646     # user_value 1
1647     # value_source default
1648     # Default value:  CYG_HAL_STARTUP != "RAM" 
1649     #     CYG_HAL_STARTUP == ROMRAM
1650     #   --> 1
1651
1652     # The following properties are affected by this value
1653     # option CYGSEM_HAL_STATIC_MMU_TABLES
1654     #     Requires: CYGSEM_HAL_INSTALL_MMU_TABLES
1655 };
1656
1657 # Use static MMU tables.
1658 # This option defines an environment where any Memory
1659 # Management Unit (MMU) tables are constant.  Normally used by ROM
1660 # based environments, this provides a way to save RAM usage which
1661 # would otherwise be required for these tables.
1662 #
1663 cdl_option CYGSEM_HAL_STATIC_MMU_TABLES {
1664     # Flavor: bool
1665     # No user value, uncomment the following line to provide one.
1666     # user_value 0
1667     # value_source default
1668     # Default value: 0
1669     # Requires: CYGSEM_HAL_INSTALL_MMU_TABLES
1670     #     CYGSEM_HAL_INSTALL_MMU_TABLES == 0
1671     #   --> 0
1672 };
1673
1674 # Route diagnostic output to debug channel
1675 # If not inheriting the console setup from the ROM monitor,
1676 # it is possible to redirect diagnostic output to the debug
1677 # channel by enabling this option. Depending on the debugger
1678 # used it may also be necessary to select a mangler for the
1679 # output to be displayed by the debugger.
1680 #
1681 cdl_component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN {
1682     # ActiveIf constraint: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
1683     #     CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE == 0
1684     #   --> 1
1685     # ActiveIf constraint:  CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx  || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG 
1686     #     CYGPKG_HAL_ARM == current
1687     #     CYGPKG_HAL_POWERPC_MPC8xx (unknown) == 0
1688     #     CYGPKG_HAL_V85X_V850 (unknown) == 0
1689     #     CYGSEM_HAL_VIRTUAL_VECTOR_DIAG == 1
1690     #   --> 1
1691
1692     # Flavor: bool
1693     # No user value, uncomment the following line to provide one.
1694     # user_value 0
1695     # value_source default
1696     # Default value:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0
1697     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
1698     #     CYG_HAL_STARTUP == ROMRAM
1699     #   --> 0
1700
1701     # The following properties are affected by this value
1702     # option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
1703     #     Calculated:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN 
1704 };
1705
1706 # >
1707 # Mangler used on diag output
1708 # It is sometimes necessary to mangle (encode) the
1709 # diag ASCII text output in order for it to show up at the
1710 # other end. In particular, GDB may silently ignore raw
1711 # ASCII text.
1712 #
1713 cdl_option CYGSEM_HAL_DIAG_MANGLER {
1714     # This option is not active
1715     # The parent CYGDBG_HAL_DIAG_TO_DEBUG_CHAN is disabled
1716
1717     # Flavor: data
1718     # No user value, uncomment the following line to provide one.
1719     # user_value GDB
1720     # value_source default
1721     # Default value: GDB
1722     # Legal values: "GDB" "None"
1723 };
1724
1725 # <
1726 # <
1727 # HAL interrupt handling
1728 # A number of configuration options related to interrupt
1729 # handling are common to most or all HAL packages, even though
1730 # the implementations will vary from architecture to
1731 # architecture.
1732 #
1733 cdl_component CYGPKG_HAL_COMMON_INTERRUPTS {
1734     # There is no associated value.
1735 };
1736
1737 # >
1738 # Use separate stack for interrupts
1739 # When an interrupt occurs this interrupt can be handled either
1740 # on the current stack or on a separate stack maintained by the
1741 # HAL. Using a separate stack requires a small number of extra
1742 # instructions in the interrupt handling code, but it has the
1743 # advantage that it is no longer necessary to allow extra space
1744 # in every thread stack for the interrupt handlers. The amount
1745 # of extra space required depends on the interrupt handlers
1746 # that are being used.
1747 #
1748 cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK {
1749     # Flavor: bool
1750     # No user value, uncomment the following line to provide one.
1751     # user_value 1
1752     # The inferred value should not be edited directly.
1753     inferred_value 0
1754     # value_source inferred
1755     # Default value: 1
1756
1757     # The following properties are affected by this value
1758     # package CYGPKG_REDBOOT
1759     #     Requires:  CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK == 0 
1760 };
1761
1762 # Interrupt stack size
1763 # This configuration option specifies the stack size in bytes
1764 # for the interrupt stack. Typically this should be a multiple
1765 # of 16, but the exact requirements will vary from architecture
1766 # to architecture. The interrupt stack serves two separate
1767 # purposes. It is used as the stack during system
1768 # initialization. In addition, if the interrupt system is
1769 # configured to use a separate stack then all interrupts will
1770 # be processed on this stack. The exact memory requirements
1771 # will vary from application to application, and will depend
1772 # heavily on whether or not other interrupt-related options,
1773 # for example nested interrupts, are enabled. On most targets,
1774 # in a configuration with no kernel this stack will also be
1775 # the stack used to invoke the application, and must obviously
1776 # be appropriately large in that case.
1777 #
1778 cdl_option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE {
1779     # Flavor: data
1780     # No user value, uncomment the following line to provide one.
1781     # user_value 32768
1782     # value_source default
1783     # Default value:  CYGPKG_KERNEL ? 4096 : 32768 
1784     #     CYGPKG_KERNEL (unknown) == 0
1785     #   --> 32768
1786     # Legal values: 128 to 1048576
1787 };
1788
1789 # Allow nested interrupts
1790 # When an interrupt occurs the HAL interrupt handling code can
1791 # either leave interrupts disabled for the duration of the
1792 # interrupt handling code, or by doing some extra work it can
1793 # reenable interrupts before invoking the interrupt handler and
1794 # thus allow nested interrupts to happen. If all the interrupt
1795 # handlers being used are small and do not involve any loops
1796 # then it is usually better to disallow nested interrupts.
1797 # However if any of the interrupt handlers are more complicated
1798 # than nested interrupts will usually be required.
1799 #
1800 cdl_option CYGSEM_HAL_COMMON_INTERRUPTS_ALLOW_NESTING {
1801     # Flavor: bool
1802     # No user value, uncomment the following line to provide one.
1803     # user_value 0
1804     # value_source default
1805     # Default value: 0
1806 };
1807
1808 # Save minimum context on interrupt
1809 # The HAL interrupt handling code can exploit the calling conventions
1810 # defined for a given architecture to reduce the amount of state
1811 # that has to be saved. Generally this improves performance and
1812 # reduces code size. However it can make source-level debugging
1813 # more difficult.
1814 #
1815 cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT {
1816     # Flavor: bool
1817     # No user value, uncomment the following line to provide one.
1818     # user_value 1
1819     # The inferred value should not be edited directly.
1820     inferred_value 0
1821     # value_source inferred
1822     # Default value: 1
1823
1824     # The following properties are affected by this value
1825     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1826     #     Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
1827     # component CYGBLD_BUILD_REDBOOT
1828     #     Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
1829 };
1830
1831 # Chain all interrupts together
1832 # Interrupts can be attached to vectors either singly, or be
1833 # chained together. The latter is necessary if there is no way
1834 # of discovering which device has interrupted without
1835 # inspecting the device itself. It can also reduce the amount
1836 # of RAM needed for interrupt decoding tables and code.
1837 #
1838 cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN {
1839     # Flavor: bool
1840     # No user value, uncomment the following line to provide one.
1841     # user_value 0
1842     # value_source default
1843     # Default value: 0
1844 };
1845
1846 # Ignore spurious [fleeting] interrupts
1847 # On some hardware, interrupt sources may not be de-bounced or
1848 # de-glitched.  Rather than try to handle these interrupts (no
1849 # handling may be possible), this option allows the HAL to simply
1850 # ignore them.  In most cases, if the interrupt is real it will
1851 # reoccur in a detectable form.
1852 #
1853 cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_IGNORE_SPURIOUS {
1854     # Flavor: bool
1855     # No user value, uncomment the following line to provide one.
1856     # user_value 0
1857     # value_source default
1858     # Default value: 0
1859 };
1860
1861 # <
1862 # HAL context switch support
1863 # A number of configuration options related to thread contexts
1864 # are common to most or all HAL packages, even though the
1865 # implementations will vary from architecture to architecture.
1866 #
1867 cdl_component CYGPKG_HAL_COMMON_CONTEXT {
1868     # There is no associated value.
1869
1870     # The following properties are affected by this value
1871 };
1872
1873 # >
1874 # Use minimum thread context
1875 # The thread context switch code can exploit the calling
1876 # conventions defined for a given architecture to reduce the
1877 # amount of state that has to be saved during a context
1878 # switch. Generally this improves performance and reduces
1879 # code size. However it can make source-level debugging more
1880 # difficult.
1881 #
1882 cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM {
1883     # Flavor: bool
1884     # No user value, uncomment the following line to provide one.
1885     # user_value 1
1886     # The inferred value should not be edited directly.
1887     inferred_value 0
1888     # value_source inferred
1889     # Default value: 1
1890
1891     # The following properties are affected by this value
1892     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1893     #     Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
1894     # component CYGBLD_BUILD_REDBOOT
1895     #     Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
1896 };
1897
1898 # <
1899 # Explicit control over cache behaviour
1900 # These options let the default behaviour of the caches 
1901 # be easily configurable.
1902 #
1903 cdl_component CYGPKG_HAL_CACHE_CONTROL {
1904     # There is no associated value.
1905 };
1906
1907 # >
1908 # Enable DATA cache on startup
1909 # Enabling this option will cause the data cache to be enabled
1910 # as soon as practicable when eCos starts up.  One would choose
1911 # to disable this if the data cache cannot safely be turned on,
1912 # such as a case where the cache(s) require additional platform
1913 # specific setup.
1914 #
1915 cdl_component CYGSEM_HAL_ENABLE_DCACHE_ON_STARTUP {
1916     # Flavor: bool
1917     # No user value, uncomment the following line to provide one.
1918     # user_value 1
1919     # value_source default
1920     # Default value: 1
1921 };
1922
1923 # >
1924 # DATA cache mode on startup
1925 # This option controls the mode the cache will be set to
1926 # when enabled on startup.
1927 #
1928 cdl_option CYGSEM_HAL_DCACHE_STARTUP_MODE {
1929     # Flavor: data
1930     # No user value, uncomment the following line to provide one.
1931     # user_value COPYBACK
1932     # value_source default
1933     # Default value: COPYBACK
1934     # Legal values:  "COPYBACK" "WRITETHRU" 
1935 };
1936
1937 # <
1938 # Enable INSTRUCTION cache on startup
1939 # Enabling this option will cause the instruction cache to be enabled
1940 # as soon as practicable when eCos starts up.  One would choose
1941 # to disable this if the instruction cache cannot safely be turned on,
1942 # such as a case where the cache(s) require additional platform
1943 # specific setup.
1944 #
1945 cdl_option CYGSEM_HAL_ENABLE_ICACHE_ON_STARTUP {
1946     # Flavor: bool
1947     # No user value, uncomment the following line to provide one.
1948     # user_value 1
1949     # value_source default
1950     # Default value: 1
1951 };
1952
1953 # <
1954 # Source-level debugging support
1955 # If the source level debugger gdb is to be used for debugging
1956 # application code then it may be necessary to configure in support
1957 # for this in the HAL.
1958 #
1959 cdl_component CYGPKG_HAL_DEBUG {
1960     # There is no associated value.
1961 };
1962
1963 # >
1964 # Support for GDB stubs
1965 # The HAL implements GDB stubs for the target.
1966 #
1967 cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS {
1968     # Implemented by CYGPKG_HAL_ARM_TX53KARO, active, enabled
1969     # This value cannot be modified here.
1970     # Flavor: data
1971     # Current_value: 1
1972
1973     # The following properties are affected by this value
1974     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1975     #     ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS
1976     # option CYGBLD_BUILD_REDBOOT_WITH_GDB
1977     #     ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS
1978 };
1979
1980 # Include GDB stubs in HAL
1981 # This option causes a set of GDB stubs to be included into the
1982 # system. On some target systems the GDB support will be
1983 # provided by other means, for example by a ROM monitor. On
1984 # other targets, especially when building a ROM-booting system,
1985 # the necessary support has to go into the target library
1986 # itself. When GDB stubs are include in a configuration, HAL
1987 # serial drivers must also be included.
1988 #
1989 cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS {
1990     # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS
1991     #     CYGINT_HAL_DEBUG_GDB_STUBS == 1
1992     #   --> 1
1993
1994     # Flavor: bool
1995     # No user value, uncomment the following line to provide one.
1996     # user_value 0
1997     # The inferred value should not be edited directly.
1998     inferred_value 0
1999     # value_source inferred
2000     # Default value: 0
2001     # Requires: ! CYGSEM_HAL_USE_ROM_MONITOR
2002     #     CYGSEM_HAL_USE_ROM_MONITOR == 0
2003     #   --> 1
2004     # Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
2005     #     CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT == 0
2006     #   --> 1
2007     # Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
2008     #     CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM == 0
2009     #   --> 1
2010     # Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
2011     #     CYGSEM_HAL_VIRTUAL_VECTOR_DIAG == 1
2012     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
2013     #   --> 1
2014
2015     # The following properties are affected by this value
2016     # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
2017     #     DefaultValue:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0
2018     # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
2019     #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2020     # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
2021     #     DefaultValue: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2022     # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
2023     #     ActiveIf:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
2024     # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
2025     #     DefaultValue:  !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
2026     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
2027     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
2028     # option CYGBLD_BUILD_COMMON_GDB_STUBS
2029     #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2030     # option CYGPKG_HAL_GDB_FILEIO
2031     #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2032     # option CYGHWR_HAL_ARM_DUMP_EXCEPTIONS
2033     #     Requires: !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2034     # option CYGHWR_HAL_ARM_ICE_THREAD_SUPPORT
2035     #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2036     # option CYGBLD_BUILD_REDBOOT_WITH_GDB
2037     #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2038 };
2039
2040 # Support for external break support in GDB stubs
2041 # The HAL implements external break (or asynchronous interrupt)
2042 # in the GDB stubs for the target.
2043 #
2044 cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS_BREAK {
2045     # Implemented by CYGPKG_HAL_ARM_TX53KARO, active, enabled
2046     # This value cannot be modified here.
2047     # Flavor: data
2048     # Current_value: 1
2049
2050     # The following properties are affected by this value
2051     # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
2052     #     ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
2053 };
2054
2055 # Include GDB external break support for stubs
2056 # This option causes the GDB stub to add a serial interrupt handler
2057 # which will listen for GDB break packets. This lets you stop the
2058 # target asynchronously when using GDB, usually by hitting Control+C
2059 # or pressing the STOP button. This option differs from
2060 # CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT in that it is used when
2061 # GDB stubs are present.
2062 #
2063 cdl_option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT {
2064     # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
2065     #     CYGINT_HAL_DEBUG_GDB_STUBS_BREAK == 1
2066     #   --> 1
2067
2068     # Flavor: bool
2069     # No user value, uncomment the following line to provide one.
2070     # user_value 0
2071     # value_source default
2072     # Default value: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2073     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
2074     #   --> 0
2075     # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2076     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
2077     #   --> 0
2078
2079     # The following properties are affected by this value
2080     # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
2081     #     Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
2082     # option CYGOPT_HAL_ARM_SYSCALL_GPROF_SUPPORT
2083     #     ActiveIf:  CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT || CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT 
2084     # option CYGBLD_BUILD_REDBOOT_WITH_GDB
2085     #     Requires: CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
2086 };
2087
2088 # Platform does not support CTRLC
2089 #
2090 cdl_interface CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED {
2091     # No options implement this inferface
2092     # This value cannot be modified here.
2093     # Flavor: data
2094     # Current_value: 0
2095
2096     # The following properties are affected by this value
2097     # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
2098     #     ActiveIf:  CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 
2099 };
2100
2101 # Include GDB external break support when no stubs
2102 # This option adds an interrupt handler for the GDB serial line
2103 # which will listen for GDB break packets. This lets you stop the
2104 # target asynchronously when using GDB, usually by hitting Control+C
2105 # or pressing the STOP button. This option differs from
2106 # CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT in that it is used when the GDB
2107 # stubs are NOT present.
2108 #
2109 cdl_option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT {
2110     # This option is not active
2111     # ActiveIf constraint:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
2112     #     CYGSEM_HAL_USE_ROM_MONITOR == 0
2113     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
2114     #   --> 0
2115     # ActiveIf constraint:  CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 
2116     #     CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0
2117     #   --> 1
2118
2119     # Flavor: bool
2120     # No user value, uncomment the following line to provide one.
2121     # user_value 1
2122     # value_source default
2123     # Default value:  !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
2124     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
2125     #   --> 1
2126     # Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
2127     #     CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0
2128     #   --> 1
2129
2130     # The following properties are affected by this value
2131     # option CYGOPT_HAL_ARM_SYSCALL_GPROF_SUPPORT
2132     #     ActiveIf:  CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT || CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT 
2133     # component CYGBLD_BUILD_REDBOOT
2134     #     Requires: ! CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
2135 };
2136
2137 # Include GDB multi-threading debug support
2138 # This option enables some extra HAL code which is needed
2139 # to support multi-threaded source level debugging.
2140 #
2141 cdl_option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT {
2142     # ActiveIf constraint:  CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT 
2143     #     CYGSEM_HAL_ROM_MONITOR == 1
2144     #     CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT (unknown) == 0
2145     #   --> 1
2146
2147     # Flavor: bool
2148     # No user value, uncomment the following line to provide one.
2149     # user_value 1
2150     # value_source default
2151     # Default value: 1
2152
2153     # The following properties are affected by this value
2154     # option CYGHWR_HAL_ARM_ICE_THREAD_SUPPORT
2155     #     Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
2156     # option CYGBLD_BUILD_REDBOOT_WITH_THREADS
2157     #     Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
2158 };
2159
2160 # Number of times to retry sending a $O packet
2161 # This option controls the number of attempts that eCos programs
2162 # will make to send a $O packet to a host GDB process.  If it is
2163 # set non-zero, then the target process will attempt to resend the
2164 # $O packet data up to this number of retries.  Caution: use of
2165 # this option is not recommended as it can thoroughly confuse the
2166 # host GDB process.
2167 #
2168 cdl_option CYGNUM_HAL_DEBUG_GDB_PROTOCOL_RETRIES {
2169     # Flavor: data
2170     # No user value, uncomment the following line to provide one.
2171     # user_value 0
2172     # value_source default
2173     # Default value: 0
2174 };
2175
2176 # Timeout period for GDB packets
2177 # This option controls the time (in milliseconds) that eCos programs
2178 # will wait for a response when sending packets to a host GDB process.
2179 # If this time elapses, then the packet will be resent, up to some
2180 # maximum number of times (CYGNUM_HAL_DEBUG_GDB_PROTOCOL_RETRIES).
2181 #
2182 cdl_option CYGNUM_HAL_DEBUG_GDB_PROTOCOL_TIMEOUT {
2183     # Flavor: data
2184     # No user value, uncomment the following line to provide one.
2185     # user_value 500
2186     # value_source default
2187     # Default value: 500
2188 };
2189
2190 # Location of CRC32 table
2191 # The stubs use a 1 kilobyte CRC table that can either be pregenerated
2192 # and placed in ROM, or generated at runtime in RAM. Depending on
2193 # your memory constraints, one of these options may be better.
2194 #
2195 cdl_option CYGDBG_HAL_CRCTABLE_LOCATION {
2196     # Flavor: data
2197     # No user value, uncomment the following line to provide one.
2198     # user_value RAM
2199     # value_source default
2200     # Default value: RAM
2201     # Legal values: "ROM" "RAM"
2202 };
2203
2204 # <
2205 # ROM monitor support
2206 # Support for ROM monitors can be built in to your application. 
2207 # It may also be relevant to build your application as a ROM monitor
2208 # itself. Such options are contained here if relevant for your chosen
2209 # platform. The options and ROM monitors available to choose are
2210 # platform-dependent.
2211 #
2212 cdl_component CYGPKG_HAL_ROM_MONITOR {
2213     # There is no associated value.
2214
2215     # The following properties are affected by this value
2216 };
2217
2218 # >
2219 # Target has virtual vector support
2220 #
2221 cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT {
2222     # Implemented by CYGPKG_HAL_ARM_TX53KARO, active, enabled
2223     # This value cannot be modified here.
2224     # Flavor: data
2225     # Current_value: 1
2226
2227     # The following properties are affected by this value
2228     # component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
2229     #     ActiveIf: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
2230 };
2231
2232 # Target supports baud rate control via vectors
2233 # Whether this target supports the __COMMCTL_GETBAUD
2234 # and __COMMCTL_SETBAUD virtual vector comm control operations.
2235 #
2236 cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT {
2237     # Implemented by CYGPKG_HAL_ARM_MX53, active, enabled
2238     # This value cannot be modified here.
2239     # Flavor: data
2240     # Current_value: 1
2241
2242     # The following properties are affected by this value
2243     # option CYGSEM_REDBOOT_VARIABLE_BAUD_RATE
2244     #     ActiveIf: CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT
2245 };
2246
2247 # Enable use of virtual vector calling interface
2248 # Virtual vector support allows the HAL to let the ROM
2249 # monitor handle certain operations. The virtual vector table
2250 # defines a calling interface between applications running in
2251 # RAM and the ROM monitor.
2252 #
2253 cdl_component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT {
2254     # ActiveIf constraint: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
2255     #     CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT == 1
2256     #   --> 1
2257
2258     # Calculated value: 1
2259     # Flavor: bool
2260     # Current value: 1
2261
2262     # The following properties are affected by this value
2263     # component CYGBLD_BUILD_REDBOOT
2264     #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
2265     # package CYGPKG_DEVS_ETH_PHY
2266     #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
2267 };
2268
2269 # >
2270 # Inherit console settings from ROM monitor
2271 # When this option is set, the application will inherit
2272 # the console as set up by the ROM monitor. This means
2273 # that the application will use whatever channel and
2274 # mangling style was used by the ROM monitor when
2275 # the application was launched.
2276 #
2277 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE {
2278     # This option is not active
2279     # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR
2280     #     CYGSEM_HAL_USE_ROM_MONITOR == 0
2281     #   --> 0
2282
2283     # Flavor: bool
2284     # No user value, uncomment the following line to provide one.
2285     # user_value 0
2286     # value_source default
2287     # Default value:  !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
2288     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
2289     #   --> 0
2290
2291     # The following properties are affected by this value
2292     # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
2293     #     ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
2294     # option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
2295     #     Calculated:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN 
2296 };
2297
2298 # Debug channel is configurable
2299 # This option is a configuration hint - it is enabled
2300 # when the HAL initialization code will make use
2301 # of the debug channel configuration option.
2302 #
2303 cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE {
2304     # Calculated value:  CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
2305     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
2306     # Flavor: bool
2307     # Current value: 1
2308
2309     # The following properties are affected by this value
2310     # option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL
2311     #     ActiveIf: CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
2312 };
2313
2314 # Console channel is configurable
2315 # This option is a configuration hint - it is enabled
2316 # when the HAL initialization code will make use
2317 # of the console channel configuration option.
2318 #
2319 cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE {
2320     # Calculated value:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN 
2321     #     CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE == 0
2322     #     CYGDBG_HAL_DIAG_TO_DEBUG_CHAN == 0
2323     # Flavor: bool
2324     # Current value: 1
2325
2326     # The following properties are affected by this value
2327     # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL
2328     #     ActiveIf: CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
2329 };
2330
2331 # Initialize whole of virtual vector table
2332 # This option will cause the whole of the virtual
2333 # vector table to be initialized with dummy values on
2334 # startup. When this option is enabled, all the
2335 # options below must also be enabled - or the
2336 # table would be empty when the application
2337 # launches.
2338 # On targets where older ROM monitors without
2339 # virtual vector support may still be in use, it is
2340 # necessary for RAM applictions to initialize the
2341 # table (since all HAL diagnostics and debug IO
2342 # happens via the table).
2343 #
2344 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE {
2345     # Flavor: bool
2346     # No user value, uncomment the following line to provide one.
2347     # user_value 1
2348     # value_source default
2349     # Default value:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR 
2350     #     CYG_HAL_STARTUP == ROMRAM
2351     #     CYGSEM_HAL_USE_ROM_MONITOR == 0
2352     #   --> 1
2353     # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
2354     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET == 1
2355     #   --> 1
2356     # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
2357     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US == 1
2358     #   --> 1
2359     # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
2360     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE == 1
2361     #   --> 1
2362     # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
2363     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA == 1
2364     #   --> 1
2365     # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
2366     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
2367     #   --> 1
2368
2369     # The following properties are affected by this value
2370     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
2371     #     ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
2372     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
2373     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2374     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_VERSION
2375     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE 
2376     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
2377     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2378     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
2379     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2380     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
2381     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2382     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
2383     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
2384 };
2385
2386 # Claim virtual vector table entries by default
2387 # By default most virtual vectors will be claimed by
2388 # RAM startup configurations, meaning that the RAM
2389 # application will provide the services. The
2390 # exception is COMMS support (HAL
2391 # diagnostics/debugging IO) which is left in the
2392 # control of the ROM monitor.
2393 # The reasoning behind this is to get as much of the
2394 # code exercised during regular development so it
2395 # is known to be working the few times a new ROM
2396 # monitor or a ROM production configuration is used
2397 # - COMMS are excluded only by necessity in order to
2398 # avoid breaking an existing debugger connections
2399 # (there may be ways around this).
2400 # For production RAM configurations this option can
2401 # be switched off, causing the appliction to rely on
2402 # the ROM monitor for these services, thus
2403 # saving some space.
2404 # Individual vectors may also be left unclaimed,
2405 # controlled by the below options (meaning that the
2406 # associated service provided by the ROM monitor
2407 # will be used).
2408 #
2409 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT {
2410     # This option is not active
2411     # ActiveIf constraint: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
2412     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
2413     #   --> 0
2414
2415     # Flavor: bool
2416     # No user value, uncomment the following line to provide one.
2417     # user_value 1
2418     # value_source default
2419     # Default value: 1
2420
2421     # The following properties are affected by this value
2422     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
2423     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2424     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
2425     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2426     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
2427     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2428     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
2429     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2430 };
2431
2432 # Claim reset virtual vectors
2433 # This option will cause the reset and kill_by_reset
2434 # virtual vectors to be claimed.
2435 #
2436 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET {
2437     # Flavor: bool
2438     # No user value, uncomment the following line to provide one.
2439     # user_value 1
2440     # value_source default
2441     # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2442     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
2443     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
2444     #   --> 1
2445
2446     # The following properties are affected by this value
2447     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
2448     #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
2449 };
2450
2451 # Claim version virtual vectors
2452 # This option will cause the version
2453 # virtual vectors to be claimed.
2454 #
2455 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_VERSION {
2456     # Flavor: bool
2457     # No user value, uncomment the following line to provide one.
2458     # user_value 1
2459     # value_source default
2460     # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE 
2461     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
2462     #   --> 1
2463 };
2464
2465 # Claim delay_us virtual vector
2466 # This option will cause the delay_us
2467 # virtual vector to be claimed.
2468 #
2469 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US {
2470     # Flavor: bool
2471     # No user value, uncomment the following line to provide one.
2472     # user_value 1
2473     # value_source default
2474     # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2475     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
2476     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
2477     #   --> 1
2478
2479     # The following properties are affected by this value
2480     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
2481     #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
2482 };
2483
2484 # Claim cache virtual vectors
2485 # This option will cause the cache virtual vectors
2486 # to be claimed.
2487 #
2488 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE {
2489     # Flavor: bool
2490     # No user value, uncomment the following line to provide one.
2491     # user_value 1
2492     # value_source default
2493     # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2494     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
2495     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
2496     #   --> 1
2497
2498     # The following properties are affected by this value
2499     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
2500     #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
2501 };
2502
2503 # Claim data virtual vectors
2504 # This option will cause the data virtual vectors
2505 # to be claimed. At present there is only one, used
2506 # by the RedBoot ethernet driver to share diag output.
2507 #
2508 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA {
2509     # Flavor: bool
2510     # No user value, uncomment the following line to provide one.
2511     # user_value 1
2512     # value_source default
2513     # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
2514     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
2515     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
2516     #   --> 1
2517
2518     # The following properties are affected by this value
2519     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
2520     #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
2521 };
2522
2523 # Claim comms virtual vectors
2524 # This option will cause the communication tables
2525 # that are part of the virtual vectors mechanism to
2526 # be claimed. Note that doing this may cause an
2527 # existing ROM monitor communication connection to
2528 # be closed. For this reason, the option is disabled
2529 # per default for normal application
2530 # configurations.
2531 #
2532 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS {
2533     # Flavor: bool
2534     # No user value, uncomment the following line to provide one.
2535     # user_value 1
2536     # value_source default
2537     # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
2538     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
2539     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
2540     #   --> 1
2541
2542     # The following properties are affected by this value
2543     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2544     #     Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
2545     # option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
2546     #     DefaultValue:  !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
2547     # option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
2548     #     Calculated:  CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
2549     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
2550     #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
2551 };
2552
2553 # Do diagnostic IO via virtual vector table
2554 # All HAL IO happens via the virtual vector table / comm
2555 # tables when those tables are supported by the HAL.
2556 # If so desired, the low-level IO functions can
2557 # still be provided by the RAM application by
2558 # enabling the CLAIM_COMMS option.
2559 #
2560 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_DIAG {
2561     # Calculated value: 1
2562     # Flavor: bool
2563     # Current value: 1
2564
2565     # The following properties are affected by this value
2566     # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
2567     #     ActiveIf:  CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx  || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG 
2568     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2569     #     Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
2570 };
2571
2572 # <
2573 # Behave as a ROM monitor
2574 # Enable this option if this program is to be used as a ROM monitor,
2575 # i.e. applications will be loaded into RAM on the TX53 module, and this
2576 # ROM monitor may process exceptions or interrupts generated from the
2577 # application. This enables features such as utilizing a separate
2578 # interrupt stack when exceptions are generated.
2579 #
2580 cdl_option CYGSEM_HAL_ROM_MONITOR {
2581     # Flavor: bool
2582     # No user value, uncomment the following line to provide one.
2583     # user_value 0
2584     # The inferred value should not be edited directly.
2585     inferred_value 1
2586     # value_source inferred
2587     # Default value: 0
2588     # Requires:  CYG_HAL_STARTUP == "ROM" || CYG_HAL_STARTUP == "ROMRAM" 
2589     #     CYG_HAL_STARTUP == ROMRAM
2590     #     CYG_HAL_STARTUP == ROMRAM
2591     #   --> 1
2592
2593     # The following properties are affected by this value
2594     # option CYGBLD_ARM_ENABLE_THUMB_INTERWORK
2595     #     DefaultValue:  (CYGHWR_THUMB || CYGSEM_HAL_ROM_MONITOR) 
2596     # option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
2597     #     ActiveIf:  CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT 
2598     # option CYGPRI_REDBOOT_ROM_MONITOR
2599     #     Requires: CYGSEM_HAL_ROM_MONITOR
2600 };
2601
2602 # Work with a ROM monitor
2603 # Support can be enabled for different varieties of ROM monitor.
2604 # This support changes various eCos semantics such as the encoding
2605 # of diagnostic output, or the overriding of hardware interrupt
2606 # vectors.
2607 # Firstly there is "Generic" support which prevents the HAL
2608 # from overriding the hardware vectors that it does not use, to
2609 # instead allow an installed ROM monitor to handle them. This is
2610 # the most basic support which is likely to be common to most
2611 # implementations of ROM monitor.
2612 # "GDB_stubs" provides support when GDB stubs are included in
2613 # the ROM monitor or boot ROM.
2614 #
2615 cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
2616     # Flavor: booldata
2617     # No user value, uncomment the following line to provide one.
2618     # user_value 0 0
2619     # value_source default
2620     # Default value:  CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 
2621     #     CYG_HAL_STARTUP == ROMRAM
2622     #   --> 0 0
2623     # Legal values:  "Generic" "GDB_stubs" 
2624     # Requires:  CYG_HAL_STARTUP == "RAM" 
2625     #     CYG_HAL_STARTUP == ROMRAM
2626     #   --> 0
2627
2628     # The following properties are affected by this value
2629     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2630     #     Requires: ! CYGSEM_HAL_USE_ROM_MONITOR
2631     # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
2632     #     ActiveIf:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
2633     # option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
2634     #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR
2635     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
2636     #     DefaultValue:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR 
2637 };
2638
2639 # <
2640 # Platform defined I/O channels.
2641 # Platforms which provide additional I/O channels can implement
2642 # this interface, indicating that the function plf_if_init()
2643 # needs to be called.
2644 #
2645 cdl_interface CYGINT_HAL_PLF_IF_INIT {
2646     # No options implement this inferface
2647     # This value cannot be modified here.
2648     # Flavor: data
2649     # Current_value: 0
2650 };
2651
2652 # Platform IDE I/O support.
2653 # Platforms which provide IDE controllers can implement
2654 # this interface, indicating that IDE I/O macros are
2655 # available.
2656 #
2657 cdl_interface CYGINT_HAL_PLF_IF_IDE {
2658     # No options implement this inferface
2659     # This value cannot be modified here.
2660     # Flavor: data
2661     # Current_value: 0
2662
2663     # The following properties are affected by this value
2664     # component CYGSEM_REDBOOT_DISK_IDE
2665     #     ActiveIf:  CYGINT_HAL_PLF_IF_IDE != 0 
2666 };
2667
2668 # File I/O operations via GDB
2669 # This option enables support for various file I/O
2670 # operations using the GDB remote protocol to communicate
2671 # with GDB. The operations are then performed on the
2672 # debugging host by proxy. These operations are only
2673 # currently available by using a system call interface
2674 # to RedBoot. This may change in the future.
2675 #
2676 cdl_option CYGPKG_HAL_GDB_FILEIO {
2677     # This option is not active
2678     # ActiveIf constraint: CYGSEM_REDBOOT_BSP_SYSCALLS
2679     #     CYGSEM_REDBOOT_BSP_SYSCALLS == 0
2680     #   --> 0
2681
2682     # Flavor: bool
2683     # No user value, uncomment the following line to provide one.
2684     # user_value 0
2685     # value_source default
2686     # Default value: 0
2687     # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2688     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
2689     #   --> 0
2690 };
2691
2692 # Build Compiler sanity checking tests
2693 # Enabling this option causes compiler tests to be built.
2694 #
2695 cdl_option CYGPKG_HAL_BUILD_COMPILER_TESTS {
2696     # Flavor: bool
2697     # No user value, uncomment the following line to provide one.
2698     # user_value 0
2699     # value_source default
2700     # Default value: 0
2701
2702     # The following properties are affected by this value
2703     # component CYGPKG_HAL_TESTS
2704     #     Calculated:   "tests/context tests/basic"
2705     #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")
2706     #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")
2707     #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "") 
2708 };
2709
2710 # Common HAL tests
2711 # This option specifies the set of tests for the common HAL.
2712 #
2713 cdl_component CYGPKG_HAL_TESTS {
2714     # Calculated value:   "tests/context tests/basic"
2715     #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")
2716     #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")
2717     #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "") 
2718     #     CYGINT_HAL_TESTS_NO_CACHES == 0
2719     #     CYGPKG_HAL_BUILD_COMPILER_TESTS == 0
2720     #     CYGVAR_KERNEL_COUNTERS_CLOCK (unknown) == 0
2721     # Flavor: data
2722     # Current_value: tests/context tests/basic tests/cache tests/intr
2723 };
2724
2725 # >
2726 # Interface for cache presence
2727 # Some architectures and/or platforms do not have caches. By
2728 # implementing this interface, these can disable the various
2729 # cache-related tests.
2730 #
2731 cdl_interface CYGINT_HAL_TESTS_NO_CACHES {
2732     # No options implement this inferface
2733     # This value cannot be modified here.
2734     # Flavor: booldata
2735     # Current value: 0 0
2736
2737     # The following properties are affected by this value
2738     # component CYGPKG_HAL_TESTS
2739     #     Calculated:   "tests/context tests/basic"
2740     #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")
2741     #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")
2742     #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "") 
2743 };
2744
2745 # <
2746 # ARM architecture
2747 # The ARM architecture HAL package provides generic
2748 # support for this processor architecture. It is also
2749 # necessary to select a specific target platform HAL
2750 # package.
2751 #
2752 cdl_package CYGPKG_HAL_ARM {
2753     # Packages cannot be added or removed, nor can their version be changed,
2754     # simply by editing their value. Instead the appropriate configuration
2755     # should be used to perform these actions.
2756
2757     # This value cannot be modified here.
2758     # Flavor: booldata
2759     # Current value: 1 current
2760
2761     # The following properties are affected by this value
2762     # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
2763     #     ActiveIf:  CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx  || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG 
2764     # interface CYGINT_REDBOOT_ARM_FLASH_SIB_SUPPORTED
2765     #     ActiveIf: CYGPKG_HAL_ARM
2766 };
2767
2768 # >
2769 # The CPU architecture supports THUMB mode
2770 #
2771 cdl_interface CYGINT_HAL_ARM_THUMB_ARCH {
2772     # No options implement this inferface
2773     # This value cannot be modified here.
2774     # Flavor: data
2775     # Current_value: 0
2776
2777     # The following properties are affected by this value
2778     # option CYGHWR_THUMB
2779     #     ActiveIf:  CYGINT_HAL_ARM_THUMB_ARCH != 0 
2780     # option CYGBLD_ARM_ENABLE_THUMB_INTERWORK
2781     #     ActiveIf:  CYGINT_HAL_ARM_THUMB_ARCH != 0 
2782 };
2783
2784 # Enable Thumb instruction set
2785 # Enable use of the Thumb instruction set.
2786 #
2787 cdl_option CYGHWR_THUMB {
2788     # This option is not active
2789     # ActiveIf constraint:  CYGINT_HAL_ARM_THUMB_ARCH != 0 
2790     #     CYGINT_HAL_ARM_THUMB_ARCH == 0
2791     #   --> 0
2792
2793     # Flavor: bool
2794     # No user value, uncomment the following line to provide one.
2795     # user_value 0
2796     # value_source default
2797     # Default value: 0
2798
2799     # The following properties are affected by this value
2800     # option CYGBLD_ARM_ENABLE_THUMB_INTERWORK
2801     #     DefaultValue:  (CYGHWR_THUMB || CYGSEM_HAL_ROM_MONITOR) 
2802 };
2803
2804 # Enable Thumb interworking compiler option
2805 # This option controls the use of -mthumb-interwork in the
2806 # compiler flags. It defaults enabled in Thumb or ROM monitor
2807 # configurations, but can be overridden for reduced memory
2808 # footprint where interworking is not a requirement.
2809 #
2810 cdl_option CYGBLD_ARM_ENABLE_THUMB_INTERWORK {
2811     # This option is not active
2812     # ActiveIf constraint:  CYGINT_HAL_ARM_THUMB_ARCH != 0 
2813     #     CYGINT_HAL_ARM_THUMB_ARCH == 0
2814     #   --> 0
2815
2816     # Flavor: bool
2817     # No user value, uncomment the following line to provide one.
2818     # user_value 1
2819     # value_source default
2820     # Default value:  (CYGHWR_THUMB || CYGSEM_HAL_ROM_MONITOR) 
2821     #     CYGHWR_THUMB == 0
2822     #     CYGSEM_HAL_ROM_MONITOR == 1
2823     #   --> 1
2824 };
2825
2826 # The platform and architecture supports Big Endian operation
2827 #
2828 cdl_interface CYGINT_HAL_ARM_BIGENDIAN {
2829     # No options implement this inferface
2830     # This value cannot be modified here.
2831     # Flavor: data
2832     # Current_value: 0
2833
2834     # The following properties are affected by this value
2835     # option CYGHWR_HAL_ARM_BIGENDIAN
2836     #     ActiveIf:  CYGINT_HAL_ARM_BIGENDIAN != 0 
2837 };
2838
2839 # Use big-endian mode
2840 # Use the CPU in big-endian mode.
2841 #
2842 cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
2843     # This option is not active
2844     # ActiveIf constraint:  CYGINT_HAL_ARM_BIGENDIAN != 0 
2845     #     CYGINT_HAL_ARM_BIGENDIAN == 0
2846     #   --> 0
2847
2848     # Flavor: bool
2849     # No user value, uncomment the following line to provide one.
2850     # user_value 0
2851     # value_source default
2852     # Default value: 0
2853 };
2854
2855 # The platform uses a processor with an ARM7 core
2856 #
2857 cdl_interface CYGINT_HAL_ARM_ARCH_ARM7 {
2858     # No options implement this inferface
2859     # This value cannot be modified here.
2860     # Flavor: data
2861     # Current_value: 0
2862
2863     # The following properties are affected by this value
2864     # option CYGHWR_HAL_ARM_CPU_FAMILY
2865     #     LegalValues:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : ""
2866     #                             (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : ""
2867     #                             (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : ""
2868     #                             (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" : ""
2869     #                             "" 
2870     # option CYGHWR_HAL_ARM_CPU_FAMILY
2871     #     DefaultValue:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : 
2872     #                              (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : 
2873     #                              (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : 
2874     #                              (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" :
2875     #                              "unknown" 
2876 };
2877
2878 # The platform uses a processor with an ARM9 core
2879 #
2880 cdl_interface CYGINT_HAL_ARM_ARCH_ARM9 {
2881     # Implemented by CYGPKG_HAL_ARM_MX53, active, enabled
2882     # This value cannot be modified here.
2883     # Flavor: data
2884     # Current_value: 1
2885
2886     # The following properties are affected by this value
2887     # option CYGHWR_HAL_ARM_CPU_FAMILY
2888     #     LegalValues:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : ""
2889     #                             (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : ""
2890     #                             (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : ""
2891     #                             (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" : ""
2892     #                             "" 
2893     # option CYGHWR_HAL_ARM_CPU_FAMILY
2894     #     DefaultValue:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : 
2895     #                              (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : 
2896     #                              (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : 
2897     #                              (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" :
2898     #                              "unknown" 
2899 };
2900
2901 # The platform uses a processor with a StrongARM core
2902 #
2903 cdl_interface CYGINT_HAL_ARM_ARCH_STRONGARM {
2904     # No options implement this inferface
2905     # This value cannot be modified here.
2906     # Flavor: data
2907     # Current_value: 0
2908
2909     # The following properties are affected by this value
2910     # option CYGHWR_HAL_ARM_CPU_FAMILY
2911     #     LegalValues:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : ""
2912     #                             (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : ""
2913     #                             (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : ""
2914     #                             (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" : ""
2915     #                             "" 
2916     # option CYGHWR_HAL_ARM_CPU_FAMILY
2917     #     DefaultValue:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : 
2918     #                              (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : 
2919     #                              (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : 
2920     #                              (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" :
2921     #                              "unknown" 
2922 };
2923
2924 # The platform uses a processor with a XScale core
2925 #
2926 cdl_interface CYGINT_HAL_ARM_ARCH_XSCALE {
2927     # No options implement this inferface
2928     # This value cannot be modified here.
2929     # Flavor: data
2930     # Current_value: 0
2931
2932     # The following properties are affected by this value
2933     # option CYGHWR_HAL_ARM_CPU_FAMILY
2934     #     LegalValues:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : ""
2935     #                             (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : ""
2936     #                             (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : ""
2937     #                             (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" : ""
2938     #                             "" 
2939     # option CYGHWR_HAL_ARM_CPU_FAMILY
2940     #     DefaultValue:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : 
2941     #                              (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : 
2942     #                              (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : 
2943     #                              (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" :
2944     #                              "unknown" 
2945 };
2946
2947 # ARM CPU family
2948 # It is possible to optimize code for different
2949 # ARM CPU families. This option selects which CPU to
2950 # optimize for on boards that support multiple CPU types.
2951 #
2952 cdl_option CYGHWR_HAL_ARM_CPU_FAMILY {
2953     # Flavor: data
2954     # No user value, uncomment the following line to provide one.
2955     # user_value ARM9
2956     # value_source default
2957     # Default value:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : 
2958     #                              (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : 
2959     #                              (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : 
2960     #                              (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" :
2961     #                              "unknown" 
2962     #     CYGINT_HAL_ARM_ARCH_ARM7 == 0
2963     #     CYGINT_HAL_ARM_ARCH_ARM9 == 1
2964     #     CYGINT_HAL_ARM_ARCH_STRONGARM == 0
2965     #     CYGINT_HAL_ARM_ARCH_XSCALE == 0
2966     #   --> ARM9
2967     # Legal values:  (CYGINT_HAL_ARM_ARCH_ARM7 != 0) ? "ARM7" : ""
2968     #                             (CYGINT_HAL_ARM_ARCH_ARM9 != 0) ? "ARM9" : ""
2969     #                             (CYGINT_HAL_ARM_ARCH_STRONGARM != 0) ? "StrongARM" : ""
2970     #                             (CYGINT_HAL_ARM_ARCH_XSCALE != 0) ? "XScale" : ""
2971     #                             "" 
2972     #     CYGINT_HAL_ARM_ARCH_ARM7 == 0
2973     #     CYGINT_HAL_ARM_ARCH_ARM9 == 1
2974     #     CYGINT_HAL_ARM_ARCH_STRONGARM == 0
2975     #     CYGINT_HAL_ARM_ARCH_XSCALE == 0
2976 };
2977
2978 # Provide diagnostic dump for exceptions
2979 # Print messages about hardware exceptions, including
2980 # raw exception frame dump and register contents.
2981 #
2982 cdl_option CYGHWR_HAL_ARM_DUMP_EXCEPTIONS {
2983     # Flavor: bool
2984     # No user value, uncomment the following line to provide one.
2985     # user_value 0
2986     # value_source default
2987     # Default value: 0
2988     # Requires: !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
2989     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
2990     #   --> 1
2991 };
2992
2993 # Process all exceptions with the eCos application
2994 # Normal RAM-based programs which do not include GDB stubs 
2995 # defer processing of the illegal instruction exception to GDB.
2996 # Setting this options allows the program to explicitly handle
2997 # the illegal instruction exception itself.  Note: this will
2998 # prevent the use of GDB to debug the application as breakpoints
2999 # will no longer work.
3000 #
3001 cdl_option CYGIMP_HAL_PROCESS_ALL_EXCEPTIONS {
3002     # Flavor: bool
3003     # No user value, uncomment the following line to provide one.
3004     # user_value 0
3005     # value_source default
3006     # Default value: 0
3007 };
3008
3009 # Support GDB thread operations via ICE/Multi-ICE
3010 # Allow GDB to get thread information via the ICE/Multi-ICE
3011 # connection.
3012 #
3013 cdl_option CYGHWR_HAL_ARM_ICE_THREAD_SUPPORT {
3014     # Flavor: bool
3015     # No user value, uncomment the following line to provide one.
3016     # user_value 0
3017     # value_source default
3018     # Default value: 0
3019     # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
3020     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
3021     #   --> 0
3022     # Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
3023     #     CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1
3024     #   --> 1
3025     # Requires: CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT
3026     #     CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT (unknown) == 0
3027     #   --> 0
3028 };
3029
3030 # Support for 'gprof' callbacks
3031 # The ARM HAL provides the macro for 'gprof' callbacks from RedBoot
3032 # to acquire the interrupt-context PC and SP, when this option is
3033 # active.
3034 #
3035 cdl_option CYGOPT_HAL_ARM_SYSCALL_GPROF_SUPPORT {
3036     # This option is not active
3037     # ActiveIf constraint: CYGSEM_REDBOOT_BSP_SYSCALLS
3038     #     CYGSEM_REDBOOT_BSP_SYSCALLS == 0
3039     #   --> 0
3040     # ActiveIf constraint:  CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT || CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT 
3041     #     CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT == 0
3042     #     CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0
3043     #   --> 0
3044
3045     # Calculated value: 1
3046     # Flavor: bool
3047     # Current value: 1
3048 };
3049
3050 # Accept exceptions and irq's occurring in user mode
3051 # For standalone Redboot based programs running in user mode.
3052 #
3053 cdl_option CYGOPT_HAL_ARM_WITH_USER_MODE {
3054     # Flavor: bool
3055     # No user value, uncomment the following line to provide one.
3056     # user_value 0
3057     # value_source default
3058     # Default value: 0
3059 };
3060
3061 # Preserve svc spsr before returning to svc mode
3062 # This option secures exception and breakpoint processing
3063 # triggered during execution of application specific SWI
3064 # handlers.
3065 #
3066 cdl_option CYGOPT_HAL_ARM_PRESERVE_SVC_SPSR {
3067     # Flavor: bool
3068     # No user value, uncomment the following line to provide one.
3069     # user_value 0
3070     # value_source default
3071     # Default value: 0
3072 };
3073
3074 # Linker script
3075 #
3076 cdl_option CYGBLD_LINKER_SCRIPT {
3077     # Calculated value:  "src/arm.ld" 
3078     # Flavor: data
3079     # Current_value: src/arm.ld
3080 };
3081
3082 # Implementations of hal_arm_mem_real_region_top()
3083 #
3084 cdl_interface CYGINT_HAL_ARM_MEM_REAL_REGION_TOP {
3085     # No options implement this inferface
3086     # This value cannot be modified here.
3087     # Flavor: data
3088     # Current_value: 0
3089 };
3090
3091 # Freescale SoC architecture
3092 # This HAL variant package provides generic
3093 # support for the Freescale SoC. It is also
3094 # necessary to select a specific target platform HAL
3095 # package.
3096 #
3097 cdl_package CYGPKG_HAL_ARM_MX53 {
3098     # Packages cannot be added or removed, nor can their version be changed,
3099     # simply by editing their value. Instead the appropriate configuration
3100     # should be used to perform these actions.
3101
3102     # This value cannot be modified here.
3103     # Flavor: booldata
3104     # Current value: 1 current
3105
3106     # The following properties are affected by this value
3107     # option CYGOPT_HAL_ARM_MXC_FEC_MIIGSK
3108     #     ActiveIf: CYGPKG_HAL_ARM_MX25 || CYGPKG_HAL_ARM_MX53
3109 };
3110
3111 # >
3112 # Processor clock rate
3113 # The processor can run at various frequencies.
3114 # These values are expressed in KHz.  Note that there are
3115 # several steppings of the rate to run at different
3116 # maximum frequencies.  Check the specs to make sure that your
3117 # particular processor can run at the rate you select here.
3118 #
3119 cdl_option CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK {
3120     # This option is not active
3121     # ActiveIf constraint:  CYG_HAL_STARTUP == "ROM" 
3122     #     CYG_HAL_STARTUP == ROMRAM
3123     #   --> 0
3124
3125     # Flavor: data
3126     # No user value, uncomment the following line to provide one.
3127     # user_value 150000
3128     # value_source default
3129     # Default value:  CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT ?
3130     #                             CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT : 150000
3131     #     CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT (unknown) == 0
3132     #     CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT (unknown) == 0
3133     #   --> 150000
3134     # Legal values: 150000 200000
3135 };
3136
3137 # Real-time clock constants
3138 #
3139 cdl_component CYGNUM_HAL_RTC_CONSTANTS {
3140     # There is no associated value.
3141 };
3142
3143 # >
3144 # Real-time clock numerator
3145 #
3146 cdl_option CYGNUM_HAL_RTC_NUMERATOR {
3147     # Calculated value: 1000000000
3148     # Flavor: data
3149     # Current_value: 1000000000
3150 };
3151
3152 # Real-time clock denominator
3153 # This option selects the heartbeat rate for the real-time clock.
3154 # The rate is specified in ticks per second.  Change this value
3155 # with caution - too high and your system will become saturated
3156 # just handling clock interrupts, too low and some operations
3157 # such as thread scheduling may become sluggish.
3158 #
3159 cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
3160     # Flavor: data
3161     # No user value, uncomment the following line to provide one.
3162     # user_value 100
3163     # value_source default
3164     # Default value: 100
3165
3166     # The following properties are affected by this value
3167     # option CYGNUM_HAL_RTC_PERIOD
3168     #     Calculated: (3686400/CYGNUM_HAL_RTC_DENOMINATOR)
3169 };
3170
3171 # Real-time clock period
3172 #
3173 cdl_option CYGNUM_HAL_RTC_PERIOD {
3174     # Calculated value: (3686400/CYGNUM_HAL_RTC_DENOMINATOR)
3175     #     CYGNUM_HAL_RTC_DENOMINATOR == 100
3176     # Flavor: data
3177     # Current_value: 36864
3178 };
3179
3180 # <
3181 # UART1 available as diagnostic/debug channel
3182 # The chip has multiple serial channels which may be
3183 # used for different things on different platforms.  This
3184 # interface allows a platform to indicate that the specified
3185 # serial port can be used as a diagnostic and/or debug channel.
3186 #
3187 cdl_interface CYGHWR_HAL_ARM_SOC_UART1 {
3188     # Implemented by CYGPKG_HAL_ARM_TX53KARO, active, enabled
3189     # This value cannot be modified here.
3190     # Flavor: data
3191     # Current_value: 1
3192
3193     # The following properties are affected by this value
3194 };
3195
3196 # UART2 available as diagnostic/debug channel
3197 # The chip has multiple serial channels which may be
3198 # used for different things on different platforms.  This
3199 # interface allows a platform to indicate that the specified
3200 # serial port can be used as a diagnostic and/or debug channel.
3201 #
3202 cdl_interface CYGHWR_HAL_ARM_SOC_UART2 {
3203     # Implemented by CYGPKG_HAL_ARM_TX53KARO, active, enabled
3204     # This value cannot be modified here.
3205     # Flavor: data
3206     # Current_value: 1
3207
3208     # The following properties are affected by this value
3209 };
3210
3211 # UART3 available as diagnostic/debug channel
3212 # The chip has multiple serial channels which may be
3213 # used for different things on different platforms.  This
3214 # interface allows a platform to indicate that the specified
3215 # serial port can be used as a diagnostic and/or debug channel.
3216 #
3217 cdl_interface CYGHWR_HAL_ARM_SOC_UART3 {
3218     # Implemented by CYGPKG_HAL_ARM_TX53KARO, active, enabled
3219     # This value cannot be modified here.
3220     # Flavor: data
3221     # Current_value: 1
3222
3223     # The following properties are affected by this value
3224 };
3225
3226 # UART4 available as diagnostic/debug channel
3227 # The chip has multiple serial channels which may be
3228 # used for different things on different platforms.  This
3229 # interface allows a platform to indicate that the specified
3230 # serial port can be used as a diagnostic and/or debug channel.
3231 #
3232 cdl_interface CYGHWR_HAL_ARM_SOC_UART4 {
3233     # Implemented by CYGPKG_HAL_ARM_TX53KARO, active, enabled
3234     # This value cannot be modified here.
3235     # Flavor: data
3236     # Current_value: 1
3237
3238     # The following properties are affected by this value
3239 };
3240
3241 # UART5 available as diagnostic/debug channel
3242 # The chip has multiple serial channels which may be
3243 # used for different things on different platforms.  This
3244 # interface allows a platform to indicate that the specified
3245 # serial port can be used as a diagnostic and/or debug channel.
3246 #
3247 cdl_interface CYGHWR_HAL_ARM_SOC_UART5 {
3248     # No options implement this inferface
3249     # This value cannot be modified here.
3250     # Flavor: data
3251     # Current_value: 0
3252 };
3253
3254 # Ka-Ro TX53 module
3255 # This HAL platform package provides generic
3256 # support for the Ka-Ro electronics TX53 module.
3257 #
3258 cdl_package CYGPKG_HAL_ARM_TX53KARO {
3259     # Packages cannot be added or removed, nor can their version be changed,
3260     # simply by editing their value. Instead the appropriate configuration
3261     # should be used to perform these actions.
3262
3263     # This value cannot be modified here.
3264     # Flavor: booldata
3265     # Current value: 1 current
3266     # Requires: CYGINT_ISO_CTYPE
3267     #     CYGINT_ISO_CTYPE == 1
3268     #   --> 1
3269     # Requires: CYGBLD_BUILD_REDBOOT == 1
3270     #     CYGBLD_BUILD_REDBOOT == 1
3271     #   --> 1
3272 };
3273
3274 # >
3275 # Startup type
3276 # The only startup type allowed is ROMRAM, since this will allow
3277 # the program to exist in ROM, but be copied to RAM during startup
3278 # which is required to boot from NAND flash.
3279 #
3280 cdl_component CYG_HAL_STARTUP {
3281     # Flavor: data
3282     # No user value, uncomment the following line to provide one.
3283     # user_value ROMRAM
3284     # value_source default
3285     # Default value: ROMRAM
3286     # Legal values:  "ROMRAM" "RAM" 
3287
3288     # The following properties are affected by this value
3289     # option CYGSEM_HAL_ROM_MONITOR
3290     #     Requires:  CYG_HAL_STARTUP == "ROM" || CYG_HAL_STARTUP == "ROMRAM" 
3291     # option CYGSEM_HAL_ROM_MONITOR
3292     #     Requires:  CYG_HAL_STARTUP == "ROM" || CYG_HAL_STARTUP == "ROMRAM" 
3293     # option CYGSEM_HAL_USE_ROM_MONITOR
3294     #     DefaultValue:  CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 
3295     # option CYGSEM_HAL_USE_ROM_MONITOR
3296     #     Requires:  CYG_HAL_STARTUP == "RAM" 
3297     # option CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK
3298     #     ActiveIf:  CYG_HAL_STARTUP == "ROM" 
3299     # option CYGSEM_HAL_INSTALL_MMU_TABLES
3300     #     DefaultValue:  CYG_HAL_STARTUP != "RAM" 
3301     # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
3302     #     DefaultValue:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0
3303     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
3304     #     DefaultValue:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR 
3305     # option CYGBLD_BUILD_REDBOOT_WITH_THREADS
3306     #     ActiveIf:  CYG_HAL_STARTUP != "RAM" 
3307     # option CYGPRI_REDBOOT_ROM_MONITOR
3308     #     ActiveIf:  CYG_HAL_STARTUP == "ROM" ||  CYG_HAL_STARTUP == "ROMRAM" 
3309     # option CYGPRI_REDBOOT_ROM_MONITOR
3310     #     ActiveIf:  CYG_HAL_STARTUP == "ROM" ||  CYG_HAL_STARTUP == "ROMRAM" 
3311 };
3312
3313 # Diagnostic serial port baud rate
3314 # This option selects the baud rate used for the console port.
3315 # Note: this should match the value chosen for the GDB port if the
3316 # console and GDB port are the same.
3317 #
3318 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD {
3319     # Flavor: data
3320     # No user value, uncomment the following line to provide one.
3321     # user_value 115200
3322     # value_source default
3323     # Default value: 115200
3324     # Legal values: 9600 19200 38400 57600 115200
3325 };
3326
3327 # GDB serial port baud rate
3328 # This option selects the baud rate used for the GDB port.
3329 # Note: this should match the value chosen for the console port if the
3330 # console and GDB port are the same.
3331 #
3332 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_BAUD {
3333     # Flavor: data
3334     # No user value, uncomment the following line to provide one.
3335     # user_value 115200
3336     # value_source default
3337     # Default value: 115200
3338     # Legal values: 9600 19200 38400 57600 115200
3339 };
3340
3341 # Number of communication channels on the TX53
3342 #
3343 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS {
3344     # Calculated value: 5
3345     # Flavor: data
3346     # Current_value: 5
3347
3348     # The following properties are affected by this value
3349     # option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL
3350     #     LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
3351     # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT
3352     #     LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
3353     # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL
3354     #     LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
3355 };
3356
3357 # Debug serial port
3358 # The TX53 provides access to five serial ports. This option
3359 # chooses which port will be used to connect to a host
3360 # running GDB.
3361 #
3362 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL {
3363     # ActiveIf constraint: CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
3364     #     CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE == 1
3365     #   --> 1
3366
3367     # Flavor: data
3368     # No user value, uncomment the following line to provide one.
3369     # user_value 0
3370     # value_source default
3371     # Default value: 0
3372     # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
3373     #     CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 5
3374 };
3375
3376 # Default console channel.
3377 #
3378 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT {
3379     # Calculated value: 0
3380     # Flavor: data
3381     # Current_value: 0
3382     # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
3383     #     CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 5
3384
3385     # The following properties are affected by this value
3386     # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL
3387     #     DefaultValue: CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT
3388 };
3389
3390 # Console serial port
3391 # The TX53 provides access to three serial ports. This option
3392 # chooses which port will be used for console output.
3393 #
3394 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL {
3395     # ActiveIf constraint: CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
3396     #     CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE == 1
3397     #   --> 1
3398
3399     # Flavor: data
3400     # No user value, uncomment the following line to provide one.
3401     # user_value 0
3402     # value_source default
3403     # Default value: CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT
3404     #     CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT == 0
3405     #   --> 0
3406     # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
3407     #     CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 5
3408 };
3409
3410 # Ka-Ro electronics TX53 module build options
3411 # Package specific build options including control over
3412 # compiler flags used only in building this package,
3413 # and details of which tests are built.
3414 #
3415 cdl_component CYGPKG_HAL_ARM_TX53_OPTIONS {
3416     # There is no associated value.
3417     # Requires:  CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0 
3418     #     CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0
3419     #   --> 1
3420 };
3421
3422 # >
3423 # SDRAM size
3424 # This option specifies the SDRAM size of the TX53 module.
3425 #
3426 cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_SIZE {
3427     # Flavor: data
3428     # No user value, uncomment the following line to provide one.
3429     # user_value 0x20000000
3430     # value_source default
3431     # Default value: 0x20000000
3432     # Legal values:  0x40000000 0x20000000 
3433 };
3434
3435 # SDRAM clock
3436 # This option specifies the SDRAM clock im MHz of the TX53 module.
3437 #
3438 cdl_option CYGNUM_HAL_ARM_TX53_SDRAM_CLK {
3439     # Flavor: data
3440     user_value 333
3441     # value_source user
3442     # Default value: 400
3443     # Legal values:  216 266 333 400 
3444 };
3445
3446 # CPU clock
3447 # This option specifies the CPU clock in MHz of the TX51 module.
3448 #
3449 cdl_option CYGNUM_HAL_ARM_TX53_CPU_CLK {
3450     # Flavor: data
3451     # No user value, uncomment the following line to provide one.
3452     # user_value 1000
3453     # value_source default
3454     # Default value: 1000
3455     # Legal values:  800 1000 
3456 };
3457
3458 # Enable low level debugging with LED
3459 # This option enables low level debugging by blink codes
3460 # of the LED on STK5.
3461 #
3462 cdl_option CYGOPT_HAL_ARM_TX53_DEBUG {
3463     # Flavor: bool
3464     # No user value, uncomment the following line to provide one.
3465     # user_value 0
3466     # value_source default
3467     # Default value:  false 
3468     #     false (unknown) == 0
3469     #   --> 0
3470 };
3471
3472 # Additional compiler flags
3473 # This option modifies the set of compiler flags for
3474 # building the TX53 HAL. These flags are used in addition
3475 # to the set of global flags.
3476 #
3477 cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_ADD {
3478     # Flavor: data
3479     # No user value, uncomment the following line to provide one.
3480     # user_value ""
3481     # value_source default
3482     # Default value: ""
3483 };
3484
3485 # Suppressed compiler flags
3486 # This option modifies the set of compiler flags for
3487 # building the TX53 HAL. These flags are removed from
3488 # the set of global flags if present.
3489 #
3490 cdl_option CYGPKG_HAL_ARM_TX53_CFLAGS_REMOVE {
3491     # Flavor: data
3492     # No user value, uncomment the following line to provide one.
3493     # user_value ""
3494     # value_source default
3495     # Default value: ""
3496 };
3497
3498 # Show a splash screen from the FIS partition: 'logo'
3499 # When this option is enabled, RedBoot will look for a flash partition
3500 # named 'logo' and display the contents of this partition as initial
3501 # screen on the LCD
3502 #
3503 cdl_option CYGHWR_MX53_LCD_LOGO {
3504     # ActiveIf constraint:  CYGPKG_DEVS_IMX_IPU 
3505     #     CYGPKG_DEVS_IMX_IPU == current
3506     #   --> 1
3507
3508     # Flavor: bool
3509     # No user value, uncomment the following line to provide one.
3510     # user_value 0
3511     # value_source default
3512     # Default value: 0
3513 };
3514
3515 # <
3516 # Memory layout
3517 #
3518 cdl_component CYGHWR_MEMORY_LAYOUT {
3519     # Calculated value:  "arm_tx53_romram" 
3520     # Flavor: data
3521     # Current_value: arm_tx53_romram
3522 };
3523
3524 # >
3525 # Memory layout linker script fragment
3526 #
3527 cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
3528     # Calculated value:  "<pkgconf/mlt_arm_tx53_romram.ldi>" 
3529     # Flavor: data
3530     # Current_value: <pkgconf/mlt_arm_tx53_romram.ldi>
3531 };
3532
3533 # Memory layout header file
3534 #
3535 cdl_option CYGHWR_MEMORY_LAYOUT_H {
3536     # Calculated value:  "<pkgconf/mlt_arm_tx53_romram.h>" 
3537     # Flavor: data
3538     # Current_value: <pkgconf/mlt_arm_tx53_romram.h>
3539 };
3540
3541 # <
3542 # <
3543 # <
3544 # <
3545 # <
3546 # Infrastructure
3547 # Common types and useful macros.
3548 # Tracing and assertion facilities.
3549 # Package startup options.
3550 #
3551 cdl_package CYGPKG_INFRA {
3552     # Packages cannot be added or removed, nor can their version be changed,
3553     # simply by editing their value. Instead the appropriate configuration
3554     # should be used to perform these actions.
3555
3556     # This value cannot be modified here.
3557     # Flavor: booldata
3558     # Current value: 1 current
3559
3560     # The following properties are affected by this value
3561     # package CYGPKG_HAL
3562     #     Requires: CYGPKG_INFRA
3563     # component CYGBLD_BUILD_REDBOOT
3564     #     Requires: CYGPKG_INFRA
3565 };
3566
3567 # >
3568 # Asserts & Tracing
3569 # The eCos source code contains a significant amount of
3570 # internal debugging support, in the form of assertions and
3571 # tracing.
3572 # Assertions check at runtime that various conditions are as
3573 # expected; if not, execution is halted.
3574 # Tracing takes the form of text messages that are output
3575 # whenever certain events occur, or whenever functions are
3576 # called or return.
3577 # The most important property of these checks and messages is
3578 # that they are not required for the program to run.
3579 # It is prudent to develop software with assertions enabled,
3580 # but disable them when making a product release, thus
3581 # removing the overhead of that checking.
3582 # It is possible to enable assertions and tracing
3583 # independently.
3584 # There are also options controlling the exact behaviour of
3585 # the assertion and tracing facilities, thus giving users
3586 # finer control over the code and data size requirements.
3587 #
3588 cdl_component CYGPKG_INFRA_DEBUG {
3589     # Flavor: bool
3590     # No user value, uncomment the following line to provide one.
3591     # user_value 0
3592     # value_source default
3593     # Default value: 0
3594
3595     # The following properties are affected by this value
3596     # option CYGNUM_INFRA_EMPTY_DELETE_THRESHOLD
3597     #     ActiveIf: CYGPKG_INFRA_DEBUG
3598 };
3599
3600 # >
3601 # Use asserts
3602 # If this option is defined, asserts in the code are tested.
3603 # Assert functions (CYG_ASSERT()) are defined in
3604 # 'include/cyg/infra/cyg_ass.h' within the 'install' tree.
3605 # If it is not defined, these result in no additional
3606 # object code and no checking of the asserted conditions.
3607 #
3608 cdl_component CYGDBG_USE_ASSERTS {
3609     # This option is not active
3610     # The parent CYGPKG_INFRA_DEBUG is disabled
3611
3612     # Flavor: bool
3613     # No user value, uncomment the following line to provide one.
3614     # user_value 1
3615     # value_source default
3616     # Default value: 1
3617     # Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL 
3618     #     CYGINT_INFRA_DEBUG_TRACE_IMPL == 0
3619     #   --> 0
3620
3621     # The following properties are affected by this value
3622     # option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG
3623     #     Requires: CYGDBG_USE_ASSERTS
3624     # option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG
3625     #     DefaultValue:  0 != CYGDBG_USE_ASSERTS 
3626 };
3627
3628 # >
3629 # Preconditions
3630 # This option allows individual control of preconditions.
3631 # A precondition is one type of assert, which it is
3632 # useful to control separately from more general asserts.
3633 # The function is CYG_PRECONDITION(condition,msg).
3634 #
3635 cdl_option CYGDBG_INFRA_DEBUG_PRECONDITIONS {
3636     # This option is not active
3637     # The parent CYGDBG_USE_ASSERTS is not active
3638
3639     # Flavor: bool
3640     # No user value, uncomment the following line to provide one.
3641     # user_value 1
3642     # value_source default
3643     # Default value: 1
3644 };
3645
3646 # Postconditions
3647 # This option allows individual control of postconditions.
3648 # A postcondition is one type of assert, which it is
3649 # useful to control separately from more general asserts.
3650 # The function is CYG_POSTCONDITION(condition,msg).
3651 #
3652 cdl_option CYGDBG_INFRA_DEBUG_POSTCONDITIONS {
3653     # This option is not active
3654     # The parent CYGDBG_USE_ASSERTS is not active
3655
3656     # Flavor: bool
3657     # No user value, uncomment the following line to provide one.
3658     # user_value 1
3659     # value_source default
3660     # Default value: 1
3661 };
3662
3663 # Loop invariants
3664 # This option allows individual control of loop invariants.
3665 # A loop invariant is one type of assert, which it is
3666 # useful to control separately from more general asserts,
3667 # particularly since a loop invariant is typically evaluated
3668 # a great many times when used correctly.
3669 # The function is CYG_LOOP_INVARIANT(condition,msg).
3670 #
3671 cdl_option CYGDBG_INFRA_DEBUG_LOOP_INVARIANTS {
3672     # This option is not active
3673     # The parent CYGDBG_USE_ASSERTS is not active
3674
3675     # Flavor: bool
3676     # No user value, uncomment the following line to provide one.
3677     # user_value 1
3678     # value_source default
3679     # Default value: 1
3680 };
3681
3682 # Use assert text
3683 # All assertions within eCos contain a text message
3684 # which should give some information about the condition
3685 # being tested.
3686 # These text messages will end up being embedded in the
3687 # application image and hence there is a significant penalty
3688 # in terms of image size.
3689 # It is possible to suppress the use of these messages by
3690 # disabling this option.
3691 # This results in smaller code size, but there is less
3692 # human-readable information if an assertion actually gets
3693 # triggered.
3694 #
3695 cdl_option CYGDBG_INFRA_DEBUG_ASSERT_MESSAGE {
3696     # This option is not active
3697     # The parent CYGDBG_USE_ASSERTS is not active
3698
3699     # Flavor: bool