public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* RE: [ECOS] build redboot from the source code
@ 2001-09-07  6:40 Warren Jasper
  2001-09-07  9:18 ` Nathan J Ickes
  0 siblings, 1 reply; 8+ messages in thread
From: Warren Jasper @ 2001-09-07  6:40 UTC (permalink / raw)
  To: eCos Discussion

I'm trying to get Redboot to run on a board running the Intel StrongARM
SA1110.
The HAL appears to be working great, and I have a working gdb stubs.  I did
the following:

  % ecosconfig new travis redboot
  % ecosconfig import
${ECOS_REPOSITORY}/hal/arm/sa11x0/travis/current/misc/redboot_ROM.ecm
  % ecosconfig tree
  % make


There were no errors and the build went fine.  I flashed the image
redboot.bin into FLASH and rebooted.  I then launched minicom.
The default baud rate in my hal is 115200, and minicom was set to
115200 8N1.

I get the message:

RedBoo

and nothing else.  Can someone shed some light on what I am doing wrong?

By the way, the travis board looks a lot like the Brutus board, and I copied
heavily
from that port.  Is there something in the redboot_ROM.ecm that I need to
change?  Here
is what it looks like:

cdl_savefile_version 1;
cdl_savefile_command cdl_savefile_version {};
cdl_savefile_command cdl_savefile_command {};
cdl_savefile_command cdl_configuration { description hardware template
package };
cdl_savefile_command cdl_package { value_source user_value wizard_value
inferred_value };
cdl_savefile_command cdl_component { value_source user_value wizard_value
inferred_value };
cdl_savefile_command cdl_option { value_source user_value wizard_value
inferred_value };
cdl_savefile_command cdl_interface { value_source user_value wizard_value
inferred_value };

cdl_configuration eCos {
    description "" ;
    hardware    travis ;
    template    redboot ;
    package -hardware CYGPKG_HAL_ARM current ;
    package -hardware CYGPKG_HAL_ARM_SA11X0 current ;
    package -hardware CYGPKG_HAL_ARM_SA11X0_TRAVIS current ;
    package -hardware CYGPKG_IO_SERIAL_ARM_SA11X0 current ;
    package -template CYGPKG_HAL current ;
    package -template CYGPKG_INFRA current ;
    package -template CYGPKG_REDBOOT current ;
};

cdl_option CYGBLD_BUILD_GDB_STUBS {
    user_value 0
};

cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT {
    user_value 0
};

cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM {
    inferred_value 0
};

cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS {
    inferred_value 1
};

cdl_option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT {
    inferred_value 1
};

cdl_option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT {
    inferred_value 0
};

cdl_option CYGSEM_HAL_ROM_MONITOR {
    user_value 1
};

cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
    inferred_value 0 0
};

cdl_component CYG_HAL_STARTUP {
    user_value ROM
};

cdl_option CYGBLD_BUILD_REDBOOT {
    user_value 1
};

cdl_option CYGSEM_REDBOOT_BSP_SYSCALLS {
  inferred_value 1
};


Thanks,

Warren

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ECOS] build redboot from the source code
  2001-09-07  6:40 [ECOS] build redboot from the source code Warren Jasper
@ 2001-09-07  9:18 ` Nathan J Ickes
  2001-09-09 15:32   ` Gary Thomas
  0 siblings, 1 reply; 8+ messages in thread
From: Nathan J Ickes @ 2001-09-07  9:18 UTC (permalink / raw)
  To: ecos-discuss

> I'm trying to get Redboot to run on a board running the Intel StrongARM
> SA1110.

<snip>

> I get the message:
> 
> RedBoo
> 
> and nothing else.  Can someone shed some light on what I am doing wrong?

I had this problem too, on a custom SA1110 board (see msg00384 in the
archives). In my case, the HAL was apparently hanging while trying to
write to additional serial ports. After poking around the HAL serial
driver for a while, I eventually just tried removing HAL support for
ports that I didn't need, and this fixed the problem. Then I never
bothered to go back and figure out what was really going wrong :)
Eventually, the problem seemed to fix itself (I now have RedBoot
working on two serial ports), possibly when I updated my source
tree. I assume, since you're porting to a new board, you have recently
checked out the source tree, though.

Hopefully, that helps direct your search. When you do figure this out,
I'd be interested in hearing what the cause was.

-- Nathan Ickes

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ECOS] build redboot from the source code
  2001-09-07  9:18 ` Nathan J Ickes
@ 2001-09-09 15:32   ` Gary Thomas
  0 siblings, 0 replies; 8+ messages in thread
From: Gary Thomas @ 2001-09-09 15:32 UTC (permalink / raw)
  To: Nathan J Ickes; +Cc: eCos Discussion

On Sat, 2001-09-08 at 01:18, Nathan J Ickes wrote:
> > I'm trying to get Redboot to run on a board running the Intel StrongARM
> > SA1110.
> 
> <snip>
> 
> > I get the message:
> > 
> > RedBoo
> > 
> > and nothing else.  Can someone shed some light on what I am doing wrong?
> 
> I had this problem too, on a custom SA1110 board (see msg00384 in the
> archives). In my case, the HAL was apparently hanging while trying to
> write to additional serial ports. After poking around the HAL serial
> driver for a while, I eventually just tried removing HAL support for
> ports that I didn't need, and this fixed the problem. Then I never
> bothered to go back and figure out what was really going wrong :)
> Eventually, the problem seemed to fix itself (I now have RedBoot
> working on two serial ports), possibly when I updated my source
> tree. I assume, since you're porting to a new board, you have recently
> checked out the source tree, though.
> 
> Hopefully, that helps direct your search. When you do figure this out,
> I'd be interested in hearing what the cause was.
> 
> -- Nathan Ickes

This explanation makes perfect sense, thanks.  RedBoot will try and 
print all messages on _all_ available ports by default.  You have a lot
of choice in the configuration on the SA11x0, but be sure that it 
matches your actual hardware.  Look at the differences between the iPAQ
and Brutus board ports - they support different sets of serial devices -
for guidance.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: [ECOS] build redboot from the source code
  2001-09-10 10:11 Warren Jasper
@ 2001-09-10 17:24 ` Gary Thomas
  0 siblings, 0 replies; 8+ messages in thread
From: Gary Thomas @ 2001-09-10 17:24 UTC (permalink / raw)
  To: Warren Jasper; +Cc: 'ecos-discuss@sources.redhat.com'

On Tue, 2001-09-11 at 02:11, Warren Jasper wrote:
> Thanks for the suggestions.  I'm getting closer.  The problem lies in
> printf.  If
> I use diag_printf() in the redboot function do_version, I at least get past
> that
> function before the system locks up.  
> 
> Question:
> 1. Does the default serial settings assume hardware handshaking?  My
> hardware is
> set up as follows (no hardware handshaking):
> 
> DSR <---> DTR
> CTS <---> RTS
> 
> 2. Does the redboot default serial settings use interrupts?  Maybe the
> interrupt stack
> is not set up correctly?
> 
> Any suggestions would be appreciated.
> By the way, I have never experienced any problems with printf() in my
> application code,
> so I'm not sure what would be different in RedBoot.
> 

The difference between 'printf' and 'diag_printf' is that 'diag_printf'
will only try and print on a single device, whereas 'printf' will try
and print on all confifgured devices.

Either de-configure all but the one device or turn off the switch that
tells RedBoot to use all consoles (CYGPKG_REDBOOT_ANY_CONSOLE)

> Warren
> 
> -----Original Message-----
> From: Gary Thomas [ mailto:gthomas@redhat.com ]
> Sent: Sunday, September 09, 2001 6:30 PM
> To: Nathan J Ickes
> Cc: eCos Discussion
> Subject: Re: [ECOS] build redboot from the source code
> 
> 
> On Sat, 2001-09-08 at 01:18, Nathan J Ickes wrote:
> > > I'm trying to get Redboot to run on a board running the Intel StrongARM
> > > SA1110.
> > 
> > <snip>
> > 
> > > I get the message:
> > > 
> > > RedBoo
> > > 
> > > and nothing else.  Can someone shed some light on what I am doing wrong?
> > 
> > I had this problem too, on a custom SA1110 board (see msg00384 in the
> > archives). In my case, the HAL was apparently hanging while trying to
> > write to additional serial ports. After poking around the HAL serial
> > driver for a while, I eventually just tried removing HAL support for
> > ports that I didn't need, and this fixed the problem. Then I never
> > bothered to go back and figure out what was really going wrong :)
> > Eventually, the problem seemed to fix itself (I now have RedBoot
> > working on two serial ports), possibly when I updated my source
> > tree. I assume, since you're porting to a new board, you have recently
> > checked out the source tree, though.
> > 
> > Hopefully, that helps direct your search. When you do figure this out,
> > I'd be interested in hearing what the cause was.
> > 
> > -- Nathan Ickes
> 
> This explanation makes perfect sense, thanks.  RedBoot will try and 
> print all messages on _all_ available ports by default.  You have a lot
> of choice in the configuration on the SA11x0, but be sure that it 
> matches your actual hardware.  Look at the differences between the iPAQ
> and Brutus board ports - they support different sets of serial devices -
> for guidance.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: [ECOS] build redboot from the source code
@ 2001-09-10 10:11 Warren Jasper
  2001-09-10 17:24 ` Gary Thomas
  0 siblings, 1 reply; 8+ messages in thread
From: Warren Jasper @ 2001-09-10 10:11 UTC (permalink / raw)
  To: 'Gary Thomas'; +Cc: 'ecos-discuss@sources.redhat.com'

Thanks for the suggestions.  I'm getting closer.  The problem lies in
printf.  If
I use diag_printf() in the redboot function do_version, I at least get past
that
function before the system locks up.  

Question:
1. Does the default serial settings assume hardware handshaking?  My
hardware is
set up as follows (no hardware handshaking):

DSR <---> DTR
CTS <---> RTS

2. Does the redboot default serial settings use interrupts?  Maybe the
interrupt stack
is not set up correctly?

Any suggestions would be appreciated.
By the way, I have never experienced any problems with printf() in my
application code,
so I'm not sure what would be different in RedBoot.

Warren

-----Original Message-----
From: Gary Thomas [ mailto:gthomas@redhat.com ]
Sent: Sunday, September 09, 2001 6:30 PM
To: Nathan J Ickes
Cc: eCos Discussion
Subject: Re: [ECOS] build redboot from the source code


On Sat, 2001-09-08 at 01:18, Nathan J Ickes wrote:
> > I'm trying to get Redboot to run on a board running the Intel StrongARM
> > SA1110.
> 
> <snip>
> 
> > I get the message:
> > 
> > RedBoo
> > 
> > and nothing else.  Can someone shed some light on what I am doing wrong?
> 
> I had this problem too, on a custom SA1110 board (see msg00384 in the
> archives). In my case, the HAL was apparently hanging while trying to
> write to additional serial ports. After poking around the HAL serial
> driver for a while, I eventually just tried removing HAL support for
> ports that I didn't need, and this fixed the problem. Then I never
> bothered to go back and figure out what was really going wrong :)
> Eventually, the problem seemed to fix itself (I now have RedBoot
> working on two serial ports), possibly when I updated my source
> tree. I assume, since you're porting to a new board, you have recently
> checked out the source tree, though.
> 
> Hopefully, that helps direct your search. When you do figure this out,
> I'd be interested in hearing what the cause was.
> 
> -- Nathan Ickes

This explanation makes perfect sense, thanks.  RedBoot will try and 
print all messages on _all_ available ports by default.  You have a lot
of choice in the configuration on the SA11x0, but be sure that it 
matches your actual hardware.  Look at the differences between the iPAQ
and Brutus board ports - they support different sets of serial devices -
for guidance.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ECOS] build redboot from the source code
@ 2001-09-10  8:30 Warren Jasper
  0 siblings, 0 replies; 8+ messages in thread
From: Warren Jasper @ 2001-09-10  8:30 UTC (permalink / raw)
  To: 'ecos-discuss@sources.redhat.com'

I'm still not there.  Maybe this will help.  In the SA-1110 Developer's
Manual page 11-2

Serial Port0    Serial Port1   Serial Port2  Serial Port3  Serial Port 4
   UCD            GPCLK/UART       IPC            UART         MCP/SSP


Is it correct to assume that what eCos calles Serial Port 0 on UART 3 is
what Intel is describing as Serial Port 3 using signals TXD3 and RXD3?

For my board, I only have 1 DB9 connector.  The lines TXD1, TXD2 and TXD3
are tied
together, as are RXD1, RXD2, and RXD3.  I could see if redboot was going
down and
trying to read/write through all the IO ports that I could have problems, as
described
below by Nathan and Gary.

I compiled redboot and loaded it into the beginning of Flash using a Linux
version of
JFlash.  When I reboot the ARM, I get

<space><CR>
Redboo

Under minicom. If I change the baud rate to 38400 and reboot I see

<space> C.

Any help or suggetions are where to go from here would be appreciated.  I am

including the ecos.ecc file I used to compile redboot.

# eCos saved configuration

# ---- commands --------------------------------------------------------
# This section contains information about the savefile format.
# It should not be edited. Any modifications made to this section
# may make it impossible for the configuration tools to read
# the savefile.

cdl_savefile_version 1;
cdl_savefile_command cdl_savefile_version {};
cdl_savefile_command cdl_savefile_command {};
cdl_savefile_command cdl_configuration { description hardware template
package };
cdl_savefile_command cdl_package { value_source user_value wizard_value
inferred_value };
cdl_savefile_command cdl_component { value_source user_value wizard_value
inferred_value };
cdl_savefile_command cdl_option { value_source user_value wizard_value
inferred_value };
cdl_savefile_command cdl_interface { value_source user_value wizard_value
inferred_value };

# ---- toplevel --------------------------------------------------------
# This section defines the toplevel configuration object. The only
# values that can be changed are the name of the configuration and
# the description field. It is not possible to modify the target,
# the template or the set of packages simply by editing the lines
# below because these changes have wide-ranging effects. Instead
# the appropriate tools should be used to make such modifications.

cdl_configuration eCos {
    description "" ;

    # These fields should not be modified.
    hardware    travis ;
    template    redboot ;
    package -hardware CYGPKG_HAL_ARM current ;
    package -hardware CYGPKG_HAL_ARM_SA11X0 current ;
    package -hardware CYGPKG_HAL_ARM_SA11X0_TRAVIS current ;
    package -hardware CYGPKG_IO_SERIAL_ARM_SA11X0 current ;
    package -template CYGPKG_HAL current ;
    package -template CYGPKG_INFRA current ;
    package -template CYGPKG_REDBOOT current ;
};

# ---- conflicts -------------------------------------------------------
# There are no conflicts.

# ---- contents --------------------------------------------------------
# >
# >
# Global build options
# Global build options including control over
# compiler flags, linker flags and choice of toolchain.
#
cdl_component CYGBLD_GLOBAL_OPTIONS {
    # There is no associated value.

    # The following properties are affected by this value
};

# >
# Global command prefix
# This option specifies the command prefix used when
# invoking the build tools.
#
cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value arm-elf
    # value_source default
    # Default value: arm-elf
};

# Global compiler flags
# This option controls the global compiler flags which are used to
# compile all packages by default. Individual packages may define
# options which override these global flags.
#
cdl_option CYGBLD_GLOBAL_CFLAGS {
    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value "-mcpu=strongarm1100 -Wall -Wpointer-arith
-Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2
-ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc
-finit-priority"
    # value_source default
    # Default value: "-mcpu=strongarm1100 -Wall -Wpointer-arith
-Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2
-ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc
-finit-priority"
};

# Global linker flags
# This option controls the global linker flags. Individual
# packages may define options which override these global flags.
#
cdl_option CYGBLD_GLOBAL_LDFLAGS {
    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value "-Wl,--gc-sections -Wl,-static -g -O2 -nostdlib"
    # value_source default
    # Default value: "-Wl,--gc-sections -Wl,-static -g -O2 -nostdlib"
};

# Build GDB stub ROM image
# This option enables the building of the GDB stubs for the
# board. The common HAL controls takes care of most of the
# build process, but the final conversion from ELF image to
# binary data is handled by the platform CDL, allowing
# relocation of the data if necessary.
#
cdl_option CYGBLD_BUILD_GDB_STUBS {
    # Flavor: bool
    user_value 0
    # value_source user
    # Default value: 0
    # Requires:  CYG_HAL_STARTUP == "ROM" 
    #     CYG_HAL_STARTUP == ROM
    #   --> 1
    # Requires: CYGSEM_HAL_ROM_MONITOR
    #     CYGSEM_HAL_ROM_MONITOR == 1
    #   --> 1
    # Requires: CYGBLD_BUILD_COMMON_GDB_STUBS
    #     CYGBLD_BUILD_COMMON_GDB_STUBS == 0
    #   --> 0
    # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 1
    #   --> 1
    # Requires: CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
    #     CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 1
    #   --> 1
    # Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
    #     CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1
    #   --> 1
    # Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
    #     CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT == 0
    #   --> 1
    # Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
    #     CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM == 0
    #   --> 1
};

# Build common GDB stub ROM image
# Unless a target board has specific requirements to the
# stub implementation, it can use a simple common stub.
# This option, which gets enabled by platform HALs as
# appropriate, controls the building of the common stub.
#
cdl_option CYGBLD_BUILD_COMMON_GDB_STUBS {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # value_source default
    # Default value: 0
    # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 1
    #   --> 1

    # The following properties are affected by this value
    # option CYGBLD_BUILD_GDB_STUBS
    #     Requires: CYGBLD_BUILD_COMMON_GDB_STUBS
};

# <
# ARM SA11X0 serial device drivers
# doc: redirect/ecos-device-drivers.html
# This option enables the serial device drivers for the
# StrongARM SA11X0.
#
cdl_package CYGPKG_IO_SERIAL_ARM_SA11X0 {
    # Packages cannot be added or removed, nor can their version be changed,
    # simply by editing their value. Instead the appropriate configuration
    # should be used to perform these actions.

    # This option is not active
    # ActiveIf constraint: CYGPKG_IO_SERIAL
    #     CYGPKG_IO_SERIAL (unknown) == 0
    #   --> 0
    # ActiveIf constraint: CYGPKG_HAL_ARM_SA11X0
    #     CYGPKG_HAL_ARM_SA11X0 == current
    #   --> 1

    # This value cannot be modified here.
    # Flavor: booldata
    # Current value: 1 current
    # Requires: CYGPKG_ERROR
    #     CYGPKG_ERROR (unknown) == 0
    #   --> 0
};

# >
# ARM SA11X0 serial port 0 driver
# This option includes the serial device driver for the ARM SA11X0 
# port 0 (UART 3).
#
cdl_component CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL0 {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0 is not active

    # Flavor: bool
    user_value 1
    # value_source user
    # Default value: 0
};

# >
# Device name for ARM SA11X0 serial port 0 driver
# This option specifies the name of the serial device for the 
# ARM SA11X0 port 0.
#
cdl_option CYGDAT_IO_SERIAL_ARM_SA11X0_SERIAL0_NAME {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL0 is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value "\"/dev/ser0\""
    # value_source default
    # Default value: "\"/dev/ser0\""
};

# Baud rate for the ARM SA11X0 serial port 0 driver
# This option specifies the default baud rate (speed) for the 
# ARM SA11X0 port 0.
#
cdl_option CYGNUM_IO_SERIAL_ARM_SA11X0_SERIAL0_BAUD {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL0 is not active

    # Flavor: data
    user_value 115200
    # value_source user
    # Default value: 38400
    # Legal values:  50 75 110 "134_5" 150 200 300 600 1200 1800 2400 3600
    #                           4800 7200 9600 14400 19200 38400 57600
115200 234000
    #             
};

# Buffer size for the ARM SA11X0 serial port 0 driver
# This option specifies the size of the internal buffers used 
# for the ARM SA11X0 port 0.
#
cdl_option CYGNUM_IO_SERIAL_ARM_SA11X0_SERIAL0_BUFSIZE {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL0 is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 128
    # value_source default
    # Default value: 128
    # Legal values: 0 to 8192
};

# <
# ARM SA11X0 serial port 1 driver
# This option includes the serial device driver for the ARM SA11X0 
# port 1 (UART 1).
#
cdl_component CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL1 {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0 is not active

    # Flavor: bool
    user_value 0
    # value_source user
    # Default value: 1

    # The following properties are affected by this value
    # component CYGPKG_IO_SERIAL_ARM_SA11X0_TESTING
    #     ActiveIf: CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL1
};

# >
# Device name for ARM SA11X0 serial port 1 driver
# This option specifies the name of the serial device for the 
# ARM SA11X0 port 1.
#
cdl_option CYGDAT_IO_SERIAL_ARM_SA11X0_SERIAL1_NAME {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL1 is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL1 is disabled

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value "\"/dev/ser1\""
    # value_source default
    # Default value: "\"/dev/ser1\""

    # The following properties are affected by this value
    # option CYGPRI_SER_TEST_SER_DEV
    #     DefaultValue:  CYGDAT_IO_SERIAL_ARM_SA11X0_SERIAL1_NAME 
};

# Baud rate for the ARM SA11X0 serial port 1 driver
# This option specifies the default baud rate (speed) for the
# ARM SA11X0 port 1.
#
cdl_option CYGNUM_IO_SERIAL_ARM_SA11X0_SERIAL1_BAUD {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL1 is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL1 is disabled

    # Flavor: data
    user_value 115200
    # value_source user
    # Default value: 38400
    # Legal values:  50 75 110 "134_5" 150 200 300 600 1200 1800 2400 3600
    #                           4800 7200 9600 14400 19200 38400 57600
115200 234000
    #             
};

# Buffer size for the ARM SA11X0 serial port 1 driver
# This option specifies the size of the internal buffers used 
# for the ARM SA11X0 port 1.
#
cdl_option CYGNUM_IO_SERIAL_ARM_SA11X0_SERIAL1_BUFSIZE {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL1 is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL1 is disabled

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 128
    # value_source default
    # Default value: 128
    # Legal values: 0 to 8192
};

# <
# Serial device driver build options
# Package specific build options including control over
# compiler flags used only in building this package,
# and details of which tests are built.
#
cdl_component CYGPKG_IO_SERIAL_ARM_SA11X0_OPTIONS {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0 is not active

    # There is no associated value.
};

# >
# Additional compiler flags
# This option modifies the set of compiler flags for
# building these serial device drivers. These flags are used in addition
# to the set of global flags.
#
cdl_option CYGPKG_IO_SERIAL_ARM_SA11X0_CFLAGS_ADD {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_OPTIONS is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value ""
    # value_source default
    # Default value: ""
};

# Suppressed compiler flags
# This option modifies the set of compiler flags for
# building these serial device drivers. These flags are removed from
# the set of global flags if present.
#
cdl_option CYGPKG_IO_SERIAL_ARM_SA11X0_CFLAGS_REMOVE {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_OPTIONS is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value ""
    # value_source default
    # Default value: ""
};

# <
# Testing parameters
#
cdl_component CYGPKG_IO_SERIAL_ARM_SA11X0_TESTING {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0 is not active
    # ActiveIf constraint: CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL1
    #     CYGPKG_IO_SERIAL_ARM_SA11X0_SERIAL1 == 0
    #   --> 0

    # Calculated value: 1
    # Flavor: bool
    # Current value: 1
};

# >
# Serial device used for testing
#
cdl_option CYGPRI_SER_TEST_SER_DEV {
    # This option is not active
    # The parent CYGPKG_IO_SERIAL_ARM_SA11X0_TESTING is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # value_source default
    # Default value:  CYGDAT_IO_SERIAL_ARM_SA11X0_SERIAL1_NAME 
    #     CYGDAT_IO_SERIAL_ARM_SA11X0_SERIAL1_NAME == 0
    #   --> 0
};

# <
# <
# <
# eCos HAL
# doc: redirect/the-ecos-hardware-abstraction-layer-hal.html
# The eCos HAL package provide a porting layer for
# higher-level parts of the system such as the kernel and the
# C library. Each installation should have HAL packages for
# one or more architectures, and for each architecture there
# may be one or more supported platforms. It is necessary to
# select one target architecture and one platform for that
# architecture. There are also a number of configuration
# options that are common to all HAL packages.
#
cdl_package CYGPKG_HAL {
    # Packages cannot be added or removed, nor can their version be changed,
    # simply by editing their value. Instead the appropriate configuration
    # should be used to perform these actions.

    # This value cannot be modified here.
    # Flavor: booldata
    # Current value: 1 current

    # The following properties are affected by this value
};

# >
# Platform-independent HAL options
# A number of configuration options are common to most or all
# HAL packages, for example options controlling how much state
# should be saved during a context switch. The implementations
# of these options will vary from architecture to architecture.
#
cdl_component CYGPKG_HAL_COMMON {
    # There is no associated value.
};

<snip >


 cdl_option CYGSEM_HAL_DIAG_MANGLER {
    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value GDB
    # value_source default
    # Default value: GDB
    # Legal values: "GDB" "None"
};

# <
# <
# HAL interrupt handling
# A number of configuration options related to interrupt
# handling are common to most or all HAL packages, even though
# the implementations will vary from architecture to
# architecture.
#
cdl_component CYGPKG_HAL_COMMON_INTERRUPTS {
    # There is no associated value.
};


# <
# ROM monitor support
# Support for ROM monitors can be built in to your application. 
# It may also be relevant to build your application as a ROM monitor
# itself. Such options are contained here if relevant for your chosen
# platform. The options and ROM monitors available to choose are
# platform-dependent.
#
cdl_component CYGPKG_HAL_ROM_MONITOR {
    # There is no associated value.

    # The following properties are affected by this value
};

# >
# Target has virtual vector support
#
cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT {
    # Implemented by CYGPKG_HAL_ARM_SA11X0_TRAVIS, active, enabled
    # This value cannot be modified here.
    # Flavor: data
    # Current_value: 1

    # The following properties are affected by this value
    # component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
    #     ActiveIf: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
};

# The platform port predates virtual vectors
# Many platform HALs have adopted the virtual vector support
# only after its introduction. On those platforms, old ROM
# monitors will not provide the necessary services - and
# so the use of these services should be disabled per default.
# Newer ports, however, guarantee to provide the necessary
# services in all ROM monitors, and so default to use the
# services.
#
cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_NOT_GUARANTEED {
    # No options implement this inferface
    # This value cannot be modified here.
    # Flavor: data
    # Current_value: 0

    # The following properties are affected by this value
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
    #     DefaultValue:  !CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_NOT_GUARANTEED
&& !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
    #     DefaultValue:  CYG_HAL_STARTUP != "RAM" ||
!CYGSEM_HAL_USE_ROM_MONITOR ||
CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_NOT_GUARANTEED 
};

# Target supports baud rate control via vectors
# Whether this target supports the __COMMCTL_GETBAUD
# and __COMMCTL_SETBAUD virtual vector comm control operations.
#
cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT {
    # No options implement this inferface
    # This value cannot be modified here.
    # Flavor: data
    # Current_value: 0

    # The following properties are affected by this value
    # option CYGSEM_REDBOOT_VARIABLE_BAUD_RATE
    #     ActiveIf: CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT
};

# Enable use of virtual vector calling interface
# Virtual vector support allows the HAL to let the ROM
# monitor handle certain operations. The virtual vector table
# defines a calling interface between applications running in
# RAM and the ROM monitor.
#
cdl_component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT {
    # ActiveIf constraint: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
    #     CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT == 1
    #   --> 1

    # Calculated value: 1
    # Flavor: bool
    # Current value: 1

    # The following properties are affected by this value
    # component CYGBLD_BUILD_REDBOOT
    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
};

# >
# Inherit console settings from ROM monitor
# When this option is set, the application will inherit
# the console as set up by the ROM monitor. This means
# that the application will use whatever channel and
# mangling style was used by the ROM monitor when
# the application was launched.
#
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE {
    # This option is not active
    # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR
    #     CYGSEM_HAL_USE_ROM_MONITOR == 0
    #   --> 0

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # value_source default
    # Default value:  !CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_NOT_GUARANTEED  &&
!CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
    #     CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_NOT_GUARANTEED == 0
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
    #   --> 0

    # The following properties are affected by this value
    # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
    #     ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
    # option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
    #     Calculated:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  &&
!CYGDBG_HAL_DIAG_TO_DEBUG_CHAN 
};

# Debug channel is configurable
# This option is a configuration hint - it is enabled
# when the HAL initialization code will make use
# of the debug channel configuration option.
#
cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE {
    # Calculated value:  CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
    # Flavor: bool
    # Current value: 1

    # The following properties are affected by this value
    # option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL
    #     ActiveIf: CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
};

# Console channel is configurable
# This option is a configuration hint - it is enabled
# when the HAL initialization code will make use
# of the console channel configuration option.
#
cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE {
    # Calculated value:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  &&
!CYGDBG_HAL_DIAG_TO_DEBUG_CHAN 
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE == 0
    #     CYGDBG_HAL_DIAG_TO_DEBUG_CHAN == 1
    # Flavor: bool
    # Current value: 0

    # The following properties are affected by this value
    # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL
    #     ActiveIf: CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
};

# Initialize whole of virtual vector table
# This option will cause the whole of the virtual
# vector table to be initialized with dummy values on
# startup. When this option is enabled, all the
# options below must also be enabled - or the
# table would be empty when the application
# launches.
# On targets where older ROM monitors without
# virtual vector support may still be in use, it is
# necessary for RAM applictions to initialize the
# table (since all HAL diagnostics and debug IO
# happens via the table). The default setting of
# this option will see to this, but it is still
# possible to override the option when a target with
# a newer ROM monitor is used.
#
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value:  CYG_HAL_STARTUP != "RAM" ||
!CYGSEM_HAL_USE_ROM_MONITOR ||
CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_NOT_GUARANTEED 
    #     CYG_HAL_STARTUP == ROM
    #     CYGSEM_HAL_USE_ROM_MONITOR == 0
    #     CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_NOT_GUARANTEED == 0
    #   --> 1
    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET == 1
    #   --> 1
    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US == 1
    #   --> 1
    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE == 1
    #   --> 1
    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA == 1
    #   --> 1
    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
    #   --> 1

    # The following properties are affected by this value
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
    #     ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
};

# Claim virtual vector table entries by default
# By default most virtual vectors will be claimed by
# RAM startup configurations, meaning that the RAM
# application will provide the services. The
# exception is COMMS support (HAL
# diagnostics/debugging IO) which is left in the
# control of the ROM monitor.
# The reasoning behind this is to get as much of the
# code exercised during regular development so it
# is known to be working the few times a new ROM
# monitor or a ROM production configuration is used
# - COMMS are excluded only by necessity in order to
# avoid breaking an existing debugger connections
# (there may be ways around this).
# For production RAM configurations this option can
# be switched off, causing the appliction to rely on
# the ROM monitor for these services, thus
# saving some space.
# Individual vectors may also be left unclaimed,
# controlled by the below options (meaning that the
# associated service provided by the ROM monitor
# will be used).
#
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT {
    # This option is not active
    # ActiveIf constraint: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
    #   --> 0

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1

    # The following properties are affected by this value
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
};

# Claim reset virtual vectors
# This option will cause the reset and kill_by_reset
# virtual vectors to be claimed.
#
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
    #   --> 1

    # The following properties are affected by this value
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
};

# Claim delay_us virtual vector
# This option will cause the delay_us
# virtual vector to be claimed.
#
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
    #   --> 1

    # The following properties are affected by this value
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
};

# Claim cache virtual vectors
# This option will cause the cache virtual vectors
# to be claimed.
#
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
    #   --> 1

    # The following properties are affected by this value
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
};

# Claim data virtual vectors
# This option will cause the data virtual vectors
# to be claimed. At present there is only one, used
# by the RedBoot ethernet driver to share diag output.
#
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT 
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
    #   --> 1

    # The following properties are affected by this value
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
};

# Claim comms virtual vectors
# This option will cause the communication tables
# that are part of the virtual vectors mechanism to
# be claimed. Note that doing this may cause an
# existing ROM monitor communication connection to
# be closed. For this reason, the option is disabled
# per default for normal application
# configurations.
#
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  ||
CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 1
    #   --> 1

    # The following properties are affected by this value
    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
    #     Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
    #     DefaultValue:  !CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_NOT_GUARANTEED
&& !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
    # option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
    #     Calculated:  CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
};

# Do diagnostic IO via virtual vector table
# All HAL IO happens via the virtual vector table / comm
# tables when those tables are supported by the HAL.
# If so desired, the low-level IO functions can
# still be provided by the RAM application by
# enabling the CLAIM_COMMS option.
#
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_DIAG {
    # Calculated value: 1
    # Flavor: bool
    # Current value: 1

    # The following properties are affected by this value
    # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
    #     ActiveIf:  CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx  ||
CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG 
    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
    #     Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  ||
CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS 
};

# <
# Work with a ROM monitor
# Support can be enabled for different varieties of ROM monitor.
# This support changes various eCos semantics such as the encoding
# of diagnostic output, or the overriding of hardware interrupt
# vectors.
# Firstly there is "Generic" support which prevents the HAL
# from overriding the hardware vectors that it does not use, to
# instead allow an installed ROM monitor to handle them. This is
# the most basic support which is likely to be common to most
# implementations of ROM monitor.
# "GDB_stubs" provides support when GDB stubs are included in
# the ROM monitor or boot ROM.
#
cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
    # Flavor: booldata
    # No user value, uncomment the following line to provide one.
    # user_value 0 0
    # The inferred value should not be edited directly.
    inferred_value 0 0
    # value_source inferred
    # Default value:  CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 
    #     CYG_HAL_STARTUP == ROM
    #   --> 0 0
    # Legal values:  "Generic" "GDB_stubs" 
    # Requires:  CYG_HAL_STARTUP == "RAM" 
    #     CYG_HAL_STARTUP == ROM
    #   --> 0

    # The following properties are affected by this value
    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
    #     Requires: ! CYGSEM_HAL_USE_ROM_MONITOR
    # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
    #     ActiveIf:  CYGSEM_HAL_USE_ROM_MONITOR ||
CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
    #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
    #     DefaultValue:  CYG_HAL_STARTUP != "RAM" ||
!CYGSEM_HAL_USE_ROM_MONITOR ||
CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_NOT_GUARANTEED 
};

# Behave as a ROM monitor
# Enable this option if this program is to be used as a ROM monitor,
# i.e. applications will be loaded into RAM on the board, and this
# ROM monitor may process exceptions or interrupts generated from the
# application. This enables features such as utilizing a separate
# interrupt stack when exceptions are generated.
#
cdl_option CYGSEM_HAL_ROM_MONITOR {
    # Flavor: bool
    user_value 1
    # value_source user
    # Default value: 0
    # Requires:  CYG_HAL_STARTUP == "ROM" 
    #     CYG_HAL_STARTUP == ROM
    #   --> 1

    # The following properties are affected by this value
    # option CYGBLD_BUILD_GDB_STUBS
    #     Requires: CYGSEM_HAL_ROM_MONITOR
    # option CYGBLD_ARM_ENABLE_THUMB_INTERWORK
    #     DefaultValue:  (CYGHWR_THUMB || CYGSEM_HAL_ROM_MONITOR) 
    # option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
    #     ActiveIf:  CYGSEM_HAL_ROM_MONITOR ||
CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT 
    # option CYGPRI_REDBOOT_ROM_MONITOR
    #     Requires: CYGSEM_HAL_ROM_MONITOR
};

# <
# Platform defined I/O channels.
# Platforms which provide additional I/O channels can implement
# this interface, indicating that the function plf_if_init()
# needs to be called.
#
cdl_interface CYGINT_HAL_PLF_IF_INIT {
    # No options implement this inferface
    # This value cannot be modified here.
    # Flavor: data
    # Current_value: 0
};

# Platform IDE I/O support.
# Platforms which provide IDE controllers can implement
# this interface, indicating that IDE I/O macros are
# available.
#
cdl_interface CYGINT_HAL_PLF_IF_IDE {
    # No options implement this inferface
    # This value cannot be modified here.
    # Flavor: data
    # Current_value: 0

    # The following properties are affected by this value
    # component CYGPKG_REDBOOT_DISK
    #     ActiveIf:  CYGINT_HAL_PLF_IF_IDE != 0 
};


# Diagnostic serial port baud rate
# This option selects the baud rate used for the diagnostic port.
# Note: this should match the value chosen for the GDB port if the
# diagnostic and GDB port are the same.
#
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD {
    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 115200
    # value_source default
    # Default value: 115200
    # Legal values: 9600 19200 38400 115200
};

# GDB serial port baud rate
# This option selects the baud rate used for the diagnostic port.
# Note: this should match the value chosen for the GDB port if the
# diagnostic and GDB port are the same.
#
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_BAUD {
    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 115200
    # value_source default
    # Default value: 115200
    # Legal values: 9600 19200 38400 115200
};

# Number of communication channels on the board
#
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS {
    # Calculated value: 2
    # Flavor: data
    # Current_value: 2

    # The following properties are affected by this value
    # option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL
    #     LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
    # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL
    #     LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
};

# Debug serial port
# The BOPS board has two serial ports. This option
# chooses which port will be used to connect to a host
# running GDB.
#
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL {
    # ActiveIf constraint:
CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
    #     CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE == 1
    #   --> 1

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
    # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
    #     CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 2
};

# Diagnostic serial port
# The BOPS board has two serial ports.  This option
# chooses which port will be used for diagnostic output.
#
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL {
    # This option is not active
    # ActiveIf constraint:
CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
    #     CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE == 0
    #   --> 0

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
    # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
    #     CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 2
};

# BOPS Travis board with SA1110 processor build options
# Package specific build options including control over
# compiler flags used only in building this package,
# and details of which tests are built.
#
cdl_component CYGPKG_HAL_ARM_SA11X0_TRAVIS_OPTIONS {
    # There is no associated value.
};

# Asserts & Tracing
# The eCos source code contains a significant amount of
# internal debugging support, in the form of assertions and
# tracing.
# Assertions check at runtime that various conditions are as
# expected; if not, execution is halted.
# Tracing takes the form of text messages that are output
# whenever certain events occur, or whenever functions are
# called or return.
# The most important property of these checks and messages is
# that they are not required for the program to run.
# It is prudent to develop software with assertions enabled,
# but disable them when making a product release, thus
# removing the overhead of that checking.
# It is possible to enable assertions and tracing
# independently.
# There are also options controlling the exact behaviour of
# the assertion and tracing facilities, thus giving users
# finer control over the code and data size requirements.
#
cdl_component CYGPKG_INFRA_DEBUG {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # value_source default
    # Default value: 0
};

# >
# Use asserts
# If this option is defined, asserts in the code are tested.
# Assert functions (CYG_ASSERT()) are defined in
# 'include/cyg/infra/cyg_ass.h' within the 'install' tree.
# If it is not defined, these result in no additional
# object code and no checking of the asserted conditions.
#
cdl_component CYGDBG_USE_ASSERTS {
    # This option is not active
    # The parent CYGPKG_INFRA_DEBUG is disabled

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
    # Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL 
    #     CYGINT_INFRA_DEBUG_TRACE_IMPL == 0
    #   --> 0
};

# >
# Preconditions
# This option allows individual control of preconditions.
# A precondition is one type of assert, which it is
# useful to control separately from more general asserts.
# The function is CYG_PRECONDITION(condition,msg).
#
cdl_option CYGDBG_INFRA_DEBUG_PRECONDITIONS {
    # This option is not active
    # The parent CYGDBG_USE_ASSERTS is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# Postconditions
# This option allows individual control of postconditions.
# A postcondition is one type of assert, which it is
# useful to control separately from more general asserts.
# The function is CYG_POSTCONDITION(condition,msg).
#
cdl_option CYGDBG_INFRA_DEBUG_POSTCONDITIONS {
    # This option is not active
    # The parent CYGDBG_USE_ASSERTS is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# Loop invariants
# This option allows individual control of loop invariants.
# A loop invariant is one type of assert, which it is
# useful to control separately from more general asserts,
# particularly since a loop invariant is typically evaluated
# a great many times when used correctly.
# The function is CYG_LOOP_INVARIANT(condition,msg).
#
cdl_option CYGDBG_INFRA_DEBUG_LOOP_INVARIANTS {
    # This option is not active
    # The parent CYGDBG_USE_ASSERTS is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# Use assert text
# All assertions within eCos contain a text message
# which should give some information about the condition
# being tested.
# These text messages will end up being embedded in the
# application image and hence there is a significant penalty
# in terms of image size.
# It is possible to suppress the use of these messages by
# disabling this option.
# This results in smaller code size, but there is less
# human-readable information if an assertion actually gets
# triggered.
#
cdl_option CYGDBG_INFRA_DEBUG_ASSERT_MESSAGE {
    # This option is not active
    # The parent CYGDBG_USE_ASSERTS is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# <
# Use tracing


# Simple output
# An output module which produces simple output
# from tracing and assertion events.
#
cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE {
    # This option is not active
    # The parent CYGPKG_INFRA_DEBUG is disabled

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # value_source default
    # Default value: 0
};

# Fancy output
# An output module which produces fancy output
# from tracing and assertion events.
#
cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY {
    # This option is not active
    # The parent CYGPKG_INFRA_DEBUG is disabled

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # value_source default
    # Default value: 0
};

# Buffered tracing
# An output module which buffers output
# from tracing and assertion events. The stored
# messages are output when an assert fires, or
# CYG_TRACE_PRINT() (defined in <cyg/infra/cyg_trac.h>)
# is called.
# Of course, there will only be stored messages
# if tracing per se (CYGDBG_USE_TRACING)
# is enabled above.
#
cdl_component CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER {
    # This option is not active
    # The parent CYGPKG_INFRA_DEBUG is disabled

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# >
# Trace buffer size
# The size of the trace buffer. This counts the number
# of trace records stored. When the buffer fills it
# either wraps, stops recording, or generates output.
#
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE {
    # This option is not active
    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
    # ActiveIf constraint: CYGDBG_USE_TRACING
    #     CYGDBG_USE_TRACING == 0
    #   --> 0

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 32
    # value_source default
    # Default value: 32
    # Legal values: 5 to 65535
};

# Wrap trace buffer when full
# When the trace buffer has filled with records it
# starts again at the beginning. Hence only the last
# CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will
# be recorded.
#
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP {
    # This option is not active
    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
    # ActiveIf constraint: CYGDBG_USE_TRACING
    #     CYGDBG_USE_TRACING == 0
    #   --> 0

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# Halt trace buffer when full
# When the trace buffer has filled with records it
# stops recording. Hence only the first
# CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will
# be recorded.
#
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT {
    # This option is not active
    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
    # ActiveIf constraint: CYGDBG_USE_TRACING
    #     CYGDBG_USE_TRACING == 0
    #   --> 0

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # value_source default
    # Default value: 0
};

# Print trace buffer when full
# When the trace buffer has filled with records it
# prints the contents of the buffer. The buffer is then
# emptied and the system continues.
#
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT {
    # This option is not active
    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
    # ActiveIf constraint: CYGDBG_USE_TRACING
    #     CYGDBG_USE_TRACING == 0
    #   --> 0

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # value_source default
    # Default value: 0
};

# Print trace buffer on assert fail
# When an assertion fails the trace buffer will be 
# printed to the default diagnostic device.
#
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT {
    # This option is not active
    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
    # ActiveIf constraint: CYGDBG_USE_TRACING
    #     CYGDBG_USE_TRACING == 0
    #   --> 0

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# <
# Use function names
# All trace and assert calls within eCos contain a
# reference to the builtin macro '__PRETTY_FUNCTION__',
# which evaluates to a string containing
# the name of the current function.
# This is useful when reading a trace log.
# It is possible to suppress the use of the function name
# by disabling this option.
# This results in smaller code size, but there is less
# human-readable information available in the trace output,
# possibly only filenames and line numbers.
#
cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_PSEUDOMACRO {
    # This option is not active
    # The parent CYGPKG_INFRA_DEBUG is disabled

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# <
# Startup options
# Some packages require a startup routine to be called.
# This can be carried out by application code, by supplying
# a routine called cyg_package_start() which calls the
# appropriate package startup routine(s).
# Alternatively, this routine can be constructed automatically
# and configured to call the startup routines of your choice.
#
cdl_component CYGPKG_INFRA_STARTUP {
    # There is no associated value.
};

# >
# Build Redboot ROM ELF image
# This option enables the building of the Redboot ELF image.
# The image may require further relocation or symbol
# stripping before being converted to a binary image.
# This is handled by a rule in the target CDL.
#
cdl_component CYGBLD_BUILD_REDBOOT {
    # Flavor: bool
    user_value 1
    # value_source user
    # Default value: 0
    # Requires: CYGPKG_INFRA
    #     CYGPKG_INFRA == current
    #   --> 1
    # Requires:  !CYGINT_HAL_DEBUG_GDB_STUBS ||
CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 
    #     CYGINT_HAL_DEBUG_GDB_STUBS == 1
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 1
    #   --> 1
    # Requires:  !CYGINT_HAL_DEBUG_GDB_STUBS ||
CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT 
    #     CYGINT_HAL_DEBUG_GDB_STUBS == 1
    #     CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 1
    #   --> 1
    # Requires: ! CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
    #     CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT == 0
    #   --> 1
    # Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
    #     CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT == 0
    #   --> 1
    # Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
    #     CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM == 0
    #   --> 1
    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
    #     CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT == 1
    #   --> 1

    # The following properties are affected by this value
    # option CYGBLD_BUILD_REDBOOT_BIN
    #     ActiveIf: CYGBLD_BUILD_REDBOOT
};

# >
# Threads debugging support
# Enabling this option will include special code in the GDB stubs to
# support debugging of threaded programs.  In the case of eCos programs,
# this support allows GDB to have complete access to the eCos threads
# in the program.
#
cdl_option CYGBLD_BUILD_REDBOOT_WITH_THREADS {
    # ActiveIf constraint:  CYG_HAL_STARTUP != "RAM" 
    #     CYG_HAL_STARTUP == ROM
    #   --> 1

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # value_source default
    # Default value: 0
    # Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
    #     CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1
    #   --> 1
};

# Customized version string
# Use this option to define a customized version "string" for
# RedBoot.  Note: this value is only cosmetic, displayed by the
# "version" command, but is useful for providing site specific
# information about the RedBoot configuration.
#
cdl_option CYGDAT_REDBOOT_CUSTOM_VERSION {
    # Flavor: booldata
    # No user value, uncomment the following line to provide one.
    # user_value 0 0
    # value_source default
    # Default value: 0 0
};

# <
# Redboot Networking
# This option includes networking support in RedBoot.
#
cdl_component CYGPKG_REDBOOT_NETWORKING {
    # This option is not active
    # ActiveIf constraint: CYGPKG_IO_ETH_DRIVERS
    #     CYGPKG_IO_ETH_DRIVERS (unknown) == 0
    #   --> 0

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# >
# Default IP address
# This IP address is the default used by RedBoot if a BOOTP/DHCP
# server does not respond. The numbers should be separated by
# *commas*, and not dots. If an IP address is configured into
# the Flash configuration, that will be used in preference.
#
cdl_option CYGDAT_REDBOOT_DEFAULT_IP_ADDR {
    # This option is not active
    # The parent CYGPKG_REDBOOT_NETWORKING is not active

    # Flavor: booldata
    # No user value, uncomment the following line to provide one.
    # user_value 1 "0, 0, 0, 0"
    # value_source default
    # Default value: CYGSEM_REDBOOT_FLASH_CONFIG ? 0 :  "0, 0, 0, 0" 
    #     CYGSEM_REDBOOT_FLASH_CONFIG == 0
    #   --> 1 "0, 0, 0, 0"
};

# TCP port to listen for incoming connections
# RedBoot will 'listen' on this port for incoming TCP connections.
# This allows outside connections to be made to the platform, either
# for GDB or RedBoot commands.
#
cdl_option CYGNUM_REDBOOT_NETWORKING_TCP_PORT {
    # This option is not active
    # The parent CYGPKG_REDBOOT_NETWORKING is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 9000
    # value_source default
    # Default value: 9000
};

# Number of [network] packet buffers
# RedBoot may need to buffer network data to support various connections.
# This option allows control over the number of such buffered packets,
# and in turn, controls the amount of memory used by RedBoot (which
# is not available to user applications).  Each packet buffer takes up
# about 1514 bytes.  Note: there is little need to make this larger
# than the default.
#
cdl_option CYGNUM_REDBOOT_NETWORKING_MAX_PKTBUF {
    # This option is not active
    # The parent CYGPKG_REDBOOT_NETWORKING is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 4
    # value_source default
    # Default value: 4
    # Legal values: 3 to 8
};

# <
# Allow RedBoot to use any I/O channel for it's console.
# If this option is enabled then RedBoot will attempt to use all
# defined serial I/O channels for it's console device.  Once input
# arrives at one of these channels then the console will use only
# that port.
#
cdl_option CYGPKG_REDBOOT_ANY_CONSOLE {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# Allow RedBoot to adjust the baud rate on the serial console.
# If this option is enabled then RedBoot will support commands to set
# and query the baud rate on the selected console.
#
cdl_option CYGSEM_REDBOOT_VARIABLE_BAUD_RATE {
    # This option is not active
    # ActiveIf constraint: CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT
    #     CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT == 0
    #   --> 0

    # Flavor: bool
    user_value 0
    # value_source user
    # Default value: 1
};

# Maximum command line length
# This option allows control over how long the CLI command line
# should be.  This space will be allocated statically
# rather than from RedBoot's stack.
#
cdl_option CYGPKG_REDBOOT_MAX_CMD_LINE {
    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 256
    # value_source default
    # Default value: 256
};

# Command processing idle timeout (ms)
# This option controls the timeout period before the
# command processing is considered 'idle'.  Making this
# number smaller will cause idle processing to take place
# more often, etc.  The default value of 10ms is a reasonable
# tradeoff between responsiveness and overhead.
#
cdl_option CYGNUM_REDBOOT_CLI_IDLE_TIMEOUT {
    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 10
    # value_source default
    # Default value: 10
};

# Size of zlib decompression buffer
# This is the size of the buffer filled with incoming data
# during load before calls are made to the decompressor
# function. For ethernet downloads this can be made bigger
# (at the cost of memory), but for serial downloads on slow
# processors it may be necessary to reduce the size to
# avoid serial overruns. zlib appears to bail out if less than
# five bytes are available initially so this is the minimum.
#
cdl_option CYGNUM_REDBOOT_LOAD_ZLIB_BUFFER {
    # This option is not active
    # ActiveIf constraint: CYGPKG_COMPRESS_ZLIB
    #     CYGPKG_COMPRESS_ZLIB (unknown) == 0
    #   --> 0

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 64
    # value_source default
    # Default value: 64
    # Legal values: 5 to 256
};

# Validate RAM addresses during load
# This option controls whether or not RedBoot will make sure that
# memory being used by the "load" command is in fact in user RAM.
# Leaving the option enabled makes for a safer environment, but this
# check may not be valid on all platforms, thus the ability to
# disable it.  ** Disable this only with great care **
#
cdl_option CYGSEM_REDBOOT_VALIDATE_USER_RAM_LOADS {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# Allow RedBoot to support FLASH programming
# If this option is enabled then RedBoot will provide commands
# to manage images in FLASH memory.  These images can be loaded
# into memory for execution or executed in place.
#
cdl_component CYGPKG_REDBOOT_FLASH {
    # This option is not active
    # ActiveIf constraint: CYGPKG_IO_FLASH
    #     CYGPKG_IO_FLASH (unknown) == 0
    #   --> 0

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# >
# Minimum image size
# This option controls the minimum length of images kept by
# the FIS.  In particular, it should be large enough to hold
# the RedBoot primary image itself, as well as be a natural
# multiple of the FLASH erase block size.
#
cdl_option CYGBLD_REDBOOT_MIN_IMAGE_SIZE {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FLASH is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 0x00020000
    # value_source default
    # Default value: 0x00020000
};

# Offset from start of FLASH to RedBoot boot image
# This option controls where the RedBoot boot image is located
# relative to the start of FLASH.
#
cdl_option CYGBLD_REDBOOT_FLASH_BOOT_OFFSET {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FLASH is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # value_source default
    # Default value: CYGNUM_REDBOOT_FLASH_RESERVED_BASE
    #     CYGNUM_REDBOOT_FLASH_RESERVED_BASE == 0
    #   --> 0
    # Requires:  CYGNUM_REDBOOT_FLASH_RESERVED_BASE <=
CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
    #     CYGNUM_REDBOOT_FLASH_RESERVED_BASE == 0
    #     CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0
    #   --> 1

    # The following properties are affected by this value
    # option CYGBLD_REDBOOT_FLASH_BOOT_OFFSET
    #     Requires:  CYGNUM_REDBOOT_FLASH_RESERVED_BASE <=
CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
    # option CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET
    #     Requires:  CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET >=
CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
};

# Size of reserved area at start of FLASH
# This option reserves an area at the start of FLASH where RedBoot
# will never interfere; it is expected that this area contains
# (non-RedBoot-based) POST code or some other boot monitor that
# executes before RedBoot.
#
cdl_option CYGNUM_REDBOOT_FLASH_RESERVED_BASE {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FLASH is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # value_source default
    # Default value: 0

    # The following properties are affected by this value
    # option CYGBLD_REDBOOT_FLASH_BOOT_OFFSET
    #     DefaultValue: CYGNUM_REDBOOT_FLASH_RESERVED_BASE
    # option CYGBLD_REDBOOT_FLASH_BOOT_OFFSET
    #     Requires:  CYGNUM_REDBOOT_FLASH_RESERVED_BASE <=
CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
    # option CYGOPT_REDBOOT_FIS_RESERVED_BASE
    #     ActiveIf:  0 != CYGNUM_REDBOOT_FLASH_RESERVED_BASE 
};

# RedBoot Flash Image System support
# This option enables the Flash Image System commands
# and support within RedBoot.  If disabled, simple Flash
# access commands such as "fis write" will still exist.
# This option would be disabled for targets that need simple
# FLASH manipulation, but do not have the need or space for
# complete image management.
#
cdl_option CYGOPT_REDBOOT_FIS {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FLASH is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1

    # The following properties are affected by this value
    # component CYGPKG_REDBOOT_FIS_CONTENTS
    #     ActiveIf: CYGOPT_REDBOOT_FIS
};

# Flash Image System default directory contents
#
cdl_component CYGPKG_REDBOOT_FIS_CONTENTS {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FLASH is not active
    # ActiveIf constraint: CYGOPT_REDBOOT_FIS
    #     CYGOPT_REDBOOT_FIS == 0
    #   --> 0

    # Calculated value: 1
    # Flavor: bool
    # Current value: 1
};

# >
# Pseudo-file to describe reserved area
# If an area of FLASH is reserved, it is informative to
# have a fis entry describing it.  This option controls
# creation of such an entry by default in the fis init
# command.
#
cdl_option CYGOPT_REDBOOT_FIS_RESERVED_BASE {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FIS_CONTENTS is not active
    # ActiveIf constraint:  0 != CYGNUM_REDBOOT_FLASH_RESERVED_BASE 
    #     CYGNUM_REDBOOT_FLASH_RESERVED_BASE == 0
    #   --> 0

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# File to describe RedBoot boot image
# Normally a ROM-startup RedBoot image is first in the
# FLASH, and the system boots using that image.  This
# option controls creation of an entry describing it in
# the fis init command.  It might be disabled if a
# platform has an immutable boot image of its own, where
# we use a POST-startup RedBoot instead, which performs
# less board initialization.
#
cdl_option CYGOPT_REDBOOT_FIS_REDBOOT {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FIS_CONTENTS is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1

    # The following properties are affected by this value
    # component CYGOPT_REDBOOT_FIS_REDBOOT_POST
    #     DefaultValue: !CYGOPT_REDBOOT_FIS_REDBOOT
};

# File to describe RedBoot POST-compatible image
# This option controls creation of an entry describing a
# POST-startup RedBoot image in the fis init command.
# Not all platforms support POST-startup.  A platform
# might have both for testing purposes, where the
# eventual user would substitute their own POST code for
# the initial ROM-startup RedBoot, and then jump to the
# POST-compatible RedBoot immediately following.
#
cdl_component CYGOPT_REDBOOT_FIS_REDBOOT_POST {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FIS_CONTENTS is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: !CYGOPT_REDBOOT_FIS_REDBOOT
    #     CYGOPT_REDBOOT_FIS_REDBOOT == 0
    #   --> 1
};

# >
# Offset of POST image from FLASH start
# This option specifies the offset for a POST image from
# the start of FLASH.  If unset, then the fis entry
# describing the POST image will be placed where
# convenient.
#
cdl_option CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET {
    # This option is not active
    # The parent CYGOPT_REDBOOT_FIS_REDBOOT_POST is not active

    # Flavor: booldata
    # No user value, uncomment the following line to provide one.
    # user_value 0 0
    # value_source default
    # Default value: 0 0
    # Requires:  CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET >=
CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
    #     CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET == 0
    #     CYGBLD_REDBOOT_FLASH_BOOT_OFFSET == 0
    #   --> 1

    # The following properties are affected by this value
    # option CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET
    #     Requires:  CYGNUM_REDBOOT_FIS_REDBOOT_POST_OFFSET >=
CYGBLD_REDBOOT_FLASH_BOOT_OFFSET 
};

# <
# File to describe RedBoot backup image
# This option controls creation of an entry describing a
# backup RedBoot image in the fis init command.
# Conventionally a RAM-startup RedBoot image is kept
# under this name for use in updating the ROM-based
# RedBoot that boots the board.
#
cdl_option CYGOPT_REDBOOT_FIS_REDBOOT_BACKUP {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FIS_CONTENTS is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# <
# Keep RedBoot configuration data in FLASH
# When this option is enabled, RedBoot will keep configuration
# data in a separate block of FLASH memory.  This data will
# include such items as the node IP address or startup scripts.
#
cdl_component CYGSEM_REDBOOT_FLASH_CONFIG {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FLASH is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1

    # The following properties are affected by this value
    # option CYGDAT_REDBOOT_DEFAULT_IP_ADDR
    #     DefaultValue: CYGSEM_REDBOOT_FLASH_CONFIG ? 0 :  "0, 0, 0, 0" 
    # option CYGFUN_REDBOOT_BOOT_SCRIPT
    #     ActiveIf:  CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT ||
CYGSEM_REDBOOT_FLASH_CONFIG 
};

# >
# Length of configuration data in FLASH
# This option is used to control the amount of memory and FLASH
# to be used for configuration options (persistent storage).
#
cdl_option CYGNUM_REDBOOT_FLASH_CONFIG_SIZE {
    # This option is not active
    # The parent CYGSEM_REDBOOT_FLASH_CONFIG is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 4096
    # value_source default
    # Default value: 4096
};

# Support simple macros/aliases in FLASH
# This option is used to allow support for simple text-based
# macros (aliases).  These aliases are kept in the FLASH
# configuration data (persistent storage).
#
cdl_option CYGSEM_REDBOOT_FLASH_ALIASES {
    # This option is not active
    # The parent CYGSEM_REDBOOT_FLASH_CONFIG is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# Length of strings in FLASH configuration data
# This option is used to control the amount of memory and FLASH
# to be used for string configuration options (persistent storage).
#
cdl_option CYGNUM_REDBOOT_FLASH_STRING_SIZE {
    # This option is not active
    # The parent CYGSEM_REDBOOT_FLASH_CONFIG is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 128
    # value_source default
    # Default value: 128
};

# Length of configuration script(s) in FLASH
# This option is used to control the amount of memory and FLASH
# to be used for configuration options (persistent storage).
#
cdl_option CYGNUM_REDBOOT_FLASH_SCRIPT_SIZE {
    # This option is not active
    # The parent CYGSEM_REDBOOT_FLASH_CONFIG is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 512
    # value_source default
    # Default value: 512
};

# <
# Keep all RedBoot FLASH data blocks locked.
# When this option is enabled, RedBoot will keep configuration
# data and the FIS directory blocks implicitly locked.  While
# this is somewhat safer, it does add overhead during updates.
#
cdl_option CYGSEM_REDBOOT_FLASH_LOCK_SPECIAL {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FLASH is not active
    # ActiveIf constraint:  CYGHWR_IO_FLASH_BLOCK_LOCKING != 0 
    #     CYGHWR_IO_FLASH_BLOCK_LOCKING (unknown) == 0
    #   --> 0

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# Use CRC checksums on FIS images.
# When this option is enabled, RedBoot will use CRC checksums
# when reading and writing flash images.
#
cdl_option CYGSEM_REDBOOT_FIS_CRC_CHECK {
    # This option is not active
    # The parent CYGPKG_REDBOOT_FLASH is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# <
# Allow RedBoot to support disks
# If this option is enabled then RedBoot will provide commands
# to load disk files.
#
cdl_component CYGPKG_REDBOOT_DISK {
    # This option is not active
    # ActiveIf constraint:  CYGINT_HAL_PLF_IF_IDE != 0 
    #     CYGINT_HAL_PLF_IF_IDE == 0
    #   --> 0

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# >
# Maximum number of supported disks
# This option controls the number of disks supported by RedBoot.
#
cdl_option CYGNUM_REDBOOT_MAX_DISKS {
    # This option is not active
    # The parent CYGPKG_REDBOOT_DISK is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 4
    # value_source default
    # Default value: 4
};

# Maximum number of partitions per disk
# This option controls the maximum number of supported partitions per disk.
#
cdl_option CYGNUM_REDBOOT_MAX_PARTITIONS {
    # This option is not active
    # The parent CYGPKG_REDBOOT_DISK is not active

    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 8
    # value_source default
    # Default value: 8
};

# Support IDE disks.
# When this option is enabled, RedBoot will support IDE disks.
#
cdl_component CYGSEM_REDBOOT_DISK_IDE {
    # This option is not active
    # The parent CYGPKG_REDBOOT_DISK is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# Support Linux second extended filesystems.
# When this option is enabled, RedBoot will support IDE disks.
#
cdl_component CYGSEM_REDBOOT_DISK_EXT2FS {
    # This option is not active
    # The parent CYGPKG_REDBOOT_DISK is not active

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# Support ISO9660 filesystems.
# When this option is enabled, RedBoot will support ISO9660 filesystems.
#
cdl_component CYGSEM_REDBOOT_DISK_ISO9660 {
    # This option is not active
    # The parent CYGPKG_REDBOOT_DISK is not active

    # Calculated value: 0
    # Flavor: bool
    # Current value: 0
};

# <
# Boot scripting
# This contains options related to RedBoot's boot script
# functionality.
#
cdl_component CYGPKG_REDBOOT_BOOT_SCRIPT {
    # There is no associated value.
};

# >
# Boot scripting enabled
# This option controls whether RedBoot boot script
# functionality is enabled.
#
cdl_option CYGFUN_REDBOOT_BOOT_SCRIPT {
    # This option is not active
    # ActiveIf constraint:  CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT ||
CYGSEM_REDBOOT_FLASH_CONFIG 
    #     CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT == 0
    #     CYGSEM_REDBOOT_FLASH_CONFIG == 0
    #   --> 0

    # Calculated value: 1
    # Flavor: bool
    # Current value: 1
};

# Use default RedBoot boot script
# If enabled, this option will tell RedBoot to use the value of
# this option as a default boot script.
#
cdl_option CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT {
    # Flavor: booldata
    # No user value, uncomment the following line to provide one.
    # user_value 0 0
    # value_source default
    # Default value: 0 0

    # The following properties are affected by this value
    # option CYGFUN_REDBOOT_BOOT_SCRIPT
    #     ActiveIf:  CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT ||
CYGSEM_REDBOOT_FLASH_CONFIG 
};

# Resolution (in ms) for script timeout value.
# This option controls the resolution of the script timeout.
# The value is specified in milliseconds (ms), thus to have the
# script timeout be defined in terms of tenths of seconds, use 100.
#
cdl_option CYGNUM_REDBOOT_BOOT_SCRIPT_TIMEOUT_RESOLUTION {
    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 1000
    # value_source default
    # Default value: 1000
};

# Script default timeout value
# This option is used to set the default timeout for startup
# scripts, when they are enabled.
#
cdl_option CYGNUM_REDBOOT_BOOT_SCRIPT_DEFAULT_TIMEOUT {
    # Flavor: data
    # No user value, uncomment the following line to provide one.
    # user_value 10
    # value_source default
    # Default value: 10
};

# <
# Behave like a ROM monitor
# Enabling this option will allow RedBoot to provide ROM monitor-style
# services to programs which it executes.
#
cdl_option CYGPRI_REDBOOT_ROM_MONITOR {
    # ActiveIf constraint:  CYG_HAL_STARTUP == "ROM" || CYG_HAL_STARTUP ==
"ROMRAM" 
    #     CYG_HAL_STARTUP == ROM
    #     CYG_HAL_STARTUP == ROM
    #   --> 1

    # Calculated value: 1
    # Flavor: bool
    # Current value: 1
    # Requires: CYGSEM_HAL_ROM_MONITOR
    #     CYGSEM_HAL_ROM_MONITOR == 1
    #   --> 1
};

# Allow RedBoot to handle GNUPro application 'syscalls'.
# If this option is enabled then RedBoot will install a syscall handler
# to support debugging of applications based on GNUPro newlib/bsp.
#
cdl_option CYGSEM_REDBOOT_BSP_SYSCALLS {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 0
    # The inferred value should not be edited directly.
    inferred_value 1
    # value_source inferred
    # Default value: 0
};

# Redboot for SA11x0 options
# This option lists the target's requirements for a valid Redboot
# configuration.
#
cdl_component CYGPKG_REDBOOT_SA11X0_OPTIONS {
    # ActiveIf constraint: CYGPKG_REDBOOT
    #     CYGPKG_REDBOOT == current
    #   --> 1

    # There is no associated value.
};

# >
# Support booting Linux via RedBoot
# This option enables RedBoot to support booting of a Linux kernel.
#
cdl_option CYGSEM_REDBOOT_SA11X0_LINUX_BOOT {
    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# <
# Redboot HAL options
# This option lists the target's requirements for a valid Redboot
# configuration.
#
cdl_component CYGPKG_REDBOOT_HAL_OPTIONS {
    # ActiveIf constraint: CYGPKG_REDBOOT
    #     CYGPKG_REDBOOT == current
    #   --> 1

    # There is no associated value.
};

# >
# Build Redboot ROM binary image
# This option enables the conversion of the Redboot ELF
# image to a binary image suitable for ROM programming.
#
cdl_option CYGBLD_BUILD_REDBOOT_BIN {
    # ActiveIf constraint: CYGBLD_BUILD_REDBOOT
    #     CYGBLD_BUILD_REDBOOT == 1
    #   --> 1

    # Flavor: bool
    # No user value, uncomment the following line to provide one.
    # user_value 1
    # value_source default
    # Default value: 1
};

# <
# <
# <






-----Original Message-----
From: Gary Thomas [ mailto:gthomas@redhat.com ]
Sent: Sunday, September 09, 2001 6:30 PM
To: Nathan J Ickes
Cc: eCos Discussion
Subject: Re: [ECOS] build redboot from the source code


On Sat, 2001-09-08 at 01:18, Nathan J Ickes wrote:
> > I'm trying to get Redboot to run on a board running the Intel StrongARM
> > SA1110.
> 
> <snip>
> 
> > I get the message:
> > 
> > RedBoo
> > 
> > and nothing else.  Can someone shed some light on what I am doing wrong?
> 
> I had this problem too, on a custom SA1110 board (see msg00384 in the
> archives). In my case, the HAL was apparently hanging while trying to
> write to additional serial ports. After poking around the HAL serial
> driver for a while, I eventually just tried removing HAL support for
> ports that I didn't need, and this fixed the problem. Then I never
> bothered to go back and figure out what was really going wrong :)
> Eventually, the problem seemed to fix itself (I now have RedBoot
> working on two serial ports), possibly when I updated my source
> tree. I assume, since you're porting to a new board, you have recently
> checked out the source tree, though.
> 
> Hopefully, that helps direct your search. When you do figure this out,
> I'd be interested in hearing what the cause was.
> 
> -- Nathan Ickes

This explanation makes perfect sense, thanks.  RedBoot will try and 
print all messages on _all_ available ports by default.  You have a lot
of choice in the configuration on the SA11x0, but be sure that it 
matches your actual hardware.  Look at the differences between the iPAQ
and Brutus board ports - they support different sets of serial devices -
for guidance.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ECOS] build redboot from the source code
  2001-09-06 17:57 Shaojie Wu
@ 2001-09-06 18:15 ` Gary Thomas
  0 siblings, 0 replies; 8+ messages in thread
From: Gary Thomas @ 2001-09-06 18:15 UTC (permalink / raw)
  To: Shaojie Wu; +Cc: Jonathan Larmour, eCos Discussion

On Fri, 2001-09-07 at 09:58, Shaojie Wu wrote:
> Hi,
> 
> I am trying to build the redboot for the EB40 board.
> ( I know I can get the redboot elf file directly, but since I will add more
> functions to redboot,  I need to build the redboot again from the source
> code).
> I downloaded the sourde code from ecos respository, and tried to use the
> arm-elf-gdb and arm-elf-ld to get the exe file. After changed the source
> code
> a little bit, the exe file was created successfully. But after downloading
> the code into EB40 board, I could not build the connection by using minicom.
> I was wondering whether I need to configure the source file. Any idea what's
> happening here? It will be highly appreciated if you could give me more
> information
> about this. Thanks
> 
> Shaojie

You'll probably need to provide more detail in order for us to help.
On that platform you build RedBoot via these steps:
  % ecosconfig new eb40 redboot
  % ecosconfig import
${ECOS_REPOSITORY}/hal/arm/at91/current/misc/redboot_ROMRAM.ecm
  % ecosconfig tree
  % make

This set of steps builds a RedBoot suitable for installing in the
FLASH memory on the board (see the RedBoot documentation for complete
details).

One way to test RedBoot is to build the RAM based version first, then
download that and test it.  Once this is in place (and working!) you 
can change to ROM (in your case ROMRAM) mode and make the changes
permanent.  In that case, just import the redboot_RAM.ecm file instead.




^ permalink raw reply	[flat|nested] 8+ messages in thread

* [ECOS] build redboot from the source code
@ 2001-09-06 17:57 Shaojie Wu
  2001-09-06 18:15 ` Gary Thomas
  0 siblings, 1 reply; 8+ messages in thread
From: Shaojie Wu @ 2001-09-06 17:57 UTC (permalink / raw)
  To: jlarmour; +Cc: ecos-discuss

Hi,

I am trying to build the redboot for the EB40 board.
( I know I can get the redboot elf file directly, but since I will add more
functions to redboot,  I need to build the redboot again from the source
code).
I downloaded the sourde code from ecos respository, and tried to use the
arm-elf-gdb and arm-elf-ld to get the exe file. After changed the source
code
a little bit, the exe file was created successfully. But after downloading
the code into EB40 board, I could not build the connection by using minicom.
I was wondering whether I need to configure the source file. Any idea what's
happening here? It will be highly appreciated if you could give me more
information
about this. Thanks

Shaojie

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2001-09-10 17:24 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-09-07  6:40 [ECOS] build redboot from the source code Warren Jasper
2001-09-07  9:18 ` Nathan J Ickes
2001-09-09 15:32   ` Gary Thomas
  -- strict thread matches above, loose matches on Subject: below --
2001-09-10 10:11 Warren Jasper
2001-09-10 17:24 ` Gary Thomas
2001-09-10  8:30 Warren Jasper
2001-09-06 17:57 Shaojie Wu
2001-09-06 18:15 ` Gary Thomas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).