diff options
Diffstat (limited to 'nuttx/configs')
-rw-r--r-- | nuttx/configs/z80sim/Make.defs | 94 | ||||
-rw-r--r-- | nuttx/configs/z80sim/README.txt | 32 | ||||
-rw-r--r-- | nuttx/configs/z80sim/defconfig | 304 | ||||
-rw-r--r-- | nuttx/configs/z80sim/nshconfig | 304 | ||||
-rwxr-xr-x | nuttx/configs/z80sim/setenv.sh | 45 | ||||
-rw-r--r-- | nuttx/configs/z80sim/src/z80_serial.c | 15 |
6 files changed, 36 insertions, 758 deletions
diff --git a/nuttx/configs/z80sim/Make.defs b/nuttx/configs/z80sim/Make.defs deleted file mode 100644 index 75b6de6c8..000000000 --- a/nuttx/configs/z80sim/Make.defs +++ /dev/null @@ -1,94 +0,0 @@ -############################################################################ -# configs/z80sim/Make.defs -# -# Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved. -# Author: Gregory Nutt <spudmonkey@racsa.co.cr> -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in -# the documentation and/or other materials provided with the -# distribution. -# 3. Neither the name NuttX nor the names of its contributors may be -# used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS -# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED -# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# -############################################################################ - -include ${TOPDIR}/.config - -ifeq ("${CONFIG_DEBUG}","y") - ARCHOPTIMIZATION = --debug -else - ARCHOPTIMIZATION = -endif - -ARCHCPUFLAGS = -mz80 --stack-auto --int-long-reent --float-reent -ARCHPICFLAGS = -ARCHWARNINGS = -ARCHDEFINES = -ARCHINCLUDES = -I. -I$(TOPDIR)/include - -CROSSDEV = -CC = sdcc -CPP = sdcpp -LD = link-z80 -AS = as-z80 -AR = sdcclib -a - -CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \ - $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) -ASFLAGS = -x -a -l -o -s - -SDCCLIBDIR = /usr/local/share/sdcc/lib/z80 -SDCCLIB = z80.lib - -ASMEXT = .asm -OBJEXT = .o -LIBEXT = .lib -EXEEXT = .hex - -define COMPILE - @echo "CC: $1" - @$(CC) -c $(CFLAGS) $1 -o $2 -endef - -define ASSEMBLE - @echo "AS: $1" - @$(AS) $(ASFLAGS) $2 $1 -endef - -define ARCHIVE - echo "AR: $2"; \ - $(AR) $1 $2 || { echo "$(AR) $1 $2 FAILED!" ; exit 1 ; } -endef - -define CLEAN - @rm -f *.asm *.rel *.lst *.rst *.sym *.adb *.lnk *.map *.mem *.ihx *.hex -endef - -MKDEP = $(TOPDIR)/tools/mkdeps.sh - -HOSTCC = gcc -HOSTINCLUDES = -I. -HOSTCFLAGS = -Wall -wstrict-prototypes -Wshadow -g -pipe -HOSTLDFLAGS = diff --git a/nuttx/configs/z80sim/README.txt b/nuttx/configs/z80sim/README.txt index a9f1d9cfa..5026b23d8 100644 --- a/nuttx/configs/z80sim/README.txt +++ b/nuttx/configs/z80sim/README.txt @@ -11,27 +11,41 @@ testing has been performed using verison 2.6.0 of the SDDC toolchain. Configuring NuttX ^^^^^^^^^^^^^^^^^ - defconfig - The default configuration file, defconfig, performs a simple, - minimal OS test using examples/ostest. This can be - configurated as follows: + ostest + This configuration performs a simple, minimal OS test using + examples/ostest. This can be configurated as follows: cd tools - ./configure.sh z80sim + ./configure.sh z80sim/ostest cd - . ./setenv.sh - nshconfig + nsh This configuration file builds NSH (examples/nsh). This configuration is not functional due to issues with use of the simulated serial driver (see the TODO list). - This alternative configuration can be selected by: + This configuration can be selected by: - (Seleted the default configuration as show above) - cp config/z80sim/nshconfig .config + cd tools + ./configure.sh z80sim/nsh + cd - + . ./setenv.sh + + pashello + Configures to use examples/pashello for execution from FLASH + See examples/README.txt for information about pashello. + + This configuration is not usable because the resulting binary + is too large for the z80 address space. + This configuration can be selected by: + + cd tools + ./configure.sh z80sim/pashello + cd - + . ./setenv.sh Building the SDCC toolchain ^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/nuttx/configs/z80sim/defconfig b/nuttx/configs/z80sim/defconfig deleted file mode 100644 index 50eaec587..000000000 --- a/nuttx/configs/z80sim/defconfig +++ /dev/null @@ -1,304 +0,0 @@ -############################################################ -# configs/z80/defconfig -# -# Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved. -# Author: Gregory Nutt <spudmonkey@racsa.co.cr> -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in -# the documentation and/or other materials provided with the -# distribution. -# 3. Neither the name NuttX nor the names of its contributors may be -# used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS -# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED -# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# -############################################################ -# -# Architecture selection -# -# CONFIG_ARCH - identifies the arch subdirectory and, hence, the -# processor architecture. -# CONFIG_ARCH_Z80 - Set if processor is Z80 -# CONFIG_ARCH_CHIP - Identifies the specific chip -# CONFIG_ARCH_CHIP_Z80 - Set if this the class Z80 -# CONFIG_ARCH_BOARD - identifies the configs subdirectory and, hence, -# the board that supports the particular chip or SoC. -# CONFIG_ARCH_BOARD_name - for use in C code -# CONFIG_DRAM_SIZE - Describes the installed DRAM. -# -CONFIG_ARCH=z80 -CONFIG_ARCH_Z80=y -CONFIG_ARCH_CHIP=z80 -CONFIG_ARCH_CHIP_Z80=y -CONFIG_ARCH_BOARD=z80sim -CONFIG_ARCH_BOARD_Z80SIM=y -CONFIG_DRAM_SIZE=65536 - -# -# Z80sim specific device driver settings -# -# CONFIG_UART_RXBUFSIZE - Characters are buffered as received. -# This specific the size of the receive buffer -# CONFIG_UART_TXBUFSIZE - Characters are buffered before -# being sent. This specific the size of the transmit buffer -# -CONFIG_UART_RXBUFSIZE=0 -CONFIG_UART_TXBUFSIZE=0 - -# -# General build options -# -# CONFIG_RRLOAD_BINARY - make the rrload binary format used with -# BSPs from www.ridgerun.com -# CONFIG_HAVE_LIBM - toolchain supports libm.a -# -CONFIG_RRLOAD_BINARY=n -CONFIG_HAVE_LIBM=n - -# -# General OS setup -# -# CONFIG_EXAMPLE - identifies the subdirectory in examples -# that will be used in the build -# CONFIG_DEBUG - enables built-in debug options -# CONFIG_DEBUG_VERBOSE - enables verbose debug output -# CONFIG_MM_REGIONS - If the architecture includes multiple -# regions of memory to allocate from, this specifies the -# number of memory regions that the memory manager must -# handle and enables the API mm_addregion(start, end); -# CONFIG_HAVE_LOWPUTC - architecture supports low-level, boot -# time console output -# CONFIG_TICKS_PER_MSEC - The default system timer is 100Hz -# or TICKS_PER_MSEC=10. This setting may be defined to -# inform NuttX that the processor hardware is providing -# system timer interrupts at some interrupt interval other -# than 10 msec. -# CONFIG_RR_INTERVAL - The round robin timeslice will be set -# this number of milliseconds; Round robin scheduling can -# be disabled by setting this value to zero. -# CONFIG_SCHED_INSTRUMENTATION - enables instrumentation in -# scheduler to monitor system performance -# CONFIG_TASK_NAME_SIZE - Spcifies that maximum size of a -# task name to save in the TCB. Useful if scheduler -# instrumentation is selected. Set to zero to disable. -# CONFIG_JULIAN_TIME - Enables Julian time conversions -# CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - -# Used to initialize the internal time logic. -# CONFIG_DEV_CONSOLE - Set if architecture-specific logic -# provides /dev/console. Enables stdout, stderr, stdin. -# -CONFIG_EXAMPLE=ostest -CONFIG_DEBUG=n -CONFIG_DEBUG_VERBOSE=n -CONFIG_MM_REGIONS=1 -CONFIG_ARCH_LOWPUTC=y -CONFIG_RR_INTERVAL=0 -CONFIG_SCHED_INSTRUMENTATION=n -CONFIG_TASK_NAME_SIZE=0 -CONFIG_START_YEAR=2007 -CONFIG_START_MONTH=2 -CONFIG_START_DAY=21 -CONFIG_JULIAN_TIME=n -CONFIG_DEV_CONSOLE=n - -# -# The following can be used to disable categories of -# APIs supported by the OS. If the compiler supports -# weak functions, then it should not be necessary to -# disable functions unless you want to restrict usage -# of those APIs. -# -# There are certain dependency relationships in these -# features. -# -# o mq_notify logic depends on signals to awaken tasks -# waiting for queues to become full or empty. -# o pthread_condtimedwait() depends on signals to wake -# up waiting tasks. -# -CONFIG_DISABLE_CLOCK=y -CONFIG_DISABLE_POSIX_TIMERS=y -CONFIG_DISABLE_PTHREAD=y -CONFIG_DISABLE_SIGNALS=y -CONFIG_DISABLE_MQUEUE=y -CONFIG_DISABLE_MOUNTPOINT=y -CONFIG_DISABLE_ENVIRON=y - -# -# Misc libc settings -# -# CONFIG_NOPRINTF_FIELDWIDTH - sprintf-related logic is a -# little smaller if we do not support fieldwidthes -# -CONFIG_NOPRINTF_FIELDWIDTH=y - -# -# Allow for architecture optimized implementations -# -# The architecture can provide optimized versions of the -# following to improve sysem performance -# -CONFIG_ARCH_MEMCPY=n -CONFIG_ARCH_MEMCMP=n -CONFIG_ARCH_MEMMOVE=n -CONFIG_ARCH_MEMSET=n -CONFIG_ARCH_STRCMP=n -CONFIG_ARCH_STRCPY=n -CONFIG_ARCH_STRNCPY=n -CONFIG_ARCH_STRLEN=n -CONFIG_ARCH_BZERO=n -CONFIG_ARCH_KMALLOC=n -CONFIG_ARCH_KZMALLOC=n -CONFIG_ARCH_KFREE=n - -# -# Sizes of configurable things (0 disables) -# -# CONFIG_MAX_TASKS - The maximum number of simultaneously -# actived tasks. This value must be a power of two. -# CONFIG_MAX_TASK_ARGS - This controls the maximum number of -# of parameters that a task may receive (i.e., maxmum value -# of 'argc') -# CONFIG_NPTHREAD_KEYS - The number of items of thread- -# specific data that can be retained -# CONFIG_NFILE_DESCRIPTORS - The maximum number of file -# descriptors (one for each open) -# CONFIG_NFILE_STREAMS - The maximum number of streams that -# can be fopen'ed -# CONFIG_NAME_MAX - The maximum size of a file name. -# CONFIG_STDIO_BUFFER_SIZE - Size of the buffer to allocate -# on fopen. (Only if CONFIG_NFILE_STREAMS > 0) -# CONFIG_NUNGET_CHARS - Number of characters that can be -# buffered by ungetc() (Only if CONFIG_NFILE_STREAMS > 0) -# CONFIG_PREALLOC_MQ_MSGS - The number of pre-allocated message -# structures. The system manages a pool of preallocated -# message structures to minimize dynamic allocations -# CONFIG_MQ_MAXMSGSIZE - Message structures are allocated with -# a fixed payload size given by this settin (does not include -# other message structure overhead. -# CONFIG_MAX_WDOGPARMS - Maximum number of parameters that -# can be passed to a watchdog handler -# CONFIG_PREALLOC_WDOGS - The number of pre-allocated watchdog -# structures. The system manages a pool of preallocated -# watchdog structures to minimize dynamic allocations -# CONFIG_PREALLOC_TIMERS - The number of pre-allocated POSIX -# timer structures. The system manages a pool of preallocated -# timer structures to minimize dynamic allocations. Set to -# zero for all dynamic allocations. -# -CONFIG_MAX_TASKS=8 -CONFIG_MAX_TASK_ARGS=4 -CONFIG_NPTHREAD_KEYS=0 -CONFIG_NFILE_DESCRIPTORS=0 -CONFIG_NFILE_STREAMS=0 -CONFIG_NAME_MAX=32 -CONFIG_STDIO_BUFFER_SIZE=0 -CONFIG_NUNGET_CHARS=0 -CONFIG_PREALLOC_MQ_MSGS=0 -CONFIG_MQ_MAXMSGSIZE=0 -CONFIG_MAX_WDOGPARMS=2 -CONFIG_PREALLOC_WDOGS=4 -CONFIG_PREALLOC_TIMERS=0 - -# -# TCP/IP and UDP support via uIP -# CONFIG_NET - Enable or disable all network features -# CONFIG_NET_IPv6 - Build in support for IPv6 -# CONFIG_NSOCKET_DESCRIPTORS - Maximum number of socket descriptors per task/thread. -# CONFIG_NET_SOCKOPTS - Enable or disable support for socket options -# CONFIG_NET_BUFSIZE - uIP buffer size -# CONFIG_NET_TCP - TCP support on or off -# CONFIG_NET_TCP_CONNS - Maximum number of TCP connections (all tasks) -# CONFIG_NET_TCP_READAHEAD_BUFSIZE - Size of TCP read-ahead buffers -# CONFIG_NET_NTCP_READAHEAD_BUFFERS - Number of TCP read-ahead buffers (may be zero) -# CONFIG_NET_MAX_LISTENPORTS - Maximum number of listening TCP ports (all tasks) -# CONFIG_NET_UDP - UDP support on or off -# CONFIG_NET_UDP_CHECKSUMS - UDP checksums on or off -# CONFIG_NET_UDP_CONNS - The maximum amount of concurrent UDP connections -# CONFIG_NET_ICMP - ICMP ping support on or off -# CONFIG_NET_PINGADDRCONF - Use "ping" packet for setting IP address -# CONFIG_NET_STATISTICS - uIP statistics on or off -# CONFIG_NET_RECEIVE_WINDOW - The size of the advertised receiver's window -# CONFIG_NET_ARPTAB_SIZE - The size of the ARP table -# CONFIG_NET_BROADCAST - Broadcast support -# CONFIG_NET_LLH_LEN - The link level header length -# CONFIG_NET_FWCACHE_SIZE - number of packets to remember when looking for duplicates -CONFIG_NET=n -CONFIG_NET_IPv6=n -CONFIG_NSOCKET_DESCRIPTORS=0 -CONFIG_NET_SOCKOPTS=y -CONFIG_NET_BUFSIZE=420 -CONFIG_NET_TCP=n -CONFIG_NET_TCP_CONNS=40 -CONFIG_NET_MAX_LISTENPORTS=40 -CONFIG_NET_UDP=n -CONFIG_NET_UDP_CHECKSUMS=y -#CONFIG_NET_UDP_CONNS=10 -CONFIG_NET_ICMP=n -#CONFIG_NET_PINGADDRCONF=0 -CONFIG_NET_STATISTICS=y -#CONFIG_NET_RECEIVE_WINDOW= -#CONFIG_NET_ARPTAB_SIZE=8 -CONFIG_NET_BROADCAST=n -#CONFIG_NET_LLH_LEN=14 -#CONFIG_NET_FWCACHE_SIZE=2 - -# -# UIP Network Utilities -# CONFIG_NET_DHCP_LIGHT - Reduces size of DHCP -# CONFIG_NET_RESOLV_ENTRIES - Number of resolver entries -CONFIG_NET_DHCP_LIGHT=n -CONFIG_NET_RESOLV_ENTRIES=4 - -# -# Settings for examples/nsh -CONFIG_EXAMPLES_NSH_TELNET=n -CONFIG_EXAMPLES_NSH_IOBUFFER_SIZE=512 -CONFIG_EXAMPLES_NSH_CMD_SIZE=40 -CONFIG_EXAMPLES_NSH_STACKSIZE=4096 -CONFIG_EXAMPLES_NSH_DHCPC=n -CONFIG_EXAMPLES_NSH_NOMAC=n -CONFIG_EXAMPLES_NSH_IPADDR=(10<<24|0<<16|0<<8|2) -CONFIG_EXAMPLES_NSH_DRIPADDR=(10<<24|0<<16|0<<8|1) -CONFIG_EXAMPLES_NSH_NETMASK=(255<<24|255<<16|255<<8|0) - -# -# Stack and heap information -# -# CONFIG_BOOT_FROM_FLASH - Some configurations support XIP -# operation from FLASH. -# CONFIG_CUSTOM_STACK - The up_ implementation will handle -# all stack operations outside of the nuttx model. -# CONFIG_STACK_POINTER - The initial stack pointer -# CONFIG_PROC_STACK_SIZE - The size of the initial stack -# CONFIG_PTHREAD_STACK_MIN - Minimum pthread stack size -# CONFIG_PTHREAD_STACK_DEFAULT - Default pthread stack size -# CONFIG_HEAP_BASE - The beginning of the heap -# CONFIG_HEAP_SIZE - The size of the heap -# -CONFIG_BOOT_FROM_FLASH=n -CONFIG_CUSTOM_STACK=n -CONFIG_PROC_STACK_SIZE=1024 -CONFIG_PTHREAD_STACK_MIN=256 -CONFIG_PTHREAD_STACK_DEFAULT=1024 -CONFIG_HEAP_SIZE= -CONFIG_HEAP_BASE= diff --git a/nuttx/configs/z80sim/nshconfig b/nuttx/configs/z80sim/nshconfig deleted file mode 100644 index aa852ef8a..000000000 --- a/nuttx/configs/z80sim/nshconfig +++ /dev/null @@ -1,304 +0,0 @@ -############################################################ -# defconfig -# -# Copyright (C) 2007 Gregory Nutt. All rights reserved. -# Author: Gregory Nutt <spudmonkey@racsa.co.cr> -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in -# the documentation and/or other materials provided with the -# distribution. -# 3. Neither the name Gregory Nutt nor the names of its contributors may be -# used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS -# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED -# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# -############################################################ -# -# Architecture selection -# -# CONFIG_ARCH - identifies the arch subdirectory and, hence, the -# processor architecture. -# CONFIG_ARCH_Z80 - Set if processor is Z80 -# CONFIG_ARCH_CHIP - Identifies the specific chip -# CONFIG_ARCH_CHIP_Z80 - Set if this the class Z80 -# CONFIG_ARCH_BOARD - identifies the configs subdirectory and, hence, -# the board that supports the particular chip or SoC. -# CONFIG_ARCH_BOARD_name - for use in C code -# CONFIG_DRAM_SIZE - Describes the installed DRAM. -# -CONFIG_ARCH=z80 -CONFIG_ARCH_Z80=y -CONFIG_ARCH_CHIP=z80 -CONFIG_ARCH_CHIP_Z80=y -CONFIG_ARCH_BOARD=z80sim -CONFIG_ARCH_BOARD_Z80SIM=y -CONFIG_DRAM_SIZE=65536 - -# -# Z80sim specific device driver settings -# -# CONFIG_UART_RXBUFSIZE - Characters are buffered as received. -# This specific the size of the receive buffer -# CONFIG_UART_TXBUFSIZE - Characters are buffered before -# being sent. This specific the size of the transmit buffer -# -CONFIG_UART_RXBUFSIZE=64 -CONFIG_UART_TXBUFSIZE=64 - -# -# General build options -# -# CONFIG_RRLOAD_BINARY - make the rrload binary format used with -# BSPs from www.ridgerun.com -# CONFIG_HAVE_LIBM - toolchain supports libm.a -# -CONFIG_RRLOAD_BINARY=n -CONFIG_HAVE_LIBM=n - -# -# General OS setup -# -# CONFIG_EXAMPLE - identifies the subdirectory in examples -# that will be used in the build -# CONFIG_DEBUG - enables built-in debug options -# CONFIG_DEBUG_VERBOSE - enables verbose debug output -# CONFIG_MM_REGIONS - If the architecture includes multiple -# regions of memory to allocate from, this specifies the -# number of memory regions that the memory manager must -# handle and enables the API mm_addregion(start, end); -# CONFIG_HAVE_LOWPUTC - architecture supports low-level, boot -# time console output -# CONFIG_TICKS_PER_MSEC - The default system timer is 100Hz -# or TICKS_PER_MSEC=10. This setting may be defined to -# inform NuttX that the processor hardware is providing -# system timer interrupts at some interrupt interval other -# than 10 msec. -# CONFIG_RR_INTERVAL - The round robin timeslice will be set -# this number of milliseconds; Round robin scheduling can -# be disabled by setting this value to zero. -# CONFIG_SCHED_INSTRUMENTATION - enables instrumentation in -# scheduler to monitor system performance -# CONFIG_TASK_NAME_SIZE - Spcifies that maximum size of a -# task name to save in the TCB. Useful if scheduler -# instrumentation is selected. Set to zero to disable. -# CONFIG_JULIAN_TIME - Enables Julian time conversions -# CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - -# Used to initialize the internal time logic. -# CONFIG_DEV_CONSOLE - Set if architecture-specific logic -# provides /dev/console. Enables stdout, stderr, stdin. -# -CONFIG_EXAMPLE=nsh -CONFIG_DEBUG=n -CONFIG_DEBUG_VERBOSE=n -CONFIG_MM_REGIONS=1 -CONFIG_ARCH_LOWPUTC=y -CONFIG_RR_INTERVAL=0 -CONFIG_SCHED_INSTRUMENTATION=n -CONFIG_TASK_NAME_SIZE=0 -CONFIG_START_YEAR=2007 -CONFIG_START_MONTH=2 -CONFIG_START_DAY=21 -CONFIG_JULIAN_TIME=n -CONFIG_DEV_CONSOLE=y - -# -# The following can be used to disable categories of -# APIs supported by the OS. If the compiler supports -# weak functions, then it should not be necessary to -# disable functions unless you want to restrict usage -# of those APIs. -# -# There are certain dependency relationships in these -# features. -# -# o mq_notify logic depends on signals to awaken tasks -# waiting for queues to become full or empty. -# o pthread_condtimedwait() depends on signals to wake -# up waiting tasks. -# -CONFIG_DISABLE_CLOCK=n -CONFIG_DISABLE_POSIX_TIMERS=y -CONFIG_DISABLE_PTHREAD=y -CONFIG_DISABLE_SIGNALS=n -CONFIG_DISABLE_MQUEUE=y -CONFIG_DISABLE_MOUNTPOINT=y -CONFIG_DISABLE_ENVIRON=y - -# -# Misc libc settings -# -# CONFIG_NOPRINTF_FIELDWIDTH - sprintf-related logic is a -# little smaller if we do not support fieldwidthes -# -CONFIG_NOPRINTF_FIELDWIDTH=y - -# -# Allow for architecture optimized implementations -# -# The architecture can provide optimized versions of the -# following to improve sysem performance -# -CONFIG_ARCH_MEMCPY=n -CONFIG_ARCH_MEMCMP=n -CONFIG_ARCH_MEMMOVE=n -CONFIG_ARCH_MEMSET=n -CONFIG_ARCH_STRCMP=n -CONFIG_ARCH_STRCPY=n -CONFIG_ARCH_STRNCPY=n -CONFIG_ARCH_STRLEN=n -CONFIG_ARCH_BZERO=n -CONFIG_ARCH_KMALLOC=n -CONFIG_ARCH_KZMALLOC=n -CONFIG_ARCH_KFREE=n - -# -# Sizes of configurable things (0 disables) -# -# CONFIG_MAX_TASKS - The maximum number of simultaneously -# actived tasks. This value must be a power of two. -# CONFIG_MAX_TASK_ARGS - This controls the maximum number of -# of parameters that a task may receive (i.e., maxmum value -# of 'argc') -# CONFIG_NPTHREAD_KEYS - The number of items of thread- -# specific data that can be retained -# CONFIG_NFILE_DESCRIPTORS - The maximum number of file -# descriptors (one for each open) -# CONFIG_NFILE_STREAMS - The maximum number of streams that -# can be fopen'ed -# CONFIG_NAME_MAX - The maximum size of a file name. -# CONFIG_STDIO_BUFFER_SIZE - Size of the buffer to allocate -# on fopen. (Only if CONFIG_NFILE_STREAMS > 0) -# CONFIG_NUNGET_CHARS - Number of characters that can be -# buffered by ungetc() (Only if CONFIG_NFILE_STREAMS > 0) -# CONFIG_PREALLOC_MQ_MSGS - The number of pre-allocated message -# structures. The system manages a pool of preallocated -# message structures to minimize dynamic allocations -# CONFIG_MQ_MAXMSGSIZE - Message structures are allocated with -# a fixed payload size given by this settin (does not include -# other message structure overhead. -# CONFIG_MAX_WDOGPARMS - Maximum number of parameters that -# can be passed to a watchdog handler -# CONFIG_PREALLOC_WDOGS - The number of pre-allocated watchdog -# structures. The system manages a pool of preallocated -# watchdog structures to minimize dynamic allocations -# CONFIG_PREALLOC_TIMERS - The number of pre-allocated POSIX -# timer structures. The system manages a pool of preallocated -# timer structures to minimize dynamic allocations. Set to -# zero for all dynamic allocations. -# -CONFIG_MAX_TASKS=8 -CONFIG_MAX_TASK_ARGS=4 -CONFIG_NPTHREAD_KEYS=0 -CONFIG_NFILE_DESCRIPTORS=6 -CONFIG_NFILE_STREAMS=6 -CONFIG_NAME_MAX=32 -CONFIG_STDIO_BUFFER_SIZE=0 -CONFIG_NUNGET_CHARS=0 -CONFIG_PREALLOC_MQ_MSGS=0 -CONFIG_MQ_MAXMSGSIZE=0 -CONFIG_MAX_WDOGPARMS=2 -CONFIG_PREALLOC_WDOGS=4 -CONFIG_PREALLOC_TIMERS=0 - -# -# TCP/IP and UDP support via uIP -# CONFIG_NET - Enable or disable all network features -# CONFIG_NET_IPv6 - Build in support for IPv6 -# CONFIG_NSOCKET_DESCRIPTORS - Maximum number of socket descriptors per task/thread. -# CONFIG_NET_SOCKOPTS - Enable or disable support for socket options -# CONFIG_NET_BUFSIZE - uIP buffer size -# CONFIG_NET_TCP - TCP support on or off -# CONFIG_NET_TCP_CONNS - Maximum number of TCP connections (all tasks) -# CONFIG_NET_TCP_READAHEAD_BUFSIZE - Size of TCP read-ahead buffers -# CONFIG_NET_NTCP_READAHEAD_BUFFERS - Number of TCP read-ahead buffers (may be zero) -# CONFIG_NET_MAX_LISTENPORTS - Maximum number of listening TCP ports (all tasks) -# CONFIG_NET_UDP - UDP support on or off -# CONFIG_NET_UDP_CHECKSUMS - UDP checksums on or off -# CONFIG_NET_UDP_CONNS - The maximum amount of concurrent UDP connections -# CONFIG_NET_ICMP - ICMP ping support on or off -# CONFIG_NET_PINGADDRCONF - Use "ping" packet for setting IP address -# CONFIG_NET_STATISTICS - uIP statistics on or off -# CONFIG_NET_RECEIVE_WINDOW - The size of the advertised receiver's window -# CONFIG_NET_ARPTAB_SIZE - The size of the ARP table -# CONFIG_NET_BROADCAST - Broadcast support -# CONFIG_NET_LLH_LEN - The link level header length -# CONFIG_NET_FWCACHE_SIZE - number of packets to remember when looking for duplicates -CONFIG_NET=n -CONFIG_NET_IPv6=n -CONFIG_NSOCKET_DESCRIPTORS=0 -CONFIG_NET_SOCKOPTS=y -CONFIG_NET_BUFSIZE=420 -CONFIG_NET_TCP=n -CONFIG_NET_TCP_CONNS=40 -CONFIG_NET_MAX_LISTENPORTS=40 -CONFIG_NET_UDP=n -CONFIG_NET_UDP_CHECKSUMS=y -#CONFIG_NET_UDP_CONNS=10 -CONFIG_NET_ICMP=n -#CONFIG_NET_PINGADDRCONF=0 -CONFIG_NET_STATISTICS=y -#CONFIG_NET_RECEIVE_WINDOW= -#CONFIG_NET_ARPTAB_SIZE=8 -CONFIG_NET_BROADCAST=n -#CONFIG_NET_LLH_LEN=14 -#CONFIG_NET_FWCACHE_SIZE=2 - -# -# UIP Network Utilities -# CONFIG_NET_DHCP_LIGHT - Reduces size of DHCP -# CONFIG_NET_RESOLV_ENTRIES - Number of resolver entries -CONFIG_NET_DHCP_LIGHT=n -CONFIG_NET_RESOLV_ENTRIES=4 - -# -# Settings for examples/nsh -CONFIG_EXAMPLES_NSH_TELNET=n -CONFIG_EXAMPLES_NSH_IOBUFFER_SIZE=512 -CONFIG_EXAMPLES_NSH_CMD_SIZE=40 -CONFIG_EXAMPLES_NSH_STACKSIZE=1024 -CONFIG_EXAMPLES_NSH_DHCPC=n -CONFIG_EXAMPLES_NSH_NOMAC=n -CONFIG_EXAMPLES_NSH_IPADDR=(10<<24|0<<16|0<<8|2) -CONFIG_EXAMPLES_NSH_DRIPADDR=(10<<24|0<<16|0<<8|1) -CONFIG_EXAMPLES_NSH_NETMASK=(255<<24|255<<16|255<<8|0) - -# -# Stack and heap information -# -# CONFIG_BOOT_FROM_FLASH - Some configurations support XIP -# operation from FLASH. -# CONFIG_CUSTOM_STACK - The up_ implementation will handle -# all stack operations outside of the nuttx model. -# CONFIG_STACK_POINTER - The initial stack pointer -# CONFIG_PROC_STACK_SIZE - The size of the initial stack -# CONFIG_PTHREAD_STACK_MIN - Minimum pthread stack size -# CONFIG_PTHREAD_STACK_DEFAULT - Default pthread stack size -# CONFIG_HEAP_BASE - The beginning of the heap -# CONFIG_HEAP_SIZE - The size of the heap -# -CONFIG_BOOT_FROM_FLASH=n -CONFIG_CUSTOM_STACK=n -CONFIG_PROC_STACK_SIZE=1024 -CONFIG_PTHREAD_STACK_MIN=256 -CONFIG_PTHREAD_STACK_DEFAULT=1024 -CONFIG_HEAP_SIZE= -CONFIG_HEAP_BASE= diff --git a/nuttx/configs/z80sim/setenv.sh b/nuttx/configs/z80sim/setenv.sh deleted file mode 100755 index 52f95193b..000000000 --- a/nuttx/configs/z80sim/setenv.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/sh -# z80sim/setenv.sh -# -# Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved. -# Author: Gregory Nutt <spudmonkey@racsa.co.cr> -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in -# the documentation and/or other materials provided with the -# distribution. -# 3. Neither the name NuttX nor the names of its contributors may be -# used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS -# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED -# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -if [ "$(basename $0)" = "setenv.sh" ] ; then - echo "You must source this script, not run it!" 1>&2 - exit 1 -fi - -if [ -z ${PATH_ORIG} ]; then export PATH_ORIG=${PATH}; fi - -export SDCC_BIN=/usr/local/bin -export PATH=${SDCC_BIN}:/sbin:/usr/sbin:${PATH_ORIG} - -echo "PATH : ${PATH}" diff --git a/nuttx/configs/z80sim/src/z80_serial.c b/nuttx/configs/z80sim/src/z80_serial.c index 666af0ccd..8bc1b02b4 100644 --- a/nuttx/configs/z80sim/src/z80_serial.c +++ b/nuttx/configs/z80sim/src/z80_serial.c @@ -54,8 +54,14 @@ #include "os_internal.h" #include "up_internal.h" -#if CONFIG_NFILE_DESCRIPTORS > 0 +/* Defined in drivers/dev_lowconsole.c */ + +#ifdef CONFIG_USE_LOWCONSOLE +extern void lowconsole_init(void); +#endif +#if CONFIG_NFILE_DESCRIPTORS > 0 +#if defined(CONFIG_DEV_CONSOLE) && !defined(CONFIG_DEV_LOWCONSOLE) /**************************************************************************** * Definitions ****************************************************************************/ @@ -325,6 +331,7 @@ static boolean up_txempty(struct uart_dev_s *dev) void up_earlyserialinit(void) { } +#endif /* CONFIG_DEV_CONSOLE && !CONFIG_DEV_LOWCONSOLE */ /**************************************************************************** * Name: up_serialinit @@ -337,10 +344,14 @@ void up_earlyserialinit(void) void up_serialinit(void) { +#if defined(CONFIG_DEV_LOWCONSOLE) + (void)lowconsole_init(); +#elif defiened(CONFIG_DEV_CONSOLE) (void)uart_register("/dev/console", &g_uartport); (void)uart_register("/dev/ttyS0", &g_uartport); +#endif } -#endif /* CONFIG_NFILE_DESCRIPTORS > 0 */ +#endif /* CONFIG_NFILE_DESCRIPTORS */ /**************************************************************************** * Name: up_putc |